UPDATE: I mave a new version of this software. Check the link at the bottom of this page
Have you ever seen someone making a drawing on an oscilloscope screen? Did you ever wanted to? Well, now you can. And, by "now", I'm not saying that you need to buy some hardware or mount some hacking device to create your drawing. "Now" is right now.
Let me introduce you to Rabiscoscopio: A simple and free software that convert your drawings into oscilloscope images.
You know that an oscilloscope can turn audio into an image. So, if we turn an image into audio and feed the audio to the oscilloscope, we'll get the original image on screeb.
Rabiscoscopio (It means something like doodle-scope in Brazilian Portuguese) has no secrets:
- Make a single-line SVG drawing, using Inkscape or some other drawing software
- Use Rabiscoscopio do convert this drawing into an sound-wave file
- Play this file using your computer, iPod or other sound device, connected to your oscilloscope set to XY mode.
- Make a picture of your oscilloscope drawing and send to me, please! :)
So, check this example:
This is an oscilloscope generating the logo of Garoa Hackerspace, in São Paulo-Brazil (Where these images were taken). It was connected to a laptop playing the sound file generated by Rabiscoscopio.
So, how it works?
Rabiscoscopio is easy to operate. When you start it, you see two buttons:
- The first one opens the SVG file
- The second one refresh the wave file if you change the on-screen options
The options are:
- wave length: The duration, in seconds, of your drawing. Remember that it will be converted into a sound wave. So, the time needed to draw your SVG on screen will be the wave-length of your signal. Use this to ajust your oscilloscope Time/DIV
- Soud file size: The duration, in seconds, of the generated sound file.
Once the SVG file is read, Rabiscoscopio breaks it in two signals: One for each oscilloscope input. The first signal represents the X-axis of the drawing, and the second one represents the Y-axis (You can see the original SVG here on the right)
Whenever you open a SVG file or hit the refresh button, Rabiscoscopio generates a sound file (WAV) with the same name of the original SVG file. This file contains two sound channels: The X-axis in left channel and Y-axis in right channel, as you can see on this Audacity screenshot:
Now you just need to play this sound on your computer, connecting two oscilloscope testpoints to your stereo sound output.
If you can see the two waves, each one on an oscilloscope input signal, just press the XY button on oscilloscope and enjoy your image.
Here you can hear the sound that makes this drawing:
(Note: Youtube applies lossy compression to video sounds, so this video sound doesn't provides a good drawing. But you can get the original sound file here)
Some hints for your drawings:
- Make a single line. The oscilloscope needs a continuos signal wave, so you need to make sure your drawing contains only one line
- Use only straigth lines in SVG files. At this time, Rabiscoscopio cannot read SVG with splines, circles or Bezier curves
- If the oscilloscope starts showing a diagonal line, try hitting the XY button a few times until it syncs with the audio signal.
- It just supports straight lines. That means that you can't use curves/circles/splines/bezzier on the final drawing, yet. But you can use them on Inkscape and convert them to straight lines when you've finished your drawing. Just hit the button and then select the curve. Then you hit the 11th button on your toolbar, called "Make selected segment lines", and your curve will be converted into a series of connected lines.
If you can't get a nice image, check this comparison I made over different soundcards quality
So, where do I get this program:
You can download the program here:
The old version can still be found here:
It doesn't need an installer. Just extract to a folder and run "rabiscoscopio.exe". If you can't draw, try it using the included sample images
It only works on Windows, but the new version code is basaed on Qt, so it's portable. Feel free to try compiling it to another target.