OH2 server on NTC CHIP - only $9!

I recently went through a rebuild of my OH2 server, which I run on a $9 CHIP from Next Thing Computing. I’ve been running OH/OH2 on this hardware for about a year now, and it’s been great. From my perspective, the CHIP has a few advantages over the Raspberry Pi (I’ve used both):

  • It’s only $9!
  • Trivial to flash with Chrome app
  • USB power connection doubles as a serial modem (makes bootstrapping a snap, as we’ll see)
  • On-board WiFi and Bluetooth

Now that I’ve been through the build process a few times, I thought I would document the steps here in case anyone else would like to do the same. Note the the serial connection steps will vary by your host OS; in my case I’m using a Mac with OS X.

So, to go from bare metal to a functioning OH2 server, follow these steps:

  1. Visit https://flash.getchip.com/ in Chrome

  2. Flash the CHIP with the latest headless firmware

  3. Disconnect and reconnect the USB cable

  4. ls /dev/tty.usb* will give you the serial address of the CHIP, in the form of /dev/tty.usbmodem????

  5. sudo cu -l /dev/tty.usbmodem???? -s 115200 will open a serial terminal connection

  6. Login as root, password chip

  7. Run nmtui to activate WiFi and connect to your WLAN

  8. Confirm the CHIP’s IP address with ifconfig

  9. ~. will disconnect the cu session

  10. If you don’t have an SSH key on your non-CHIP PC, generate one using ssh-keygen -t rsa

  11. Push your SSH public key to the CHIP with cat ~/.ssh/id_rsa.pub | ssh root@CHIP-IP "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

  12. Open an SSH session with ssh root@CHIP-IP

  13. Configure the Java and OpenHAB repositories

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886
echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main" | tee /etc/apt/sources.list.d/webupd8team-java.list
echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list

wget -qO - "https://bintray.com/user/downloadSubjectPublicKey?username=openhab" | apt-key add -
echo "deb https://dl.bintray.com/openhab/apt-repo2 stable main" | tee /etc/apt/sources.list.d/openhab2.list
  1. Add support for HTTPS repositories and update
apt-get install apt-transport-https
apt-get update
  1. Configure time zone and locales
dpkg-reconfigure tzdata
apt-get install locales
dpkg-reconfigure locales
  1. Upgrade components and install
apt-get upgrade
apt-get install oracle-java8-installer openhab2
  1. If rebuilding, restore your configuration backup to /etc/openhab2/

  2. Start the OH2 service

systemctl enable openhab2.service
systemctl start openhab2.service
  1. Installation complete

That’s it! If you have any questions or run into any trouble, please let me know.

3 Likes

Excellent tutorial. I don’t find those steps to be significantly easier than getting a Pi boot strapped but the price point on the CHIP makes it an excellent choice for a host.

For completeness for those who may come later, the process for setting up a headless Pi, assuming you are not using the excellent and highly recommended openHABian:

  1. Download the latest rasbian lite
  2. Burn the image to an SD card using the program of choice
  3. Create a file named “ssh” in the “boot” partition
  4. Create a file named “wpa_supplicant.conf” in the “boot” partition and populate it with your wifi settings
network={
    ssid="<name>"
    psk="<password>"
    id_str="main"
}
  1. Insert the SD into the Pi and plug it in. Wait a minute.

  2. ssh pi@raspberrypi with password “raspberry”

Configure as normal.

Thanks, that’s definitely a lot easier than it used to be. I have a Pi Zero W kicking around here somewhere, and this will be handy if I want to fire it up again.