BREAKING CHANGE: Updated partition table: Make sure you have a configuration backup and completly reflash the device!

Over The Air Update is not possible!
This commit is contained in:
Thomas Basler 2023-03-15 20:39:32 +01:00
parent 2e33f5cd51
commit 318136dd58
3 changed files with 34 additions and 6 deletions

View File

@ -3,6 +3,10 @@
[![OpenDTU Build](https://github.com/tbnobody/OpenDTU/actions/workflows/build.yml/badge.svg)](https://github.com/tbnobody/OpenDTU/actions/workflows/build.yml) [![OpenDTU Build](https://github.com/tbnobody/OpenDTU/actions/workflows/build.yml/badge.svg)](https://github.com/tbnobody/OpenDTU/actions/workflows/build.yml)
[![cpplint](https://github.com/tbnobody/OpenDTU/actions/workflows/cpplint.yml/badge.svg)](https://github.com/tbnobody/OpenDTU/actions/workflows/cpplint.yml) [![cpplint](https://github.com/tbnobody/OpenDTU/actions/workflows/cpplint.yml/badge.svg)](https://github.com/tbnobody/OpenDTU/actions/workflows/cpplint.yml)
## !! IMPORTANT UPGRADE NOTES !!
If you are upgrading from a version before 15.03.2023 you have to upgrade the partition table of the ESP32. Please follow the [this](docs/UpgradePartition.md) documentation!
## Background ## Background
This project was started from [this](https://www.mikrocontroller.net/topic/525778) discussion (Mikrocontroller.net). This project was started from [this](https://www.mikrocontroller.net/topic/525778) discussion (Mikrocontroller.net).
It was the goal to replace the original Hoymiles DTU (Telemetry Gateway) with their cloud access. With a lot of reverse engineering the Hoymiles protocol was decrypted and analyzed. It was the goal to replace the original Hoymiles DTU (Telemetry Gateway) with their cloud access. With a lot of reverse engineering the Hoymiles protocol was decrypted and analyzed.

24
docs/UpgradePartition.md Normal file
View File

@ -0,0 +1,24 @@
# Upgrade Partition
To be able to install further updates you have to update the partition table of the ESP32. Doing so will **erase** all configuration data. Over The Air update using the web interface is **NOT** possible!
**So make sure you export a backup of your configuration files before continuing.**
There are several possibilities to update the partition table:
- Using Visual Studio Code or PlatformIO CLI
If you have already used Visual Studio Code or the `platformio` command you can use it again to install the latest version. The partition table is upgraded automatically.
- Any kind of flash interface
If you like to use any kind of flash interface like `esptool.py`, Espressif Flash Download Tool, ESP_Flasher or esptool-js you have to make sure to upload **ALL** provided .bin files. It is important to enter the correct target addresses.
| Address | File |
| ---------| ---------------------- |
| 0x1000 | bootloader.bin |
| 0x8000 | partitions.bin |
| 0xe000 | boot_app0.bin |
| 0x10000 | opendtu-*.bin |
After upgrading the ESP32 will open the intergrated access point (AP) again. Just connect to it using the default password ("openDTU42"). If you are connected, just visit http://192.168.4.1 and enter the "Configuration Management". Recover the previously backuped config files.

View File

@ -1,6 +1,6 @@
# Name, Type, SubType, Offset, Size, Flags # Name, Type, SubType, Offset, Size, Flags
nvs, data, nvs, 0x9000, 0x5000, nvs, data, nvs, 0x9000, 0x5000,
otadata, data, ota, 0xe000, 0x2000, otadata, data, ota, 0xe000, 0x2000,
app0, app, ota_0, 0x10000, 0x180000, app0, app, ota_0, 0x10000, 0x1E0000,
app1, app, ota_1, 0x190000,0x180000, app1, app, ota_1, 0x1F0000, 0x1E0000,
spiffs, data, spiffs, ,0x50000 spiffs, data, spiffs, 0x3D0000, 0x30000,
1 # Name, Type, SubType, Offset, Size, Flags # Name Type SubType Offset Size Flags
2 nvs, data, nvs, 0x9000, 0x5000, nvs data nvs 0x9000 0x5000
3 otadata, data, ota, 0xe000, 0x2000, otadata data ota 0xe000 0x2000
4 app0, app, ota_0, 0x10000, 0x180000, app0 app ota_0 0x10000 0x1E0000
5 app1, app, ota_1, 0x190000,0x180000, app1 app ota_1 0x1F0000 0x1E0000
6 spiffs, data, spiffs, ,0x50000 spiffs data spiffs 0x3D0000 0x30000