WiLDFiRE v4

Publish data to the internet – no programming required

Overview

WildFire is the whole package for production applications – a 100% open source Arduino IoT platform, PLUS SD Card PLUS watchdog timer chip. This means you can run an entire IoT platform on ONE board, log data to the web and store images or data on the SD card. The external watchdog timer automatically resets it if there is a code lockup.  It’s programmable with the Arduino environment, so you control everything – there is no hidden layer of code.

It’s based on the Atmel ATMega1284P microcontroller and a ESP8266 WiFi module, which means plenty of space for your code. If you’re looking for information about an older version of WildFire please go here.

It comes pre-programmed with a sketch allowing you to publish any analog pin value to the internet. You give the sketch your network credentials over a serial terminal.

It is programmable with a web browser using CodeBender.cc. We recommend this as it’s the easiest way to get up and running, and share sketches. You can add WildFire to your Arduino IDE using the following for the Boards Manager URL: http://update.wickeddevice.com/package_WildFireBSP-4.0.0_index.json

Some Mac users have reported USB issues that are addressed in this blog post.

Configuring Wi-Fi networking

The WildFire comes with a preinstalled sketch which publishes data to the internet. You need to set it up with some basic configuration data over the serial port – like your network ID and password. Once this is complete, you have a web page where you can see the value of one or more analog pins. By connecting sensors to these pins, you can see the value of the sensors automatically.

Information on how to set this up is included in the documentation that ships with the WildFire.

Resources

  • Combined IDE Arduino Support Package [github]
    • Arduino Boards Manager URL: http://update.wickeddevice.com/package_WildFireBSP-4.0.0_index.json
  • WildFire Schematics [version 4]
  • WildFire Demo Sketch – Configurable Sketch that Posts data to sparkfun.data.com
  • WildFire Eagle Files [version 4]
  • WildFire Pinout [version 4]

Important Notes

Certain WildFire pins are dedicated to on-board peripherals. It’s a good idea to create an instance of a WildFire object using  the provided WildFire library, creating an instance initializes the dedicated pins to safe states. See Sample code below for an example of creating an instance of a WildFire object. WildFire pins dedicated to on-board  functions:

  • DIG2/DIG3 = ESP8266 Serial Communication
  • DIG16 = SD card slot chip select [supported by SD library]
  • DIG15 = SPI Flash Chip Select
  • DIG7 = RFM69 Chip Select
  • DIG2/DIG12/DIG22 = Do Not Configure as Output (these are driven by on-board buffers)
  • DIG23 = ESP8266 Enable
  • DIG21 = ESP8266 Boot Mode Select
  • DIG7/DIG15/DIG16 = Only one should be set to Output Low at any time [i.e. chip selects]

DIG7/DIG15/DIG16 are chip select pins for the SPI bus, and should not be set to LOW (0) at the same time to prevent contention on the MISO line (DIG12). This limits the general usefulness of these pins, but they can also be freed of the one-low-at-a-time constraint by removing resistors from the board (e.g. R18, R19, R28). See schematics and discussion site for advice on that if needed.

Finally, please be gentle with the micro USB connector. Careless treatment can result in ripping the connector off the board, severely compromising its utility. We advise holding the connector in place during insertion and removal and not forcing it.

Serial Monitor

* You must install a browser plugin to use the embedded Serial Monitor. Get it here!

Arduino IDE Setup

  • Launch Arduino and go to File => Preferences
  • In the Additional Boards Manager URLs input provide http://update.wickeddevice.com/package_WildFireBSP-4.0.0_index.json
  • Go to Tools => Boards Manger, and find WildFire in the listed boards (you can use the Search feature too)
  • Click on the Boards Manager row associated with WildFire and you should see a button labelled “Install”, click it to install the board into your IDE.
  • (Re-)Launch the Arduino IDE, and under the Tools => Boards menu, select “WildFire v3 [dual-optiboot]”
  • Check to make sure that the WildFire and other WildFire specific libraries show up under File => Examples (look carefully, it may not be alphabetically listed)
  • At this point you should be able to write sketches and program the WildFire board directly using the Arduino IDE
  • Make sure you select the correct COM port from the Tools => Serial Port menu  when you plug the board in through the micro USB connector

Here’s a quick sketch to test the watchdog timer:]. This sample uses CodeBender – you can clone it and program your WildFire directly from the browser. Loading this sketch will overwrite the pre-programmed sketch, you can restore that from here.

Note that WildFire V4’s do not currently have the RFM69 radio included.