Popular Post Filipe Altoe Posted December 30, 2014 Popular Post Report Share Posted December 30, 2014 Hi guys; Check out what we are doing with LabVIEW and Arduinos. http://www.tsxperts.com/arduino-compiler-for-labview/ We created an actual LabVIEW compiler for Arduino targets that allows Arduinos to be programmed in LabVIEW. Figured to share this with the community. Cheers Filipe 7 Quote Link to comment
viSci Posted December 31, 2014 Report Share Posted December 31, 2014 What! That is fantastic! Filipe you are the man... (Do you need beta testers???) Quote Link to comment
viSci Posted December 31, 2014 Report Share Posted December 31, 2014 Filipe - It appears that the compiler converts LV to Arduino sketches, is that correct? Will the compilers support such things as subvi's or structures? Quote Link to comment
Filipe Altoe Posted December 31, 2014 Author Report Share Posted December 31, 2014 Hi ViSci; I may take you up on your offer of becoming a beta tester. Not sure exactly when we will reach that stage; but it is coming soon for sure if we want to keep the March time lime for release. Answering your question; yes, the compiler supports all basic LabVIEW primitives structures (case structs, for, while, sequence) as well as subVIs along with over 100 other LabVIEW primitives. A lot of work! But we are excited about the doors something like this may open to the LabVIEW community. One thing to keep in mind though is that Arduinos (especially the little UNO ) are very small embedded micro controller targets. Therefore, even though the compiler will support arrays and strings, like LabVIEW does, one needs to be extra careful when using those constructs as they are memory vortexes. They will suck the life out of an Arduino Uno very quickly. Quote Link to comment
Bobillier Posted January 2, 2015 Report Share Posted January 2, 2015 Very good news for starting 2015. Just two questions: 1) With which version of LabView that's working ? 2)It will be a free or paying tool? Quote Link to comment
Filipe Altoe Posted January 3, 2015 Author Report Share Posted January 3, 2015 Currently; we have done all our testing with LV2014 and will release the first version for that version only. If the community requests other versions, we may do that based on the volume of the requests. It will be a paid tool; however, we are aligning ourselves with the makers movement; i.e. it will be very low cost. The actual price of the license is still being decided on and I will share with the community as soon as it has been defined. Quote Link to comment
hooovahh Posted January 5, 2015 Report Share Posted January 5, 2015 Very neat, I think I may have met you guys at NI Week. Does this require or use the NI C code generator toolkit? Quote Link to comment
Michael Aivaliotis Posted January 6, 2015 Report Share Posted January 6, 2015 It doesn't require the NI C code generator toolkit. This is how the cost is kept low I am too, excited about this. Quote Link to comment
Filipe Altoe Posted January 6, 2015 Author Report Share Posted January 6, 2015 Michael is right. It does not use the C code gen toolkit; otherwise it would cost $10k + a tinny little bit for the Arduino piece. This way we can charge just $(a tinny little bit for the Arduino piece). Not only that but we have better control over the type of optimization we do that is more specific to the Arduino target. As you can imagine, if we were to leave the result of the LabVIEW code interpretation without any optimization on the code generation side, we would starve an Arduino Uno before we could complete the "Hello World!" sentence of the test VI. Btw; check out this video we just posted showing a demo of the compiler. https://www.youtube.com/watch?v=DE2we6o7erI 1 Quote Link to comment
Michael Aivaliotis Posted January 6, 2015 Report Share Posted January 6, 2015 That demo was great. Will this work on LabVIEW for Mac? If not, I think it should be on the roadmap. But not critical for first release. Quote Link to comment
hooovahh Posted January 7, 2015 Report Share Posted January 7, 2015 Wow this is a fantastic demo. I can't wait to see more when it is released. I have several Unos, a Mega 2560, and a couple Teensy 3.1 which is an arduino compatible ARM based micro with lots more functionality. While your site doesn't mention Teensys it will probably be one of the things I try once it is released. EDIT: Also what is there a pricing scheme planned for this toolkit? Quote Link to comment
Jordan Kuehn Posted January 7, 2015 Report Share Posted January 7, 2015 This is amazing! Quote Link to comment
Gary Rubin Posted January 7, 2015 Report Share Posted January 7, 2015 (edited) Very nice! My kids' elementary school has the district's only school-based MakerSpace program. I volunteer teaching 3rd-6th graders to use Lego Mindstorms NXT. With that giving them the background into graphical programming, this would be a great next step. Edited January 7, 2015 by Gary Rubin 1 Quote Link to comment
Filipe Altoe Posted January 7, 2015 Author Report Share Posted January 7, 2015 A portion of the development is being done on a Mac; so I don't think it should be a problem. But we haven't done any specific testing as of yet to officially claim we support it. As for the Teensy; it will be supported. Any official Arduino target released by the Arduino organization will for sure be supported. I'm really looking forward to getting this to high schools and potentially even middle school. We haven't decided on pricing as of yet. We will have two versions; base and professional. One targeted to the hobbyists and the other for more complex professional applications. I'm passionate about the makers movement; therefore, pricing will be in line with it for sure. Based on how much work this has been so far; we should charge $10k per license (like NI does for its C code gen). But it won't happen. 1 Quote Link to comment
JamesTBG Posted January 8, 2015 Report Share Posted January 8, 2015 Hi Filipe, This looks great, the demo video is very good. If you need beta testers then I'm sure the guys at my company would love to get involved. Quote Link to comment
Filipe Altoe Posted January 8, 2015 Author Report Share Posted January 8, 2015 Hi James Thanks for the offer. I will certainly keep that in mind. And hope to see you again at NIWeek. Quote Link to comment
vito Posted January 28, 2015 Report Share Posted January 28, 2015 Filipe, this is great. I've been programming with LabVIEW (desktop, Real-Time and FPGA) for about 10 years and this is the best thing to happen to LabVIEW since the Event structure and FPGA programming. It's the best thing to happen to LabVIEW in 10 years! I've been requesting, some would say badgering, National Instruments to do something like you've got under development for 3 years now. Thanks to Arduino Complier for LabVIEW, I don’t have to wait for NI or rely on them. This is a game changer. The fact that you got it to work on a very resource limited Arduino UNO is impressive. It would be nice, sometime in the future, to consider the Arduino DUE, with a 32 bit microcontroller running at 84 MHz (rather than 8 bit running at 16 MHz). Better still, there's the Texas Instruments TM4C1294 LaunchPad which has an ARM M4F core, running at 120 MHz, Ethernet and much more - all for just $20. It would be great to one day see a LaunchPad Compiler for LabVIEW. The Launchpad has Energia, which brings the Wiring and Arduino framework to the LaunchPad, which may make it a good fit to you future plans. I tried the now (effectively) discontinued LabVIEW Embedded for ARM (LEFA). It had a lot of potential, but failed in our evaluation (http://forums.ni.com/t5/LabVIEW-Embedded/LabVIEW-Embedded-Performance-Testing-Different-Platforms/m-p/1882581 ). LEFA was OK with a single loop, but when multiple loops were implemented, performance fell such that only about 10% of the CPU was available. How is your multiple loop performance? Is there any significant degradation? I look forward to this product. I think it's going to be revolutionary. I even more look forward to a more powerful platform such as the Arduino DUE or LaunchPad. I’m not sure of your business model, but opening up to the community would get many of the functions such as filtering, FFT, etc going. Quote Link to comment
Filipe Altoe Posted January 30, 2015 Author Report Share Posted January 30, 2015 Thanks for this Vito! We are certainly excited about it and it is great to get feedback from the community. Actually, the first release will indeed support the Due, Yun, Mega and Leonardo, along with the Uno. So we got the official Arduino targets covered. Since we are targeting having the same compiler supportting all these targets, and, as you know, the Uno has only 2k of memory, we decided not to implement multithreading on the first version. This, is however, intended to be just the first release, and we are hoping the feedback from the community as feedback will help us focus on what is more important to the user base first. As Engineers, we ourselves started falling into the trap of adding lots of LabVIEW features into the compiler. Then we realized (duh) that LabVIEW has been a work in progress for 30 years and by dozens of R&D Engineers working full time on it. We couldn't possibly attempt to match its full feature set at a first release. We figured it would be best to have something released in a reasonable time frame, collect the feedback from the community, and let that better guide us in gradually adding the most asked for features first. Hopefully the level of adoption will gives fuel to keep improving the compiler and even maybe porting it to other targets, Quote Link to comment
vito Posted February 2, 2015 Report Share Posted February 2, 2015 Filipe, Great to hear that the first release will support the Arduino Due. Given that the Texas Instruments TM4C1294 LaunchPad can be programmed with Energia and that Energia uses Wiring and Arduino framework, do you think it would be a big effort to target it? The big attractions are built in Ethernet (and lots more) and a $20 price tag. If I understand you correctly, the first release will only allow a single loop operation. If so, this will be very limited. Good enough to get a taste for what it can do, but not good enough to use for serious applications. Even a simple mechanism where a "node" would signify "release" so that multiple loops can be run one after the other when released may be a good stop gap measure. The ability to run multiple loops will be essential to get market takeup. Regards, Vito Quote Link to comment
hooovahh Posted February 2, 2015 Report Share Posted February 2, 2015 If I understand you correctly, the first release will only allow a single loop operation. If so, this will be very limited. I disagree. The C++ code developed in the Arduino IDE is essentially a single loop operation. When you have full control over a CPU (or Micro) you can get a lot done in a single loop. Sure this isn't the way most Windows based LabVIEW development is done, but that's because we have crazy powerful CPUs with lots of cores to get stuff done with. I'd be content with this toolkit if it only ever supported a single loop. Quote Link to comment
Michael Aivaliotis Posted February 2, 2015 Report Share Posted February 2, 2015 Filipe mentioned that it works on the Yun. I encourage you to check it out. it has built-in ethernet and wifi as well and Linux. 1 Quote Link to comment
vito Posted February 2, 2015 Report Share Posted February 2, 2015 hooovahh, one of the features of LabVIEW is parallel loops. Sure you can get things done without it, but one of the significant features is not there. I hope single loop operation will be attractive enough, as I'd like to see takeup of this product so that it continues to be developed. I'd like to see LabVIEW compiler for Arduino become what LabVIEW Embedded for ARM was supposed to be. I programme microcontrollers in C. A single loop works, but then I have a SysTick event that fires every 10 ms to lets me do other things and all "events" fire an interrupt that allows the "event" to be addressed. Maybe the LabVIEW compiler for Arduino will nicely handle interrupts, which may be enough. What do people think about a "release" command that can be inserted in a loop to yield CPU to the next loop? All things said, I want this product to succeed. It has great potential. Quote Link to comment
vito Posted February 2, 2015 Report Share Posted February 2, 2015 Filipe mentioned that it works on the Yun. I encourage you to check it out. it has built-in ethernet and wifi as well and Linux. Thanks Michael. I didn't know that one of the Arduino offerings has built in Ethernet. Quote Link to comment
ScottJordan Posted April 1, 2015 Report Share Posted April 1, 2015 Filipe & Team, Congratulations on the successful launch of the Arduino Compatible Compiler for LabVIEW! I'm among your first paid customers and am very impressed with your accomplishment. What is the mechanism for providing feedback and feature requests for future releases? (Top among them for me would be a timed loop, ideally one with very fine timing capability.) Hope to see you at NI Week. Best, --Scott Jordan Quote Link to comment
Tres bien Praveen Posted February 18, 2016 Report Share Posted February 18, 2016 Hi Filipe & Team, First, thanks for the compiler. I would like to use this compiler for my Home Laboratory. Because I keep switching between computer and laptop to interface with NI add-on card for desktop. Is there any way to change activation between desktop and laptops vice versa. Is the activation one time for the user. I can use it to activate offline or only using web. Any procedure to deactivate and activation procedure will be helpful. Thanks & regards Praveen E-mail: tresbien_praveen@yahoo.com Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.