LabVIEW on Raspberry Pi has become something the test and measurement community has craved for some time now. As the Raspberry Pi low cost single board computer evolves in power and becomes more affordable, this desire by the community is showing the natural progression the industry will evolve to.
In one of my previous posts, even before we have released the Arduino Compatible Compiler for LabVIEW, I talked about how Arduinos and Raspberry Pis are complementary. The first, a microcontroller target, being much more geared towards I/Os and sensors. The later, an actual computer, where one can have a monitor, keyboard and mouse hooked up to and run a full blown operating system on.
Just a few months after release, the test and measurement community has embraced the Arduino Compatible Compiler for LabVIEW, and it shows day after day its creative power in using the compiler to develop amazing embedded applications using LabVIEW deployed to Arduinos. The Arduino Compatible Compiler for LabVIEW has welcomed the Arduino targets in the test and measurement industry with open arms, and the community is surely showing how good of a guest these tiny microcontroller boards can be. I have been barraged by the question: “When we will have LabVIEW on the Raspberry Pi available as well?”.
LabVIEW on Raspberry Pi
I have mentioned on that post, I wished I could come back later and post something about a similar compiler product that would allow LabVIEW to be deployed to and run embedded in Raspberry Pi boards. Well, that time has come. I am very proud to say that development of the Raspberry Pi Compatible Compiler for LabVIEW is well underway and we are a few months away from having that ability. This will allow the test and measurement community to finally enjoy LabVIEW on Raspberry Pi.
As a regular computer that the Raspberry Pi is, it will allow one to actually deploy and run LabVIEW on Raspoberry Pi but also to take advantage of full-fledged LabVIEW user interfaces on a RasPi. The user will have the ability to interact with the deployed LabVIEW code via its deployed user interface, just like it happens on a regular PC. Moreover, since the Pi is a computer, one will be able to debug the LabVIEW application on the development machine, running whichever operating system of choice that is supported by regular LabVIEW, using the amazing debugging tools LabVIEW offers, turn around and deploy that very application to execute on the Raspberry Pi.
The Raspberry Pi organization has recently released the Raspberry Pi 2, which is a quad-core ARM processor. The little guy packs a punch! This allows us to support much more features of regular LabVIEW than we do on the Arduino Compatible Compiler for LabVIEW. Since Arduinos are itsy-bitsy microcontrollers, we were forced to strip out some functions that you, Mr. LabVIEW Programmer you, have grown so accustomed to. Probably the biggest one is the ability to run multiple loops in parallel. LabVIEW is great in parallel programming. In fact, in my humble opinion, the best in class on it. It even does the CPU core selection for the programmer, deploying different parallel loops to different cores to take full advantage of a multi-core processor.
We have decided not to include that feature on the Arduino Compatible Compiler for LabVIEW. We rather allow the user the ability to deploying more complex applications to the tiny little 2KB RAM guys than start eating resources away by implementing a scheduler. On the case of the LabVIEW for Raspberry Pi however, we will have a cooperative multitask mechanism allowing multiple parallel loops to run, well, let’ say, like LabVIEW.
I am looking forward to putting this new member of the “X” Compatible Compiler for LabVIEW family in the hands of the test and measurement community. I really can’t wait to see the types of problems folks will be able to solve by combining the power of LabVIEW with the low cost Raspberry Pi and Arduino Hardware that is made more and more available through the Maker movement.
It is undoubtedly a great time to be an Engineer!