Recently, we have been evaluating the Raspberry Pi 2 computer. For those who have been visiting a distant part of the galaxy for the last few months, the Raspberry Pi 2 (RP-2) is a single-board computer, about the size of a business card, that runs Raspian, a Linux variant that is very similar to Debian linux.
For example, one can download and install software using an internet connection with the standard command ‘sudo apt-get install name-of-package’. The boot sequence looks very similar to the sequence we used to see, years ago, on a very expensive Sun Workstation.
I’m *very* impressed by this device. The network connection and video worked immediately. In a few minutes, I was able to configure a new password, change the keyboard configuration to Dvorak, and install a bunch of useful programs – such as the Joe editor.
There’s been some interest in running Syscomp software on this platform, so we investigated that possibility.
Syscomp software is written in the Tcl language, and happily Tcl/Tk 8.5.11 is included in Raspian. So the majority of the code runs correctly. We use some ‘packages’ that are written in Tcl/Tk, and so they should (and do) run correctly. We also use some packages that were written in C and compiled for a specific architecture. In the past, we have taken care of that by bundling them with a platform-specific executable. But the compiled packages won’t run on the Pi unless they are re-compiled.
It turns out that those compiled, platform-specific packages can be replaced in various ways. For example, we converted all the .png formatted images to the .gif version, using the Imagemagick ‘convert’ command. That eliminated the requirement for the Img package. The Tktable package is used in the curve tracer software: that was replaced by the standard Tcl text widget. The directories ‘Bwidget18Lin’ and ‘MathLin’ (both of which are written in Tcl) were obtained from the DSO-101 software and moved into the software directory.
When these changes are made, code can be run on *any* platform that has Tcl/Tk available, using the command ‘wish main.tcl’. That includes the Raspberry Pi.
Here’s a screenshot of the Curve Tracer software running on the Pi.
We’ve also verified that these modifications allow the CircuitGear CGR-201 and Waveform Generator WGM-201 to run on the Pi.
The next release of the software for our various instruments will be modified to eliminate the requirement for platform-specific, compiled packages – so it should run from the wish command on the Linux, Windows, Mac *and* Raspberry Pi 2 platforms.
If you want to port our software to the RP-2 and can’t wait for the next release of the software, get in touch and we’ll send you a zipfile of the RP-2 version.
Incidentally, the RP-2 is powerful enough to run the CGR-101 software, which is *very* demanding. Earlier versions of the Pi are too slow to be useable for the CircuitGear software, but they may be capable of running software for less demanding instruments such as the Curve Tracer and Multimeter.