LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

[LabVIEW Tutorials] Programming an Arduino using LINX


@SINC wrote:

 

Otherwise regarding LINX, I'm not exactly sure if NI/Digilent are maintaining/fixing bugs anymore.

In fact i'm not even sure what the difference is between the version they included in 2020 vs 2019, from what I have seen they have just updated the VI icons. 


I do think it is safe to assume that there were some other minor improvements to the VI library, but yeah someone spend quite some time in updating the icons and the main functionality didn't seem to change and neither did the underlaying liblinxdevice shared library, which is in many ways the main problem in various difficulties when using Linx.

Rolf Kalbermatter
My Blog
0 Kudos
Message 31 of 72
(2,611 Views)

Those are apt points Rolf.

 

I wonder If anyone from NI could offer some insight into the future of LINX.

 

The https://www.labviewmakerhub.com/ website has been deprecated, as of August 1st 2020, and I don't recall seeing any news or updates into what is replacing it.

 

I think LINX has the potential to be a great entry point for LabVIEW beginners.It can leverage the low cost micro-controller platforms most hobbyist having laying around there homes. Especially for performing basic DAQ functions and building basic circuits.

Best Regards,


Sin | Electrical Engineer & Principal Consultant 



 

0 Kudos
Message 32 of 72
(2,593 Views)

@rolfk wrote:

@SINC wrote:

 

Otherwise regarding LINX, I'm not exactly sure if NI/Digilent are maintaining/fixing bugs anymore.

In fact i'm not even sure what the difference is between the version they included in 2020 vs 2019, from what I have seen they have just updated the VI icons. 


I do think it is safe to assume that there were some other minor improvements to the VI library, but yeah someone spend quite some time in updating the icons and the main functionality didn't seem to change and neither did the underlaying liblinxdevice shared library, which is in many ways the main problem in various difficulties when using Linx.


Those are apt points Rolf.

 

I wonder If anyone from NI could offer some insight into the future of LINX.

 

The https://www.labviewmakerhub.com/ website has been deprecated, as of August 1st 2020, and I don't recall seeing any news or updates into what is replacing it.

 

I think LINX has the potential to be a great entry point for LabVIEW beginners.It can leverage the low cost micro-controller platforms most hobbyist having laying around there homes. Especially for performing basic DAQ functions and building basic circuits.

Best Regards,


Sin | Electrical Engineer & Principal Consultant 



 

0 Kudos
Message 33 of 72
(2,593 Views)

What's replaced the makerhub site is the NI forums, their video webinars, and that's about it. We are starting to get some info moved into the LabVIEW Wiki as well.

 

There's a reason I don't try and use the Linx firmware on microcontrollers and roll my own functionality... but clearing up the headaches in using the included functionality is crucial for newcomers. There are a few of us working on some different tasks related to linx to help clean it up. I'm working on a completely new target wizard that's plugin based to enable easily packaging and developing support for additional devices. NI is working on refactoring a bunch of the Linx VIs though I'd almost prefer to see a start from scratch and am unsure how far they're going with it. They're also developing some updates to allow identifying different hardware devices in the Project Explorer via configuration files instead of everything being hardcoded in the closed source parts of the framework provider parts of Linx, and Rolf has made some great progress in refactoring the linux side code for the SOs that linx on Pis and BBBs use to better utilize the hardware and make it easier to port the functionality to new devices.

 

Linx, or a replacement, will be awesome one day; it's just not there yet. Having the capability in LV to deploy to Arm linux systems and polishing up some microcontroller wizards will mean the community will be able to better contribute to get Linx to where it could be. It's definitely on its way.

 

 

With that word dribble over, the esp-link bridge video was awesome and I didn't know they had software for that functionality! I've never played with the ESP8266 before but a $7 board for programming and wifi connectivity sounds a lot better than embedding a Pi where I've needed similar functionality in the past. I just ordered 3 units to play with and I'm definitely interested in duplicating the issues seen and seeing what can be changed to enable that functionality with the base Linx VIs.

Message 34 of 72
(2,589 Views)

@DerrickB wrote:

What's replaced the makerhub site is the NI forums, their video webinars, and that's about it. We are starting to get some info moved into the LabVIEW Wiki as well.


That actually makes a lot of sense now that you pointed it out haha. I never actually bothered to check, because it was always the LIFA board in the past. But for anyone wondering, the LIFA board has now been replaced with the LINX board.I will definitely be contributing there when I can. 

 


@DerrickB wrote:

There's a reason I don't try and use the Linx firmware on microcontrollers and roll my own functionality... but clearing up the headaches in using the included functionality is crucial for newcomers.

Yeah I agree there, for 'real world' applications where stability and reliability are required, it is definitely much easier to just roll your own functionality. For example with the serial stuff, it was much easier to just upload code to the arduino to get your data and read it in your own VI using the serial functions. But a beginner wouldn't necessarily know that's the way to go and would rely heavily on what is available in the LINX function pallet. 

 


@DerrickB wrote:

I'm working on a completely new target wizard that's plugin based to enable easily packaging and developing support for additional devices. NI is working on refactoring a bunch of the Linx VIs though I'd almost prefer to see a start from scratch and am unsure how far they're going with it. They're also developing some updates to allow identifying different hardware devices in the Project Explorer via configuration files instead of everything being hardcoded in the closed source parts of the framework provider parts of Linx, and Rolf has made some great progress in refactoring the linux side code for the SOs that linx on Pis and BBBs use to better utilize the hardware and make it easier to port the functionality to new devices.

 

Linx, or a replacement, will be awesome one day; it's just not there yet. Having the capability in LV to deploy to Arm linux systems and polishing up some microcontroller wizards will mean the community will be able to better contribute to get Linx to where it could be. It's definitely on its way.

That's awesome Derrick! Thanks for the insight into the current status of LINX - it's great to hear yourself and others are still working on developing it further. I'm looking forward to seeing how it progresses over time. Especially with the target wizard you're developing, how is that progressing? 

 

I'd be keen to hear an update from NI on what they're actually refactoring/developing for the LINX toolkit. I hope in particular, they provide a good level of documentation for it. I haven't actually dabbled in the Linux side yet, but I may after Rolf has finished refactoring the code for it and test it out. 

 


@DerrickB wrote:

With that word dribble over, the esp-link bridge video was awesome and I didn't know they had software for that functionality! I've never played with the ESP8266 before but a $7 board for programming and wifi connectivity sounds a lot better than embedding a Pi where I've needed similar functionality in the past. I just ordered 3 units to play with and I'm definitely interested in duplicating the issues seen and seeing what can be changed to enable that functionality with the base Linx VIs.


No problem, I'm glad you enjoyed it. It's definitely a useful bit of functionality for something so cheap, when I first started working on it I couldn't help but think of the potential it has to support some legacy devices as ESP-LINK works with RS-485/232 with a little elbow grease. So you could potentially send and receive commands from your old devices over your local network. 

 

But do let me know how you go, I can provide a bit more detailed information on the issues I was having to help the debug process.

 

Best Regards,


Sin | Electrical Engineer & Principal Consultant 



 

0 Kudos
Message 35 of 72
(2,565 Views)

I was also keen to hear updates to NI's plans and what they're currently working on. As you, I definitely felt like they'd released the update, dusted their hands off, and said "we're done". Finding out what little I know has been like pulling teeth and been provided piece meal as tiny bits of efforts get done enough to be worth talking about and I get bounced around in convos between 3 different people. They definitely are interested in having the platform become more than it is as an obvious investment in their own future but it feels like a mix of they're not sure how to accomplish it and they can't throw many resources at it. Fortunately at this point offerings like Community Edition are fully baked into their build and deployment pipeline so there's no overhead in continuing to make it available, unlike previous platforms such as home edition and how Linx was distributed previous to being bundled with CE. They are 100% on board with supporting any efforts that open up the maker ecosystem while letting them maintain their IP (the closed source run-time) and have told me they'd back any community updates/replacements that are solid enough.

 

My efforts on the target wizard are currently very slow. Life and such. The facility I've done work at for the past 8 years is shutting down, I've gotten a new job offer (though the official offer is apparently missing in transit somewhere?), and I have a habit of taking on too many side projects though at least some are related to the Linx effort. One of those projects is helping GCentral build out their new website and an API for crawling packages from all current packaging systems: VIPM, GPM, and NIPM as well as be able to host packages in some form in the future. There will be features in the API as well as an official LabVIEW wrapper to make it pretty straightforward to develop 3rd party tooling around the platform. The first tool I intend on there being that utilizes those features is building Linx package management directly into the target wizard (and eventually for other features such as sensors and algorithms) so that the Linx tooling becomes a one-stop shop for finding/installing device support, not dissimilar to the library manager that's been built into the Arduino IDE. Admittedly this is with linux boards in mind first but this would be followed up with the same functionality for microcontroller boards. I've gotten LabVIEW running on a Banana Pi M2 Zero and a RockPi S and would love to see the tooling be able to be expanded to install the runtime to these and other boards and get away from every single problem returning error 5003. I also tried setting up my Mega2560 at one point and purposefully didn't pick a serial port but the tooling continued along to the end screen as if it had completed successfully completely with a button to open the blink example for testing now that the device was ready!

 

I haven't seen what NI's efforts are around updating the Linx functionality yet but what I'm planning on building is basically a new implementation. Peripherals such as I2C/SPI/Serial buses could live as standalone objects and could be used with a device such as an I2C IMU regardless of what device it's connected to. This is certainly possible for devices that are already supported in Linx but what happens when we want to add CAN bus connected device support to Linx? Currently EVERY support feature is contained in a single cluster that does all the digital, analog, and bus mapping. Every Linx call checks this cluster for mapping validation and then has about 3 more layers of abstraction depending on whether it's deployed code, serial connection, or ethernet connection. I want to be able to get an I2C bus instance, and pass it into a sensor. Whether I get that I2C bus from an Arduino or a Pi shouldn't matter to the sensor. The specific implementation for the board's I2C bus should be part of that board's packaging/firmware/libraries and doesn't need to be bundled up with every other supported peripheral like it is with the Linx session cluster. CAN bus should be able to be added to devices that provide it and an Arduino's or a Pi's device support shouldn't ever have to care that CAN bus exists for other devices. This also makes it easier to port to new devices. All of the I2C stuff could largely leverage the same interfacing, either to a microcontroller or a shared linux library call so it would be much easier to copy those bits of code from existing devices into firmware/libraries for new devices.

 

Stay tuned in the next two months and I should start to be able to show some big updates off. Before that I can at least start documenting the updated architecture and sharing that as I nail down bits of it.

 

Alright I think that's more than enough for now. Cheers!

0 Kudos
Message 36 of 72
(2,559 Views)

Awesome, looking forward to it! Good luck with the new Job as well.

 

Again If anyone from NI want's to give an update, we're all ears 😉

 

In the meantime I'll be working on showing how to control DC & Stepper Motors with LINX/LabVIEW.

 

So stay tuned for that.

Best Regards,


Sin | Electrical Engineer & Principal Consultant 



 

0 Kudos
Message 37 of 72
(2,555 Views)

Great job on all the videos!

 

>> In the meantime I'll be working on showing how to control DC & Stepper Motors with LINX/LabVIEW.

 

What hardware are you planning for this?  I'm getting my son to follow a few videos and motors is high on his list of cool things to try.  

 

Cheers,

Craig

0 Kudos
Message 38 of 72
(2,505 Views)

Thanks!

 

It will just be with the L298N motor driver IC and also relay to demonstrate for applications such as water pumps.

Best Regards,


Sin | Electrical Engineer & Principal Consultant 



 

0 Kudos
Message 39 of 72
(2,488 Views)

LabVIEW Basics #10 - Controlling a DC motor in LabVIEW (LINX) with a L298N H-Bridge IC and Relay 

In this video I show you how to control a DC motor in LabVIEW with the LINX toolkit.

 

Best Regards,


Sin | Electrical Engineer & Principal Consultant 



 

Message 40 of 72
(2,434 Views)