-
Parts placement CAD
15 hours ago • 0 commentsAs I have no idea, if there is any tool to help you to place and connect parts on a matrix board, I'm went with what I used to.
Having the parts placed in my 3D CAD, I created a top an bottom view with the relevant parts:
I was planning to cut pieces from the trinket an the PiHat as both the corners are not carrying relevant traces (trinket just a mounting hole, easy to be sure, since layout is present/ PiHat datasheet of the DS3231 shows those pins are some of the many NC pins).
So I drew the matrix holes and the parts, using a color code to mark all pins connecting each other:
Pic is the one with the already placed parts with pins-to.connect close to each other.
Then place the connections with lines (of course the mechanical CAD does not prevent crossing "tracks". I finally found ways for all connections, shifting the RTC one row up, which spared me cutting something of the board. I used other line types for the respective "other side" of the board.
To not get lost in the process of placing parts and wires (tracks) in actual making, I doubles each view and deleted every part/wire I had placed in one view.
-
Prototyp 2, packaging
a day ago • 0 comments(about Oct to Dec 2024)
Thanks to the incredible adafruit team, there was nearly no need for 3D models to make from scratch.
Here is the github link: Adafruit CAD parts
I think only had to make the LED ring from scratch (the 18-LED ring is not an adafruit part). And LiPoly batteries are basically littls bricks. So after "some" back and forth (like is it easier to use a LiPoly which is thick an small or use a very thin with a bigger footprint) I came up with this arrangement:
View from the bottom.
violet: PushButton, blue/yellow: DS3231, backup battery moved from back to the side, brown: Trinket with the USB socket removed. Green: stripboard (correct word? hole matrix board?) and top the mag connector.
And the vie from the top side. Top right corner: that is the piece of wood, which holds the M2 brass bold, the "handle" for the push button. The rectangle hole in the stripboard is for accessing the IO pad on the bottom side of the trinket. and the ring that holds the LED ring in place.
Next layer of plywood holds the components in place and separates the light of the LEDs:
On top of that the is the layer holding the Lipoly, directs the LED light to match the shape of the letters i the final layer and holding the LDR:
I thought I could fit a bit bigger LiPoly, but I had no small enough Pushbutton to make the room.
And the top layer with the actual letter cutout:A keen watcher will notice the extra "M". As there was a "spare" LED anyways and having in mind, that at midnight the would be no LED on at all, I use the "M" for that.
There are some other options, like "24" or light up all LEDs as a "0". I might change that for another Prototype, when the 18h LED is used as battery indicator. Or some other variant, I haven't thought so far.
-
The PiHat mystery
2 days ago • 0 commentsWell at least it was one for me.
After the setup on the breadboard, I tested the reading of the time. All worked fine as long as USB was connected. There is an example sketch in the arduino ide, which sets the time of the build. I could read time and display it, but the moment I was running from battery, I git a "not RTC source found".
As I'm not an electrical engineer at all (I try to expand my elementary school battery-switch-lamp knowledge as I'm going) I figured it our "backwards". I compared the adafruit DS3231 board with the PiHat and noted that the resistors were different, which is easy to understand, once you realized, that the PiHat is made for 5v logic, while the adafruit one is made for the 3.3V logic (at least I hope, I have right in my head now).
Anyways here is the reworked PiHat, with the correct resistors: (and 2 cables to connect a new coincell, because the soldered in was already drained)
-
Prototype 2, changes and breadboard
2 days ago • 0 commentsSo after the long dark teatime of the soul (aka pandemic restrictions) I finally came back to this in the 2nd half of 2024.
And I did a lot of re-thinking the whole project which lead to quite some changes.
watchface.
As notable in the project pic, you don't need 3 separate for the last 3 "digits" after the "V". The one LED for II (2) and one for I (1) will give you 0-3 with just 2 LEDs. After a while you might even note that the pair of XX follows the same rule as they are needed only to light up together, which would result in only 16 LEDs need in total. But you won't save much space since unless you invent a new "double-X" Letter.
Would I have come sooner to the later idea, I might have used the adafruit neopixel16 ring to get an even smaller 2nd prototype. Here is the comparison of the 3 pixelrings (sadly the 18 has a lot more space between the LEDs, which leaves it bigger than necessary:
smaller RTC modul
The DS3231 is available in a SO8 package, but the SO16 seems to be much cheaper and I didn't find a module with a SO8 package. I did find a small one meant to be used as aPiHat. I have a preferred IC for the future, the mircocrystal RV-3032 or RV-3028, but there was no complete modul which was smaller than the PiHat with the DS3231, so I went for the PiHat for the prototype.
Size comparison of the DS3231 modules:
Power latching
I chose a circuit with MosFets this and the ability to have the power-on button double as an input while the circuit is powered on.
MCU/functions
adafruit trinket for size reasons, also I miss just one more GPIO.
In addition to the obvious power on, PWM for the pixelring, there is an LDR for sensing the ambient light and adjust the brightness of the LEDs accordingly. 2 pins for the I2C communication.
connector/charging
As there isn't much room to place an USB port sideways, I decided to use a magnetic connector on the back of the case. As there is now no risk of an standard USB plug being used, I placed the charging logic outside the watch. So the 5 PIN mag connector from adafruit works fine. GND, USBpower, LIPoly+ and 2 datalines for usb.
I was thinking about using one of the serial pads on the backside of the trinket as input to measure the voltage of the battery and all parts are placed, but that requires some adjustment in the general board setup, which I was reluctant to use in the first run.
Here is a pic of the breadboard setup:
yellow: charging circuit
blue: RTC incl. backup battery
red: pin headers (simulate the future mag connector)
black circle: LDR
purple: Trinket
green: power latch
cyan: LED ring with laser mask
black: lipoly battery
That worked fine (I even tested the voltage measure setup by using the pin of the LDR
-
1st prototype
2 days ago • 0 comments(still 2018)
For the first prototype I used the parts as seen in the previous log (Adafruit: itsybitsy, DS3231 module, lipoly backpack) and I used a mix of THP and sdm parts to make the latching circuit "in the air".
Using a transistor as replacement for a pcb kinda works:
But is very fragile since the pcb usually hold together the smd parts.
Some minor drops on soft ground and the fakt, that I needed to open the case to reach the USB port for loading didn't exactly prolonged the lifespan.
This is all I found from the first prototype with the RTC missing in the pic. I think I just stacked it somewhere on top. The RTC was on top of the ItsyBitsy and the air-solder parts somewhere in the leftover corners. And there was a LDR placed behind the veneer, which didn't work (maybe I didn't know about voltage dividers at that time):
I covered the LEDs with veneer, which makes a nice effect, since in power-off mode no letter give away, what's hidden, but is unreadable in sunlight. Here are 2 shitty pics of that setup (faked it by wiring it to the new breadboard setup):
Also I tried to make the power on more obscure/magic by using a reed contact as power on switch and a hidden magnet in a silver ring. Still don't know if it was mainly lacking knowledge about read contacts or a bigger read contact/magnet combination is needed. I changed that to 2 blank wires sticking out of the back of the case, which I bridged with said ring (not much better either).
-
Block Diagram
2 days ago • 0 comments(still about 2018)
Basic elements elements:
The LiPoly battery, permanently powering the RTC and being connected to the Latching circuit and the charger.
The power push button switches on the MCU, which in the first line of the setup, sets a GPIO pin to high, holding the latching circuit "on", the MCU reads the time from the DS3231 over I2C and lights up the LEDs which assemble the corresponding roman numbers.
Whenever the MCU is plugged to an UBS power source, the battery is charged.
-
Watch face design
2 days ago • 0 comments(about 2018, I guess)
The first intention was just some watch with those runes as the numbers, not much more. As I was hosting the website for the makers of the comic, I asked them if it was just some random scribbling or if there was a design of a whole alphabet and numbers. Turned out it was an alphabet but no numbers. So they came up with the idea of using the Roman numbering system. As I wanted to have some "glow" affect, LEDs are somewhat inevitable.
As the roman system uses lower values in front of higher for subtracting, the letters need to be sorted in a way, that all numbers can be displayed the resulting row looks like this:
XLXXIXIVIII for minutes, XIXIVIII for hours. You could of course use the common trick to Display hours an minutes sequential, but as I wanted something resembling a watchface, I went for "hours top, minutes bottom".
At this point I was of the impression that a minimum of 19 LEDs was necessary, which I'll proofed wrong later (will be in the according log)
Here is a graphic of the idea (displaying 13:37):
red "LEDs" for the hours, orange for minutes. Same with the runes from the comic:
(green ones are the spare 5 LEDs, which I filled with some of the other runes ( H,B for Humbug and Binky the makers of the comic, And TOP, Tales of Pylea, the name of the comic)