HASS.IO -> transfer from SD card to SSD or USB

Holy crap. I even went to the installation page and thought I copy’d and pasted correctly…
Thank you - this worked!

I’m an idiot - this corona thing maybe… dunno.

Many thabks @paddy0174

My pi4 arrived and I have hassos and my snapshot running well, except for mariadb, influxdb, and grafana, using the steps you posted on github… kind of. Initially my ancient lxle laptop failed at this. So I flashed an iso of mint linux with etcher to a usb stick, booted my win pc from that, and followed your directions (I think). I used gparted to first create a fat32 partition (aka mbr), formatted it ext4, and went on from there.

After getting it to reboot using the ssd several times, I loaded my snapshot, saw (as I expected from my research) db error logs. So I uninstalled, reinstalled, and reconfigured the 3 aforementioned db addons, and off it went. Now my ha is much faster, and has room to grow.


hi need some help here…

i’ve followed the steps above…

did the usb boot trick, was able to boot via ssd without sd-card. did all the upgrades and installs without any issues, however when i rebooted raspbian, ,my pi3b refused to boot back up…my SSD and pi3b jujst kept blinking the LED :confused:

Without any errors or logs it’s hard to say… :slight_smile:

Did you remove the SD-card before booting it up?

I’d try one of these:

  • connect at least a monitor to your Pi and boot it up. Should give some kind of error.
  • start again at the beginning, doing all the steps again and take note of every step you do, so it is possible to check afterwards. For example, open a txt file and make note of everything you do, every command you put in and so on.

If your SSD has a LED light, is it working, flashing, anything?

I’ve got a RP3b+ running HassOS 3.11 that works just fine using an SD card and also using USB boot from an Orico 2.5" SATA enclosure and a Crucial 120GB SATA SSD. I am trying to get this working with a mSATA adapter and KingSpec 128GB mSATA SSD, both devices which @chris669 has tested in combination successfully. Unfortunately I am having no success getting my system to boot. I’ve re-flashed by mSATA SSD a few times with different but very recent versions of HassOS to rule out corrupted installation files. I’ve been over to the raspberrypi.org documentation pages to try and understand the boot process and do some debugging using the process outlined for snooping the serial communications GPIO interface during boot. The data I have captured between my working Crucial/Orico setup and the failing mSATA adapter/KingSpec SSD setup looks almost identical other than the expected disk size reporting. One boots the other doesn’t. I’ve also tried a totally different mSATA adapter (an Eluteng mSATA to male USB A) and it won’t work either. Any help on getting this to work would be greatly appreciated.

Should also mention, though implied by the snooping o the GPIO pins of my RP3b+, that I’ve tried using an SD card with bootcode.bin and timeout files and still no luck.

I choose to go back with my sd card, everything was ok, except rebooting. Sometimes rebooting was ok, sometimes not. Unstable for me, will wait…

I’ve had issues with 3.11. Running fine with 3.10 and not daring to upgrade: https://github.com/home-assistant/operating-system/issues/597

I can tell you that with 3.10 and my SSD drive, I’m a happy camper :slight_smile:

Thanks for the additional info @chris669. I saw similar issues with HW you and I used, but now I can’t get it to boot at all. I have tried on 3.10 as @kitus mentioned and still no love. Using the bootcode.bin UART enable feature to monitor USB boot progress it looks like my RPi3b+ is able to find the MBR on my mSATA SSD and then finds and loads the u-boot.bin file just as on my working system with the Orico SATA enclosure / 120GB Crucial SATA SSD. Here are the last several lines of the boot sequence I captured:

MESS:00:00:05.479269:0: hdmi: HDMI:hdmi_get_state is deprecated, use hdmi_get_display_state instead
MESS:00:00:05.563330:0: brfs: File read: /mfs/sd/bcm2710-rpi-3-b-plus.dtb
MESS:00:00:05.568428:0: Loading 'bcm2710-rpi-3-b-plus.dtb' to 0x100 size 0x69ae
MESS:00:00:05.796287:0: brfs: File read: 27054 bytes
MESS:00:00:05.855613:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:05.860106:0: dtparam: audio=on
MESS:00:00:05.894513:0: brfs: File read: 1755 bytes
MESS:00:00:05.941117:0: brfs: File read: /mfs/sd/cmdline.txt
MESS:00:00:05.945082:0: Read command line from file 'cmdline.txt':
MESS:00:00:05.950972:0: 'dwc_otg.lpm_enable=0 console=tty1'
MESS:00:00:07.900530:0: gpioman: gpioman_get_pin_num: pin EMMC_ENABLE not defined
MESS:00:00:08.071499:0: brfs: File read: 34 bytes
MESS:00:00:08.322569:0: brfs: File read: /mfs/sd/u-boot.bin
MESS:00:00:08.326448:0: Loading 'u-boot.bin' to 0x8000 size 0x5fab4
MESS:00:00:08.332445:0: Device tree loaded to 0x2eff9200 (size 0x6d91)
MESS:00:00:08.340073:0: uart: Set PL011 baud rate to 103448.300000 Hz
MESS:00:00:08.346394:0: uart: Baud rate change done...
MESS:00:00:08.349826:0: uart: Baud rate

Then nothing… I’ll keep digging, but if anyone has any ideas, I’m all ears.

All I can say is when I clicked on reboot in HA interface, it shutted down. Then I had to unplug and replug the RPI3 and it was ok. But I was doing this without any SD card inserted, as RPI3 is supposed to boot from USB.

In case it helps, I do too have a 120GB Crucial SSD model BX500 and a PSUGEAR enclosure. Not sure what will happen if I shut down the Pi completely as @chris669 points out. All I know is that I did have problems with 3.11 and maybe the two cases go hand in hand. Anyway, I’m running 3.10 off SSD with these two products and so far so good. Not moving away from 3.10 for the time being. Also, my issue in github has not received attention, although we all know that SSD boot on RPI has lots of constraints.

@paddy0174, any chance you might be able to provide some direction on getting a RPi3b+ up and running on an mSATA drive? I’ve been pouring over this discussion as well as looking at info on the Rasperrypi.org site and I’m not making any progress. Went over to Discord site and I don’t find anything there either since booting from SSD became possible that has provided any help. I’ve provided logs from using u-boot-bin with UART enabled to log the progression of my mSATA drive boot above. I don’t know where to go at this point and I don’t want to simply give up if there is a way to make this work.

I’ve tried multiple mSATA drives with no success. At one point I was able to get my Eluteng Adapter to boot with 128GB KingSpec mSATA drive, but I can’t get this to work any more. It always seemed to fail on a reboot and I would have to temporarily disconnect Ethernet (I think this is what used to work) to make it boot. I also had to have a very old USB stick in one of the USB ports with my network config info to make this work, but again, it’s not working any more.

Is there a particular reason you are persisting with mSATA drives instead of using a standard 2.5" SSD and USB enclosure?

I use THIS enclosure and it works perfectly with a Pi3 that I run as a backup HA system.

Also, check this blog for some known working adapters and info.


Thanks for the question @kanga_who. I’m trying to deploy a self-contained system inside of THIS enclosure, the largest most cost effective enclosure meant for the RPi that I could find. I’m providing this solution for a friend and wanted something that looked as clean as possible without the “octopus” look. I already have a SATA solution that works (mentioned above). If this just simply won’t work due to a documented reason, I can accept that, I just haven’t been able to find anything specific stating why it won’t work. Not trying to be difficult, just persistent in trying to find a solution that will help me and others.

Fair enough. The linked enclosed shows a 2.5" drive, so it would probably be easier to stick with that.

The Pi3 only has USB2, so you won’t get any extra benefits from using an NVMe drive.

BTW @kanga_who, thanks also for the link to the James Chambers article over at Rasperrypi.org. I had read this article, even though it seems to be targeted at the RPi4. I tried his method of using Quirks to try and fix the issue I’m seeing, but no luck.

1 Like

I directly flashed the hassio image for nuc on an old laptop and all is working great. But I want to find a way of turning the laptopscreen off. Any suggestions?

Hi everyone, please help me!
I’m trying to install hassio (3.13, or 3.10 or 4.4 development) on a 120gb Kingdian ssd to connect to a raspberry 3b. Nothing, it won’t start. I tried to install the latest version of raspbian and it starts smoothly and works. What can I do to find the problem? I replaced the SSD with a traditional 500 GB hard drive but the result is the same, it won’t boot

All tests were done with an inserted microsd, fat32 and the bootcode.bin file, with and without the timeout file.

sudo vbetool dpms off :slight_smile:

3b needs some pre-work. make sure you enable booting off usb. See my message above for a fully working setup on a b+ but once usb boot enabled it should work

Yes, I have enabled boot with the command echo program_usb_boot_mode = 1 | sudo tee -a /boot/config.txt, in fact using the ssd and raspian lite it starts without problems from usb