Background: I have about 300 product instances in the field containing an Arduino that can be updated with the attached Ubuntu instance over USB with platformIO. Or I thought I did. Many of them work fine. I can pull my latest code and use
platformio run --target upload --environment uno
to compile and update. However, some of them complain that there is no platform ‘Atmelavr’. All of them that I have tried, don’t seem to connect back home. For example ‘Pio account show’ tries to install tool-pioplus, and fails telling me I am not connected to the internet. ‘Pio platform install native’ similarly fails. I do indeed have an internet connection – that’s how I log in to these instances – remotely over ssh.
If I blow it away and try to install the latest, it wants me to install python3.6. This is on Ubuntu 16.04, so installing python 3.6 on 300 devices is a major undertaking. Moreover I have to change my own code to do that, or I have to juggle versions during and after the update, so it snowballs into a complete mess.
I have seen no mechanism to start over and install a version of pio that will work on python2.7, but I’m hoping someone knows a way or, better yet, a way to understand and resolve why it fails in the first place and how to fix it more readily. I doubt this is a network connectivity issue, it’s happening in the field and at my house with no firewall.