Live data from Hacker News

Mender – An open-source OTA software updater for embedded Linux devices

mender.io

11–20 of 48 posts

Re: Mender – An open-source OTA software updater for embedded Linux devices

#11
post #3

What are the differences against Resin.io?

disclaimer: I work for Mender

Mender is basically full image update solution while resin is container based. Mender is fully open source, both client and server, resin is having only client open source. Mender is more lightweight, it provides a thin layer to be integrated with the already existing stack, while resin is providing full stack you need to use to be able to incorporate update mechanism.

Re: Mender – An open-source OTA software updater for embedded Linux devices

#12
post #8

Earlier quoted context omitted.

Exactly. I wish Mender was around 4 years ago. I built exactly this!

Interesting! How did you go about falling back to an older version if the update was bad? Is there a nice way to do this automatically? Say I update to a really botched version with the kernel panicing before it reaches userland. Does this need manual intervention?

disclaimer: I work for Mender

It is possible to make rollback fully automatic. In order to do so you need some integration with bootloader. It needs to be configured so that it can roll back to the previously working partition if update is broken. What is more, you can add some user space runtime checks that can verify the update and if those are not passing (updated image is broken) you can rollback to the previous one as well.

Re: Mender – An open-source OTA software updater for embedded Linux devices

#14
post #3

What are the differences against Resin.io?

disclaimer: I work for Mender Mender is basically full image update solution while resin is container based. Mender is fully open source, both client and server, resin is having only client open source. Mender is more lightweight, it provides a thin layer to be integrated with the already existing stack, while resin is providing full stack you need to use to be able to incorporate update mechanism.

So is there any way to make Mender do local updates that are not OTA?

Re: Mender – An open-source OTA software updater for embedded Linux devices

#15

Earlier quoted context omitted.

Embedded Linux systems supporting OTA usually employs a dual root file system (RFS) approach where the upgrade is placed onto the currently not used partition and then after successful upgrade the RFS to boot into is replaced. It is an easy solutions which ensures integrity and has few drawbacks for typical embedded systems. The output of a typical Embedded Linux CI build is a complete RFS, having to care about indiv…

That's true. I'm currently also involved in the development of an embedded linux project for which we yet have to find out the perfect update story. We thought about replacing individual packets too, but it looks like a hard way from various perspectives: - Build system: Would need to figure out how to build all these packets (with their requirements) in a reliable way. - Deployment: Deployments should be reproducabl…

I'm kind of in this boat now with a couple of products. The catch is I need to do both local and OTA updates. This seems to be a rare feature that nobody is doing.

I also am trying to get Resin.io like containers working. It seems like it would be an easier way to test and deploy.

Re: Mender – An open-source OTA software updater for embedded Linux devices

#16
post #8

Earlier quoted context omitted.

Interesting! How did you go about falling back to an older version if the update was bad? Is there a nice way to do this automatically? Say I update to a really botched version with the kernel panicing before it reaches userland. Does this need manual intervention?

disclaimer: I work for Mender It is possible to make rollback fully automatic. In order to do so you need some integration with bootloader. It needs to be configured so that it can roll back to the previously working partition if update is broken. What is more, you can add some user space runtime checks that can verify the update and if those are not passing (updated image is broken) you can rollback to the previous…

(Way) back when I was working with OpenEmbedded/Ångström I dreamt up sth like this: make uboot/whatever set up a HW watchdog that is retriggered once from kernel mode and then in the userspace as ususal. The daunting task would've been to implement the (platform specific) watchdog in the bootloader. Looking now, there is support for at least some platforms - nice! Good luck with Mender - I'm sure you are badly needed!

Re: Mender – An open-source OTA software updater for embedded Linux devices

#17
post #3

What are the differences against Resin.io?

Mender is full image based, using active/passive partitions, while Resin is container based. Mender is also on a less restrictive software license

> Mender is also on a less restrictive software license.

According to the article Mender releases under Apache 2.0, and all resin.io's open source code is also on Apache 2.0, so it should be the same permissive setup.

(Source: working at resin.io)

Re: Mender – An open-source OTA software updater for embedded Linux devices

#18
post #4

This is kind of a stupid question, but why not just use .rpm/dnf or .deb/apt and a custom repo?

Several embedded distros don't even run a packet manager, it is not needed

You have "disk" and RAM limits. Your Android phone may have 8GB flash and 128Mb of RAM, but other devices might have less. And you can't (shouldn't) turn swap on

You also need a way of ensuring that if the update is b0rked you can recover in some (user friendly) way.

Re: Mender – An open-source OTA software updater for embedded Linux devices

#19
post #17

Earlier quoted context omitted.

Mender is full image based, using active/passive partitions, while Resin is container based. Mender is also on a less restrictive software license

> Mender is also on a less restrictive software license. According to the article Mender releases under Apache 2.0, and all resin.io's open source code is also on Apache 2.0, so it should be the same permissive setup. (Source: working at resin.io)

my bad!

Re: Mender – An open-source OTA software updater for embedded Linux devices

#20

Earlier quoted context omitted.

disclaimer: I work for Mender Mender is basically full image update solution while resin is container based. Mender is fully open source, both client and server, resin is having only client open source. Mender is more lightweight, it provides a thin layer to be integrated with the already existing stack, while resin is providing full stack you need to use to be able to incorporate update mechanism.

So is there any way to make Mender do local updates that are not OTA?

[deleted]
Post reply on HN