Migrating from Raspberry Pi 3 to Pi 4

So something I figured out later is that if you are trying to restore a large backup using the onboarding link at the bottom, it will not work with backups larger than I believe 1 or 2GB. @mzac is correct that restoring after the onboarding is the best route with larger backups.
Also, since then I am now using an SSD for booting the OS and not an SD card. This has vastly improved performance and stability.

Restoring from snapshot will make everthing work in Pi 4 as it did on Pi 3? Zigbee bindings, integrations, lovelaceā€¦

Yes it will, even if you change from 32-bit to 64-bit.

2 Likes

I know that this topic is old, but I was searching around for some help as I had recently gotten a Pi4, but was reluctant to change incase of any issues.

The process I followed was to create a backup on the Pi3, download it to the computer I was logged into HA using. I had installed the HA OS using the Pi imager on the Pi4. I logged in, uploaded the backup and restored the full backup.
Once the IP address on the new one matched the old one everything seemed to be working perfectly.
I just hope I havenā€™t typed this too soon.

3 Likes

You are absolutly right - snapshotting makes no sence - hence that will never work

Iā€™ve just done this migration after reading this thread and some others where there was some conflicting advice about doing a partial backup rather than a full one. It has to be a full backup or you will be missing most of your customisations (DAMHIK).

This is using HAOS and with a static IPv4 address configured within HA. If youā€™re using static DHCP there would be a couple of extra steps to sort that out. What worked for me was simply:

  • Make sure Pi3 is running the latest of everything
  • Prepare a new SD card with the Pi4 HAOS according to the documents
  • Do a full backup on the Pi3 and download it using your browser
  • Unplug the Pi3 from the network
  • Plug the Pi4 into the network and boot it
  • Wait a suprisingly long time while itā€™s ā€œPreparingā€ before the web interface on port 8123 gives you an initial screen
  • Use the option to restore from a backup, supplying the .tar file downloaded previously
  • You will then get a ā€œrestoring backupā€ screen that never completes. However, after some time it has actually completed.

In my case I had the SSH add-on installed, and once that had been restored and started, I could use that to log in and use ā€œdocker statsā€ to see when it looked like the restore had finished.

If you plug in a keyboard and screen during the initial installation phase and/or the restore, you can use the command line to see whatā€™s going on (ā€œsupervisor logsā€, ā€œcore logsā€, and apparently ā€œloginā€ will give you a shell on the bare OS).

With hindsight, I feel that this procedure isnā€™t really well documented/tested enough, as moving from lower to higher powered Pis is clearly going o be a very common operation.

1 Like

I just assume the process should be the same if you use an SSD instead of an SD Card. Can anyone confirm?

Yes, indeed.

1 Like

OK, i would need a second SSD to go this way, right? Or might it be possible in some way to just move the SSD from Pi3 to Pi4?

Alternative:

  • Do a full backup on the Pi3 and download it to another computer
  • Unplug the Pi3 from the network
  • Flash HA OS for Pi 4 to your SSD
  • Plug the Pi4 into the network and boot it
  • Wait a surprisingly long time while itā€™s ā€œPreparingā€ before the web interface on port 8123 gives you an initial screen
  • Use the option to restore from a backup, supplying the .tar file saved previously
  • You will then get a ā€œrestoring backupā€ screen that never completes. However, after some time it has actually completed.
2 Likes

That sounds totally logic to me. Thank you!

Worked like a charm! Thank you!

2 Likes