12-12-2025 01:54 PM
I have an application that runs on a cRIO-9049 that calls plugins that I've built into PPLs for that type of cRIO. I've ordered some cRIO-9042s for some of our smaller deployments, and I was curious if anyone knew whether the existing PPLs would need to be rebuilt for the 9042 deployments (vs their current 9049 build targets).
I know the FPGA code would need to be recompiled, and I assume the realtime application, but what about some of my PPL plugins that solely contain real-time code with no interaction to FPGA resources? Both the 9042 and 9049 have the same processor and OS, so I'm hoping I'll be pleasantly surprised to find out it magically works, but surprised would be the key word here. Unfortunately I won't have the new cRIOs in hand for a few weeks, but I'm trying to plan ahead as much as possible in the meantime.
12-14-2025 07:50 AM
The binary format of PPLs (and even the built rtexe) is the same for all Intel based Linux RT systems. It is of course different for the ARM based platforms like MyRIO, cRIO-906x and sbRIO-9651 and some other sbRIOs. So principally there should be no need to recompile the PPL. In practice however do you deploy the RT application most times from a LabVIEW project or as a disk image with the RAD tool. And the later includes the whole OS, which of course has controller specific drivers and extensions, so needs to be created for the exact controller on which it will be (re)deployed.
12-14-2025 07:24 PM
@rolfk wrote:
The binary format of PPLs (and even the built rtexe) is the same for all Intel based Linux RT systems. It is of course different for the ARM based platforms like MyRIO, cRIO-906x and sbRIO-9651 and some other sbRIOs. So principally there should be no need to recompile the PPL. In practice however do you deploy the RT application most times from a LabVIEW project or as a disk image with the RAD tool. And the later includes the whole OS, which of course has controller specific drivers and extensions, so needs to be created for the exact controller on which it will be (re)deployed.
How do you know that? I am not challenging the knowledge, just asking where I could learn.
12-15-2025 01:14 AM
@JÞB wrote:How do you know that? I am not challenging the knowledge, just asking where I could learn.
The binary format from deduction on how they are created, and supported by a lot of trial and error for a large project I was involved in in the past. This was however in the 2018 to 2022 timeframe with LabVIEW 2017/2019, so it might change eventually.
One of the problems is however that PPLs have very strict path references to dependencies so if you have a hierarchy of PPLs and want to recompile one of them, all other PPLs above in the hierarchy need to be rebuild too even if absolute nothing on the interface has changed. Otherwise deployment of the hierarchy will sometimes fail with obscure and unhelpful errors.
tree needs to be rebuild each time