Hassio booting off ssd on a Raspberry Pi 3b+

Hi all,

I’ve been running HA on an SSD since discovering this and a few other threads back in 2019. It’s been working great. Even survided a few power outages. Read that upgrading the Supervisor past 3.7 will cause booting from SSD to no longer work.

Has anyone upgraded past that point? I’m concerned about falling to far behind. I can’t go back to an SD card as I had too many failures. I guess I would need to do VM but I have several USB conencted dongles (ZWave, Wyze etc …) which make VM’s more challenging to setup.

BTW I’m using Kingston SSD with the StarTech adapter.

where did you found this information??? I’m running on a ssd for some weeks now and in the last days i got serious thermal problems and i’ve no idea why

Hi Yakman,

Well I’ve been running on SSD for a few months and always kept my system up to date. This morning I got a power outage and there we are, it is not booting anymore. So indeed I would hold on updating to the current version.
Right now my system is out and I don’t know what to do about it. I did not know that the latest supervisor would break the SSD boot. This I actually don’t understand as many must be running this configuration.
My house is now crippled 1 week away from vacation.

I was running Hassio 0.111.1 on a Raspberry Pi 3B with Sandisk SSD 128 GB. I even tried reboots in the past and all worked, so I thought it was settled.

Does anyone know how I could read the Hassio SSD to get the latest backup to an SD card?
Or any tips on getting the boot on SSD to happen? I was using an empty SD card or it would not work.

I think booting directly to USB on the Pi3 was a one way process, i.e. once done it will never boot from an SD Card - precisely why I never understood why anyone would! You could try a fresh RaspberryOS image and see if it boots.

If you have a Pi or Linux machine, it is highly likely you will be able to mount the SSD and read the data off it.

I recommend the Backup to GoogleDrive addon, but that advice is a bit late…

Thanks for the advice.

I’ve inserted my previous SD card install and it booted correctly from there. So I have an old version of HASSIO running now, with missing devices.

I’ll try to mount the SSD on my PC and see if I can recover the snapshot. GoogleDrive is a good point, as soon as I get things running I need to look into it.

So I managed to mount my SSD on my PC and recovered the latest snapshot file.

I then transferred it to my running instance which uses the SD card and made a “Wipe and Restore” which worked beautifully. Everything is back, even the DECONZ configuration and Node Red flows.

The system still shows OS V3.12 - I clicked on the update button and it then downloaded and rebooted. After restart, the OS is still at v3.12. I can’t see why it does not update to 4.1 and was not able to trace anything in the logs. I cleared browser cache and still no updated OS. Any ideas? Where should I look to find out the issue?

Hardware: Raspberry Pi 3 Model B Rev 1.2
Supervisor Version: 227
Home Assistant: 0.111.4
Hassos 3.12

1 Like

Glad to hear you got it up an running

I have rebooted my Pi a few times and have also survived a few power outages while booting from SSD . This used to work with the older versions of the supervisor. I am version 3.7. I believe what you are describing only booting once is true now for the newer versions of the supervisor.

I moved to SSD as my SD cards were lasting only a few months and would never survive a power outage. I also have a small UPS for my Pi and have worked to keep my DB smaller. I’m thinking of moving away from the Pi and going to Proxmox once I can get my hands on an older laptop or PC to set that up on.

I also agree with your recommendation on the Google Drive backup. Its easy to setup and use.

Do you use an SD card for the boot partition? On a Pi3 you could Bypass the SD card completely - that was what I referred to - doing so was a one time thing on the Pi and cannot be undone. Personally I just have the boot partition on a really small SD card with rootfs on the SSD.

No, the system was booting directly on the SSD. I had the system booting without SD card for some time. It all worked well but then one day, after another power cut, it just did not boot anymore.
After some research, I tried a couple of setup with the timeout file on the SD which never worked. Someone suggested the empty SD card and it worked (I don’t know why though). I tried again without and it would not boot. So I left the empty SD card inside until last week (after multiple updates on OS and home assistant in the mean time) where booting from the SSD just stopper working again, with or without SD card inserted.

Right now I am back to run the whole setup on from another SD card I had spare. I was not able to get the system to boot from the SSD again.
The SD card is also stuck with OS 3.12. I can’t trace why it does not install 4.1.

How did you get the boot partition on the SD only to then boot the system on the SSD?

That is not correct. Once the boot from USB flag is set you can boot from either the SD card or USB.

1 Like

I finally managed to get the OS to 4.10 - I had to first update to 3.13, then 4.7 and finally to 4.10.

Now everything is running back to “normal” apart that I use the SD card instead of the SSD. As soon as the booting it fixed I will try to swap to the SSD again.

@baz123 - I am still interested in your solution SD/SSD combination. Would you mind sharing some details?

I used this instructions to change a Pi4 from SD-card boot and data to a SD-card boot and SSD-data: https://community.home-assistant.io/t/hass-io-transfer-from-sd-card-to-ssd-or-usb/97452/243

It was easy to do it and it works since beginning of May this year with no problems.

2 Likes

I followed this

https://www.raspberrypi.org/forums/viewtopic.php?t=44177

However, I continue to have issues with the SSD disconnecting sometimes - don’t skimp and buy a good brand SSD!

1 Like

Thanks for the link - I’ll look into it. Are you using HASSIO or running Home Assistant Supervised or in a docker on linux?

My SSD setup has been very reliable when working. I have a SanDisk 128GB with a case and it’s been working well. The only issue is with the boot after power shutdown, which is an RPI/Home Assistant issue.

I am using a complete HassOS installation.

I just noticed my SSD is near full capacity, it’s a 120GB so how can that be??
ssd

Check how many snapshots you have saved on it. Only thing I could think of that would create very large files.

Just in case anyone gets trouble in the future: I also had the problem, that a reboot didn’t work, only fresh starts would work booting from a SSD (cutting the power for various seconds).
What helped in my case:

  • the solution outlined here: copy the bootcode.bin from the ssd to the root of an empty sd-card and adding a blank file named timeout
  • adding 2 lines to the config.txt of home assistant (for example connecting the usb to a pc): program_usb_timeout=1 and program_usb_timeout=1 (don’t forget to leave a blank line at the end of the file)

Now my Home Assistant Supervisor restarts reliably every time!

1 Like

This solved the problem for me, with the note that I think you’ve got a typo in your second bullet (both entries are the same), and they (probably) should be:

program_usb_boot_mode=1
program_usb_timeout=1

From:
http://www.dieferbers.de/wordpress/author/stefferber/