1 Updating your SensorStation’s Disk Image

You can use your CTT SensorStation to burn a new operating system onto the compute module using a micro USB cable attached to your computer. Here is an article on raspbian’s website with general instructions: Flashing the Compute Module eMMC. This page will summarize the steps needed to burn a New CTT SensorStation image to your compute module using the SensorStation hardware.

1.1 Why flash my compute module?

While CTT offers many over-the-air updates to your CTT SensorStation sometimes you just need a fresh start, or maybe you haven’t been incrementally updating the source code and want to do so after a full stable release. You’ve found the right place to learn how!


1.2 SensorStation Image Downloads

1.2.1 For Version 1 SensorStations

V1 SensorStation Current Stable Image OTA Update enabled. Station health reports. RTL-SDR support. Pickup new Nodes / Tags with updated protocol. Download Station Image

1.2.2 For Version 2 & 3 SensorStations

V2 & V3 SensorStation Current Stable Image Records Tag, GPS, SensorGnome, and Telemetry data. Monthly reboot on the 3rd of the month. Download Station Image


1.3 Software Requirements

You will need drivers for your computer to recognize the module as a new drive, and software to burn new images to disk.

1.3.1 All Users

1.3.2 Windows Drivers

  • Drivers - Download and run the Windows Installer which will install the rpiboot.exe.

1.3.3 Linux / Mac

Linux / MAC users will have to clone the rpiboot source code, compile and run the rpiboot.exe file that is generated. Detailed instructions for Linux here.

For Mac, follow these directions:

  1. Install Homebrew, which is a package installer for Mac.
    • Directions here: https://brew.sh
    • Or you can paste this code into Terminal:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

Then install the libusb libraries:

brew install libusb
  1. From within Terminal, navigate to your preferred directory.

Tip: I tend to use Dropbox, so I use the cd command to change directory into my Dropbox folder: cd Dropbox

Once you are in your preferred directory, run the following code to install the USBBoot code in Terminal

git clone --depth=1 https://github.com/raspberrypi/usbboot

Then move into the usbboot directory:

cd usbboot

Now make the rpiboot installer:

make

At this point, you now have a standalone executable called rpiboot in the usbboot folder. You can move that executable anywhere you want so it’s convenient for using again in the future.

Additionally, once you have moved the rpiboot executable, the usbboot folder can be trashed as its contents are only useful for making the rpiboot program. From now on, if you need to flash more compute modules, you can start with running rpiboot and do not need to re-do steps 1 and 2 above.

If you are still in the usbboot directory, you can now run run rpiboot with the following command. Otherwise use the CD command in Terminal to change directory to wherever you moved rpiboot.

./rpiboot

At this point you should see a message in your terminal that says something to the effect of:

Waiting for BCM2835/6/7/2711...

This indicates that the USB port has been opened, and your computer is waiting to see a Raspberry Pi on that port. Now complete Steps 1 and 2 below, and skip steps 3 and 4.


1.4 Steps to Burn a New Image

  1. Ensure the SensorStation power is turned OFF
  2. Move the USB Boot Jumper Pin to the ENABLED position (to the left 1 pin, for horizontally placed pins, or down 1 pin for vertically placed pins).
  • Note: The location of your USB Boot Jumper may vary, and is typically vertically placed near the lower left corner of the Raspberry Pi module on V1 boards, or horizontally placed just above the power switch on V2 boards.