How does MoMo work?
MoMo is a modular remote monitoring hardware platform. The basic procedure is:
- Sensor boards collect information from the MoMo's surroundings at predetermined intervals. For instance, MoMo could read the flow rate in a pipe every 10 seconds and also detect the voltage of a solar panel powering the water pump every 10 minutes.
- The controller aggregates the raw data to conserve bandwidth and sends this information regularly (i.e. every day) to a communication module, which takes care of transmitting the report back to a central server. The report is also stored locally so it can be manually recovered if necessary.
- The Strato data server receives the report, parses it, and performs further analysis to compute aggregate statistics and, if configured, send SMS or email alerts to key stakeholders. The raw and aggregate data is stored securely and can be visualized in the management portal as well as accessed via a REST API.
- Alerts and reports are distributed via email or SMS to key recipients to ensure that the data is put to good use.

Key Features
- Long battery life
- Modular design
- SMS and GPRS data transfer
- Configurable data verbosity and reporting frequency
- 1MB local Flash storage
- Bluetooth Low Energy for non-intrusive local configuration and debugging
- Remote configuration and firmware reflash (when GPRS is available)
Technical Specifications
- Microchip PIC® ultra-low-power microprocessors (16-bit PIC24 and 8-bit PIC16 Enhanced Mid-Range family)
- Device power consumption during sleep is less than the li ion battery self-discharge rate
- Inter-module communication using the MIB RPC protocol over I2C (6-pin connectors or RJ12)
- See the MoMo documentation and GitHub repository for details
- More specs coming soon!
Sensors
At the core of any MoMo deployment is one or more physical sensors. Technically, MoMo supports up to 100 logical sensors, but you probably won't need more than one or two.
Sensor modules translate sensor readings (whatever they may be) into values that MoMo can understand. The sensor module reports these readings at a pre-defined interval and the controller module aggregates these automatically and reports the aggregated data via the communication module.
The first MoMo sensor board has been dubbed MultiSensor because it has hardware support for a large number of different logical sensors, namely: Pulse Counting, 3 voltages, 1 current, pressure readings, and UART serial communication.

Communication
The modular design of MoMo allows it to be used with a variety of communication media, but MoMo was built from the ground up to work with the standard GSM module.
The GSM communication module is quad-band (850/900/1800/1900MHz), requires a microSIM card, supports both GPRS and SMS data transfer with automatic fallback and retry logic, and has been optimized to minimize power consumption by turning on only to initiate a transmission.

Power
MoMo is designed for low-power operation. MoMo modules use Microchip PIC ultra-low-power processors (the PIC24 and PIC16 families, to be precise).
MoMo requires a 3.8V Lithium Ion battery, the standard option being a 1400 mAh unit, and manages charging that battery when an external DC power source is connected. This can be a discrete constant-voltage power source (such as a standard 5V mico-USB cell phone wall charger) or, more commonly for rural deployments, a small 5V solar panel.

Enclosure
While not technically part of the MoMo platform, enclosure design and packaging is integral to the success of monitoring applications.
MoMo has been designed to fit perfectly into PolyCase's NEMA 4x-rated waterproof enclosure WP-21F. While not required, this case makes an excellent foundation for an enclosure that integrates with the infrastructure to be monitored.
WellDone has successfully prototyped MoMo enclosures that integrate with water pumps using 3D-printing technology. To learn more, visit our applications page.

Strato Management Portal
Remote monitoring is useless unless the data goes somewhere. WellDone manages a server infrastructure called Strato which collects reports from deployed MoMo units, supports management of those remote units when available (i.e. remote configuration and firmware reflash)
Strato provides an interface to view and analyze historical data from remote monitors and management of those devices, as well as a REST API for programatic access to data and integration with other software applications.
Strato also supports basic configuration of triggers which can be used to send SMS and email alerts to certain people when specific threshholds are hit. For instance, this could automatically send an SMS to a pump's assigned mechanic when the MoMo on that pump detects no water flow for 24 hours.
