Basically, the idea here is to use FR4 PCBs as a structural component for a 3D lattice modular block and to connect them together with reflowed low-melt solder controlled by a MOSFET that just dumps a bunch of current through some chunky SMD resistors. This is intended to enable self-assembling modular robots. Here's a video for a conference paper on that for reference:
First, some background.
The goal of this work is to create a modular robot that can assemble modular structures/other modular robots. So, the idea is to have a geometrically compatible library of electronic blocks ("functional voxels") as well as purely mechanical ones ("mechanical voxels"). I won't really go into detail here, but you can check out the paper we wrote about this here.
Based on this overall goal, we can identify a few target specs to hit:
- Simultaneous mechanical + electrical connection for functional voxels
- Lightweight -- b/c robot needs to support its own weight in really unfavorable loading conditions, it's really important to keep this as lightweight as possible
- Cheap -- b/c we theoretically want a huge amount of these, and b/c most of the work I did on this project was while it wasn't attached to a specific grant, :p the mechanism needs to be cheap
- Reversible (we can undo it and redo it at least a handful of times without meaningful performance difference)
- Low effort to assemble lol
The system.
Based on these requirements, I looked through the literature on modular robots and identified the system used in Soldercubes as hitting most of these requirements, with the exception of low effort— they used a Field's alloy system that required a bunch of priming steps... I assumed low melt solder had advanced since then, and it has: Chipquik's line of Indium-based low temperature solders is easy to use and is offered at a range of temperatures that an SMD resistor should probably survive.
I also decided a directional joint, i.e. an actively heated board connects to a passively heated board and so on, would be lower effort to implement. This additionally forces a specific assembly sequence, which while it can have its drawbacks, practically tends make life easier. Because we're assuming an assembly direction from the get-go, this simplifies all of the connector layouts.
The overall system layout is: each robot/system has one primary microcontroller (ESP32-WROOM) that we can talk to over Wi-Fi from a central laptop that does all the path planning etc. This is networked to all the functional voxels/modules over an I2C bus. These periphery modules can provide a variety of functions, but in general they are all ATtiny412 based and contain one PWM enabled output and one analog input for free play, the I2C bus connections, and the resistive heating circuit. These receive regulated 5V power from an onboard linear voltage regulator, while the heating circuit (or any other output devices, e.g. hobby servos) receive the power rail voltage.
So, based on that, we transmit 4 lines between each voxel face: V_batt, ground, SDA, and SCL. For back-to-back connections, i.e. from block-to-block or between voxels, this is handled using the resistive heating circuit. For connections within a voxel or module, this is done using a soldered corner joint or using wiring.
Implementation.


I used a 65 mm lattice pitch (the bounding box around the module is 65 mm side length). The PCBs are two layer boards from JLCPCB, with the routing as described above. B) Shows a passive face, where the four connection points are the spots on the middle of the beams. C) shows an active ATTiny412 based face, where the SMD resistors are visible. The empty holes at the corners are used for magnets, which help with fine alignment between the modules before the solder is reflowed. By adding actuation, we then get robot modules. F) is a gripper module for picking up/walking over existing blocks, while G) and H)...
Read more »
miana
Keith Elliott
Radu Motisan
Neil K. Sheridan
While the specific implementation seems a bit too flimsy, the basis of this is amazing! I love to see a more assembly line type construction method where several arms work to construct a new one. PCBs aren't a great construction material for mechanical matters but they certainly are cheap. I think it would be interesting to see an implementation that also made the PCBs but not a normal flat FR4 PCB but some material and/or shape that is stronger. This concept has serious merit as there is an obscene amount of "waste" plastic and e-waste that could be used for to construct self-replicating robots (to process even more plastic and e-waste).