How do I add menu items for custom script execution?


I am looking for guidance regarding where I can learn how to add menu items to call custom scripts.

Our XLR8 board supports FPGA image uploads via Arduino IDE, and this happens with some tools that we install as part of our board package. Those tools are accessible via the dropdown menus in the Arduino IDE.

I’d like to implement something similar with PlatformIO. Given the extensibility of Atom, I have to believe this is possible.

I just need to be pointed in the right direction.

Any recommendations? Am I on the right track, here? This should be possible, right?


BTW - Here’s a short video that demonstrates how Arduino IDE currently works with our board: XLR8 Board Support for Arduino IDE - YouTube

I understand what do you mean. Indeed, you don’t need to think about Atom’s Menu. We support ~10 different IDEs, users decide which to use. What is more, there is a big part of our community who uses PIO Core (CLI).

What you really need, that is to create a new target or override existing. In this case, need to use Advanced Scripting.

How could it look?

  1. You can create own extra script and override “uploader”. See example. Then user will use specific environment:


extra_scripts = ...

  1. Having a custom target. In this case, user should open PIO IDE Terminal or system terminal and type
pio run --target mycustomtarget