What's an electronics project without an attempt at modularity? As part of our project goals, we want a phone that can be easily modified and expanded, but still remains something you could actually use every day. How do we balance those requirements?
We played with a few different concepts like:
- add a connector on the phone and a cable to bring signals out to a separate dev board
- put 2 rows of headers on the back of the phone, enabling Arduino style shields.
In the end, we decided we liked a different concept: make the back of the phone a PCB.
- add-on boards (Daughter Boards in our terminology) require no connectors or soldering
- different daughter boards can be made for different stages of the design process: breadboarding, perf board, adapters to different dev boards, or footprints for designing custom circuitry on the PCB itself.
First, we need to get the signals out to where they can be used. For this, we use some pogo (spring pin) headers mounted on the phone motherboard:
Pogo pins are nice because they are tolerant of mechanical mis-alignment, and they can also withstand many cycles.
Next, we make a PCB shaped to fit in the back of the phone, and add some pads that mate with the pogo pins. This has an additional benefit of needing zero connector cost for each daughter board. The photo below shows the back side of a daughterboard with the mating pads near the pogo pins.
Finally, the daughterboard can route the signals out to any custom circuitry you like. In this case we've made a prototyping tool for breadboarding circuits. If you were making something more permanent you might try to keep most of the components inside the phone. Or if you don't need any extra circuitry and want a smooth back surface, the PCB can be replaced with a plain panel. Or even a clear one if you're like us and think the stuff inside is the interesting part.
We think this is a pretty cool way to expand the capabilities of the phone and still keep the packaging clean enough to carry a WiPhone around as a daily driver. We're already working on some pretty interesting expansion boards, and we'd also like to hear what ideas other people come up with. People have mentioned LoRA, cellular radios, USB host ports... do you have any suggestions?