Well, for the clock, I have a working prototype. I’ve purchased three (3) 3D printers, largely to support this issue, but my most recent Bambu Lab X1-Carbon printer is incredible, so I can stop bumming time on my company’s model. I’ll try to upload a video below to demonstrate it’s functionality as well as highlight some issues.
However, with the working prototype comes the glaring errors. The most major of which is a lack of positional feedback on the hands. I’ll explain.
My current mechanics involve using these 28BYJ-48 Stepper motors to drive the stack of gears. However, the mounting points are parallel with the drive motor, meaning I need to support them from below and making it difficult to stack the motors vertically. This means I have to space the motors around the central gear stack. There is really not much room left for access to the gear stack.
Also, the motor support towers are not stiff enough and flex quite easily, making the gears skip and de-mesh causing errors or failures in the movements.
Additionally, the program needs to know where the hands are, in order to know how much to turn them when a location changes. Right now, I have a rotary encoder that allows manual changes on startup of the clock, with the idea being that you would manually position the hands to a calibration point, making them all point exactly vertical for example, and then the program would know where they started and can just keep track of the changes.
However, small errors in positioning and tracking would compound and eventually the clock would read completely wrong. Additionally, it requires calibration every startup and upon every software error, which with my programming skills is currently often. It’s just not a feasible long-term solution.
I would like to use limit switches, gap sensors, or Hall Effect sensors to provide automatic calibration and feedback, however, there’s just no space to access the gearstack easily.
The idea
The key? Bevel gears. If I turn the motors ninety degrees, I can much more easily stack them vertically and contain them to maybe half the circumference of the gear stack. That leaves so much more room for activities and active feedback mechanisms. It has a slew of other smaller benefits as well. However, it will be more difficult to design, much more difficult to 3D print, and require a complete redesign of essentially every part. Am I willing to throw away all my design work so far, with my deadline of May approaching ever faster?
I guess so.
(It doesn’t look like much but I think it’s really cool.)
I have some experience with 3D printing. I did some research in my undergraduate degree concerning the potential for novel biomedical applications of additive manufacturing, I took a graduate level course in education through 3D printing, and I’ve always had a bit of a fascination with hit. So when I was given a TronXY X5SA FDM machine for Christmas of 2021, I was excited.
However, I have struggled greatly with this printer. It seems to mostly be a derivative product from a Chinese company whose manuals have the tell-tale signs of being poorly translated. The quality control of the product was poor and I have been frustrated through assembly and early operation.
My X5SA is a filament based printer, meaning that it operates according to the above diagram. Plastic filament is melted then deposited in a pattern on a layer-by-layer basis. I struggled largely with the hotend, which is the part that melts the filament before it enters the nozzle.
Here you can see my stock hotend. It typically mounts through the heatsink, but as you can see, the bolts included were too short, and the brass offsets that they screwed to were too poorly made, and I had to countersink their bores to get it to mount. Additionally, I dealt with blobs of plastic from poor mating surfaces between the Bowden tube and the hotend, melted plastic from the heater, and other issues.
While I did have some successful prints, the surface quality was poor. I believe this was due to poor material flow through the nozzle and hotend. I was simply not confident in the printer’s capabilities.
Finally, I snapped off the thermistor which controls the PID heater of the block and I knew it had come time for an upgrade.
The Path Forward
After doing research online, I came to a realization: This printer was not capable of producing acceptable parts with its stock hardware. It’s firmware is apparently inadequate as well.
I found the communities of people owning these printers. The consensus is that the base kit for the machine is essentially the starting place for anyone wanting better prints. To hear many of them talk, the best results is from only keeping the aluminum extrusion frame that the printer comes with and replacing everything else.
With this new knowledge, I ordered replacements for the printer bed and the hotend. I ordered the E3D V6 hotend, the most popular out there, and an upgraded bed from TronXY themselves, which was magnetic and flexible, coated with a superior material for printing.
However, mounting my upgrades was going to be difficult. The new hotend needed a custom mount. The best way to get a custom mount that would fit on my X5SA would be to 3D print one, but I need my new hotend to print it. Catch-22
Fortunately, toxic fumes to the rescue!
A couple friend of mine decided to have a baby. To their loss and my gain, the resin used in SLA printing is potentially toxic and they wanted the printer out of the house while the wife is pregnant. As the good friend I am, I swooped in with a cash offer of well-below market value for their printer and I was off to the races.
The Elegoo Mars 2, the printer in question, is a MSLA printer. It uses a UV cured resin along with an LCD screen to cure the resin in pixelated layers. The effect is pulling a solid object out of the gloop that is the UV cure resin.
The benefits of this type of 3D printing is its precision, it is much easier to craft complex structures. Additionally, the print time is only dependent on the number of layers – you benefit from increased efficiency by packing the parts in.
After struggling with the filament printing, I was nervous about diving into a completely new style. However, for me, it instantly worked incredibly well. Within half an hour of setup, I had my first print going and it came out incredibly well. Another benefit of resin printing is the surface finish, it was much smoother and more professional looking. I was in business.
Results, at last
Here, finally, is the X5SA with a suite of new upgrades. The hotend is mounted with the resin-printed parts, in gray. I also mounted the new PEI coated bed magnetically below. And while you may see a little stringing, the quality of the prints are markedly improved. Putting the printer back on its sturdy workbench and tuning the temperatures will, I believe, finalize a great system.
(A funny story about the temperature. After replacing the hotend, which includes a new thermistor, the hotend was reading a temperature of 288 Celsius at room temperature. Turns out there was a short in the wiring, quickly resolved after hours of Googling then loosening a single screw.
My first few prints with the new upgrades have gone really well. Now that I have the compounding effect of two 3D printers, I have a list of mods to implement. Look forward to more posts!
Recently, on a roadtrip, my family and I exchanged location sharing data on Google Maps, so we could track each other’s progress.
After we got home from vacation, we kept up the location sharing because it was fun and useful. For example, before I called my brother I could check if we was working, because his work at the hospital has random shift times. Or, when my parents went on a trip to New Zealand, we could track their progress.
My parents in particular adored this feature. My mom would, every morning, check on her children to make sure that we were all OK and to see what we were up to. I got a lot of very specific questions about my activities: “I saw you were at XXX store for an hour yesterday, how was that?” Also, for me and my wife, it was pretty typical locations in general. We were at work, at home, or somewhere in-between. Really, to avoid the privacy breaches but still inform my parents, I would love to have something that just told them what category of place we were in. Also, with their 50th wedding anniversary coming up in a couple years(crazy, right?), it seemed like the perfect project.
The Inspiration
If you’re on this website, you’ve probably noticed my rampant nerdiness. Thus my inspiration: the Weasley clock, featured in the Harry Potter films and books. This magic clock tracked all the Weasley family members and identified their locations. While I don’t think we will use the “Quidditch” or “Mortal Peril” categories, this seemed to be the exact answer to my question. Now I just had to develop the software and mechanics to support it.
The Tech
Fortunately, we all walk around with microcomputers in our pockets that constantly spy on us while addicting us. So I knew if the NSA had this data, I could probably convince my siblings to give it to me as well, if I could just figure out how. Ideally I’d find a lightweight solution that would somehow convey latitude/longitude to some network location that my clock would eventually access.
Enter OwnTracks. The exact solution. This is an open source, lightweight location sharing app available on both Android and iPhone. All location data is private. It uses MQTT, a machine data transfer protocol, to send the data to a server. Also, it supports Regions, areas on the map that you can label and the app will indicate if it is inside that area. This is perfect to denote home and work locations.
However, OwnTracks needs to connect to an MQTT broker, software that will collect and distribute the messages typically run on a server. You can rent these servers very cheaply, but you know what is even cheaper? An IT buddy with a server in his basement. Thus enters Mosquitto, another open source software that acts as an MQTT broker.
The Plan
Thus we have our software picture all filled in. Owntracks will be installed on the phones, sending location data to the MQTT broker Mosquitto on my buddy’s server, and then my hardware will connect to this server to download the data. I just have to put it all together and pair it with the mechanics.