We have just tried to upload a new version of rosbot snap to the store. The target OS for this snap is Ubuntu Server. rosbot snap runs ROS 2 driver for our smallest mobile robot for research:
gpiochip-slot: ROSbot 2R is powered by Raspberry Pi 4. GPIO interface is needed for entering the STM32F4 microcontroller into the bootloader mode (controlling BOOT0 and RST signals from a Raspberry Pi pin header). This slot is done in a similar way as in matter-pi-gpio-commander snap by Canonical
serial-slot: The same STM32F4 microcontroller is connected with RaspberryPi 4 over the /dev/ttyAMA0 interface available over the RPi4 pin header. Access to this interface is not possible with raw-usb or serial-port interfaces. We’re accessing /dev/ttyAMA0 the similar way as here: Allow installation and auto-connection of mulitple interfaces for console-conf snap
Additionally I would be grateful for auto-connection for the following interfaces:
Sorry for the delay in the response. The request looks aligned with your other requests, however there is a new consideration regarding the gpiochip-slot. As you can see here we should probably not granting auto-connection for custom-device in the local store. Would manual connection for this interface work in your use case?
Hi @jslarraz , thanks for your feedback. I think that my case is different: the snap is intended to be used only on a single board computer inside ROSbot that is Raspberry Pi 4 and will be Raspberry Pi 5 in the near future. I would be grateful for granting auto-connection then. Thanks!
I will appreciate that. This snap will work only on Raspberry Pi 4 and Raspberry Pi 5, so we don’t need to care much about making it as universal as possible.
The problem we have is that since the snap is published in the global store, there is nothing stopping a regular users installing the rosbot snap on their system - ie. on my local x86 system I have a /dev/gpiochip0 device - what would happen if I installed rosbot on my system? Would it automatically go and try and configure the GPIOs assuming it was a RPi4 etc? Instead I think manual connection is more appropriate (plus you should ensure rosbot has appropriate checks in place to ensure that the expected device is actually present before it does any writes to any device files).
I would be grateful for auto-connection for for shm-slot and serial-slot custom interfaces and for the acceptance of the gpiochip-slot interface (manual-connection).
It’s important for us to have the rosbot snap in the store. Thanks!
+3 for, 0 against. Granting rosbotauto-connection to shm-slot interface and manual connection to serial-slot and gpiochip-slot. The publisher is vetted. This is now live.
Please note that serial-slot is also using custom-device, so as far as I understand auto-connection should not be granted. However, maybe @alexmurray or @pedronis can clarify if it would be ok in this case that only tty devices are being used.
Thanks, @cav! I’d really appreciate additional feedback from someone on the @review-team, as it’s crucial for us to release the snap for ROSbot 2 PRO as soon as possible. Thank you!
+1 from me too. +2 votes for, 0 votes against, granting updated custom-device declaration for rosbot to include this new path. This is now live.
@Husarion FYI in future it may be better to create a separate forum post for additional changes like this to make sure they don’t slip through the cracks.