I know there was some interest in writing the firmware in Go in the past and now there’s kind of a way
With the release of TinyGo 0.13 (“a Go compiler for tiny places”), it brings the support for all 3rd gen Particle devices.
There are some caveats for now, namely:
- TinyGo can’t coexist with the Particle Device OS. Meaning flashing your Go app to the device will erase Particle bootloader and system. It is still possible to restore the device to “stock” but it requires manual flashing of all necessary parts.
- TinyGo doesn’t support Argon’s WiFi coprocessor nor Boron’s cellular modems yet, meaning for now you can only use the devices offline.
I wrote a post explaining how to use TinyGo with Particle if anyone’s interested.
This is also a nice alternative to running CircuitPython on your Xenons as a second life
Disclamer
I have to stress that this is not an officially supported feature, meaning it was developed by enthusiastic Gophers separately from Particle
Anyone is welcome to contribute and make Golang on microcontrollers a thing