An array of open-source clocks that play Pac-Man (or Mrs. Pac-Man).

ESP32 Pac-Man Clock Keeps Track Of How Long You Watch It

There are so many elements that make a good clock worth looking at for much longer than necessary. Not only is this clock quite cool to behold, it plays Pac-Man around the time! Yes, of course you can interact with the Pac-Man — touching the edges of the screen will make him go left, right, up, or down accordingly. You can also change to Ms. Pac-Man and make all the animations go normal speed, fast, or crazy-fast.

[TechKiwiGadgets] built a Pac-Man clock a few years ago that was well-received, but not cheap or easy to mimic. Since then, they have ported the code to the ESP32 and made a new version that has fewer and friendlier components. Not only that, they have great instructions for building the ESP32 shield on protoboard and also offer the shield as an open-source fab-able PCB. Still too much work? The complete kit version is available over on Tindie. Be sure to check it out in crazy speed mode action after the break.

Although this isn’t the first Pac-Man clock we’ve seen, it devotes equal attention to the time and the game, whereas this one is more about the game itself.

Continue reading “ESP32 Pac-Man Clock Keeps Track Of How Long You Watch It”

It’s Doom, This Time On A Bluetooth LE Dongle

By now most readers should be used to the phenomenon of taking almost any microcontroller and coaxing it to run a port of the 1990s grand-daddy of all first-person shooters, id Software’s Doom. It’s been done on a wide array of devices, sometimes only having enough power for a demo mode but more often able to offer the full experience. Latest to the slipgate in this festival of pixelated gore is [Nicola Wrachien], who’s achieved the feat using an nRF52840-based USB Bluetooth LE dongle.

Full details can be found on his website, where the process of initial development using an Adafruit CLUE board is detailed. A 16MB FLASH chip is used for WAD storage, and an SPI colour display takes us straight to that cursed base on Phobos. The target board lacks enough I/O brought out for connection to screen and FLASH, so some trickery with 7400 logic is required to free up enough for the task. Controls are implemented via a wireless gamepad using an nRFS1822 board, complete with streamed audio to a PWM output.

The result can be seen in the video below the break, which shows a very playable game of both Doom and Doom 2 that would not have disgraced many machines of the era. This was prototyped on an Adafruit Clue board, and that could be the handheld console you’ve been looking for!

Continue reading “It’s Doom, This Time On A Bluetooth LE Dongle”

Run UNIX On Microcontrollers With PDP-11 Emulator

C and C++ are powerful tools, but not everyone has the patience (or enough semicolons) to use them all the time. For a lot of us, the preference is for something a little higher level than C. While Python is arguably more straightforward, sometimes the best choice is to work within a full-fledged operating system, even if it’s on a microcontroller. For that [Chloe Lunn] decided to port Unix to several popular microcontrollers.

This is an implementation of the PDP-11 minicomputer running a Unix-based operating system as  an emulator. The PDP-11 was a popular minicomputer platform from the ’70s until the early 90s, which influenced a lot of computer and operating system designs in its time. [Chloe]’s emulator runs on the SAMD51, SAMD21, Teensy 4.1, and any Arduino Mega and is also easily portable to any other microcontrollers. Right now it is able to boot and run Unix but is currently missing support for some interfaces and other hardware.

[Chloe] reports that performance on some of the less-capable microcontrollers is not great, but that it does run perfectly on the Teensy and the SAMD51. This isn’t the first time that someone has felt the need to port Unix to something small; we featured a build before which uses the same PDP-11 implementation on a 32-bit STM32 microcontroller.

Jigglypuff Sensor Breathes CO2 So You Don’t Have To

We’ve seen a lot of environmental monitoring projects here at Hackaday. Seriously, a lot. They usually take the form of a microcontroller, a couple sensors, and maybe a 3D printed case to keep it all protected. They’re pretty similar functionally as well, with the only variation usually coming in the protocol used to communicate their bits of collected data.

But even when compared with such an extensive body of previous work, this Jigglypuff IoT environmental monitor created by [Kutluhan Aktar] is pretty unusual. Sure, the highlights are familiar. Its MH-Z14A NDIR CO2 sensor and GP2Y1010AU0F optical dust detector are read by a WiFi-enabled microcontroller, this time the Arduino Nano RP2040 Connect, which ultimately reports its findings to the user via Telegram bot. There’s even a common SSD1306 OLED display on the unit to show the data locally. All things we’ve seen in some form or another in the past.

Testing the electronics on a bread board.

So what’s different? Well, it’s all been mounted to a huge Pokémon PCB, obviously. Even if you aren’t a fan of the pocket monsters, you’ve got to appreciate that bright pink solder mask. Honestly, the whole presentation is a great example of the sort of PCB artwork we rarely see outside of the BadgeLife scene.

Admittedly, there’s a lot easier ways to get notified about the air quality inside your house. We’re also not saying that haphazardly mounting your electronics onto a PCB designed to look like a character from a nearly 20+ year old Game Boy game is necessarily a great idea from a reliability standpoint. But if you were going to do something like that, then this project is certainly the one to beat.

Bluetooth RC Car Packs In A Few Sensors

Have you ever been walking around the house, desperate to know the ambient temperature, humidity, and barometric pressure? Have you ever wanted to capture that data with a small remote-controlled platform? If so, this project from [TUENHIDIY] will be exactly what you’ve been looking for. 

The little remote-control car is built around a Seeed Wio Terminal. This is a microcontroller platform that comes with a screen already attached, along with wireless hardware baked in and Grove connectors for hooking up external modules. Thus, the car adds a DHT11 temperature and humidity sensor, along with a BMP280 air pressure sensor using the Grove connectors.

Driving the car is done via a Blynk smartphone app that communicates with the Wio Terminal. Small DC motors at each wheel are driven via a DFRobot quad-motor shield. With the built-in screen, the RC car displays commands received from the smartphone app, as well as the temperature, humidity and pressure in the immediate environment.

We really like the simple PVC-based chassis design, and it’s a straightforward project that demonstrates how to build a Bluetooth-controlled car. Data collected by the sensors is also visible on the smartphone app, so if you need to sample conditions in the next room without getting off the couch, you could do that pretty easily.

Projects like these are a good way to get familiar with working with motors and sensors. It’d be a great base for simple robotics development, too. We’ve featured builds from [TUENHIDIY] before, too, like this great rotary plotter that can draw on bottles. Video after the break.

Continue reading “Bluetooth RC Car Packs In A Few Sensors”

M5Paper Gets Open Source Weather Display Firmware

We know you like soldering irons, we’re quite fond of them ourselves. But the reality is, modular components and highly capable development boards allow the modern hardware hacker to get things done with far less solder smoke then ever before. In fact, sometimes all you need to finish your project is the right code.

Case in point, check out the slick electronic paper weather display that [Danko Bertović] shows off in the latest Volos Projects video. While it certainly fits the description of a DIY project, he didn’t have to put any of the hardware together himself. The M5Paper is an ESP32 development kit designed around a crisp 4.7″, 960 x 540 e-paper panel that includes everything from environmental sensors to an internal 1150 mAh battery. To make your handheld e-paper dreams come true, the only thing you need to provide is the software.

The weather display code provided by [Danko] should certainly get you going in the right direction. Now don’t get us wrong, there’s certainly no shame in just flashing his code to the device and plunking it on your desk. It’s a gorgeous looking interface, and we all know that a sprinkling of open source code is often all it takes to make a standard consumer device extraordinary. But by using the code he’s provided as a launching point, you can take this turn-key device and really make it your own.

Continue reading “M5Paper Gets Open Source Weather Display Firmware”

Rolling Your Own Long-Range IoT Sensor Network

Homebrew wireless sensors are nothing new around these parts: grab an ESP8266, hang a BME280 from the I2C pins, and you’re just a few lines of code away from joining the Internet of Things on your own terms. Builds like this are so cheap and easy that they make an excellent first project for folks looking to get into the electronics game, but what if you’re looking for something a bit more bespoke?

In that case, you could follow in the footsteps of [Discreet Mayor] and put together a custom modular architecture for long-range wireless sensors. The core of the system is a breakout board for the Texas Instruments SimpleLink CC1312 wireless MCU which features a simple 2×11 header connector. This allows the module to either be plugged into a larger board or have a small sensor PCB attached directly to it.

Rather than using WiFi or requiring some existing radio infrastructure, the boards automatically create a private network using the IEEE 802.15.4 standard at a range of up to 600 meters. A dedicated receiver isn’t necessary, to pull data off the network, one of the CC1312 boards simply gets connected to a computer through a simple FT232 adapter.

[Discreet Mayor] has already created a number of projects that use these custom radios for communication, from a pool monitoring system to a temperature sensor for the BBQ. That portable battery operated devices are able to use this common communications backbone just as well as mains powered static devices is a testament to the work that went into the firmware to make it as robust and efficient as possible.

Like the idea of long-range private networks, but less enthusiastic about having to come up with your own hardware? Not to worry. Over the summer, Espressif announced that they’re working on an ESP32 variant that includes support for IEEE 802.15.4. Just as soon as this chip shortage is over, we might even get to see the thing.