Hamster Goes On Virtual Journey

Hamsters are great pets, especially for those with limited space or other resources. They are fun playful animals that are fairly easy to keep, and are entertaining to boot. [Kim]’s hamster, [Mr. Fluffbutt], certainly fits this mold as well but [Kim] wanted something a little beyond the confines of the habitat and exercise wheel and decided to send him on a virtual journey every time he goes for a run.

The virtual hamster journey is built on an ESP32 microcontroller which monitors the revolutions of the hamster wheel via a hall effect sensor and magnet. It then extrapolates the distance the hamster has run and sends the data to a Raspberry Pi which hosts a MQTT and Node.js server. From there, it maps out an equivalent route according to a predefined GPX route and updates that information live. The hamster follows the route, in effect, every time it runs on the wheel. [Mr Fluffbutt] has made it from the Netherlands to southeastern Germany so far, well on his way to his ancestral home of Syria.

This project is a great way to add a sort of augmented reality to a pet hamster, in a similar way that we’ve seen self-driving fish tanks. Adding a Google Streetview monitor to the hamster habitat would be an interesting addition as well, but for now we’re satisfied seeing the incredible journey that [Mr Fluffbutt] has been on so far.

An Open Source Smart Watch You’d Actually Wear

We’ve seen a number of open source smart watches over the years, and while they’ve certainly been impressive from a technical standpoint, they often leave something to be desired in terms of fit and finish. Exposed PCBs and monochromatic OLED displays might be fine for a trip to the hackerspace, but it wouldn’t be our first choice for date night attire.

Enter the Open-SmartWatch from [pauls_3d_things]. This ESP32 powered watch packs a gorgeous circular 240×240 TFT display, DS323M RTC, BMA400 three-axis accelerometer, and a 450 mAh battery inside of a 3D printed enclosure that can be produced on your average desktop machine. WiFi and Bluetooth connectivity are a given with the ESP32, but there’s also an enhanced edition of the PCB that adds another 4 MB of RAM, a micro SD slot, and a Quectel L96 GPS receiver.

The GPS edition of the PCB

As it’s an open source project you’re free to download the PCB design files and get the board produced on your own, but [pauls_3d_things] has actually partnered with LILYGO to do a run of the Open-SmartWatch electronics which you can pick up on AliExpress right now for just $24 USD. You’ll still need to order the battery separately and 3D print your own case, but it still seems like a pretty sweet deal to us.

On the software front, things are pretty basic right now. The watch can update the time from NTP using a pre-configured WiFi network, and there’s a Bluetooth media controller and stopwatch included. Of course, as more people get the hardware in their hands (or on their wrists, as the case may be), we’ll likely start seeing more capabilities added to the core OS.

While getting our own code running on commercially produced smartwatches holds a lot of promise, the Open-SmartWatch is arguably the best of both worlds. The partnership with LILYGO brings professional fabrication to the open hardware project, and the GPLv3 licensed firmware is ripe for hacking. We’re very excited to see where the community takes this project, and fully expect to start seeing these watches out in the wild once we can have proper cons again.

Continue reading “An Open Source Smart Watch You’d Actually Wear”

AN ESP32 Walkie-Talkie, For Those Spy Radio Moments

One of the most thrilling childhood toys for the adventurous 1970s or 1980s kid was probably the toy walkie-talkie. It didn’t matter that they were a very simple AM low-end-VHF radio with a range of about 500m and a Morse key of debatable utility, you could talk clandestinely with your friends, and be a more convincing spy, or commando, or whatever was the game of the moment. It’s a memory conjured up for grown-ups by [Chris G] with his ESP32 walkie-talkie, which replaces a shaky 49MHz connection with one a bit more robust through the magic of WiFi.

The hardware is a collection of modules on a custom PCB, aside from the ESP32 there’s an I2S microphone and I2S audio amplifier, which along with battery and speaker are housed in a neat 3D printed case. I2S is used for simplicity, but there is no reason why analogue components couldn’t be used with a few code changes. Connection is made via UDP over a WiFi network, or should there be no network via ESP-NOW. We’re not sure the range will be brilliant with those little on-board chip antennas, but with the wide range of 2.4GHz antennas to be had it’s likely a better result could easily be achieved if the stock item disappoints.

We like this project, and it’s one that’s especially pleasing to see given that we saw the potential a few years ago in a less successful walkie-talkie using the ESP8266.

USB Comes To The ESP32

Since the ESP8266 came on the scene a few years ago and revolutionized the way microcontrollers communicate with other devices, incremental progress on this chip has occurred at a relatively even pace. First there was the realization that code could be run on the chip itself. Next the ESP32 was released which built more on that foundation. The next step in that process of improvement may be here now as well, with this project which turns the ESP32 into a USB host.

USB is not a native feature on all microcontrollers or even Arduino-compatible boards. While some do have it built in like those based on the 32u4 for example, most either don’t have it at all or rely on a separate on-board chip to do some form of translating. The ESP32 is lacking this advanced feature so the USB needs to be cobbled together from scratch if you want this specific board to be able to interface directly with peripherals. This project does just that, allowing for four USB 1.1 devices to be connected directly to the ESP32 without a separate dedicated chip.

If you’ve been waiting for USB on this tiny, capable microcontroller this might be your chance to try it out. All of the project’s code is available on the project page. And, while it is limited in scope, it’s easily able to handle a keyboard or mouse. This might be a more cost-effective way of doing something like a KVM switch rather than doing it with three Arduinos.

 

The IEEE Builds A Smart Watch

It used to be that building your own watch was either a big project or it meant that you didn’t really care about how something looked on your wrist. But now with modern parts and construction techniques, a good-looking smart watch isn’t out of reach of the home shop. But if you don’t want to totally do it yourself, you can turn to a kit and that’s what [Stephen Cass] did. Writing in IEEE Spectrum, he took a kit called a Watchy and put it through its paces for you.

Watchy is an open source product that uses an ESP32, an E-ink display, and costs about $50. The display is 1.5 inches — good enough for a watch — and it has a real time clock, a vibration motor, an accelerometer, and four buttons. The whole thing runs on a 200 mAh lithium polymer battery. The charger is microUSB and you can also upload software to it using the usual Arduino tools.

However, [Stephen] found that none of the examples he tried would work at first. He found problems with the Mac software, but he also had problems under Windows. The answer? Switching to a Raspberry Pi seemed to work and once the watch was wiped clean, the Mac tools would work, too. It sounds like this isn’t a common problem, but he has to erase the watch with the Pi before each programming cycle.

Unlike a normal Arduino program, all the work in a typical Watchy program happens in setup() so the watch can mostly sleep and it updates the 200×200 typically just once a minute. As an example, [Stephan] wrote a watch face that uses an old Irish alphabet to tell time. He plans to add code to grab online data, too, and the phone has support for connecting wirelessly and parsing JSON to make tasks like that easier.

We always thought the EZ430-Chronos was a good-looking watch, but its screen is dated now. You can also pick up a lot of cheap import watches that can be hacked.

Inspire Dev Kit Drops Price Of MSLA Printer To Just $30

Over the last couple of years, we’ve seen massive price reductions on consumer 3D printers based on masked stereolithography (MSLA) technology. As the name implies, these machines use a standard LCD panel to selectively mask off the ultraviolet light coming from an array of LEDs. Add in a motorized Z stage, and you’ve got a simple and cheap way of coaxing UV resin into three dimensional shapes. These days, $200 USD can get you a turn-key MSLA printer with resolution far beyond the capabilities of filament-based FDM machines.

But [JD] still thinks we can do better. His project aims to produce a fully-functional MSLA printer for $30, and perhaps as low as $15 if manufactured in sufficient quality. He believes that by making high-resolution 3D printing more accessible, it will allow users all over the globe to bring their ideas to life. It’s no wonder he’s calling his machine the Inspire 3D Printer.

A test fixture for the LCD module.

This isn’t just some pie in the sky concept rolling around in [JD]’s head, either. You can order the Inspire Development Kit right now for just $30, though he makes it clear what you’ll receive isn’t quite a functional MSLA printer. By leveraging a common LCD module, the ESP32, and several 3D printed parts, he’s proven his price point for the kit is achievable; but there’s still plenty of work that needs to be done before the machine is ready for the general public.

For one thing, he’s still working the kinks out of the Z movement. The current design is 3D printed, but [JD] says he’s not quite happy with the amount of slop in the movement and is considering replacing the entire thing with the linear actuator from an optical drive. We’ve already seen these parts reused for accurately positioning lasers, so there’s certainly precedent for it. The firmware for the ESP32 is also in its infancy, and currently only allows the user to print from a selection of simple hard-coded shapes as a proof of concept.

We’ve seen DIY attempts at resin printers in the past, but they’ve often been based on more complex techniques involving projectors or UV lasers. Masked stereolithography is much more approachable for the home gamer, and projects like the Inspire 3D Printer show just how little it really takes to pull solid objects out of a puddle of goo.

Cycling Cadence Display With ESP32

Terry Pratchett once said “Wisdom comes from experience. Experience is often a result of lack of wisdom.” This is as true with technical skills as it is with the rest of life, and you won’t truly understand a specific topic unless you’ve struggled with it a bit. [publidave] wanted a simple wireless display for a bluetooth cycling cadence sensor, and soon found himself deep down the rabbit hole of Micropython and Bluetooth Low Energy on the ESP32.

[publidave] had converted his bicycle for indoor training during lockdown and winter, and realized he can’t use the guided training app and view his cadence simultaneously, so he needed a dedicated cadence display. Since [publidave] was comfortable with Python, he decided to give Micropython on the ESP32 ago. Bluetooth Low Energy can be rather confusing if you haven’t implemented it before, especially if good examples are hard to come by. In short, the ESP32 needs to find the sensor, connect to it, select the right service, and listen for the notifications containing the data. The data is then converted to RPM and displayed on a small OLED display. [publidave] does an excellent job of describing what exactly he did, highlighting the problems he encountered, and how he solved them.

In the end, he had a functional display, a good idea of what he would do differently next time, and a lot of additional knowledge and understanding. In our book that’s a successful project.

Since so much of the health related devices work with Bluetooth Low Energy, it could be handy to know the technology and how to interface with it. It would allow you to do things like unbrick a $2000 exercise bike,