Performing a local OS update

How do I update the host OS locally?

I have a FinCM3 currently running 2.38, but I need to update to 2.4 for the recent camera lib fixes.

This is in reference to:


Hello, just to clarify, are you running the FinCM3 as an unmanaged device, independent from balena cloud? Thanks!

Hello, yes I am.

Hello, The procedure for upgrading is outlined in the forum post linked below. Please could you take a look through that and let me know if this gives you all the info you need. Thanks.

// Roadmap for BalenaOS Updates in OpenBalena


I’ll give that a try right now :slight_smile:

Unfortunately that didn’t work.

My first command after I ssh’d into the host was:

hostapp-update -r -i resin/resinos:2.47.1_rev3-nitrogen8mm

…which, after deployment, resulted in:

[INFO] Switching uboot root partition index to 2… done.
Update failed.

I then realized that was probably the prod image, and I wanted the dev image, so no foul.
I then ran:

hostapp-update -r -i resin/

…which after a much shorter deployment, resulted in:

dd: failed to open ‘/dev/mtdblock0’: No such file or directory
339+0 records in
339+0 records out
347136 bytes (347 kB, 339 KiB) copied, 0.00336458 s, 103 MB/s
[INFO] Switching uboot root partition index to 3… done.
New hooks ran successfully.
Connection to closed by remote host.
Connection to closed.

At that point I tried to ssh back into the device but it timed out. I rebooted the device, but the same happened, so I tried to ping the device but got no response. I then checked the router to see if for some reason the IP had changed (it’s static so really shouldn’t have) and noticed the device wasn’t connected at all.

I powered the device down and back up but don’t see any network activity on the port at all.
While this is a little annoying, it’s a beautiful day here, so I’m going to open my office window, make sure my code it up to date and flash the device over with the latest OS…it’s a dev device after all, and as a good engineer I have nothing on there that isn’t in a repo :slight_smile:

Thought I’d post anyway so we can examine what went wrong. And I’ll hold off on the update for an hour or 2 in case anyone wants me to try something.


Hi @webtop, you can’t currently HUP a dev version of the host OS so this approach won’t work. I also notice from the commands you also specified different devices on the two attempted HUPs, neither of which were for the Fin, which I imagine is the root cause of the device booting issues. Either way to move to the latest dev variant of the hostOS you are going to need to reprovision. Let us know if you have any issues once that is done.

Hey Gareth,

Not sure what you mean by “neither of which were for the Fin”, I was ssh’d into the Fin at the time I ran the commands. Unless you mean the images, in which case I got those from the linked post above mine.


Hey, yes the host OS images are specific to the device (due to different supported architectures, boot options etc…) The links you copied above were targeting the nitrogen8mm and ts4900 boards specifically. For the Fin, the OS version would be found here

Ah, I see what you mean. I wish I would have paid more attention to that, because now Etcher doesn’t even see my CM3 module :frowning:

Can you confirm which Fin model you have (v1 or v1.1) and have you checked the troubleshooting specifically trying a different USB cable in particular (as clearly sounds like it was powered fine previously)?

Thx Gareth. I have 2 white cables on my desk right now and connected the wrong one…doh!

Onwards we go!

1 Like

Aha! That’s good news indeed, thanks for letting us know.