A Usable Arduino Debugging Tool

For as popular as the Arduino platform is, it’s not without its problems. Among those is the fact that most practical debugging is often done by placing various print statements throughout the code and watching for them in the serial monitor. There’s not really a great way of placing breakpoints or stepping through code, either. But this project, known as eye2see, hopes to change that by using the i2c bus found in most Arduinos to provide a more robust set of debugging tools.

The eye2see software is set up to run on an Arduino or other compatible microcontroller, called the “probe”, which is connected to the i2c bus on another Arduino whose code needs to be debugged. Code running on this Arduino, which is part of the eye2see library, allows it to send debugging information to the eye2see probe. With a screen, the probe can act as a much more powerful debugger than would otherwise typically be available, being able to keep track of variables in the main program, setting up breakpoints, and outputting various messages on its screen.

The tool is not without its downsides, though. The library that needs to run on the host Arduino slows down the original program significantly. But for more complex programs, the tradeoff with powerful debugging tools may be worth it until these pieces of code can be removed and the program allowed to run unencumbered. If you’d like to skip needing to use a second Arduino, we’ve seen some other tools available for debugging Arduino code that can run straight from a connected PC instead.

Vacuum Chamber Gets Automation

[Nick Poole] does a lot of custom work with vacuum tubes — so much so that he builds his own vacuum tubes of various shapes, sizes, and functions right on his own workbench. While the theory of vacuum tubes is pretty straightforward, at least to those of us who haven’t only been exposed to semiconductors, producing them requires some specialized equipment. A simple vacuum won’t get you all the way there, and the complexity of the setup that’s needed certainly calls for some automation.

The vacuum system that [Nick] uses involves three sections separated by high-vacuum valves in order to achieve the pressures required for vacuum tube construction. There’s a rough vacuum section driven by one pump, a high vacuum section driven by a second pump, and a third section called the evac port where the tube is connected. Each second must be prepared properly before the next section can be engaged or disengaged. An Arduino Pro is tasked with all of this, chosen for its large amount of ADC inputs for the instrumentation monitoring the pressures in each section, as well as the digital I/O to control the valves and switches on the system.

The control system is built into a 19-inch equipment rack with custom faceplates which outline the operation of the vacuum system. A set of addressable LEDs provide the status of the various parts of the system, and mechanical keyboard switches are used to control everything, including one which functions as an emergency stop. The automation provided by the Arduino reduces the chances for any mistakes to be caused by human error, allows the human operator to focus on other tasks like forming the glass, and can also react much faster to any potentially damaging situations such as the high-pressure pump being exposed to atmospheric pressure.

As you can probably tell, [Nick] is pretty passionate about this stuff — last year he gave a talk at the Hackaday Supercon that went over all the intricacies of building one’s own vacuum tubes.

Continue reading “Vacuum Chamber Gets Automation”

OLED Display Lets Vintage PC Engage Turbo Mode In Style

Back in the 486 days, it was common to see a “Turbo” button on the front panel of many PCs, which was used to toggle between the CPU’s maximum speed and a slower clock rate that was sometimes necessary for compatibility with older software. Usually an LED would light up to show you were running at this higher speed, or if your machine was very fancy, it might even have a numerical display that would show the current CPU frequency.

[Joshua Woehlke] wanted to add a similar display to his 486, but figured that with modern technology, he could do something a bit more interesting. Especially when he realized that the spot on his case where the two-digit LED display would have originally been mounted was the perfect size to hold a common 0.96″ SSD1306 OLED. From there it was just a matter of wiring it up to an Arduino and writing some code to display different graphics depending on the computer’s current CPU speed.

Just like the frequency indicators of yore, the Arduino doesn’t actually measure the CPU’s frequency, it’s simply reading the state of the Turbo LED on the front panel. When the LED is off the Arduino shows an image of a i8088 CPU on the screen to indicate the computer is running in compatibility mode, and when the LED is on, the screen shows the Cyrix Cx486 DX2 logo. When the button hasn’t been pressed in awhile, the display defaults to a star field screensaver.

Regular readers may recall we recently covered a similar project that used an Arduino to add a little flair to an era appropriate seven-segment LED display. We’d say there’s still a good deal of romanticism about computers having a big “TURBO” button you can smash whenever you feel the need for speed.

486 Gets Animated Turbo Button Thanks To Arduino

There was a point in time, excruciatingly brief, in which desktop computers often had a large “TURBO” button on their front panel. Some even featured an LED display that would indicate the current CPU frequency, providing visual conformation that your machine had leaped to a blistering 66 MHz.

The 486 that [someyob] is restoring had the Turbo button, but sadly there was just a simple LED to show whether or not it was engaged. But there was a window in the front panel where it seemed like a numerical display was intended to go, so they decided to wire up their own CPU indicator by sensing the state of the Turbo LED with an Arduino Pro Mini.

Now to modern audiences, this might seem like cheating. After all, the Arduino isn’t actually measuring the CPU speed, nor is it directly controlling it (that’s still done by the original Turbo button wiring). But the truth is, even back in the day, the CPU frequency displays faked it — they just toggled between showing two predefined frequencies depending on the state of the button. The arrangement [someyob] has come up with does the same thing, except now there’s some extra processing power in the mix, so the display can show some slick animations as it switches between 33 and 66 Mhz.

In the GitHub repository, [someyob] has provided the Arduino source code and schematics showing how the microcontroller was shoehorned into the existing front panel wiring without compromising its functionality. There’s even a brief video below that shows the display in operation.

Like the idea but don’t have a 486 laying around? Don’t worry. We’ve seen a similar panel built for modern machines that  just doesn’t look the part, it actually manages to be functional.

Continue reading “486 Gets Animated Turbo Button Thanks To Arduino”

Shake, Rattle, Roll, With Your Own Seismograph

We always love to see projects where you can build your own lab equipment so [CompactDIY’s] homemade seismograph caught our eye. The design uses an Arduino with an accelerometer and builds on one of their earlier projects. You can see a video of the device below.

The principle is simple. A hobby servo controls a pen and a stepper motor rolls paper, creating a makeshift strip recorder. Its software uses the Visuino system, which is a flowchart-like system, but it outputs Arduino code. Honestly, we would probably have just plotted the data on a PC, but there’s a certain charm to the strip recorder and the idea would work for other types of data recording projects, too. We thought if you rearranged the stepper motor and cut a paper disk out, you could also have a circular chart recorder easily, which wouldn’t need to friction transport the paper. A clock motor would make it even less dependent on software, too.

If this project interests you, try a Raspberry shake, which isn’t as delicious as it sounds. Or, keep an eye on the entire globe, if you prefer.

Continue reading “Shake, Rattle, Roll, With Your Own Seismograph”

Punched Cards Are In The Cloud, With This Arduino

Grizzled veterans of the computing industry will relate stories of submitting projects on stacks of punched cards, something those of us who stored their 8-bit works on audio cassettes could only imagine. But for those who fancy experimenting with the format it’s still possible to make a basic card reader using LEDs and light sensors, as [Nino Ivanov] has done using an Arduino Uno as the brains. And these aren’t just for show, each of his cards holds a LISP program that runs in a cloud service.

The Uno does the job of reading, passing its data over its USB serial port to a tablet. On the tablet the serial data is piped to a cloud API to a LISP interpreter. It seems a needlessly complex way to run a factorial program and it’s certainly a little over the top, but on the other hand we love it as a glorious combination of the old and the new. With only 23 characters per card it’s quite an impressive feat to even fit a program on the format, perhaps writing code to fit on minimalist punched cards like this could become a programming challenge in its own right for a generation accustomed to mega-and gigabytes.

If you fancy a go yourself, this isn’t the first punched card reader we’ve shown you.

Continue reading “Punched Cards Are In The Cloud, With This Arduino”

Moon Phase Lamp Uses Rotating Shade

The Moon has fascinated humanity for centuries. These days, though, it’s a trial and a bore to go outside and stare upwards to check on the natural satellite. Instead, why not bring the Moon to your bedside with this rotating phase lamp?

The build comes to us from [payasa_manandhar], who did a good job of replicating the Moon in both form and function. It’s based around a lithophane of the lunar surface, which adequately duplicates the Moon’s grey pockmarked visage thanks to topographical data sourced from NASA. It looks a treat when backlit from the inside. However, this is no mere ornamental lamp. With the aid of a stepper motor controlled by an Arduino, a shade inside the lamp actually rotates to shadow the Moon as per the appropriate phase.

It’s a build that is both fun and educational, in both the electronic and astronomical disciplines. We’ve seen some other great Moon lamps before, too.