Building A Pocket Sized Arduino Oscilloscope

There’s little question that an oscilloscope is pretty much a must-have piece of equipment for the electronics hacker. It’s a critical piece of gear for reverse engineering devices and protocols, and luckily for us they’re as cheap as they’ve ever been. Even a fairly feature rich four channel scope such as the Rigol DS1054Z only costs about as much as a mid-range smartphone. But if that’s still a little too rich for your taste, and you’re willing to skimp on the features a bit, you can get a functional digital oscilloscope for little more than pocket change.

While there are a number of very cheap pocket digital storage oscilloscopes (DSOs) on the market, [Peter Balch] decided he’d rather spin up his own version using off-the-shelf components. Not only was it an excuse to deep dive on some interesting engineering challenges, but it ended up bringing the price even lower than turn-key models. Consisting of little more than an Arduino Nano and a OLED display, the cost comes out to less than $10 USD for a decent DSO that’s about the size of a matchbox.

But not a great one. [Peter] is very upfront about the limitations of this DIY pocket scope: it can’t hit very high sample rates, and the display isn’t really big enough to convey anything more than the basics. But if you’re doing some quick and dirty diagnostics in the field, that might be all you need. Especially since there’s a good chance you can build the thing out of parts from the junk bin.

Even if you’re not looking to build your own version of the Arduino-powered scope [Peter] describes, his write-up is still full of fascinating details and theory. He explains how his software approach is to disable all interrupts, and put the microcontroller into a tight polling loop to read data from the ADC as quickly as possible. It took some experimentation to find the proper prescaler value for the Atmega’s 16MHz clock, but in the end found he could get a usable (if somewhat noisy) output with a 1uS sample rate.

Unfortunately, the Arduino’s ADC leaves something to be desired in terms of input range. But with the addition of an LM358 dual op-amp, the Arduino scope gains some amplification so it can pick up signals down into the mV range. For completion’s sake, [Peter] included some useful features in the device’s firmware, such as a frequency counter, square wave signal source, and even a voltmeter. With the addition of a 3D printed case, this little gadget could be very handy to have in your mobile tool kit.

If you’d rather go the commercial route, Hackaday’s very own [Jenny List] has been reviewing a number of very affordable models such as the DSO Nano 3 and the JYE Tech DSO150 build-it-yourself kit.

[Thanks to BaldPower for the tip.]

Arduino Powered Portable Function Generator

It’s probably not much of a stretch to say that many of us have taken on a project or two that were little more than thinly veiled excuses to add a new tool or piece of gear to our arsenal. There’s something to be said for a bench full of button-festooned test equipment blinking away, it’s like bling for nerds. But just like getting your name written out in diamonds, it can get expensive quick.

Luckily, the hacker has enough technology at their disposal these days that DIY test equipment can help fill your bench without emptying your wallet. [Faransky] has created a very impressive Arduino function generator that doesn’t skimp on the features. Capable of generating sine, triangle, and square waves up to 10MHz with its all-digital circuitry, it’s a piece of gear that’s well worth the $30 USD or so it should cost to build your own version.

For those worrying that [Faransky] is relying on the PWM functionality of the Arduino Nano to generate waveforms, have no fear. At the heart of the device is a AD9833 waveform generator; with the Arduino, rotary encoder, and 16×2 LCD providing an interface to control it over SPI.

Unfortunately, the AD9833 doesn’t have a way to control amplitude, something which is pretty important in a function generator. So [Faransky] uses a X9C104P 100KOhm 8-bit digital potentiometer as a voltage divider on the chip’s output.

To wrap up the build, he added a 2000mAh 3.7V Li-Ion battery and TP4056 charger, with a DC-DC boost converter to get 5V for the Arduino. Though if you wanted to create a benchtop version of this device, you could delete those components in favor of a 5V AC/DC adapter.

We’ve seen our fair share of DIY function generators, ranging from minimalist builds to hardware that could pass for a commercial offering. We’ve even seen some cheap turn-key function generators, though the usual warnings about getting what you pay for apply.

Continue reading “Arduino Powered Portable Function Generator”

Bucky Glow: Have a Ball While You Practice Coding

About a year ago, [Jonathan Bumstead] built a giant, touch-sensitive, interactive RGB LED geodesic dome that somehow escaped our attention entirely. For this year’s Hackaday Prize, he’s designed a smaller version that’s just as awesome, but a lot faster and easier to build.

The Bucky Glow is great way for hackers of all ages to expand their coding and problem solving skills. This interactive dodecahedron consists of 11 RGB LEDs and a Nano inside 12-sided laser-cut MDF sculpture. The breakout header means you’re free to add interactive bits like a DIY capacitive touch keyboard, IR sensor/emitter pairs, motors, or whatever you want.

When it’s time to relax, Bucky Glow puts on a light show. It comes ready to party without any programming necessary, but if you wanna put on some Pink Floyd and get your hands dirty, [Jonathan]’s custom Processing app makes it easy to program complex light shows.

[Jonathan] is currently working on some different Bucky Glow dissemination methods, such as a kit version. For now, you can buy a fully assembled Bucky Glow through the One Bit Kit store. Interact with the break to try it before you buy it.

Continue reading “Bucky Glow: Have a Ball While You Practice Coding”

Driftwood Binary Clock Is No Hollow Achievement

It’s about time we had another awesome clock post around here. [Mattaw] has liked binary clocks since he was 0 and decided to make one in stunning fashion by using driftwood, nature’s drillable, fillable enclosure.

That beautiful wiring job on the RGB LEDs was done in 18g copper. To keep the LEDs aligned during soldering, he drilled a a grid of holes just deep enough to hold ’em face down. There’s an IR remote to set the time, the color, and choice of alarm file, which is currently set to modem_sound.mp3.

Under the wood, there are a pair of Arduino Nanos, an mp3 decoder board, and an RTC module. Why two Nanos, you ask? Well, the IR interrupts kept, uh, interrupting the LED timing. The remote feature was non-negotiable, so [mattaw] dedicated one Nano to receive remote commands, which it streams serially to the other. Here’s another nice touch: there’s an LDR in one of the nooks or crannies that monitors ambient light so the LEDs are never too bright. Don’t wait another second to check it out—we’ve got 10 videos of it after the break.

Believe it or not, this isn’t the first binary clock we’ve seen.  This honey of a clock uses RGB LEDs to tell the time analog style.

Continue reading “Driftwood Binary Clock Is No Hollow Achievement”

R/C Rocket-Beest Burns Up Fuses Out There Alone

We’re beginning to think the “S” in [Jeremy S Cook] stands for strandbeest. He’ll be the talk of the 4th of July picnic once he brings out his latest build—a weaponized, remote-controlled strandbeest that shoots bottle rockets. There are a bank of money shots up on Imgur.

This ‘beest is the natural next step after his remote-controlled walker, which we featured a month or so ago. Like that one, the locomotion comes from a pair of micro gear motors that are controlled by an Arduino Nano over Bluetooth. The pyrotechnics begin when nitinol wire cleverly strung across two lever nuts is triggered. All the electronics are housed inside a 3D-printed box that [Jeremy] designed to sit in the middle of the legs. We love the face plate he added later in the build, because those gumdrop LED eyes are sweet.

Can you believe that this vehicle of destruction began as a pile of innocent, pasta-colored pieces of kit? We dig the camouflaged battleship paint job, ’cause it really toughens up the whole aesthetic. And really, that’s probably what you want if you’re driving around a spindly beast that can just shoot rockets whenever. Let’s light this candle after the break, shall we?

Continue reading “R/C Rocket-Beest Burns Up Fuses Out There Alone”

Arduino Watchdog Sniffs Out Hot 3D Printers

We know we’ve told you this already, but you should really keep a close eye on your 3D printer. The cheaper import machines are starting to display a worrying tendency to go up in flames, either due to cheap components or design flaws. The fact that it happens is, sadly, no longer up for debate. The best thing we can do now is figure out ways to mitigate the risk for all the printers that are already deployed in the field.

At the risk of making a generalization, most 3D printer fires seem to be due to overheating components. Not a huge surprise, of course, as parts of a 3D printer heat up to hundreds of degrees and must remain there for hours and hours on end. Accordingly, [Bin Sun] has created a very slick device that keeps a close eye on the printer’s temperature at various locations, and cuts power if anything goes out of acceptable range.

The device is powered by an Arduino Nano and uses a 1602 serial LCD and KY040 rotary encoder to provide the user interface. The user can set the shutdown temperature with the encoder knob, and the 16×2 character LCD will give a real-time display of current temperature and power status.

Once the user-defined temperature is met or exceeded, the device cuts power to the printer with an optocoupler relay. It will also sound an alarm for one minute so anyone in the area will know the printer needs some immediate attention.

We’ve recently covered a similar device that minimizes the amount of time the printer is powered on, but checking temperature and acting on it in real-time seems a better bet. No matter what, we’d still suggest adding a smoke detector and fire extinguisher to your list of essential 3D printer accessories.

Continue reading “Arduino Watchdog Sniffs Out Hot 3D Printers”

Robot Dances to the Beat of New YouTube Subs

Sure, you could build some kind of numerical counter to keep track of new YouTube subscribers. But does an increasing digit display truly convey the importance of such an event? Of course not. What you need is something that recognizes this achievement for what it is and celebrates it with you. Something like Subby, the Interactive YouTube Subscriber Robot.

Whenever [brian brocken] gets a new subscriber, Subby’s little TV screen face lights up, and he either dances, salutes, or does another move within his impressive range of motion. [brian] wrote a Visual Basic app that searches his channel’s page for the subscriber count and sends it to the Nano’s COM port over serial every thousand milliseconds. [brian]’s got the VB app and all the STL files available on IO through Dropbox. Moonwalk past the break to watch Subby get down.

We like that Subby is too focused on celebrating each new subscriber to care about the total number itself. Maybe he could be programmed to do some extra special moves whenever the channel hits a milestone.

Continue reading “Robot Dances to the Beat of New YouTube Subs”