# General URVE Pi

# Home Assistant

## Installation steps on SD Card

Currently it is possible to install home assistant on sd card due to the size of home assistant. Boot version should be from *2023.02.22*. You can check boot date with command `uname -v`.

1. Format SD Card and create new partition

```bash
# format SD card (mmcblk1)
sudo su
sgdisk --zap-all /dev/mmcblk1
parted -s /dev/mmcblk1 mklabel gpt
parted -a opt -s /dev/mmcblk1 mkpart primary ext4 0% 100%
mkfs.ext4 -F /dev/mmcblk1

```

2. Mount created partition to /mnt/sd. Also create link between /mnt/sd and /var/lib/docker. In this case every docker container will be on sd card

```bash
# mount SD card to docker folder
mkdir -p /mnt/sd
mount /dev/mmcblk1 /mnt/sd
mkdir -p /mnt/sd/docker
mkdir -p /var/lib/docker
mount --bind /mnt/sd/docker /var/lib/docker

```

3. Add partitions to /etc/fstab for automounting

```bash
echo "/dev/mmcblk1 /mnt/sd ext4 defaults 0 0" | sudo tee -a /etc/fstab
echo "/mnt/sd/docker /var/lib/docker none defaults,bind 0 0" | sudo tee -a /etc/fstab

```

4. Install Home Assistant dependencies

```bash
# Install requirements
apt install apparmor jq wget curl udisks2 libglib2.0-bin network-manager dbus lsb-release systemd-journal-remote -y
curl -fsSL get.docker.com | sh
sync

```

5. Install *os-agent*. You can find newest version of os-agent here: <a href="">https://github.com/home-assistant/os-agent/releases/latest</a>

```bash
sudo wget https://github.com/home-assistant/os-agent/releases/download/1.5.1/os-agent_1.5.1_linux_aarch64.deb
sudo chmod 777 os-agent_1.5.1_linux_aarch64.deb
sudo apt install ./os-agent_1.5.1_linux_aarch64.deb -y
sudo rm -f ./os-agent_1.5.1_linux_aarch64.deb

```

6. Install home assistant supervisor. After first installation it will show error made by ipv6 support enabled. When asked about version select `qemuarm-64`

```
# Install home assistant supervisor
sudo wget https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb
sudo chmod 777 homeassistant-supervised.deb
sudo apt install ./homeassistant-supervised.deb -y
echo "{\"log-driver\": \"journald\",\"storage-driver\": \"overlay2\",\"ip6tables\": false,\"experimental\": true,\"log-opts\": {\"tag\": \"{{.Name}}\" }}" > /etc/docker/daemon.json
sudo systemctl start docker.socket
sudo systemctl start docker.service
sudo apt install ./homeassistant-supervised.deb -y
sync

```

[![](https://faq.urveboard.com/uploads/images/gallery/2023-03/scaled-1680-/fCCEzeUG9kQMkDzM-image-1679316390538.png)](https://faq.urveboard.com/uploads/images/gallery/2023-03/fCCEzeUG9kQMkDzM-image-1679316390538.png)7. Check if installation is completed with command mentioned below. Home Assistant creates 7 containers. Depending on your internet connection you have to wait at least few minutes.

```bash
docker ps -a

```

[![](https://faq.urveboard.com/uploads/images/gallery/2023-03/scaled-1680-/OxjEiSUyZFrFQUrA-image-1679316735991.png)](https://faq.urveboard.com/uploads/images/gallery/2023-03/OxjEiSUyZFrFQUrA-image-1679316735991.png)8. After all these steps you can access Home Assistant page on default port 8123 [![](https://faq.urveboard.com/uploads/images/gallery/2023-03/scaled-1680-/dj92qEWqC0Bo7GOj-image-1679317177839.png)](https://faq.urveboard.com/uploads/images/gallery/2023-03/dj92qEWqC0Bo7GOj-image-1679317177839.png)

# I would like to create SSH connection with newly purchased URVE board PI. What is the root password for the initial connection

Default credentials:

Login: linaro

Password: linaro

# Please let me know how to flash the OS without having access to windows.

You can use the flashing library on Linux: [https://github.com/rockchip-linux/rkdeveloptool](https://github.com/rockchip-linux/rkdeveloptool).

# Do we have instruction to flash Android to URVE Pi?

The installation procedure for Android is the same as for Linux. More details in our user manual here: https://urveboard.com/pi/files.

# Booting from SD card

#### 1. Download OS image

Go to [urveboard.com](https://urveboard.com/pi/files) and download *OS Image (Debian 11)*. Extract content of the archive. Open SD\_Firmware\_Tool.exe from SDDiskTool\_v1.73 directory.

#### 2. Create bootable SD card

After opening the app select device and select *SD Boot* checkbox. If you keep default value *Upgrade Firmware*, this SD card will be in upgrade mode (it will upgrade existing system). Then select update.img located in *Image* directory and click *Create*. [![](https://faq.urveboard.com/uploads/images/gallery/2023-06/scaled-1680-/wc7pbG8wYj4RYdte-image-1687265023875.png)](https://faq.urveboard.com/uploads/images/gallery/2023-06/wc7pbG8wYj4RYdte-image-1687265023875.png)

If any error occurs for example *Writing Loader failed!*, you should ignore that error and click *Create* again. After few minutes you should see *Creating upgrade disk ok.*

[![](https://faq.urveboard.com/uploads/images/gallery/2023-06/scaled-1680-/0eNVPlusGhQpLPAH-image-1687265456512.png)](https://faq.urveboard.com/uploads/images/gallery/2023-06/0eNVPlusGhQpLPAH-image-1687265456512.png)

#### 3. Clear internal memory

Enter terminal of the device. Either via SSH connection or with debug UART ([Connecting to URVEPi Debug UART](https://faq.urveboard.com/books/general/page/connecting-to-urvepi-debug-uart)). Use command below to clear partition table of internal memory.

```bash
dd if=/dev/zero of=/dev/mmcblk0 bs=512 count=1 && sync

```

**WARNING** this command is irreversible and will delete internal memory data.

#### 4. Verify

You can check if it works by using command `lsblk`. You should see root partition (/) mounted from *mmcblk1p6*.