Deeply Optimized MSX Emulation On ESP32-S3 With VGA Output

ESP32-S3 board with VGA and audio output during development. (Credit: Ivan Svarkovsky)
ESP32-S3 board with VGA and audio output during development. (Credit: Ivan Svarkovsky)

The ESP32-S3 is by many metrics quite the powerful little computer, which has led to it being used even for things like emulating retro consoles and similar. Here [Ivan Svarkovsky]’s S3-MSX-PC project pushes the envelope by taking the multi-system Retro-Go project’s MSX component and optimizing it for the ESP32-S3’s Xtensa Lx7 CPU cores.

The project involves an ESP32-S3 as the core, requiring at least 8 MB of PSRAM (N16R8 configuration) to match the tested configuration. Any software is loaded into PSRAM before it’s executed, with the MSX1, MSX2 and MSX2+ supported.

For audio you have to wire up your own PDM filters to connect to the two GPIO pins that are used for audio output, while VGA output is handled by a basic 2-bit R-2R RGB222 DAC. For input devices you can use any USB keyboard, while software is added via the web interface or directly onto an SD card.

The Technical Deep Dive section goes into more detail as to what exactly got changed – with the blessing of the fMSX author – in the original fMSX core, such as targeting the Lx7 core’s cache dimensions and optimizing hot paths to avoid bottlenecks. Memory accesses were aligned for Xtensa and moving certain data from Flash to RAM was another change, along with the prevention of pipeline flushing due to certain branching decisions.

Considering that MSX specifications are based on a Z80 core, it’s not so crazy that one of these ESP32-S3 MCUs can effectively emulate them. The Retro-Go project itself claims to cover a whole swath of Nintendo and Sega consoles, as well as others, making it almost too easy to do some retrogaming without even having to drag out a Raspberry Pi SBC or so.

Homebrew Macropad Looks Good

We are fans of macro pads and especially homebrew ones. The Apna Dost project by [np_vishwakarma] ticks most of our boxes. In addition to a few buttons, there’s an encoder, an OLED display, and it runs QMK firmware. Plus, it looks good, too.

We like that the system uses an RP2040. It is possible you have everything you need to put one of these together right now. We would wish for a few more keys, but it wouldn’t be hard to add them, either.

Continue reading “Homebrew Macropad Looks Good”

The Air Position Indicator For The B-29

When you think of a computer, you probably don’t think of a tube full of motors and mechanics. However, as [Our Own Devices] shows, the Bendix AN5841 API Computer, an air position indicator computer, is exactly that. Using mechanical integrators and data from other analog systems on an airplane to provide key flight data to a pilot. You can see the video below.

These devices were made for military aircraft, including the B-29. It is odd that speed data can be derived from a pump that balances pressures using a fan. The video does a good job of explaining exactly how that works.

Continue reading “The Air Position Indicator For The B-29”

Building A 1:150 Scale Toyota ProBox Micro Remote Control Car

Although in our imagination those scale models of cars certainly can drive and steer just like their full-scale counterparts, there’s something incredibly satisfying about watching them truly come to life. Here [diorama111] is an absolute master at the craft, with the most recent conversion of a 1:150 Toyota Probox car model once again demonstrating these skills with casual ease.

We previously covered such conversions, with another recent one in 2024 involving another 1:150 scale model. That particular one demonstrated driving around on scale model roads, which shows a good practical use of this conversion if you want to have e.g. a scale model town with cars that actually drive around.

In the video you can see how first the base of the scale model has a tiny 25 mAh Li-polymer battery installed, along with two motors, one for steering and one for driving using a rod-linkage system and a lead screw.

The tiny gears used were salvaged from mechanical watches, with photoreflectors keeping track of the driving and steering positions. Remote control is done by infrared, with a tiny SMD IR receiver module in the car, while charging and programming of the MCU is done via terminals installed on the bottom.

In the final part of the video the car is demonstrated driving around, with working head- and rear lights, as well as blinkers and stop lights, including the top rear one. In the video description links are provided to the various schematics and software on Google Drive for those who are feeling like a fun Sunday afternoon project.

Continue reading “Building A 1:150 Scale Toyota ProBox Micro Remote Control Car”

Adding Weight To A 3D Print With Plaster Of Paris, Cleanly

Sometimes it’s useful to add extra mass to a 3D print, and [Joe Fedewa] shared a simple and effective technique that uses plaster of Paris. Rather than pause the print and insert hardware or weighted bits inside, he designed the base as hollow. Not in the sense of zero infill, but in the sense of modeling a cavity into the open bottom of the object.

An open cavity in the base is perfect for filling with plaster of Paris.

After the print is complete, he mixes the dry plaster with water until it creates a thick but pourable mixture. Then the object gets turned upside-down and the cavity filled. In about an hour, it will have set up enough to be handled and worked.

Plaster of Paris has a good heft to it, but more importantly it can be made perfectly presentable thanks to being very friendly to post-processing. Any rough spots can be easily sanded and the whole bottom smoothed, so one doesn’t even need to cap it off. Completely cured plaster can be sealed with a clear coat for a more durable finish, if desired.

This basic concept has been used in other ways, such as reinforcing prints with concrete to yield parts solid enough to make tools out of. But using plaster of Paris not just to add mass, but specifically to create a presentable surface that doesn’t need covering up is a neat and highly economical adaptation of the idea.

Other methods of adding mass to a 3D print include inserting metal balls or chunky nuts, bolts, or other hardware, but this method doesn’t require pausing prints to insert things. Nor does it require sealing off or capping the print, messing with goopy epoxies or resins, or spending a lot of money — making it a good one to keep in mind in case it comes in handy someday.

Hackaday Podcast Ep 373: GPS, Danger In Space, And Robby The Robot

Last week, Elliot got his foot stepped on by a 1.5 metric ton draft horse, and boy is he glad to be back to the relative safety of podcasting! Joining him today is Jenny List, no stranger to farm life, who has been trodden by a cow. It’s going to be one of those podcasts, folks.

Another thing the two hosts have in common is a love for the mystery of the numbers station. But did you know that GPS satellites, for the last 20 years, have broadcast literally millions of secret messages to everyone on the earth with a receiver? After that bombshell, we have an ATtiny85 emulating an 8080, a primer on how to embed magnets in 3D prints, definitive proof that more than one cassette mechanism is still being manufactured, and a look at what makes home automation enthusiasts tick.

Check out the links below if you want to follow along, and as always, tell us what you think about this episode in the comments!

Download in DRM-free MP3 and play it in space.

Continue reading “Hackaday Podcast Ep 373: GPS, Danger In Space, And Robby The Robot”

A Peek Inside The Secret Lagercrantz Suitcase Radio

What counts as portable is somewhat a matter of opinion, especially over the years. [Helge Fykse] has a portable spy radio of Swedish origin. For its time, it was considered very portable, crammed into a good-sized suitcase.

You can see the large crystal that sets the transmit frequency and a key to send Morse code. The receiver has a VFO, so it was more agile. Based on the regenerative knob, it appears the receiver was of the regenerative type. The suitcase had its own battery, and with tubes, it could probably put out some kind of signal if connected to anything metal, like bedsprings, a clothesline, or anything. There was a lightbulb to let you see when you were transmitting maximum power.

Speaking of tubes, there were five inside, two for the transmitter and three for the receiver. The radio had storage for spare tubes, and the agent could maintain the radio in the field.

You not only get a peek inside the suitcase, but a look at the schematic. The radio is a model of simplicity, but we are certain it did its job.

We love looking at exotic spy gear, especially radios.

Continue reading “A Peek Inside The Secret Lagercrantz Suitcase Radio”