Host firmware update stuck on Pending

Previously had ESP32 host firmware updates working via notehub but they have recently stopped working. I’m using the old DFU example via I2C as all my UART ports are occupied so I can’t dedicate a port to just DFU.
When I upload a binary and queue the update for a device it just says pending forever, it doesn’t seem like the notecard or host device receives any indication that an update is available.

Using the notecarrier_f with adafruit esp32 feather.

Hi @tjw_scion,

Sorry to hear about the DFU troubles, but I’m sure we can figure out what’s going on. Can you please send me the results of a hub.get request from your Notecard?

Also, it would likely be helpful to see a trace log of what occurs after you issue a hub.sync request to sync Notecard with Notehub. You can follow the instructions provided here to get the trace data.

Thanks,
Rob

This randomly fixed itself previously but now seems to be back, even worse when I attempt to update the firmware manually over serial it just reverts it back to the last version notehub has on record sometime later (even when the version number on the manually loaded firmware is higher). Incredibly frustrating as this device is located an 8 hour drive away so driving out to flash new firmware only for it to revert back after a few hours is a huge pain.

Here is the response I get when trying to upload new firmware (details removed):

{
    "event": "",
    "device": "",
    "product": "",
    "app": "",
    "endpoint": "1",
    "received": 1681263089.856737,
    "req": "note.update",
    "when": 1681263089,
    "file": "_env.dbs",
    "note": "device_vars",
    "updates": 12,
    "body": {
        "_fw": "ESP32_notecard_Davis_ISS_Monitor.ino.feather_esp32_7$20230411001347.bin",
        "_fw_retry": "1681262790"
    },
    "fleets": [
        ""
    ]
}

On notehub it just says pending device sync but the device syncs every 10 minutes without any progress to the update.

What’s going on here? What would cause the firmware to revert back to a previous version?

Hi @tjw_scion,

If there is a pending host firmware update on Notehub for a device, it will assume that you still want that firmware updated (regardless of the version number, since you could be reverting to a previous version for instance).

Make sure you check the relevant device and then “abort” the firmware update:

Thanks Rob, good to know. The update request went through successfully today, just took a day or so for the device to pick it up.