Northern Widget shared library foundation. More…

Defines

  Name
  NW_CORE_LIBRARY_VERSION
  NW_CORE_LIBRARY_COMMIT

Detailed Description

Northern Widget shared library foundation.

Include this to get the three parts:

  • NW_Device: the NW-Device-Specification Schema 1 device protocol over I2C (Page 0 identity and version gates; Block 0 trigger, ready, counter, batch, and report handling; chunked register reads).
  • NW_Readings<T, CAPACITY>: a measurement’s readings in a fixed array (no heap) with mean, standard deviation, standard error, and median.
  • NW_Report: the decoded Status and Report bytes (faults and notices).
  • NW_Sensor: the interface a logger keeps a status file through (name, reports, status line).
  • NW_Pages: the served pages of a device that runs on a logger (its reading of itself).
  • NW_Error.h: NW_ERROR (-9999), the missing value on file, and nwScaled().
  • NW_ReadingsConfig: how many readings a chip group takes and whether its statistics columns print. Sensor libraries hold an NW_Device and one NW_Readings per measurement. Names exported by this library carry the NW_ prefix; everything else in an NW sensor library is scoped to its own class.

Macros Documentation

define NW_CORE_LIBRARY_VERSION

#define NW_CORE_LIBRARY_VERSION "0.0.0"

define NW_CORE_LIBRARY_COMMIT

#define NW_CORE_LIBRARY_COMMIT ""

Source code


#ifndef NW_Core_h
#define NW_Core_h

#include "NW_Error.h"
// Build identity. The version is this library's, held equal to library.properties by
// NW-Tests/version_check.py; the commit is set by the build wrapper (NW-Build) from git,
// and blank when built in the Arduino IDE. Both reach the status file's Lib columns.
#define NW_CORE_LIBRARY_VERSION "0.0.0"
#ifndef NW_CORE_LIBRARY_COMMIT
#define NW_CORE_LIBRARY_COMMIT ""
#endif

#include "NW_Report.h"
#include "NW_Sensor.h"
#include "NW_Pages.h"
#include "NW_Readings.h"
#include "NW_Device.h"

#endif

Updated on 2026-09-29 at 05:58:59 +0000