We got these playful things from our Munich friends, see their page
for more info and links to other spaces using these devices.
See the Flipdots playlist on our YouTube channel
for videos posted featuring our flipdots.
Second controller prototype
FlipdoTiny uses an ATtiny2313 (they're cheap, have enough pins, and we already have some for miniPOV3). You can see a photo of the working prototype on the right, click on it to see it in full size. The code is in plain C, using an interrupt to receive simple packets on USART (RS-232) at 9600 bps, 1 stop bit, no parity. Two kind of packets are handled currently, these can be seen below (each character represents a single bit).
- 001ccccc dddddddd dddddddd (3 bytes) writes the data in d bits to column c (0-23), ACKs with ASCII "C" when ready ("1" bits in the data will turn to black, "0" bits are left in their current state)
- 0001rrrr dddddddd dddddddd dddddddd (4 bytes) writes the data in d bits to column r (0-15), ACKs with ASCII "R" when ready ("0" bits in the data will turn to white, "1" bits are left in their current state)
The source code for the firmware, the schematics and the Python code for the PC can be found in our GitHub repository
- experiment with higher framerates by
- raising the USART speed to 115200 bps
- implementing a simple FIFO
Our ASCII art version of the pinout
COL_DATA oo GND
ROW_CLOCK oo GND
COL_CLOCK oo GND -- cable comes from this direction
COL_OE oo GND
ROW_OE oo GND
STROBE oo GND
ROW_DATA oo GND
oo -- red cable comes on this side