Close

Modular Design Concept

A project log for SPINES Mote

Self-Powered IoT Node for Environmental Sensing

Macro YauMacro Yau 07/08/2018 at 17:200 Comments

SPINES Mote embraces modular design. Despite being a highly integrated single-board sensor node, the board is composed of three high-level functional blocks, as illustrated in the figure below:

  1. Energy Harvesting and Power Management Hardware: This block is meant to be reused across multiple designs. I will have a separate post to talk about this soon.
  2. Onboard Sensor Suite: My reference implementation includes three sensors (BME280, CCS811, and VEML6075), as well as a Qwiic expansion port for connecting external I2C sensor modules. This block can be easily replaced when customizing the PCB design.
  3. IoT Module Variant: The "variant" system is the core of SPINES' modularity. Please see below for elaboration.
SPINES Mote High-Level Design Features

IoT projects have heterogeneous requirements, and they often need to utilize different types of wireless networks and application processors. In SPINES, this purple section is designed to be "swappable": Not physically swapping in another hardware module, but you can very easily integrate your own design block into a custom SPINES Mote PCB. Apart from the reference designs of complete sensor nodes, I am going to release "template" design files such that you can easily insert your favorite combination of microcontroller and radio (STM32, RFM95, ESP32, nRF series, etc.), and fabricate your unique flavor of SPINES Mote with its compact form factor.

The preview version of SPINES Mote's schematic (solar-powered ESP8266 variant) is shown below. Note that the "IoT Module Variant" depicted above corresponds to the "Application Processor" building block in the schematic. You can create your own SPINES Mote variant just by pasting your design block into the schematic, and connecting several traces in the PCB layout!

Preview of Schematic for SPINES Mote (Solar-Powered ESP8266 Variant)

The EAGLE design files will be released as soon as I receive the boards and finish verifying their basic functionalities. This should happen in the next 3 to 4 days.

Discussions