RPI 4 and Ignition

Just a FYI for those wondering if Ignition can run on a RPI 4.

I have been running stable for some weeks now, and my experience is that it works great!

I was a bit worried for a while. But I saw that the mobile phone actually demanded a good wifi connection. Previously i was on 2.4Ghz, but when i swapped (on my phone) to 5Ghz everything went smooth.

Not only am i running Ignition, but im also running the following images (through Docker):

  • 2x Nodered images ( one for dev)
  • mySQL (mariaDB not supported by docker)
  • Home assistant (for z-wave devices)
  • Mosquitto (not actually needed as MQTT Distributor is available in Maker
  • portainer

I only run those modules I need for the moment, so I dont know if adding more modules will increase the load on the RPI:

  • perspective
  • opc-ua
  • tag-historian
  • MQTT Engine
  • Twilio Integration and Alarm Notification

Tag count:
image

Here is the CPU and memory utilization reported from Ignition:

Below is the CPU and memory reported from Raspberry Lite OS

Free memory kind of steadily fell down to zero, I guess its freeing itself when needed. The figure below is from htop:

4 Likes

That's normal for Linux. It uses all memory that would otherwise be free to extend the disk cache. Oldest clean disk page can be turned over to an app in an eyeblink.

Good to know:)

A relevant update to mention here is that the latest 8.0.15 release introduces AARCH64 (64-bit ARM) support. I just recently spun up the latest release on Raspberry Pi OS 64-bit Beta under Docker with success! So things are looking pretty good on the RaspPi/Ignition front lately! It will be nice once Raspberry Pi OS (which is apparently now the name of it vs Raspbian) is officially 64-bit. :slight_smile:

1 Like

Good to know! Im going to switch image as soon as 64bit Rasperry pi OS is officially stable with a Lite version.

Someone know how much performance increase Ignition will get in a 64bit ARM contra 32bit?

Probably a performance loss, not a gain. Native code gets bigger by a small % with 64-bit instructions and constants, so instruction cache misses go up. Using 64-bit is an enabling technology, not a performance boost. That is, it enables applications/algorithms that need (or benefit from) more than 2GB of RAM.

I get what you are saying, but overall I think its more than just RAM advantages.

I thought that architecture programmers always optimized for 64bit architecture these days. And was hoping that maybe we would get a boost from that. (and maybe Inductive programmers has some affinity for 64 bit architecture.)

I think Inductive Automation, as a whole, has an affinity for reduced support effort… not that I blame them. (:

Not sure I get you there. Would you mind elaborating? :thinking:

Fewer platform combinations ==> less development effort and less QA up front, and then less training effort for support reps and less complexity for bug fixes.

1 Like

Aha. Yes that seems like a ton of overhead :dizzy_face:

One ring to rule them all!