Omega2 Update: More Firmware Fixes with a side of working Cloud
We’ve been chugging coffee and working away in the Onion Lab to fix the issues with the Omega’s firmware, and we have an update we thought we should share:
The Omega2 and Omega2+ can now successfully connect to the Onion Cloud and the Reset Button on the Docks now actually resets the Omega!
Getting the New Firmware
To make the transition to the new firmware super easy, the version has been incremented to 0.1.9. So all you need to do is run the oupgrade command on the Omega’s command line or trigger a firmware upgrade through the Console, and your Omega will take care of the rest!
A few technical details for those interested:
- The reset button issue was actually caused by incorrectly configuring the Omega’s Device Tree for the Reset GPIO
- For more info on how to use the reset button, see our hardware overview articles for any Docks that have Reset Buttons
- The Cloud fix was a little more involved and required updating software running on the Omega devices as well as on the Onion Cloud.
- The Device Client that the Omega uses to communicate with the Onion Cloud was incorrectly generating the URL for the socket connection to the Cloud server. After lots of tears and coffee, we discovered it was actually a string copying issue. We had initially ruled that out since the Device Client worked with firmware created a few weeks ago, but our best guess is that muslC, the C library used by LEDE, changed how it handles string copying using strncpy in the meantime. The key takeaway: strncpy is generally a safer choice when copying strings but can cause some undefined behaviour!
- On the Cloud side, we added a few stability fixes and updated how the Cloud reads the commands your Omega has available. There was an issue that was making devices unresponsive to commands even after a successful connection but we nipped it in the bud
Omega2 and Omega2+ Officially Supported by LEDE
We’ve been working with the LEDE team and we’re proud to announce that our Pull Request to the LEDE repo has been approved and merged. The LEDE repo now has official support for the Omega2 & Omega2+ devices and can be used to build your own firmware!
We’re committed to making the Omega the very best that it can be, so expect more updates and fixes in the near future. We’re gonna take care of everything that’s on that known issues list as soon as we can!
If you encounter any issues that should be added to our list, please let us know on the community forum!