Bubbles, The People-Pleasing Pandemic Panda

This year, [Thomas]’ neighborhood has gone from a quiet burg to a bustling lane full of families and children who go out walking for exercise and a change of scenery. Early on, a game emerged to distract children from the pandemic by turning these walks into bear hunts — that is, looking for stuffed bears sitting in the windows of houses and keeping count of them.

With no stuffed bears in the house, he decided to join in the fun by pasting up a 2D panda bear in the window that’s cute enough to calm anyone’s nerves. That was fun for a while, but then he turned it up to eleven by making an interactive 3D version named Bubbles the Bear that blows bubbles and speaks in a friendly voice.

Bubbles sits in a second-story window and waits for passers-by to press one of the buttons mounted on the utility pole below. Both buttons are wired to a 433MHz remote that sends a signal to an ESP32 in Bubbles’ habitat that says it’s time to perform.

We particularly like the bubble maker that [Thomas] designed, which aims a blower fan with an air concentrator at a carousel of 3D printed bubble wands. Both the fan and the carousel can be controlled with a custom web app, and he gets an email every time Bubbles has a visitor that tells him how much bubble liquid is left. Check out the fun-size demo after the break.

Bubbles are fun, especially if you can make them in extremely large quantities. Bubbles can also do work — remember this next time you need a random number generator.

Continue reading “Bubbles, The People-Pleasing Pandemic Panda”

Your Microcontroller Is Your IDE

What if your microcontroller IDE was running on the microcontroller itself and not hosted on the computer you use to do the programming? The greatest legacy of Arduino in all its forms has arguably been a software one, in that it replaced annoying proprietary development environments with one that installed easily on a range of operating systems, was easy to use, and above all, worked. The next level of portability is to get rid of any specialize computer-side software. [Ronny Neufeld] wrote MicroIDE for ESP32 as an IDE accessible through a web browser, which interestingly is hosted on the target device itself.

Using the IDE is easy enough, install a binary, connect to the ESP with a web browser, start writing MicroPython code. There is a choice of connecting directly to the chip as a hotspot, or connecting via another WiFi network. The interface is looking pretty slick but he’s at pains to remind us that it’s a work in progress. Sadly there is no source code yet as it’s a binary distribution that is free for non-commercial use, we’d hope that an open-source release might one day happen. It’s not for everyone, but the convenience of accessing the same interface from almost any modern device should help attract a healthy community.

This appears to be the first web-based on-chip ESP IDE we’ve shown you. But it’s not the first on-chip coding example, as this BASIC interpreter shows.

[Main image source: Ubahnverleih / CC0]

The Open Source Mars Rover, One Year Later

As the name implies, here at Hackaday we strive to bring you interesting projects every single day. But that doesn’t necessarily mean a project only gets one day to grace these storied pages. Quite the opposite, in fact. We’re always happy to revisit a project and find out how far it’s evolved since we last crossed paths with it, especially when the creators themselves reach out to give us an update.

Which is exactly what happened when [Jakob Krantz] recently wrote in to get us up to speed on this incredible open source rover project. We first saw this 3D printed Curiosity inspired robot a little less than a year ago, and at that point it was essentially just a big box with the distinctive NASA rocker-bogie suspension bolted on. Now it not only looks a lot closer to the Martian rovers that inspired it, but it’s also learned a number of new tricks that really take this project to the next level.

The articulated head and grabber arm don’t just help sell the Curiosity look, they’re actually functional. [Jakob] notes that he doesn’t have kinematics integrated yet, so moving the arm around is more for show than practical application, but in the future it should be able to reach out and grab objects. With the new cameras in the head, he’ll even be able to get a first person view of what he’s picking up.

Last year [Jakob] was using a standard RC transmitter to drive the rover around, but he’s since put together a custom controller that’s truly a thing of beauty. It uses an ESP32 and LoRa module to communicate with matching hardware inside the rover, as well as a smartphone clipped onto the top that’s displaying telemetry and video over WiFi. The controller is actually its own separate project, so even if you aren’t in the market for a scaled down Mars rover, its controller could come in handy for your next robotics project.

Presumably the multi-mission radioisotope thermoelectric generator (MMRTG) on the back of the rover is just pretend….but with this guy, we’re not so sure. Give him another year, and who knows.

BlueRetro Is The Ultimate Console Controller Adapter

Retro consoles are great fun, packed with classic games and plenty of nostalgia. However, they also lack the polish and ergonomics of more modern hardware. Serious gamers will often find their original gamepads wearing out, too. A solution to all these problems and more is BlueRetro.

BlueRetro is a Bluetooth controller adapter for a wide variety of vintage console platforms. Developed by [Jacques Gagnon], it uses an ESP32 for its powerful wireless capabilities. One core of the ESP32 is used to speak Bluetooth and handle controller interfacing, while the other processor core handles speaking to the attached console.

The level of attention to detail is where this project really shines. [Jacques] has implemented many advanced features, like mapping axes to buttons and vice versa – essential when swapping controllers across varied systems. The output of BlueRetro is a DB25 connector, which is then used with adapter cabling to hook up to the controller ports of various consoles. It’s even capable of emulating multitap adapters for up to 7-player action.

In a video, [Jacques] shows off the hardware in use with his collection of vintage consoles, hooked up on a shelf with an impressive A/V switcher setup. It’s clear that this is the build of a hacker that doesn’t skimp on doing things the right way. We’ve seen his work before too, with a tidy RGB input mod for CRT TVs. Video after the break.

Continue reading “BlueRetro Is The Ultimate Console Controller Adapter”

OTA ESP32 GUI Makes Updates Simple

One of the disadvantages of having cheap WiFi-capable boards like those based on the ESP32 is that you have to update them. If you have even a few in every room of your house, it can be a pain to pull them out and connect them to a cable for programming. Over the air programming is a great answer, and [Kevin] shows how you can control the update via a simple GUI. You can see a video demonstration of how it works below.

[Kevin] uses a ready-made OTA library to do the work, but creates a GUI configuration and downloader tool. There is a manual step to force the board into the OTA mode, which might be a mild inconvenience, but it improves security since you need physical access to the device to do an update.

Continue reading “OTA ESP32 GUI Makes Updates Simple”

ESP32 Becomes Music Player In Under 40 Lines Of Code

The demo code for [XTronical]’s ESP32-based SD card music player is not even 40 lines long, though it will also require a few economical parts before it all works. Nevertheless, making a microcontroller play MP3s (and other formats) from an SD card is considerably simpler today than it was years ago.

Part of what makes this all work is I2S (Inter-IC Sound), a format for communicating PCM audio data between devices. Besides the ESP32, at the heart of it all is an SD card reader breakout board and the MAX98357A, which can be thought of as a combination I2S decoder and Class D amplifier. The ESP32 reads audio files from the SD card and uses an I2S audio library to send the I2S data stream to the MAX98357A (or two of them for stereo.) From there it is decoded automatically and audio gets pumped though attached speakers.

A few economical components, and only a handful of connections between them.

It’s amazing how much easier audio is to work with when one can take advantage of shuffling audio data around digitally, and the decoder handles multiple formats with an amplifier built in. You can see [XTronical]’s ESP32 player in action in the video embedded below.

Continue reading “ESP32 Becomes Music Player In Under 40 Lines Of Code”

Hackaday Podcast 071: Measuring Micrometers, The Goldilocks Fit, Little Linear Motors, And 8-bit Games On ESP32

Hackaday editors Mike Szczys and Elliot Williams fan through a fantastic week of hacking. Most laser cutters try to go bigger, but there’s a minuscule one that shows off a raft of exotic components you’ll want in your bag of tricks. Speaking of tricks, this CNC scroll saw has kinematics the likes of which we’ve never seen before — worth a look just for the dance of polar v. Cartesian elements. We’ve been abusing printf() for decades, but it’s possible to run arbitrary operations just by calling this Turing-complete function. We wrap the week up with odes to low-cost laptops and precision measuring.

Take a look at the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Direct download (60 MB or so.)

Continue reading “Hackaday Podcast 071: Measuring Micrometers, The Goldilocks Fit, Little Linear Motors, And 8-bit Games On ESP32”