### **Step 1** - Download U-Boot only image and an Helios64 image build
To emulate the internal eMMC as USB Mass Storage, special u-boot image is needed.
Download the microSD card image from [here](/helios64/files/u-boot/helios64_sdcard_u-boot-only.img.xz).
You will also need to download an OS image to write to the internal eMMC.
Go to [Download](/download/#helios64) and chose one of the latest build.
!!! info
OMV (OpenMediaVault) is only supported on Debian OS.
Armbian 20.08.8 and earlier has bug that prevent system to boot from eMMC!
### **Step 2** - Writing U-Boot image to a microSD Card
You will need to use an image writing tool to write *helios64_sdcard_u-boot-only.img.xz* to microSD Card.
#### Under Windows, Mac OS or Linux (via Graphic Interface)
Etcher is a graphical SD card writing tool that works on Mac OS, Linux and Windows, this is the easiest method for most users. Etcher also supports writing images directly from XZ files, without any prerequired decompression. To write your image with Etcher:
- [Download Etcher](https://www.balena.io/etcher/) and install it on your computer.
- Insert the microSD Card inside your SD card reader (microSD to SD adapter might be needed).
- Open Etcher and select the *helios64_sdcard_u-boot-only.img.xz* image file from your local storage.
- Select the microSD Card you wish to write your image to.
- Review your selections and click 'Flash!' to begin writing data to the microSD Card.
![Etcher](/helios64/img/install/etcher_flash.png)
#### Under Linux (using dd via Terminal)
Armbian images are using XZ compression format, therefore we need xz-utils or xz tools to decompress the image first.
for Debian-based distribution (Debian/Ubuntu) you can install the utility using following command:
```bash
apt-get install xz-utils
```
in RedHat-based distribution (RHEL / CentOS / Fedora Linux) users can use this command:
```bash
yum install xz
```
after installing the compression tool, you can now decompress the images:
```bash
xz -dk helios64_sdcard_u-boot-only.img.xz
```
finally we can write the images to sdcard using dd:
/dev/sdX is where the microSD is mapped in your Linux machine, change the 'X' to your corresponding mapped device. If you set /dev/sdX to a wrong device then you might risk erasing a hard drive or different device than the designated microSD.
### **Step 3** - Wire Helios64
!!! warning
Always proceed with caution when manipulating 110/220V appliance.
1. Insert the prepared microSD Card.
2. Connect your computer to the serial port with the Type-C to Type-A USB cable.
3. Connect Helios64 to your home network with the Ethernet cable.<br>*Choose LAN2 port if you have 2.5Gb network.*
4. Plug-in the DC power connector. **Don't power-up the Power Adapter yet.**
![Connections with Enclosure](/helios64/img/install/connections_A.png)
If you are using Helios64 without an enclosure:
![Connections without Enclosure](/helios64/img/install/connections_B.png)
### **Step 4** - Power-Up Helios64
Now that everything is ready you can plug-in the AC adapter and push the [Power Button](/helios64/button/).
![Enclosure Power ON](/helios64/img/install/power-on_A.png)
If you are using Helios64 without an enclosure:
![Enclosure Power ON](/helios64/img/install/power-on_B.png)
### **Step 5** - Writing an OS image to Internal eMMC
Write Helios64 OS image that you have downloaded on [Step 1](/helios64/install/#step-1-download-u-boot-only-image-and-an-helios64-image-build)
#### Using Etcher
- Open Etcher and select the Helios64 image file from your local storage.
- Select "Linux UMS_disk_0" drive.
- Review your selections and click 'Flash!' to begin writing data to the microSD Card.
*Replace the filename by the image file name you downloaded.*
!!! note
/dev/sdX is where the "Linux UMS_disk_0" is mapped in your Linux machine, change the 'X' to your corresponding mapped device. If you set /dev/sdX to a wrong device then you might risk erasing a hard drive or different device than the designated Helios64 internal eMMC.
### **Step 6** - Power-Down Helios64
Power down Helios64 by long pressing the power button and then remove the microSD card.
Now the system ready to be configured according to [Configure the OS](/helios64/install/#configure-the-os) section.
Etcher is a graphical SD card writing tool that works on Mac OS, Linux and Windows, this is the easiest method for most users. Etcher also supports writing images directly from XZ files, without any prerequired decompression. To write your image with Etcher:
- [Download Etcher](https://www.balena.io/etcher/) and install it on your computer.
- Insert the microSD Card inside your SD card reader (microSD to SD adapter might be needed).
- Open Etcher and select the Helios64 image file from your local storage.
- Select the microSD Card you wish to write your image to.
- Review your selections and click 'Flash!' to begin writing data to the microSD Card.
*Replace the filename by the image file name you downloaded.*
!!! note
/dev/sdX is where the microSD is mapped in your Linux machine, change the 'X' to your corresponding mapped device. If you set /dev/sdX to a wrong device then you might risk erasing a hard drive or different device than the designated microSD.
For Windows version prior to Windows 10, you will need to install the FTDI driver in order to access the USB to serial bridge used by Helios64. You can find the driver [here](https://www.ftdichip.com/Drivers/VCP.htm).
The serial port detection may vary on different system, please make sure to check the device manager to get the information of correct serial port to connect to Helios64. Check this [link](https://tnp.uservoice.com/knowledgebase/articles/172101-determining-the-com-port-of-a-usb-to-serial-adapte) to learn how to determine the right COM port.
To exit picocom do **Ctrl-a** then **q** button in squence
!!! note
Using command _ls -la /dev/ttyUSB*_ you should be able the find the USB to serial bridge device used by Helios64. Under Linux the device will be named **/dev/ttyUSBx**, where **x** is a digit.
For Mac OS you might need to install the FTDI driver in order to access the USB to serial bridge used by Helios64. You can find the driver [here](https://www.ftdichip.com/Drivers/VCP.htm).
Using command _ls -la /dev/tty.usb*_ you should be able the find the USB to serial bridge device used by Helios64. Under Mac OS the device will be named **/dev/tty.usbserial-xxxxxxxx**, where **xxxxxxxx** is some serial number.
By default Helios64 will try to obtain an IP address via DHCP. To figure out what is the allocated IP address you will need to type the following command in the console.
You will have to reboot for the network settings to take effect.
```bash
sudo reboot
```
!!! info
You can also refer to the following Debian Wiki [Page](https://wiki.debian.org/NetworkConfiguration#Setting_up_an_Ethernet_Interface) for advanced network settings.
You can now connect by SSH to your Helios64 to carry on with your configuration.
Here is the example when we use linux client:
![SSH Login](/helios64/img/install/ssh_login.png)
You can use putty as the SSH client if you are using windows:
![Putty SSH](/helios64/img/install/putty_ssh.png)
## **What to do next ?**
You can use **armbian-config** which provides an easy way to install 3rd party applications like *OpenMediaVault*, *NextCloud*, *Syncthing*, *Emby* and many more.
Here an example on how to install software OpenMediaVault (OMV) using the armbian-config.
```bash
sudo armbian-config
```
Select *Software* section:
![!armbian-config Main Menu](/helios64/img/omv/install-1.png)