GLOBAL SALES

    The Hologram Dash integrates with the Arduino IDE, so developing on the Dash has all the benefits of the Arduino ecosystem’s high quality tools, libraries, and developer community. This guide walks through setting up the Arduino IDE and programming the Dash.

    If you prefer to use a non-Arduino toolchain or already have an image you’d like to load onto the Dash, scroll down to Standalone Updater.

    Arduino IDE

    Installing the Arduino IDE and library

    Download and install the Arduino IDE from the Arduino.cc website.

    Open the Preferences window. On Windows and Linux, it’s in the menu as File -> Preferences. On Mac, it’s under Arduino -> Preferences.

    Arduino preferences

    Add the following URL to the Additional Boards Manager URLs input, then click OK:

    http://downloads.hologram.io/arduino/package_konekt_index.json
    

    Next, install the Dash’s board files. Open the Boards Manager, located in the menu under Tools -> Board… -> Boards Manager. Change the Type dropdown to “Contributed”, and select Konekt Dash/Dash Pro Boards.

    Arduino Boards Manager

    Select Install on the Dash item. When the installation finishes, close the Boards Manager.

    Upgrading the Hologram library

    Hologram continues to update the Dash libraries with bugfixes and new features. Make sure you have the latest version of the library by opening the Boards Manager (Tools -> Board -> Boards Manager) and selecting Updateable from the Type dropdown. If Hologram Dash appears in the list of updateable boards, update to the latest version.

    Opening an example sketch

    The process of writing a sketch from scratch is beyond the scope of this guide, but Hologram provides an example sketch that demonstrates common Dash and Cloud functions.

    To access the Dash examples, first configure the Arduino IDE for your Dash board. In the menu, select:

    • Tools -> Board -> Dash

    Then open the example Dash Cloud sketch by selecting:

    • File -> Examples -> DashExamples -> hologram_dash_cloud
    Dash Cloud example in the Arduino IDE menu

    You can also find the source on GitHub.

    This sketch will send a message every 30 minutes to the Hologram Cloud, containing battery, signal strength, and analog input value. It implements retry logic in the event of a failure, and puts the Dash into a low-power deep sleep state between messages.

    It also listens for SMS messages sent from the Hologram Dashboard or via a purchased phone number, and forwards those messages to the Hologram Cloud.

    Loading Code onto the Dash (USB)

    Hologram’s Arduino extensions support programming the Dash via USB, as well as over-the-air via cellular connectivity. We recommend starting with USB to avoid data charges.

    Configure the Arduino IDE for your Dash board. In the menu, select:

    • Tools -> Board -> Dash (or Dash Pro, as applicable).

    Connect the Dash to your computer with a USB cable. In the menu bar go to Tools -> Port and select the appropriate serial or USB port. Typically the ports are named as follows according to your operating system:

    • WindowsCOMx
    • MacOS/dev/cu.usbmodemxxxx
    • Linux/dev/ttyUSBx or /dev/ttyACMx

    where x is a system-specific identifier. If you are still unsure of which port to use, disconnect the Dash and check which port disappears from the list. Then re-connect the Dash and select that port.

    Note

    If you're on Windows 8.1 or earlier and no port shows up when plugging in the Dash, see our Windows guide for driver installation instructions.

    Then, select the Hologram USB programmer from the menu: Tools -> Programmer -> hologram.io USB Loader

    Press the PROG (program) button on the Dash. The system LED will begin blinking. Upload the code from the Arduino IDE menu by clicking the Upload button in the Arduino SDK.

    Uploading a sketch in the Arduino IDE

    The uploader will display a message indicating that the upload is successful, or an error if the upload failed.

    Loading Code onto the Dash (Over-the-Air)

    Note

    OTA updating is supported in Dash firmware version 0.9 and later.

    Configure the Arduino IDE for your Dash board: In the menu select Tools -> Board -> Dash (or Dash Pro, as applicable).

    Power up your Dash and verify that it’s connected to the cellular network. Select the Hologram OTA programmer from the menu: Tools -> Programmer -> konekt.io/hologram.io OTA Programmer

    Upload the code from the Arduino IDE menu by selecting Sketch -> Upload. The uploader will prompt you for your Hologram API key, which you can find in the Dashboard. Then, select the device you wish to upload the program to.

    The uploader will display a message indicating that the upload is successful, or an error if the upload failed.

    Alternative Method: Standalone Updater

    Hologram’s USB and over-the-air (OTA) programming tools can work standalone without the Arduino IDE. You can use any toolchain to compile binaries (Arduino or not Arduino), and then upload those binaries to your devices outside of any specific IDE.

    1. Download and extract the Updater Utility for your OS from the Downloads page.
    2. Plug the Dash into your USB port and put it into program mode by pressing the PGM button.
    3. Run the dashupdater executable.
    4. Select User Program to open a file selector. Select the program binary to load.
    5. Select USB to begin the update. The uploader will display a message indicating that the upload is successful, or an error if the upload failed.

    The Standalone Updater also supports updating user programs over-the-air. Select OTA instead of USB and follow the instructions in the Arduino section above.

    Updating Firmware

    The Dash has two microcontrollers: one for user code and one for firmware that interacts with the cellular modem. Hologram may periodically release firmware updates to fix bugs and add new features. Download the latest system firmware from the Downloads page.

    Warning for beta users

    Flashing firmware onto a Beta Dash with the standard procedure could render the board inoperable. Please contact Hologram support for more information.

    Arduino IDE

    By default, the Arduino IDE will prompt you to update your device firmware if there is a newer version when you upload a sketch to your Dash.

    You can change this setting in the menu, under Tools -> Firmware Updates -> Check.

    If there is a firmware update available when you upload a sketch, the uploader will display the following dialog box:

    Click yes, and after a brief delay the uploader will display another dialog box asking whether you wish to create a backup of the existing firmware:

    Regardless of which you choose, the uploader will install the new firmware. When it’s finished, a final dialog box will notify you that the upgrade has been completed.

    Standalone

    Make sure the dash is in program mode by pressing the PGM button. Open the dashupdater executable and select System Firmware. Select the firmware file you downloaded, and click the USB button to begin the update.