I am designing a custom submarine that uses Cockpit for vehicle control. The control scheme works via updating basic Boolean variables that in turn change compound variables. These compound variables are read as parameters for custom MAVLink actions, which change the servo or relay output.
I would like to transport this control scheme so other users can use the submarine with different PCs. The main problem I am having is that these variables must be created manually each time.
I can successfully transport which variable goes to which button by using a joystick configuration json file upload. I can also add different MAVLink actions with the different custom parameters with the custom actions upload. However, neither of these actions actually create the requisite variables, so even though the variables show up on the configuration screen, you cannot find them in the data lake.
Is it possible to upload the custom variables in some way from another PC?
Thanks for raising this. Data Lake variables are currently stored in the browser / application, with no direct import or export mechanisms provided, short of writing a custom Action or DIY widget which implements the feature via the Cockpit API.
This definitely makes sense to support via the main interface, so I’ve raised a relevant GitHub issue to cover it, which can be tracked for (and/or used as the basis of) progress on the implementation. I’m not sure when it will be able to be prioritised (especially the full set of presented ideas), but I’m aware that at least the user synchronisation aspect is currently underway