The Arduino PluggableDiscovery feature introduced in 1.8.9 enables to detect Arduino boards that are not connected by USB but are otherwise available through other channels (network, radio, etc.).
For now, it doesn't seem to work in the beta (or perhaps it is not implemented yet).
We discovered this bug with our own tool, which enables the discovery of Arduino compatible boards available over CAN-bus. Our logs show that the discovery module is not called by the Arduino IDE at all.
Hi @l1l1. You're correct. This is an important feature, but it will require significant amounts of work due to the switch from the Java-based implementation in the classic Arduino IDE to the Golang based Arduino CLI. There has been some interesting discussion about the required work. It has centered around Teensy due to the popularity of that platform, but of course it will enable any sort of application requiring custom discovery, such as yours. You can read about it in these issues:
@pert Thanks for the quick update. Our platform uses Goland as well. Perhaps I can help if time permits. The codebase of the Arduino CLI is pretty big: could you point me where I should look to add this feature?
The truth is that I really don't know a lot about this subject. I have done a little bit of Golang programming myself, but I get pretty overwhelmed when it comes to completely understanding the Arduino CLI code base. I tend to just nibble around the corners as is required for my troubleshooting and code review duties.
I know that Arduino is already using a serial discovery tool with Arduino CLI (and consequently with Arduino IDE 2.x as well):
So there is some level of infrastructure in place for discovery tools already, but I guess this needs to be reworked a bit to make it flexible enough to support any arbitrary discovery type. So you might take a look at the Arduino CLI code related to the use of this tool:
Many thanks for the info @pert. It gives me a place to start looking at.
This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.
Arduino IDE 2.x now has pluggable discovery support starting with the 2.0.0-beta.12 release. This includes a significant enhancement of the pluggable discovery system from the initial implementation that was done in the classic Arduino IDE some years back.