Slick Web Oscilloscope Is Ready In A Flash (Literally)

A bench oscilloscope is one of the most invaluable tools in the hardware hacker’s arsenal, but even the slimmest digital models are a bit large to be part of your everyday electronic carry. Sure you could throw one of those cheap pocket scopes in your bag, but what if there was an even easier way to take a peek at a few signals while you’re on the go?

For those who roam, the Arduino-web-oscilloscope project created by [David Buezas] is worth a close look. Using the Web Serial API built into recent versions of Google’s Chrome browser, this project allows you to pop open a software oscilloscope without installing anything locally. Whether it’s a public computer or that cheap Chromebook you keep around for emergencies, a valuable tool is just a few clicks away.

Flashing the MCU from the web interface.

Of course, there has to be some hardware involved. Despite what you might think given the name of the project, the code currently only supports the Logic Green LGT8F328P microcontroller. This cheap ATmega328P clone not only runs at 32 Mhz but according to [David], many operations can be done in fewer clock cycles than on the original 328P. In short it’s fast, and fast is good if you want more samples.

One of the best parts about this project is that a function to flash the firmware to the LGT8F328P is built right in the web interface. With the oscilloscope running in the browser, you just need to plug in a blank board, click the button to flash it, and start taking measurements. You could outfit a whole classroom or hackerspace with basic oscilloscopes in minutes, with a per-seat cost of just a few bucks.

Now as you might expect, there are some pretty hard limits on what you can realistically measure with this setup. For one thing, the board can’t handle anything higher than 5 volts. Even the cheapest oscilloscope kit is still going to be an upgrade, but the fact you can spin this up almost anywhere for the cost of a cheap MCU board makes it hard to complain about the results.

[Thanks to Bill for the tip.]

How Tiny Can A Microcontroller Dev Board Be!

With innumerable microcontroller boards on the market it’s sure that there will be one for every conceivable application or user. Among them are some seriously tiny ones, but this wasn’t enough for [Alun Morris]. Wanting to see how small he could make an ATtiny board without a custom PCB, he took a SOIC-8 version of the popular minimalist processor and mated it to a 6mm by 8mm piece of 0.05″ prototyping board to create a device that is dwarfed by its connectors.

It’s an extremely simple circuit and hardly something that hasn’t been done before, but the value here is in the tricky soldering to make it rather than its novelty. The ATtiny402 and three passive SMD components are fitted on the smallest possible sliver of prototyping board to contain them, and the female headers and set of programming pins contribute far more to the volume of the device than the board itself. He also tried a side-on design with two smaller slivers of board before settling on the more conventional layout. The demonstration of the system in action seen in the video below the break is a magnetic flux detector, dwarfed by the 40-pin DIP Z80 it is sitting on.

A lot of boards claim to be tiny, but few are this small. This ESP32 is a more usual contender.

Continue reading “How Tiny Can A Microcontroller Dev Board Be!”

An E-Book Reader, But Just For Haiku

E-ink displays haven’t revolutionized the world so much as served us humbly in e-book readers such as the Kindle and its ilk. Most such readers are designed for extended sessions reading novels and the like, but [Roni Bandini] decided a haiku-sized device was in order. 

The diminutive device runs off an ESP32, which has plenty of clock cycles for easily driving displays. It’s paired with a 2.9 inch Waveshare e-ink display, upon which it delivers poetry in the popular Japanese haiku format – 5 syllables, 7 syllables, 5 syllables. Writing to the display is easy with the GxEPD library, which is compatible with a variety of common e-ink displays. Presently the poetry is hardcoded in the program, and there’s plenty that could be included with the ESP32’s roomy program storage. However, [Roni] notes it would be simple to have the reader pull poems from an SD card instead.

It’s a fun project, and a great way to get familiar with the basics of working with e-ink displays. We’d love to see a WiFi-enabled version that pulls down the hottest daily haikus fresh from the web, too. Funnily enough, our own archives only feature one other reference to the famous Japanese art, which has little to do with poetry. If you fancy changing that, make something relevant and drop us a line. Video after the break.

Continue reading “An E-Book Reader, But Just For Haiku”

DRehmFlight: Customizable Flight Stabilisation For Your Weird Flying Contraptions

The availability of cheap and powerful RC motors and electronics has made it possible for almost anyone to build an RC flying machine. Software is usually the bigger challenge, which has led to the development of open-source packages like BetaFlight and Ardupilot. These packages are very powerful, but not easy to modify if you have unconventional requirements. [Nicholas Rehm] faced this challenge while doing his master’s degree, so he created dRehmFlight, a customizable flight controller for VTOL aircraft. Overview video after the break.

dRehmFlight runs on Teensy 4.0 with a MPU6050 or MPU9250 IMU

[Nicholas] has been building unique VTOL aircraft for close to a decade, and he specifically wanted flight stabilization software that is easy to modify and experiment with. Looking at the dRehmFlight code, we think he was successful. The main flight controller package is a single file of fewer than 1600 lines. It’s well commented and easy to figure out, even for an inexperienced programmer. A detailed PDF manual is also available, with full descriptions for all the functions and important variables, and a couple of tutorials to get you started. Libraries for interfacing with accelerometers and RC gear is also included. It runs on a 600 Mhz Teensy 4.0, and all the programming can be done from the Arduino IDE.

[Nicholas] has repeatedly demonstrated the capabilities of dRehmFlight with several unique aircraft, like the belly flopping RC Starship we covered a while ago, a VTOL quad rotor biplane, VTOL F35, and the cyclocopter seen in the header image. dRehmFlight might not have the racing drone performance of BetaFlight, or advanced autopilot features of Ardupilot, but it’s perfect for getting unconventional aircraft off the ground. Continue reading “DRehmFlight: Customizable Flight Stabilisation For Your Weird Flying Contraptions”

Ghidra Used To Patch Fahrenheit Into An Air Quality Meter

Even though most of the world population couldn’t tell you what room or body temperature is in Fahrenheit, there are some places on this globe where this unit is still in common use. For people in those areas, it’s therefore a real hassle when, say, a cheap Chinese air quality measurement systems only reports in degrees Celsius. Fortunately, [BSilverEagle] managed to patch such a unit to make it display temperature in Fahrenheit.

The reverse engineering begins by finding a way to dump the firmware. It’s nice to hear that [BSilverEagle] used some the skills demonstrated in [Eric Shlaepfer’s] PCB reverse engineering workshop from Hackaday Remoticon last November to trace out the debug header and the SWD pins of STM32F103C8 MCU. After that, OpenOCD could be used to dump the firmware image, with no read protection encountered. The firmware was then reverse-engineered using Ghidra, so that [BSilverEagle] could figure out where the temperature was being calculated and where the glyph for the Celsius symbol was stored. From there this it was a straight-forward rewrite of those two parts of the original firmware to calculate the temperature value in Fahrenheit, change the glyph and reflash the MCU.

So why buy this thing in the first place if it didn’t spit out units useful for your current locale? Cost. Buying this consumer(ish) device was about the same cost as buying the individual parts, designing and manufacturing the PCB, and writing the firmware for it. The only downside for their use case was the lack of Fahrenheit. Not a problem for those who demand full control of the hardware they own.

Need a boot camp for using Ghidra? Matthew Alt put together a spectacular video series on Reverse Engineering with Ghidra.

FreeTouchDeck Upgrades Its Hardware And Its Name: ESP32 Touchdown

With many folks continuing to work from home for far longer than they ever thought, it’s no surprise that we’re seeing the rise of small DIY devices to make that video call or virtual presentation a little easier. [Dustin Watts] was interested in the functionality of the Elgato Stream Deck — a macro keyboard where each key is its own screen. But that kind of fancy hardware comes with a formidable price tag. So he built his own, and made it open source!

His first iteration — FreeTouchDeck — was built using commonly available modules but has since evolved into the ESP32 Touchdown which does it all with a single PCB. It’s a highly-customizable touchscreen macro keyboard which provide easy access shortcuts and macros for quick actions. Need a quick mute button, want to switch camera views on OBS, or maybe you want smarter shortcut keys for your CAD of choice. This will can get you there.

There a few key differences from the first version (FreeTouchDeck). The ESP32 dev board was ditched for a tidy PCB the directly integrates the module. This one has a capacitive touch controller (FT6236) rather than a resistive one as the capacitive screens deliver a far nicer user experience. A built-in battery and charger circuit (which the FreeTouchDesk didn’t have) allows for the extra bit of flexibility to stream from anywhere (within wireless range of course). Multiple case designs are available in STL form that allows it to be placed on a wall or desk with ease.

Datasheets, gerbers, kicad files, BOMs, and example firmware is provided on GitHub. The software is easily configurable so it can be set up to do any sort of macro, key combination, or action. This isn’t just limited to emulating a Bluetooth keyboard as there are examples showing how to connect to Home Assistant. All in all, this is a wonderful example of continued iteration on a project.

Thanks [Timothy Gregory] for sending this one in!

Bitbanged DVI On A Raspberry Pi RP2040 Microcontroller

When we first saw the Raspberry Pi Pico and its RP2040 microcontroller last month it was obvious that to be more than just yet another ARM chip it needed something special, and that appeared to be present in the form of its onboard PIO peripherals. We were eagerly awaiting how the community might use them to push the RP2040 capabilities beyond their advertised limits. Now [Luke Wren] provides us with an example, as he pushes an RP2040 to produce a DVI signal suitable to drive an HDMI monitor.

It shouldn’t be a surprise that the chip can be overclocked, however it’s impressive to find that it can reach the 252 MHz necessary to generate the DVI timing. With appropriate terminations it proved possible for the GPIO lines to mimic the differential signalling required by the spec. A PCB with the RP2040 and an HDMI socket was created, also providing a couple of PMOD connectors for expansion. All code and software can be found in a GitHub repository.

The result is a usable DVI output which though it is a relatively low resolution 640×480 pixels at 60 Hz is still a major advance over the usual composite video provided by microcontroller projects. With composite support on monitors becoming a legacy item it’s a welcome sight to see an accessible path to an HDMI or DVI output without using an FPGA.

Thanks [BaldPower] for the tip.