RussNelson / Catena-Sketches

Top-level Arduino sketches for the MCCI Catena 4410, 4420, 4450, 4551

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Catena-Sketches

This repository contains top-level Arduino sketches for the Catena 4xxx family of LoRaWAN remote sensors made by MCCI based on the Adafruit LoRa Feather M0 LoRa, Adafruit Feather M0 Basic and so forth.

Picture of Catena 4410

This repository is the top-level repository for the software. In order to build, you will have to download a number of additional libraries from the MCCI Catena github page; the repositories needed vary depending on the sketch you want to build. A bash script is provided to simplify this process.

Contents:

Sketch Overview

There are two kinds of sketches here: test programs (catena4410_test1, catene4410_test2, catena4410_test3, catena4450_test1), and full sensor programs (catena4410_sensor1, catena4420_test1, catena4450_sensor1).

The sketches that use LoRaWAN take advantage of the MCCI arduino-lorawan library to cleanly separate the application from the network transport.

The sensor sketches also use the RTCZero library to sleep the CPU.

catena4450m101_sensor1

This is the application written for the Catena 4450 power monitoring node used in the Ithaca Power Project. It uses FRAM-based provisioning (so there is no need to edit code to change LoRaWAN keys or other settings).

catena4410_sensor1

This sketch is the application written for the Tzu Chi University / Asolar Hualian research farm project. One firmware image is used for a variety of sensors. You can configure a given sensor as a general purpose device or as a specific subset, referencing back to the Atmel SAMD21 CPU's unique identifier. All provisioning is done at compile time, but the network keys and other sensitive information is placed in a special library that is outside the normal set of repositories.

The sketch transmits data in format 0x11.

catena4410_test3

This is the primary test app used when bringing up and provisioning Catena 4410 units for use with The Things Network.

catena4410_test1, catena4410_test2

These are simpler test programs. They were rarely used after test3 was ready, but they may be useful for test of future Catena 441x variants with different sensor configurations.

catena4450_test01

This is the primary (non-LoRaWAN) test sketch for the Catena 4450.

catena4450m101_sensor

This is the sketch used with the Catena 4450 for power sensing for the Ithaca Power project. It uses the integrated FRAM for provisioning, and transmits data in format 0x14.

catena4450m102_pond

This is the Tzu Chi University / Asolar Hualian research farm project sketch, upgraded for use with the Catena 4450. It uses the integrated FRAM for provisioning, auto-detects the attached sensors, and transmits data in format 0x15.

Extras

The directory extras contains documenation and sample scripts for decoding the various formats.

Required Board-Support Packages

All board support packages are maintained by MCCI. You should add the path to the reference Json file in your Arduino preferences. As of this writing, the file name to add to the list is:

https://github.com/mcci-catena/arduino-boards/raw/master/BoardManagerFiles/package_mcci_index.json

Check the MCCI board support repository for the latest information.

Required Libraries

A number of libraries are required by this code. catena4450m101_sensor1 contains a Bash script git-boot.sh that can be used to download all the libraries, using a simple database stored in git-repos.dat.

Libraries for sensor work

Related Work

Boilerplate

MCCI work is released under the MIT public license. All other work from contributors (repositories forked to the MCCI Catena github page) are licensed according to the terms of those modules.

Support inquiries may be filed at https:://portal.mcci.com or as tickets on github. We are very busy, so we can't promise to help; but we'll do our best.

Commercial support is also available; contact MCCI for more information via our support portal or our web site.

Thanks, Acknowledgments, Notes

Thanks to Amy Chen of Asolar, Josh Yu, and to Tzu-Chih University for funding the Hualian Garden project.

Further thanks to Adafruit for the wonderful Feather M0 LoRa platform, to The Things Network for the LoRaWAN-based infrastructure, to The Things Network New York and TTN Ithaca for the inspiration and support, and to the myriad people who have contributed to the Arduino and LoRaWAN infrastructure.

MCCI and Catena are registered trademarks of MCCI Corporation.

About

Top-level Arduino sketches for the MCCI Catena 4410, 4420, 4450, 4551

License:MIT License


Languages

Language:C++ 62.0%Language:JavaScript 33.9%Language:Shell 4.1%