Chamber-Master

Chamber Master: Control Your 3D Printer Enclosure Like A Pro

Having an enclosed 3D printer can make a huge difference when printing certain filaments that are prone to warping. It’s easy enough to build an enclosure to stick your own printer in, but it can get tricky when you want to actively control the conditions inside the chamber. That’s where [Jayant Bhatia]’s Chamber Master project comes in.

This system is built around the ESP32 microcontroller, which provides control to various elements as well as hosts a web dashboard letting you monitor the chamber status remotely. The ESP32 is connected to an SSD1306 OLED display and a rotary encoder, allowing for navigating menus and functions right at the printer, letting you select filament type presets and set custom ones of your own. A DHT11 humidity sensor and a pair of DS18B20 temperature sensors are used to sense the chamber’s environment and intake temperatures.

One of the eye-catching features of the Chamber Master is the iris-controlled 120 mm fan mounted to the side of the chamber, allowing for an adjustable-size opening for air to flow. When paired with PWM fan control, the amount of airflow can be precisely controlled.

Continue reading “Chamber Master: Control Your 3D Printer Enclosure Like A Pro”

Xcc700: Self-Hosted C Compiler For The ESP32/Xtensa

With two cores at 240 MHz and about 8.5 MB of non-banked RAM if you’re using the right ESP32-S3 version, this MCU seems at least in terms of specifications to be quite the mini PC. Obviously this means that it should be capable of self-hosting its compiler, which is exactly what [Valentyn Danylchuk] did with the xcc700 C compiler project.

Targeting the Xtensa Lx7 ISA of the ESP32-S3, this is a minimal C compiler that outputs relocatable ELF binaries. These binaries can subsequently be run with for example the ESP-IDF-based elf_loader component. Obviously, this is best done on an ESP32 platform that has PSRAM, unless your binary fits within the few hundred kB that’s left after all the housekeeping and communication stacks are loaded.

The xcc700 compiler is currently very minimalistic, omitting more complex loop types as well as long and floating point types, for starters. There’s no optimization of the final code either, but considering that it’s 700 lines of code just for a PoC, there seems to be still plenty of room for improvement.

MQTT Pager Build Is Bringing Beepers Back

Pagers were once a great way to get a message to someone out in public; they just had to be cool enough to have one. These days, they’re mostly the preserve of doctors and a few other niche operators. [Kyle Tryon] is bringing the beeper back, though, with a custom ESP32-based build.

The ESP32 is a great microcontroller for this kind of project, because it’s got WiFi and Bluetooth connectivity built right in. This let [Kyle] write some straightforward code so that it could receive alerts via MQTT. In particular, it’s set up to go off whenever there’s an app or service notification fired off by the Sentry platform. For [Kyle]’s line of work, it’s effectively an on-call beeper that calls them in when a system needs immediate attention. When it goes off, it plays the ringtone of your choice—with [Kyle] making it capable of playing tunes in Nokia’s old-school RTTTL music format.

The code was simple enough, and the assembly wasn’t much harder. By starting with an Adafruit ESP32 Reverse TFT Feather, the screen and buttons were all ready to go right out of the box. [Kyle] merely had to print up a rad translucent case on a resin printer to make it look like a sweet fashionable beeper from the 90s.

It’s a fun little project that should prove useful, while also being nicely reminiscent of a technology that has largely fallen by the wayside. Continue reading “MQTT Pager Build Is Bringing Beepers Back”

DIY E-Reader Folds Open Like A Book

There are plenty of lovely e-readers out on the market that come with an nice big e-paper display. There aren’t nearly as many that come with two. [Martin den Hoed] developed the Diptyx e-reader with such a design in order to better replicate the paper books of old. 

The build is based around the ESP32-S3, a powerful microcontroller which comes with the benefit of having WiFi connectivity baked in. It’s hooked up to a pair of 648×480 e-paper displays, which are installed in a fold-open housing to create the impression that one is reading a traditional book. The displays themselves are driven with custom look-up tables to allow for low-latency updates when turning pages. The firmware of the device is inspired by the epub reader from [Atomic14], and can handle different fonts and line spacing without issue. Power is from a pair of 1,500 mAh lithium-polymer cells, which should keep the device running for a good long time, and they can be charged over USB-C like any  modern gadget.

You can follow along with the project on the official website, or check it out on Crowd Supply if you’re so inclined. The project is intended to be open source, with files to be released once the design is finalized for an initial production run.

We’ve seen some great DIY e-reader builds over the years, and we’re loving the development we’re seeing in the writer deck space, too. If you’re whipping up something fun in this vein, be sure to let us know on the tipsline!

A browser window is shown, in which a web page is displaying a green trace of a square wave.

A Compact, Browser-Based ESP32 Oscilloscope

An oscilloscope is usually the most sensitive, and arguably most versatile, tool on a hacker’s workbench, often taking billions of samples per second to produce an accurate and informative representation of a signal. This vast processing power, however, often goes well beyond the needs of the signals in question, at which point it makes sense to use a less powerful and expensive device, such as [MatAtBread]’s ESP32 oscilloscope.

Continue reading “A Compact, Browser-Based ESP32 Oscilloscope”

Virtual Pet Responds To WiFi

When the Tamagotchi first launched all those decades ago, it took the world by storm. It was just a bunch of simple animations on a monochrome LCD, but it had heart, and people responded to that. Modern technology is capable of so much more, so [CiferTech] set out to build a virtual pet that can sniff out WiFi networks.

The build employs an ESP32-S3, perhaps the world’s favorite microcontroller that has WiFi baked right in from the factory. It’s paired with a 240×240 TFT LCD that delivers bright, vivid colors to show the digital pet living inside. Addressable WS2812B LEDs and a simple sound engine provide further feedback on the pet’s status.

The pet has various behaviors coded in, like hunting, exploring, and resting, and moods such as “happy,” “curious,” and “bored.” For a bit of environmental reactivity, [CiferTech] also made the local WiFi environment play a role. Nearby networks can influence the “hunger, happiness, and health” of the pet.

Incidentally, if you’ve ever wondered what made the Tamagotchi tick, we’ve explored that before, too.

Continue reading “Virtual Pet Responds To WiFi”

Need For Speed Map IRL

When driving around in video games, whether racing games like Mario Kart or open-world games like GTA, the game often displays a mini map in the corner of the screen that shows where the vehicle is in relation to the rest of the playable area. This idea goes back well before the first in-vehicle GPS systems, and although these real-world mini maps are commonplace now, they don’t have the same feel as the mini maps from retro video games. [Garage Tinkering] set out to solve this problem, and do it on minimal hardware.

Before getting to the hardware, though, the map itself needed to be created. [Garage Tinkering] is modeling his mini map on Need For Speed: Underground 2, including layers and waypoints. Through a combination of various open information sources he was able to put together an entire map of the UK and code it for main roads, side roads, waterways, and woodlands, as well as adding in waypoints like car parks, gas/petrol stations, and train stations, and coding their colors and gradients to match that of his favorite retro racing game.

To get this huge and detailed map onto small hardware isn’t an easy task, though. He’s using an ESP32 with a built-in circular screen, which means it can’t store the whole map at once. Instead, the map is split into a grid, each associated with a latitude and longitude, and only the grids that are needed are loaded at any one time. The major concession made for the sake of the hardware was to forgo rotating the grid squares to keep the car icon pointed “up”. Rotating the grids took too much processing power and made the map updates jittery, so instead, the map stays pointed north, and the car icon rotates. This isn’t completely faithful to the game, but it looks much better on this hardware.

The last step was to actually wire it all up, get real GPS data from a receiver, and fit it into the car for real-world use. [Garage Tinkering] has a 350Z that this is going into, which is also period-correct to recreate the aesthetics of this video game. Everything works as expected and loads smoothly, which probably shouldn’t be a surprise given how much time he spent working on the programming. If you’d rather take real-world data into a video game instead of video game data into the real world, we have also seen builds that do things like take Open Street Map data into Minecraft.

Thanks to [Keith] for the tip!

Continue reading “Need For Speed Map IRL”