question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

[bug] Cannot do OTA: "Unable to extract firmware from file"

See original GitHub issue

Version

Build/Run method

  • Docker
  • PKG
  • Manually built (git clone - npm install - npm run build )

zwavejs2mqtt version: 1.1.0 zwavejs version: 6.1.3

Describe the bug

Trying to upgrade firmware on a IDlock 150, zwavejs2mqtt doesnt seem to understand the format. The 1.6 firmware doesnt have a fileending, but the previous firmwares had .hex. Tried renaming the file as well;

2021-02-09 08:23:01.270 INFO ZWAVE: Calling api beginFirmwareUpdate with args: [
  62,
  'IDLock_OTA_1_6.hex',
  <Buffer 3a 30 32 30 30 30 30 30 34 30 30 30 30 46 41 0d 0a 3a 31 30 31 38 30 30 30 30 30 32 32 37 33 33 31 41 37 30 31 41 37 35 32 32 37 46 42 38 45 46 39 30 ... 233342 more bytes>,
  0,
  [length]: 4
]
2021-02-09 08:23:01.499 INFO ZWAVE: Unable to extract firmware from file: The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array or an Array-like Object. Received undefined beginFirmwareUpdate {
  success: false,
  message: 'Unable to extract firmware from file: The first argument must be of type string or an instance of Buffer, ArrayBuffer, or Array or an Array-like Object. Received undefined'
}

To Reproduce

Steps to reproduce the behavior:

  1. Go to ‘Node X’
  2. Click on ‘Node actions’
  3. Scroll down to ‘Begin firmware update’
  4. Choose firmware from https://idlock.no/idlock_ota_v_1_6/
  5. See error

Expected behavior

Firmware to extract correclty and start OTA process

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:5 (5 by maintainers)

github_iconTop GitHub Comments

1reaction
AlCalzonecommented, Feb 9, 2021

Okay I found it. The file is hex-encoded and the encoding seems to differ from the files I’ve seen so far.

0reactions
AlCalzonecommented, Feb 9, 2021

Okay, so the difference is that your HEX file contains “holes” - regions of data that have to be filled with 0xff. We used to assume that they only contain a single block.

Read more comments on GitHub >

github_iconTop Results From Across the Web

[bug] Cannot do OTA: "Unable to extract firmware from file"
Steps to reproduce the behavior: Go to 'Node X'; Click on 'Node actions'; Scroll down to 'Begin firmware update'; Choose firmware from https:// ......
Read more >
Jasco finally released Zwave firmware files but I can't update ...
I have downloaded many files before from GitHub but none of the Jasco firmware files download… so I clicked on the file and...
Read more >
OTA update failed - installation problem - OnePlus Community
My OTA to 11.0.8.11 keeps failing. It briefly says System update downloading and then asks me to Resume, after which it again briefly...
Read more >
what's the problem with Android OTA updates and how to fix it?
For successful OTA application it is necessary to get back original files into the system. The most reliable way is to link the...
Read more >
How to update to the latest Software via Odin - XDA Forums
Now the phone is stuck in download mode, and we can't find a firmware download with replacement AP or CP files. Only a...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found