NI Linux Real-Time Discussions

cancel
Showing results for 
Search instead for 
Did you mean: 

Embedded Linux Training Suggestions

Neither myself nor my team are particularly well informed on using Linux, and given we adopt CompactRIOs it makes sense that we train up a bit. We'd gotten away without really knowing the Linux OS until recently when we needed to map an NTFS shared location to a local folder, then we realised just how unaware we were. Drawing on my old Linux knowledge from years ago helped, but formal training makes sense.

 

I understand that NI adapted a particular flavour of Linux for cRIOs, but it will be largely the same as the original and therefore I would expect there are plenty of Linux courses out there that would be well suited. Can I ask for suggestions and information from the group please. Not necessarily actual courses (as we'll have to pick someone from our approved vendors list) but what material would be applicable and what wouldn't. 

 

For example, it's embedded linux, right? And it uses which desktop rendering tool? And what's excluded from the standard NI OS image that we would be wasting our time learning about? Unless it can be re-installed? I assume there are no actual NI Linux courses?

Thoric (CLA, CLED, CTD and LabVIEW Champion)


0 Kudos
Message 1 of 5
(260 Views)

We've collected everything we ever learned, discovered or found out about NI Linux RT in our Dokuwiki, the section can be found here: https://dokuwiki.hampel-soft.com/kb/ni-rt/linuxrt 

 

Regarding your questions about the specifics of NI Linux RT, I found the following resources quite helpful:

 

 

Copied from the Community Page:

 

Arch  ARMv7-a  x86_64
Bootloader  u-boot  GRUB2
Kernel  4.9.47-rt37
Filesystem  UBIFS  EXT4
Desktop Environment  N/A  XFCE4
Package Manager  opkg
openssl  1.0.2k
glibc  2.24
Init  SysV
Device Manager  eudev
Distribution Build System  OpenEmbedded/Pyro 

 

I don't know about any Linux courses targeted at NI Linux specifically, though. For your everyday use (user system and rights, file system, services...), any beginners course should be fine I guess. Other than that, it really depends on what you are planning to do. Compiling drivers, hacking the kernel, tapping into the package manager...

 

It's no different to Windows, is it? Which courses would you book if you wanted do get more familiar with Windows? Pretty soon, you'd be looking for application specific stuff (or networking, or security, ...).


DSH Pragmatic Software Development Workshops (Fab, Steve, Brian and me)
Release Automation Tools for LabVIEW (CI/CD integration with LabVIEW)
DQMH® (The Future of Team-Based LabVIEW Development)

Message 2 of 5
(249 Views)

Thanks Joerg,

 

Agreed, looking to learn about Linux in general first, but want to make sure we take a course that teaches us material that is applicable to NI LinuxRT. It's not clear just how limited the OS is, and it's pointless taking a 5 day course if 75% of the content doesn't apply.

 

My concern is, every time I feel we need to do something seemingly simple, like configure an online touchscreen keyboard, it turns out not to be straightforward. NI created their own package for this, which you can get via the package installer. Except it's not working great. Some people commented that you can launch it's configuration panel from the command line, or that you need to call it with the display parameter, another found the latest online source and recompiled it and had more success. We're not likely to figure any of this out unless we understand Linux and Linux-esque behaviours/traits. So a good understanding of the Linux heartbeat is needed to even know where to begin considering relatively basic tasks.

 

But then we'll need NI specific info, and I think some of your links above will be vital to that. Thanks!

 

Richard

Thoric (CLA, CLED, CTD and LabVIEW Champion)


0 Kudos
Message 3 of 5
(234 Views)

Thanks for elaborating, I now get your point. Sadly, I have no ideas for that. For me, it seems that most of that knowledge comes from using Linux for some time, and it's not really even specific to NI Linux itself (i.e. it's still Linux knowledge, not NI knowledge).

 

I'm curious if anybody else has suggestions for how to define that specific set of knowledge. 


DSH Pragmatic Software Development Workshops (Fab, Steve, Brian and me)
Release Automation Tools for LabVIEW (CI/CD integration with LabVIEW)
DQMH® (The Future of Team-Based LabVIEW Development)

0 Kudos
Message 4 of 5
(226 Views)

The Linux Foundation offers courses. IIRC the basic ones are free.

https://training.linuxfoundation.org/

 

Here's a couple other resources:

Here's a comprehensive book

https://nostarch.com/howlinuxworks3

 

These are more like cliffnotes (very awesome!)

https://store.wizardzines.com/products/bite-size-linux

https://store.wizardzines.com/products/bite-size-command-line

https://wizardzines.com/zines/bite-size-bash/

 

These are also cliff notes and supplement the man pages very well.

Highly recommend installing this. Probably not in the NI package manager, but you can install it via Python and Pip.

https://github.com/tldr-pages/tldr

 

None of these are NI specific, but will definitely build a good linux base.

Sam Taggart
CLA, CPI, CTD, LabVIEW Champion
DQMH Trusted Advisor
Read about my thoughts on Software Development at sasworkshops.com/blog
GCentral
Message 5 of 5
(224 Views)