docker-yaota8266

All ESP8266 boards running MicroPython.
Official boards are the Adafruit Huzzah and Feather boards.
Target audience: MicroPython users with an ESP8266 board.
Post Reply
jedie
Posts: 252
Joined: Fri Jan 29, 2016 12:32 pm
Contact:

docker-yaota8266

Post by jedie » Tue Dec 31, 2019 2:10 pm

I have created https://github.com/jedie/docker-yaota8266 for easier generate a own yaota8266.bin via docker.

It used the docker image https://hub.docker.com/r/jedie/micropython builded via https://github.com/jedie/docker-micropython

I currently use a own fork: https://github.com/jedie/yaota8266 because of many missing patches. More info here: https://github.com/pfalcon/yaota8266/pull/27 see also: https://github.com/micropython/micropyt ... -569740745


Building yaota8266.bin is very easy.

1. Generate RSA keys:

Code: Select all

~/docker-yaota8266& make rsa-keys
...
Copy&paste this RSA modulus line into your config.h:
----------------------------------------------------------------------------------------------------
#define MODULUS "\xce\x4a\xaf\x65\x0d\x4a\x74\xda\xc1\x30\x59\x80\xcf\xdd\xe8\x2a\x2e\x1d\xf7\xa8\xc9\x6c\xa9\x4a\x2c\xb7\x8a\x5a\x2a\x25\xc0\x2b\x7b\x2f\x58\x4c\xa8\xcb\x82\x07\x06\x08\x7e\xff\x1f\xce\x47\x13\x67\x94\x5f\x9a\xac\x5e\x7d\xcf\x63\xf0\x08\xe9\x51\x98\x95\x01"
----------------------------------------------------------------------------------------------------
2. Create own yaota8266/config.h and copy&paste the modulus line

3. compile final yaota8266.bin by:

Code: Select all

~/docker-yaota8266& make compile


jedie
Posts: 252
Joined: Fri Jan 29, 2016 12:32 pm
Contact:

Re: docker-yaota8266

Post by jedie » Wed Jan 01, 2020 7:07 pm

I can build and flash the yaota8266 bootloader and micropython firmware...

The bootloader works halfway: I see the "OTA server" messages and it seems to wait connection... After timeout i see this messages: OTA start timeout, rebooting it reboots and the micropython interpreter starts and worked.

But i can't connect to the device in OTA mode, yet. Any idea?

I created https://github.com/jedie/micropython-so ... /issues/33 for this.


jedie
Posts: 252
Joined: Fri Jan 29, 2016 12:32 pm
Contact:

Re: docker-yaota8266

Post by jedie » Sat Jan 04, 2020 2:33 pm

jedie wrote:
Wed Jan 01, 2020 7:07 pm
But i can't connect to the device in OTA mode, yet. Any idea?
Ah! I tried with TCP, but it's UDP, so i can't "see" the device :P

EDIT: Yes, that's it. With https://github.com/jedie/yaota8266/comm ... 13ae0d35ac i replaced my asyncio TCP AsyncConnector with a UDP broadcast solution... With this new implementation it's also possible to perform the OTA update without specifying the Device IP address! That's a enhancement of the origin code from pfalcon.

I send the first OTA package to broadcast 255.255.255.255 and after the device send the right response, all next packages goes only to the device IP.

Post Reply