08/12/2020 at 20:21 •
I'm bringing this project back from the dead, now that I have learned a bit and got new ideas for it. I already wrote about a solution for the battery problem — have the battery on the other side of the wires, on your neck. I'm going to go with that, but since the #Electronic Barrette Hub is not ready yet, I will use a regular battery holder.
The other innovation is using a thin PCB, and a PCB USB socket — that lets me make it really thin.
I slapped together a PCB design with those ideas incorporated, and it arrived today, so I assembled it:
It's flashed an ready to be programmed. Next step is to compile a version of CircuitPython prepared for it.
The last innovation I have is software: I no longer need to use BMP files, as I wrote a Python library for reading GIF files. It's probably not fast enough, but there is one more possibility — perhaps I could include a C library that was recently created for SAMD21 for playing animated GIFs as a CircuitPython C module — then they should play at native speed.
08/26/2018 at 10:50 •
Considering the latest redesign idea, I'm not aiming at a very small pendant with just the microcontroller, connected to the #Electronic Barrette Hub for power. The hub will also be used for programming the display over the USB, this way I can use a very small and nice-looking connector on it, which won't interfere with the eventual resin casting.
That means that the PCB design will be greatly simplified, but I have to wait for it until the design of connectors for the barrette is finalized.
08/02/2018 at 16:59 •
I have been showing off the prototype of this pendant in different places, and during the poster session on EuroPython a person who I can't now remember (sorry) suggested a really great solution to the problems of small battery and large thickness of the device. It looks something like this:
(The wire length is not to scale.)
Basically, they proposed to put the battery, together with the charging electronics and power switch on a separate device, that would be located on the neck or back, and that could be pretty much any reasonable size. The power would be transmitted to the device through a pair of soft wires that replace the string on which the pendant hangs. The pendant itself then only needs the actual screen, the microcontroller and the USB port for data transfer — all relatively small elements, with the USB socket being the largest. This lets me make it really thin, and since there are no mechanical parts, it can be embedded in resin easily (USB port can be problematic, but I have some ideas).
There are still some problems to be solved. How to prevent the heavy battery from sliding down the back of the wearer and pulling the pendant up? Maybe some kind of a clip for the collar? How prevent electronics from irritating the sensitive skin on the back of the neck? We will see how all that works.
That means that I won't be assembling the PCB that just arrived from OSHPark. And good, because due to my laziness it misses the cutout for the sunken USB socket:
But that also means that now I need to design two new PCBs. No rest for the wicked.
07/14/2018 at 12:31 •
One more version of the pendant, this time with the mechanical power switch replaced with an AT42QT1012 chip. This thing is tiny — about 2mm on a side — and I had to make a custom footprint for it. Of course Fritzing decided to not cooperate and rolled out all of its SVG parsing bugs. I got it to a state where it should probably work, but it's not pretty.
I actually ordered this version, we will see in a few weeks how it works.
07/04/2018 at 21:11 •
I have the promised design of the pendant using a QFN package of the SAMD21. I'm also experimenting with reducing the thickness of the whole device, by making holes for the battery, USB socket and power switch, and mounting them inside those holes. I'm curious how this will work.
In the mean time, I dropped the touch pads, so no touch sensing in this version. But it's probably not going to be final, I still have to experiment with getting rid of the mechanical switch and using something else in its place, so that I could drown the whole thing in resin. I wonder if I could keep the USB socket, but fill it with something like wax before casting.
06/14/2018 at 09:11 •
More displays just arrived:
I now have three goals:
- write a GIF decoder in C and include it in the firmware, so that animated GIFs can be displayed,
- redesign the PCB with a QFN package of the chip, and try to make it all thinner,
- figure a way to get rid of the physical switch, so the whole thing can be cast in resin or something similar.
For the second point, I'm considering making a hole for the battery in the PCB, and moving the microusb port and the charger electronics to a charging station.
For the third point, I guess I would need to add a mosfet on the backlight, figure out the sleep modes of the MCU, and make it wake up on touch or add an accelerometer for waking up (and also for some interactive animations).
However, for now the first point has priority.
06/13/2018 at 19:46 •
I finally sat down, compiled the firmware, adapted the ST7735 driver to the new dimensions, and quickly hacked some code for displaying a 16-color BMP (because I already had similar code for the #µGame). The result:
The colors are a bit funny because it's dark in here and the display doesn't have good viewing angles either. But I think it's pretty nice.
06/13/2018 at 09:06 •
The batteries arrived, and a quick test revealed why it didn't work with the CR battery: of course I swapped the terminals of the battery holder. Fortunately the voltage regulator I'm using has reverse voltage protection, so nothing burned. A quick desolder, removal of the plastic numbs that key the holder in the right position, and re-solder in opposite position fixed it.
Though I still need to compile the firmware for it.
I fixed the PCB, but I still want to rework it to use a QFN version of the chip — that should free some space on it too.
06/10/2018 at 20:29 •
The exposed electronics are cool, but not everyone's idea for jewelry, so I decided to try and do something to make it look better. Of course the first thing I thought of was casting it in a solid block of resin, but that would be difficult to do without breaking the switch and the USB port. I will probably still drown it in hot glue at some point, but in the mean time I simply painted it all black.
The acrylic paint didn't catch very well on the metal parts, so to avoid "dirty" look I just scraped it completely off them.
06/09/2018 at 14:35 •
The boards from Aisler just arrived, so I could assemble the first prototype. Almost all fits, except for the resistor next to the battery charger, for which I had to cut a small hole in the plastic of the battery holder. Fortunately there is room to move it.
Next is programming the little thingy. I got the bootloader burned on it:
Now I need to compile some firmware and see how those touch pads work. I still don't have the LIR1202 batteries for it, so I can't test if it actually runs on the battery — it's possible the battery will be too weak for the display. The CR1202 definitely is too weak.