-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
suggestion -- provide minicom script for 700 series Controller Firmware Updates doc #14
Comments
Thanks! I assumed this could all be scripted with minicom, but didn't know the syntax. I'll try this out in the future and update.
Probably overkill for the purpose here.
Yeah, I'm aware of that, but it's easier to just say "be root" then try to guide someone through the process of setting up/verifying group membership. I agree though, and will see if I can simplify to this. |
I haven't scripted anything in minicom since, like, 1999, but I still remembered it was there. :) The main quirk is not having a syntax to specify characters in hexadecimal, just octal. But that's easy enough to change. It wouldn't be too hard to write something in python, at least assuming that the Gecko menu doesn't change formatting. Hmmm. I guess I should take that thought somewhere other than your github issue. :) But anyway, thanks for the guide -- Zooz tech support was all like "you'll need Windows" and I felt like I was transported to 2003 or something. |
I'm having problems with the procedure and this script, but I should start off by stating this is my first experience with minicom. I've used other terminal packages such as Putty. FYI, I'm trying to update a Zooz ZST10-700. When trying to figure out how to configure minicom (requires the -s CLI option), I struggled with the three lines of configurations under Preparation, step 4. Ultimately, I just copied your configuration into /etc/minicom, made sure it could be loaded into minicom, and verified the settings by stepping though the configuration menu. I then exited and used the Installation shell commands, which all seemed to work until I got to step 4. Executing the command At this point, I tried Matt's script, but minicom returned 'cannot open $USBPATH: No such file or directory', I went back to the shell command at Preparation, step 3 and tried again. Unfortunately, I get the same diagnostic. I'm out of ideas. Any suggestions? |
You'll want to copy and paste the entire |
Thanks for the timely info. The firmware was uploaded, moved to the HA host, and it seems like it's working. |
Perhaps I spoke too soon. It's still reporting Firmware: 7.15. |
Third time's a charm. Thanks for the help. R |
A non-interactive upgrade, without any sanity checks, might be as simple as:
The problem with trying new approaches is that you don't get much chance to test. Once the firmware is updated, it's impossible to upload another one until a new version is released. At best, you can check that an error is reported (happens when updating the same file) and deal with that. |
Due to the risk of making changes and the inability to test those changes, I'm going to keep the guide as-is. If you're looking for a script, one was provided in this discussion: #18. |
For what it's worth, I wasn't able to it to get it working using the Regardless, @mattdm's minicom runscript approach worked like a charm. Here's my basic all-in-one script:
|
This works for Macs (tested on an M1 Air) - Use this script, but look for the EDIT: of course the prerequisite is to install the dependencies via |
Nice! 🎉 I'll incorporate both of these into the guide. |
also I did not need to drop into root to do this, I did this all in userland |
I've followed the modified instructions provided by @clarkminor and @raman325 (thank you both), but no luck.
I hope I'm missing something obvious. Not really sure where to go from here. Any help would be greatly appreciated. |
I too am experiencing the issues @ryanpacker is facing. Seems it is a perms issue maybe? |
OK so was able to go through it all but I did not have any luck with updating the firmware. It still shows the old 7.15 instead of the 7.17... I just added @raman325 do you have any suggestions? |
I'm having same issue as @miguelarios. I'm using the script from @clarkminor and am getting all the output I would expect (I think). But firmware still ultimately shows as 7.15. (I'm on a MBP running macOS 11.6.5). Script I have saved as
Then I run:
The only thing that seemed suspect to me was after I went through the steps to upload the firmware there wasn't an explicit confirmation of the successful upload. The bootloader just seemed to restart on its own after awhile. So I assumed that meant the upload was successful but maybe not? |
mea culpa, I thought the operation was successful on my M1 Mac but didn't look closely enough at the firmware version. The installation silently failed but appeared to work. I was unable to get this to work using my M1 Mac... Sorry for sending anyone on a wild goose chase. |
@kpine can you remove the documentation for macOS (see above). It appears macOS working was a false positive. |
For all the macOS users. (@raman325, @jallen92, @miguelarios ) I eventually gave up and simply created a bootable USB with Ubuntu 22.04 on it, booted from the usb on my Mac (a little annoying because you first have to boot into recovery mode to configure a setting to allow booting from external media). note: I did not install ubuntu on a partition, that's not necessary, I just ran it from the usb. You'll probably need an Ethernet connection for your Mac if you go this route as Ubuntu 22.04 doesn't seem to ship with the correct Wi-Fi driver (at least for my model, so you can't install minicom etc). I also needed an external mouse and keyboard for similar driver issues. Once I booted from the USB I just followed the standard update instructions and it all worked fine. This may seem like a lot of trouble (which it was), but I didn't have another machine available to do this on, so this got me over the hump. But all you need is a 4Gb usb, mouse, keyboard, and Ethernet dongle. @kpine as a side note, I successfully ran the update from Ubuntu 22.04. |
I'm a macOS user and I successfully updated twice using the bash script & minicom from brew. see this |
Z-Wave JS now supports OTW updates natively, and Z-Wave JS UI 8.8.0 has now added support for that in its UI. I would suggest giving that a try now instead. |
This can be used with firmware meant for the controller then? |
Yes, controller firmware updates are the topic of discussion here. |
Just being explicit at the expense of stating the obvious 😀 |
I recently updated the wiki with respect to this, take another look. https://github.com/kpine/zwave-js-server-docker/wiki/700-series-Controller-Firmware-Updates-(Linux)#firmware-update-instructions I've removed minicom instructions entirely at this point. |
Rather than separate stty and printf commands, I think it's less error-prone to just do it all with minicom. Include the following script (note hex had to be converted to octal):
Save that as
700firmware.runscript
and then start minicom withActually, I think
-o
can actually be omitted as your zwave config doesn't send an init string. So just:This could be enhanced to use the
expect
runscript command to find the menu, and even callsx
to upload the firmware automatically, but that's probably overkill (and at that point maybe minicom isn't the right tool anyway).Also of note — if you're in the
dialout
group in most distros, no need to be root, and you can put the minicom zwave config at ~/.minirc.zwave instead of in/etc
.The text was updated successfully, but these errors were encountered: