We are working on a lot of hardware projects at the moment as we are interested in how to to rebuild technology from various alternative starting points. It seems most "off the shelf" hardware has converged on increasingly inaccessible and conservative forms, but luckily (and probably not due to entirely unrelated reasons) at the same time there has been an explosion in the availability, community documentation and potential of open hardware and DIY micro controllers, modules and components.
Right now we are simultaneously working on Viruscraft - building a tangible programming interface inspired by and for constructing virus geometry, Penelope where we are making more tangible interfaces and robotics inspired by ancient weaving tech (watch this space), Midimutant - re-purposing obsolete sound technology (more on this soon also) along with Sonic Kayaks - live sonification of underwater sensor data.
We start these projects with a more or less standard approach, prototyping and testing components using breadboards connected to Raspberry Pis or Arduinos, seeing if we can get them to work and investigating how it all performs. The next step would generally be to design a series of custom PCBs and eventually build a finished product.
The problem for us is that there seems to be a gap missing when we want to test something that needs to work in a relatively robust way (for a workshop, event or performance) but we do not have the final design settled yet, and need still need a lot of flexibility. Breadboards are problematic if you need to move things around a lot or depend on it for an workshop event. Strip board is very nearly good enough - except that you end up doing a lot of work rebuilding the same circuit many times, and it's a very time consuming process. On the other hand, it's wasteful ordering a custom PCB as you may well need to discard most of them.
In order to try and make this process a bit easier, we have designed a modular hexagonal 'perma-proto' PCB that can be ordered in large quantities and shared and reused for entirely different projects and uses.
The requirements were:
- Make it small - both so it can be used when space is a constraint and so it can be cheap to manufacture, so we can have lots of them.
- Include a small freeform prototying area - with a built in power bus.
- It should have a second stackable breakout PCB version for more prototyping space.
- Work with atmega328 or 168 - which are familiar Arduino compatible 8 bit microcontrollers with loads of library code.
- Use a 'through hole' chip so we can use a socket for swapping them around, removing them after accidentally destroying them etc!
- Expose all ports on pin headers in a logical way.
- Include an ISP header so we can program it directly.
- Include 4 pin power and i2c so it's compatible with the rest of our recent hardware.
The open hardware KiCad files and gerber production files we are using are all here. This is the main microcontroller board and stackable "hat" which has more space for adding components.