Topic: Note about update-senoko battery firmware script

In case anyone followed the battery board firmware update steps in the recent CrowdSupply email verbatim, there's a little change to make. You should be running the script with sudo.

sudo update-senoko

I think without root, the script can write the firmware okay, but it doesn't verify it. The script gets silently stuck in the loop:

# Wait for the board to show up on I2C
while ! /usr/sbin/i2cget -f -y 0 0x20 0 2> /dev/null > /dev/null
...

and has to be killed with Ctrl-C.

I imagine there is a correct way to probe the battery board and check its firmware version using I2CTools but I haven't figured that out yet.

Re: Note about update-senoko battery firmware script

The default user should be in the group that allows you to read from i2c.  Perhaps something has changed in Debian, though, and that is no longer the case.

Thanks for the workaround.

Re: Note about update-senoko battery firmware script

I had no problem running it as non-root, but the senoko can take quite some time in a reboot loop before it stabilises after a flash. At least, it did for me

Re: Note about update-senoko battery firmware script

When I updated the firmware today, it seemed to proceed very quickly. How might I tell whether the board was in a "reboot loop", or does it not matter if it completed successfully? (I ran it as root using `sudo`)

Also, for others potentially reading, I didn't realize I needed to install the "firmware-senoko" package at first (using `apt-get`) to have access to the `update-senoko` script.

Re: Note about update-senoko battery firmware script

If you use i2cget to read device 0x20 offset 1 and 2 (/usr/sbin/i2cget -f -y 2 0x20 1 and /usr/sbin/i2cget -f -y 2 0x20 2) you should read version 2.2.

Re: Note about update-senoko battery firmware script

Running both of those commands prints out: "Error: Read failed"

Re: Note about update-senoko battery firmware script

Try that query against i2c bus zero instead e.g. run "/usr/sbin/i2cget -f -y 0 0x20 1"

With the original command I also get "read failed". However I think the Senoko is on bus 0.

If you want to know more about the Senoko then you can connect to it e.g. by running something like: sudo minicom -D /dev/ttymxc3 -b 115200. Once you are connected, at the "ch>" prompt, type "info" or "stats".

Cheers,
Robb.

Re: Note about update-senoko battery firmware script

Thanks, Robb.  My fault, Senoko is on I2C bus 0 (the SMBus) not bus 2.