Skip to content

Orange Pi Zero 3 Installation

marcone edited this page Feb 6, 2024 · 3 revisions

Hardware requirements:

  • an Orange Pi Zero 3.
    Several variants are available with different memory configurations, but all of them should work with TeslaUSB.
  • a micro sd card. 128 GB or larger is recommended
  • a USB-A-to-C cable to power the Orange Pi Zero 3 and connect it to the car
  • optional: a micro-HDMI cable to connect a display to the Orange Pi Zero 3
  • optional: a USB-to-TTL-serial adapter to access the Orange Pi Zero 3 serial console. This one works.

Software requirements

You can use either the official image provided by Orange Pi, or a community-supported Armbian image.

Orange Pi image

Latest tested: Orangepizero3_1.0.2_debian_bullseye_server_linux6.1.31.7z, from the Orange Pi Zero 3 page on orangepi.org
The Orange Pi image is hosted on Google Drive and packaged with "7zip". You will need a program capable of extracting ".7z" files. If you have a linux-like machine, the "7z" command from the "p7zip" package should work

Armbian image

Latest tested: Armbian_24.2.0-trunk.519_Orangepizero3_trixie_current_6.6.15_minimal.img.xz from the Armbian os releases Github. The Orange Pi Zero 3 image doesn't get rebuilt for every Armbian release, so you may have to scroll down to older releases, expand the "Assets" section, then search for "zero3".

Steps to install:

Orange Pi image
  • download the Orange Pi image for the specific variant of Orange Pi Zero 3 that you have. The steps below are for the Orange Pi Debian image with 6.1 kernel.
  • extract the .7z archive
  • flash the extracted Orange Pi image onto an sd card
  • insert the sd card into the Orange Pi Zero 3's sd card slot
  • power up the Orange Pi Zero 3 by connecting its USB-C port to an appropriate power source such as a computer's USB port, a phone charger, or a portable power bank
  • log in to the Orange Pi Zero 3 as "orangepi" using the default password "orangepi".
      It may take a few minutes after first power-on before you can log in to the Orange Pi Zero 3.
      • if you connect the Orange Pi Zero 3 using ethernet, you should be able to log in to it remotely via ssh.
      • if you have a USB to TTL serial adapter, you can connect to the Orange Pi Zero 3's serial console using e.g. PuTTY. See the Orange Pi Zero 3's user manual for information on how to connect the serial adapter.
      • if you have neither ethernet nor serial available, you must connect a keyboard and display to the Orange Pi Zero 3 and log in via the console. You will need a micro-hdmi cable to connect a display to the Orange Pi Zero 3
  • run sudo -i to become root
  • run nmtui to configure wifi
  • once wifi is configured, verify that you can ssh into the Orange Pi Zero 3 via ssh
  • once logged in to the Orange Pi Zero 3 again, run sudo -i, then curl https://github.com/raw/marcone/teslausb/main-dev/setup/generic/install.sh | bash
  • A lot of messages will be printed, and the Orange Pi Zero 3 will reboot.
  • If you have a display connected, you will see messages related to file system resizing.
  • after a few minutes, both the red and the green LEDs on the Orange Pi Zero 3 should start flashing rapidly
  • log in to the Orange Pi Zero 3 again and run sudo -i to become root
  • edit the TeslaUSB config file: nano /boot/teslausb_setup_variables.conf
    You can use any editor you like, but may have to install it first.
    You do not have to fill out the SSID and WIFIPASS values, since you already configured wifi earlier.
  • when you've filled out all the required entries in the config file, save and exit, and run /etc/rc.local Setup should now begin, logging progress to the console. If the device reboots during setup, you can log in again and run tail -f /boot/teslausb-headless-setup.log to follow setup progress. Once setup is complete, it should print "All done" and reboot one final time.
Armbian image
  • download an Armbian image for Orange Pi Zero 3 from the Armbian Gibhub linked above
  • flash the Armbian image onto an sd card
  • insert the sd card into Orange Pi Zero 3's sd card slot
  • power up the Orange Pi Zero 3 by connecting its USB-C port to an appropriate power source such as a computer's USB port, a phone charger, or a portable power bank
  • log in to the Orange Pi Zero 3 as "root" using the default Armbian root password "1234".
      You will be prompted to change the password, and configure a few initial Armbian settings. When prompted to choose the default system command shell, choose "bash"
      • if you connect the Orange Pi Zero 3 using ethernet, you should be able to log in to it remotely via ssh.
      • if you have a USB to TTL serial adapter, you can connect to the Orange Pi Zero 3's serial console using e.g. PuTTY. See the Orange Pi Zero 3's user manual for information on how to connect the serial adapter.
      • if you have neither ethernet nor serial available, you must connect a keyboard and display to the Orange Pi Zero 3 and log in via the console. You will need a micro-hdmi cable to connect a display to the Orange Pi Zero 3
  • once you're past the initial Armbian setup and have a root shell prompt, run nmtui to configure wifi
  • once wifi is configured, verify that you can ssh into the Orange Pi Zero 3 via ssh, as root, using the password you chose earlier
  • once logged in to the Orange Pi Zero 3 again, run curl https://github.com/raw/marcone/teslausb/main-dev/setup/generic/install.sh | bash
  • after a few minutes, both the red and green LEDs on the Orange Pi Zero 3 should start flashing rapidly
  • log in to the Orange Pi Zero 3 again as root
  • edit the TeslaUSB config file: nano /boot/teslausb_setup_variables.conf
    You can use any editor you like, but may have to install it first.
    You do not have to fill out the SSID and WIFIPASS values, since you already configured wifi earlier.
  • when you've filled out all the required entries in the config file, save and exit, and run /etc/rc.local Setup should now begin, logging progress to the console. If the device reboots during setup, you can log in again and run tail -f /boot/teslausb-headless-setup.log to follow setup progress. Once setup is complete, it should print "All done" and reboot one final time.