Hybrid Raspberry Pi + PIC32 = Oscilloscope and Function Generator

The PicBerry is a student final project by [Advitya], [Jeff], and [Danna] that takes a hybrid approach to creating a portable (and affordable) combination digital oscilloscope and function generator. It’s based on the Raspberry Pi, features an intuitive Python GUI, and can generate and measure simultaneously.

But wait! The Raspberry Pi is a capable little Linux machine, but meeting real-time deadlines isn’t its strong suit. That’s where the hybrid approach comes in. The Pi takes care of the user interface and other goodies, and a PIC32 over SPI is used for 1 MHz sampling and running a DAC at 500 kHz. The idea of combining them into PicBerry is to get the best of both worlds, with the Pi and PIC32 each doing what they are best at. The readings are sent in batches from the PIC32 to the Pi, where the plot is updated every 30 ms so that user does not perceive any visible lag.

The project documentation notes that improvements can be made, the speeds are a far cry from regular bench equipment, and the software lacks some typical features such as triggering, but overall not bad at all for under $50 of parts. In fact, there are hardly any components at all beyond the Raspberry Pi, the PIC32, and a MCP4822 digital-to-analog converter. A short demo video is embedded below.

Continue reading “Hybrid Raspberry Pi + PIC32 = Oscilloscope and Function Generator”

Hackaday Prize Entry: ESP Swiss Knife

The best equipment won’t help you if you don’t have it with you in the moment you need it. Knowledge, experience, and a thick skin may help you out there in the mud of the hardware battlegrounds, but they can’t replace a multimeter, an oscilloscope, a logic analyzer, a serial console or a WiFi access point. [Arcadia Labs] has taken on the challenge of combining most of these functions into a single device, developing the Hacker’s equivalent of a Swiss Army Knife: The ESP Swiss Knife.

esp_swiss_knife_enclosureJust like a Swiss Army Knife is first and foremost a knife, the EPS Swiss Knife is first and foremost an ESP8266. That means it is already a great platform for any kind of project, and [Arcadia Labs] supercharged the plain ESP-12E module by adding a couple of useful features commonly used in many projects. There’s an OLED display, four pushbuttons, a temperature sensor, and a Li-Ion cell with a charging module to power the device on the go. A universal “utility socket” breaks out the ESP8266’s leftover GPIOs and the supply voltage for attaching further peripherals.

With the hardware up and running, [Arcadia Labs] went on with building a couple of applications to provide the functionality that would make the device earn its name. Among them is a basic oscilloscope, a digital NTP based clock, a thermometer, a WiFi tester, a weather station and a 3D printer status monitor. More applications are planned, such as a chronometer, a timer, a DSLR intervalometer and more. A protective 3D printable enclosure is also in the works. [Arcadia Labs] has been joining the Hackaday Prize 2014 and 2015 before and we’re glad to see another great build coming into existence!

The HackadayPrize2016 is Sponsored by:

One Dollar USB Sound Card Turned O-Scope

Using the inputs on a computer’s sound card is an old trick to fake a very simplistic, AC coupled, slow oscilloscope. You can get DC operation by desoldering a couple capacitors, but if the sound card is integrated into the motherboard it raises the stakes if you mess that up.

[TMSZ] has a better option, a ~1 dollar USB sound card which is easily hacked to work as a simple oscilloscope. Easily found on eBay, the 7.1 virtual channel sound card is identical in brains to a more expensive c-media model, but the layout of the PCB makes it easier to bypass the DC blocking caps. Software and DLL files to use the sound card with Miniscope v4 — a Windows GUI for oscilloscopes — are also linked, so getting set up should be fairly simple.

Now of course this is not lab-grade measurement equipment: the sampling rate is limited to 44KHz and the voltages must be in the typical “line level” range, under two volts. If you don’t mind a little extra noise, you can increase the input impedance with a single resistor. This extends the input range up to six volts, which covers most hobby and microcontroller usage.

So if you’re really in need of a scope, but only have a buck to spend, this may be just the hack for you! Those willing to shell out a hefty sum for a high-end headless oscilloscope should look onto the virtual bench.

Homebrew Analog Scope Project Log

[GK] had some old CRTs lying around, so naturally he decided to build an old school analog scope with one of them. Lucky for us, he’s been documenting his progress. Since it was a big project to tackle, he started out with Spice modeling to work out all the right values.

Prototyping the power supply took some custom transformer winding, but when done, the power supply did the job. Although he’s still wiring up the Z (intensity) axis, the scope is already capable of displaying signals and even text characters using a character generator he built earlier (see video below).

[GK] spends most of the time so far talking about the high voltage power supply design. For the particular tubes he had on hand he needed +200V, -400V, -550V, and 6.3VAC for the CRT heater. This is certainly not the typical Arduino-based digital scope that everyone builds at least once.

We love analog scopes for art projects, logic analyzer conversions, and gaming. Of course, if you don’t have an old CRT in your parts bin, you might consider trying a laser.

Continue reading “Homebrew Analog Scope Project Log”

DIY Oscilloscope with a Scanning Laser

If you’ve ever used an old-school analog oscilloscope (an experience everyone should have!) you probably noticed that the trace is simply drawn by a beam that scans across the CRT at a constant rate, creating a straight line when there’s no signal. The input signal simply affects the y-component of the beam, deflecting it into the shape of your waveform. [Steve] wrote in to let us know about his home-built “oscilloscope” that works a lot like a simple analog oscilloscope, albeit with a laser instead of  a CRT.

[Steve]’s scope is built out of a hodgepodge of parts including Lego, an Erector set, LittleBits, and a Kano Computer (based on a Raspberry Pi). The Pi generates a PWM signal that controls the speed of a LittleBits motor. The motor is hooked up to a spinning mirror that sweeps the laser across some graph paper, creating a straight laser line.

After he got his sweep working, [Steve] took a small speaker and mounted a mirror to its cone. Next he mounted the speaker so the laser’s beam hits the mirror on the speaker, the spinning sweep mirror, and finally the graph paper display. The scope’s input signal (in this case, audio from a phone) is fed into the speaker which deflects the laser beam up and down as it is swept across the paper, forming a nice oscilloscope-like trace.

While [Steve]’s scope might not be incredibly usable in most cases, it’s still a great proof of concept and a good way to learn how old oscilloscopes work. Check out the video after the break to see the laser scope in action.

Continue reading “DIY Oscilloscope with a Scanning Laser”