Updating to firmware 1.50 bricks Tangara
#1
Exclamation 
When I update to 1.50 from 1.41 I get this error:

[Image: pic9170932.png]

Resetting with 'esptool.py run' wakes up the Tangara but it's likely in some inbetween state firmware-wise, so I've downgraded to 1.41.

This is repeatable behaviour too, so likely not some one off glitch. I am using an older version of Tangara Companion (0.43) as that's the last version with a Mac release, but hopefully that's not a factor.
  Reply
#2
With the Tangara Companion (also using 0.4.3 from Flatpak, my fault), the device will not power up after the firmware upgrade. It also failed at the `Generic.LC_COLLATE` partition. I used the `esptool` method to flash manually and that actually worked with 1.50.

To put the device back on its feet, a manual upgrade worked for me:

Code:
unzip tangarafw-v1.5.0.tra
esptool --port /dev/serial/by-id/usb-cool_tech_zone_Tangara_5fb7344131200f22-if00 write_flash 65536 tangara.bin 11599872 lua.bin

After that, updating Tangara Companion to 0.5.2 allows the firmware to be reflashed to 1.5.0 without issues. So it might all be related to a fix in https://github.com/haileys/tangara-companion/pull/29, which was merged in 0.5.0? That would mean that for anyone who is getting the same issue to first try upgrading Tangara Companion if possible, or use an alternative upgrade method otherwise.
  Reply
#3
Ahhhh, I bet Generic.LC_COLLATE could be flashed manually too and get past this error. Yes, turns out it can!

For anyone else in this situation, you can flash the tangara.bin and lua.bin files as normal, then manually flash the rest of the firmware package thusly:

Code:
esptool.py --port /dev/tty.usbmodem201 write_flash 4096 bootloader.bin 32768 partition-table.bin 53248 ota_data_initial.bin 8454144 Generic.LC_COLLATE 15794176 repl.bin


I got the flash address numbers from:
Code:
% more tangaraflash.json
    {
        "version": 0,
        "data": {
            "firmware": {
                "version": "1.5.0",
                "images": [
                    { "addr": 4096, "name": "bootloader.bin" },
                    { "addr": 32768, "name": "partition-table.bin" },
                    { "addr": 53248, "name": "ota_data_initial.bin" },
                    { "addr": 65536, "name": "tangara.bin" },
                    { "addr": 8454144, "name": "Generic.LC_COLLATE" },
                    { "addr": 11599872, "name": "lua.bin" },
                    { "addr": 15794176, "name": "repl.bin" }
                ]
            }
        }
    }

And the serial port number on macOS presents as a tty device:

Code:
% ls /dev/tty.*        
/dev/tty.Bluetooth-Incoming-Port    /dev/tty.usbmodem201

The ESP doco has some good tips about serial port stuff here: https://docs.espressif.com/projects/espt...ort-port-p
  Reply


Forum Jump: