- Device Overview
- Hardware Controls
- Software Integration - Node-Red Overview
- Wireless Gateway Nodes
- Wireless Device Nodes
- ncd-gateway-config Nodes
- Sensor Configuration Processes
- Troubleshooting
- Examples
Device Overview
Introducing NCD’s Long Range Industrial IoT Wireless Particulate Matter Sensor for Air Quality Monitoring, featuring temperature and humidity sensors with a 2-mile wireless range. It uses SPS30 and SHT30 sensors to transmit accurate particle size, mass concentration, temperature, and humidity data at user-defined intervals.
PM2.5 and PM10 particles are small pollutants dangerous to human health, linked to conditions like asthma and cardiovascular disease. The sensor measures PM1.0, PM2.5, PM4.0, and PM10.0, cleaning itself every 256 transmissions via an internal fan.
Laser scattering technology ensures accurate particle measurements over an eight-year lifetime.
The temperature sensor operates between -25°C and 85°C, while the humidity sensor handles up to 100% RH. Powered by 6 AA batteries, it lasts up to 5 years, with optional external power.
With an open communication protocol, this sensor integrates with various systems like PCs, Raspberry Pi, Microsoft Azure, AWS, and MQTT servers. Configurable transmission settings make it versatile for diverse applications.
Its long range, accuracy, affordability, and battery life make it ideal for industrial and consumer markets.
- Industrial Grade Sensor Mass Concentration Range 0-1000 μg/m^3
- Mass Concentration Resolution of 1 μg/m^3
- Mass Concentration Size Range PM1.0, PM2.5, PM4.0, PM10.0
- Number Concentration Range 0 to 3000 1/cm^3
- Number Concentration Size Range PM0.5, PM1.0, PM2.5, PM4.0, PM10.0
- Unique Long-Term Stability of up to 8 Years
- Laser-Based Scattering Principle and Advanced Algorithms
- Inbuilt Auto Cleaning Feature After Every 256 Transmissions
- Industrial Grade Sensor with 0 to 100% RH / -25°C [-13°F] to 85°C [185°F])
- Resolution 0.04% RH/0.025°C Accuracy 2% RH/ 0.3°C
- Includes Battery Level with Every Transmission
- Validates and Retries Lost Communication Packets
- Encrypted Wireless Communications up to 2 Mile Range
Hardware Controls
Power Switch
The power switch on this device has three positions:
- Battery Power
- Off
- External Power
The Battery Power position will use the onboard batteries to power the sensor and transmit data.
The Off position will power down all components of the sensor and no data will be transmitted
The External Power position will use the external power supply connected to the onboard barrel connector to power the sensor and transmit data.
RESET Button
The RESET button will power cycle the sensor. When the sensor first powers up it will send a sensor_mode message with the mode of RUN.
CFG Button
The CFG button serves two functions.
The first is change the mode of the sensor when pressed immediately after a power cycle of the sensor. See section Configuration Button Timing Overview for more information on this.
The second is to test for the presence of power on the sensor. If the CFG button is pressed the TEST LED on the board will light up indicating that the board has power. If no LED comes on check that the Power Switch is in the correct position and that the battery/power supply is good.
Hardware Mode Selection
Run Mode
Run Mode is the default state of the sensor when powered up. No hardware interaction is necessary to enter this state other than power. Pressing the Reset button will restart the sensor and put it in the RUN Mode state if no other buttons are pressed.
Configuration Mode
Configuration Mode is the state in which the sensor enters in order to change the sensor’s configurable parameters such as Reporting Interval, Transmission Power, and Network ID. When the sensor is in Configuraiton Mode it will change the settings of the wireless protocol temporarily. The network ID of PGM Mode is 7BCD.
You can enter in this mode by pressing and releasing the RESET button and then immediately pressing and holding the CFG button for ~5 seconds. Refer to the graph below for the precise timing of the CFG button press.
This is a temporary mode that is not intended for long-term operation. You will need to Reset the device after a successful configuration in order to resume normal operations.
See section Sensor Configuration Processes for more information on this configuration process.
Factory Default/Reset
A Factory Reset of the sensor will revert all changes and configurations made to the sensor to their default settings from the Factory. Immediately after a factory reset the sensor will go into Configuration Mode in order to be reconfigured with the desired settings.
You can perform a Factory Reset by pressing and releasing the RESET button and then immediately pressing and holding the CFG button for more than 15 seconds.
Immediately after a factory reset the sensor will go into Configuration Mode in order to be reconfigured with the desired settings. To activate RUN Mode, please press the RST button.
Refer to the graph below for the precise timing of the CFG button press.
Configuration Button Timing Overview
- Press and Release the RESET button
- Configuration Button Pressed and held immediately after reset for
- < 2 second – device starts normally in RUN Mode
- 2 to 15 seconds – device goes into Configuration Mode
- > 15 seconds – the device reverts back to the Factory Default Settings, which is followed by a Configuration Mode Frame
Default Configuration
Parameters | Default Value |
---|---|
Destination Address | 00 00 FF FF (HEX) |
Network ID | 7F FF (HEX) |
Node ID | 0 |
Delay | 600 (DEC) seconds |
Power | +24 dBm |
Retries | 10 |
Software Integration - Node-Red Overview
We built our primary software drivers into a software system called Node-Red. Node-Red is a visual based drag-and-drop low/no code flow builder. It allows you to build simple or complex logic and data dissemination applications quickly and easily. It can integrate with third party software/cloud services using a number of protocols such as MQTT, HTTP(S), TCP, UDP, and OPC UA.
For more information and a general introduction on what Node-Red is and how it works you can view Node-Red’s official web site at https://nodered.org/.
All Enterprise Gateway we offer will come with Node-Red and our library running as a service by default to allow quick and easy access to Node-Red and the sensor data from our sensors. If you are using your own gateway or computer you will need a USB or Ethernet Modem, Node-Red, and our library @ncd-io/node-red-enterprise-sensors.
You can find our library on Node-Red with the name: @ncd-io/node-red-enterprise-sensors
In this section will will go over the nodes introduced by our library, what kind of data they will provide your flow, and how to use them.
Wireless Gateway Nodes
Wireless Gateway Nodes are a virtual representation of the wireless protocol connected to your Gateway. They will output all incoming data from the wireless network and all of the sensors on that network into the connected flows from a single entry point.
This is the recommended method for ingesting data from large numbers of sensors at a single location in order to simplify data handling and reduce the complexity of the resulting flow.
Wireless Gateway Node Statuses
Wireless Gateway nodes have multiple states they can show in Node-Red to indicate their current mode or functionality.
Ready State
Configuring State
When the Wireless Gateway Node’s status indicates “Configuring”, as shown in the picture on the right, it means that the wireless network is successfully connected to Node-red and is ready to configure any sensors entering Configuration Mode.
Any sensor put into configuration mode through the use of the Reset and CFG buttons will be seen by the gateway while in this mode. If Node-Red has a corresponding Wireless Device node for the sensor reporting in then Node-Red will begin configuring that sensor if set to do so. You can enter Config mode or leave Config mode to resume Normal Operations using the button on the left side of the node.
When the Wireless Gateway is in this mode the Wireless Network will change to the Configuration Network. This means that the network ID will change to 7BCD.
Failed to Connect State
When the Wireless Gateway Node’s status indicates “Failed to Connect”, as shown in the picture on the right, it means that Node-Red was unable to connect to the wireless network. This usually indicates that incorrect settings were used while configuring the Gateway.
For more information on configuring your Wireless Gateway Node’s communications see section Wireless Gateway Node Configuration.
For more information on troubleshooting your Wireless Gateway Node’s communications see section Troubleshooting
Connecting State
When the Wireless Gateway Node’s status indicates “Connecting…”, as shown in the picture on the right, it means that Node-Red is waiting to initialize the connection to the Wireless Network. This state will last for 5 seconds before Node-Red attempts to open communication to ensure that all hardware and software is initialized.
No incoming or outgoing data will be handled while in this state.
No State
Wireless Gateway Node Messages
All messages from the Wireless Gateway Node will come through as Javascript Objects and are output by default as JSON representations when viewed or sent over most protocols. In Node-Red the primary object to reference the message will be msg. You can access sub-properties using msg.payload or msg.payload.nodeId etc.
Wireless Gateway Sensor Data Message
- nodeID
- A user configurable parameter allowing a user to input a simple id for a particular sensor
- For a unique identifier it is recommended to use the “addr” property as it is tied to the individual sensor’s wireless module and will always be unique
- firmware
- This identifies the firmware version of the sensor sending the packet
- battery
- The current voltage level of the batteries at the time of transmission
- The batteries that come with the sensors drop off quickly once they reach 2.6 volts
- battery_percent
- The current battery percent at the time of transmission
- counter
- The number of transmissions since boot or counter rollover
- The counter will rollover after a counter value of 255
- sensor_type
- The machine identifiable type of the sensor
- It is recommended to use this property to dictate dashboard generation and/or data integrity checks
- sensor_data
- Object containing all sensor data related to this sensor
- See section msg.payload.sensor_data Breakdown for more information
- sensor_name
- Human Readable Sensor Type Identifier
- type
- An easily passed message type declaration
- This property will be a duplicate of msg.topic
- addr
- The unique identifier of the sensor that transmitted the data
- received
- Epoch indicator of when the data was received by Node-Red
- original
- Auxiliary information on the packet and underlying protocol
- modem_mac
- The unique identifier of the Gateway/Modem that received the data
- Primarily used to tie locations/projects to sensors/sensor data
{
"topic": "sensor_data",
"payload": {
"nodeId": 0,
"firmware": 3,
"battery": "3.28",
"battery_percent": "98.56",
"counter": 26,
"sensor_type": 32,
"sensor_data": {
"mass_concentration_1_0": 5
"mass_concentration_2_5": 9
"mass_concentration_4_0": 80
"mass_concentration_10_0": 150
"number_concentration_0_5": 2
"number_concentration_1_0": 3
"number_concentration_2_5": 5
"number_concentration_4_0": 8
"number_concentration_10_0": 15
"typical_size": 10
"Humidity": 60.53
"Temperature": 25.78
},
"sensor_name": "Particulate Matter Sensor",
"type": "sensor_data",
"addr": "00:13:a2:00:42:37:73:52",
"received": 1721424191583,
"original": {...},
"modem_mac": "00:13:A2:00:41:F5:2C:D3"
},
"time": 1721424191584,
"_msgid": "d7f3341ef39225df"
}
msg.payload.sensor_data Breakdown
- mass_concentration_1_0
- The total mass of 1.0µm sized particles in µg/m³
- mass_concentration_2_5
- The total mass of 2.5µm sized particles in µg/m³
- mass_concentration_4_0
- The total mass of 4.0µm sized particles in µg/m³
- mass_concentration_10_0
- The total mass of 10.0µm sized particles in µg/m³
- number_concentration_0_5
- The total number of 0.5µm sized particles in #/cm³
- number_concentration_1_0
- The total number of 1.0µm sized particles in #/cm³
- number_concentration_2_5
- The total number of 2.5µm sized particles in #/cm³
- number_concentration_4_0
- The total number of 4.0µm sized particles in #/cm³
- number_concentration_10_0
- The total number of 10.0µm sized particles in #/cm³
- typical_size
- The typical particle size in µm
- Humidity
- The relative humidity in %
- Temperature
- The measured temperature in °C
Wireless Gateway RUN Message
- topic
- Indicates the type of message this is
- payload
- Contains the primary data of the message
- payload.mac
- Indicates the unique address of the sensor sending the mode message
- payload.type
- Indicates the type of sensor sending the mode message
- payload.nodeId
- A user configurable parameter allowing a user to input a simple id for a particular sensor
- payload.mode
- indicates the current mode of the sensor
- payload.lastHeard
- Timestamp of the message
{
"topic": "sensor_mode",
"payload": {
"mac": "00:13:a2:00:42:37:73:52",
"type": 32,
"nodeId": 0,
"mode": "RUN",
"lastHeard": 1721424191056
},
"time": 1721424191056,
"_msgid": "f41dad7923ece27c"
}
Wireless Gateway PGM Message
- topic
- Indicates the type of message this is
- payload
- Contains the primary data of the message
- payload.mac
- Indicates the unique address of the sensor sending the mode message
- payload.type
- Indicates the type of sensor sending the mode message
- payload.nodeId
- A user configurable parameter allowing a user to input a simple id for a particular sensor
- payload.mode
- indicates the current mode of the sensor
- payload.lastHeard
- Timestamp of the message
{
"topic": "sensor_mode",
"payload": {
"mac": "00:13:a2:00:42:37:73:52",
"type": 32,
"nodeId": 0,
"mode": "PGM",
"lastHeard": 1721424000999
},
"time": 1721424000999,
"_msgid": "36ac745134de68ee"
}
Wireless Gateway ACK Message
- topic
- Indicates the type of message this is
- payload
- Contains the primary data of the message
- payload.mac
- Indicates the unique address of the sensor sending the mode message
- payload.type
- Indicates the type of sensor sending the mode message
- payload.nodeId
- A user configurable parameter allowing a user to input a simple id for a particular sensor
- payload.mode
- indicates the current mode of the sensor
- payload.lastHeard
- Timestamp of the message
{
"topic": "sensor_mode",
"payload": {
"mac": "00:13:a2:00:42:37:73:52",
"type": 32,
"nodeId": 0,
"mode": "ACK",
"lastHeard": 1721424002052
},
"time": 1721424002052,
"_msgid": "6eeb3e249c6b583d"
}
Wireless Gateway PUM Message
- topic
- Indicates the type of message this is
- payload
- Contains the primary data of the message
- payload.mac
- Indicates the unique address of the sensor sending the mode message
- payload.type
- Indicates the type of sensor sending the mode message
- payload.nodeId
- A user configurable parameter allowing a user to input a simple id for a particular sensor
- payload.mode
- indicates the current mode of the sensor
- payload.lastHeard
- Timestamp of the message
{
"topic": "sensor_mode",
"payload": {
"mac": "00:13:a2:00:42:37:73:52",
"type": 32,
"nodeId": 0,
"mode": "PUM",
"lastHeard": 1721424000789
},
"time": 1721424000789,
"_msgid": "e361ba7bdfe0bc4b"
}
Wireless Gateway FLY Message
A FLY message indicates that the sensor is in RUN mode, but is entering a temporary state where it can be configured. The sensor will send the FLY message on boot and once an hour after boot to check in. Once the sensor sends a FLY message Node-Red has 2 seconds to respond with a configuration or extend this temporary configuration mode.
If Node-Red has a Wireless Device node with Auto Config and OTF Config selected corresponding to the sensor that sent the FLY message then Node-Red will begin to configure that sensor.
An example FLY message can be found on the right.
- topic
- Indicates the type of message this is
- payload
- Contains the primary data of the message
- payload.mac
- Indicates the unique address of the sensor sending the mode message
- payload.type
- Indicates the type of sensor sending the mode message
- payload.nodeId
- A user configurable parameter allowing a user to input a simple id for a particular sensor
- payload.mode
- indicates the current mode of the sensor
- payload.lastHeard
- Timestamp of the message
{
"topic": "sensor_mode",
"payload": {
"mac": "00:13:a2:00:42:37:73:52",
"type": 32,
"nodeId": 0,
"mode": "FLY",
"lastHeard": 1721424191766
},
"time": 1721424191767,
"_msgid": "5f6f01b6651b2f82"
}
Wireless Gateway modem_mac Message
- topic
- Indicates the type of message this is
- payload
- Contains the unique address of the wireless module on the Wireless Gateway Node
- time
- Timestamp of the message
{
"topic": "modem_mac",
"payload": "00:13:A2:00:41:F5:2C:D3",
"time": 1721424259706,
"_msgid": "83ad39df1328dea7"
}
Wireless Gateway Node Configuration
Wireless Gateway Edit Pane
- Name
- An arbitrary name given to this node
- Serial Device*
- A drop down to choose between configured communication interfaces
- The default Serial Device for our Enterprise Gateways is “/dev/ttymxc2”
- To add a new configuration option you will want to choose “Add new ncd-gateway-config…” from this dropdown
- Serial Device Edit Icon
- Clicking this icon will take you to a submenu to edit the particulars of the device chosen in the Serial Device dropdown
- To add a new configuration option you will want to choose “Add new ncd-gateway-config…” from this dropdown
- For More information on the submenu this icon bring up see section ncd-gateway-config Nodes
- Output data from Unknown Devices
- Enabling this feature allows other devices using the Digimesh wireless protocol to send their data to Node-Red
- When selected, data from unknown devices will be output from a secondary output
Wireless Device Nodes
Wireless Device nodes are a virtual representation of a single sensor or a type of sensor. These nodes will output all sensor data and configuration messages from the sensor.
Wireless Device nodes are the primary method of configuring individual or groups of sensors. Their message structure is slightly different from the data coming from a Wireless Gateway.
Wireless Device Node Statuses
The Wireless Device node will display a status based on the last message received to easily identify what is going on with the sensor. Below we will cover each status the Wireless Device node can enter and what it means.
Wireless Device Running Mode
When the Wireless Sensor Node’s status indicates “Running”, as shown in the picture on the right, it means that the wireless sensor has successfully sent at least one packet to the configured Wireless Network. The packet must be a sensor_mode message with a mode of RUN or a sensor_data message.
Wireless Device No Mode
When the Wireless Sensor Node has no status, as shown in the picture on the right, it means that the wireless sensor has not sent a packet over the wireless network since Node-Red was run. The packet must be a sensor_mode message with a mode of RUN or a sensor_data message.
Wireless Device FLY Mode
When the Wireless Sensor Node’s status indicates “FLY”, as shown in the picture on the right, it means that the wireless sensor has sent a FLY message to check in for OTF Configuration. These FLY messages will come in shortly after boot of the sensor as well as once per hour after boot.
For more information on using the FLY message to configure the sensor see section OTF/Automatic Configuration.
Wireless Device Config Mode
When the Wireless Sensor Node’s status indicates “Config Mode”, as shown in the picture on the right, it means that the wireless sensor has sent a PGM packet to the receiver and is ready for configuration.
If this Wireless Device node has Auto Config enabled then Node-Red will attempt to configure the device with the settings configured in the Wireless Device edit pane.
Wireless Device Configuration Acknowledged Mode
When the Wireless Sensor Node’s status indicates “Configuration Acknowledged”, as shown in the picture on the right, it means that the wireless sensor has sent an ACK message to the wireless network in response to a command.
This generally indicates that a device is currently being configured.
Wireless Device Config Complete Mode
When the Wireless Sensor Node’s status indicates “Config Complete”, as shown in the picture on the right, it means that all configurations have been sent to the sensor and the sensor has either responded or the responses have timed out.
It is recommended to use the Config Results message that is sent when the node reaches this status to confirm all configurations were successful.
Wireless Device Module was Factory Reset
When the Wireless Sensor Node’s status indicates “Module was factory reset”, as shown in the picture on the right, it means that the correlating sensor has been factory reset.
Immediately after sending this message the sensor will also send a PGM message to allow for configurations after the factory reset.
Wireless Device Node Messages
Wireless Device Node Sensor Data Message
Sensor data is the primary message that will come from a Wireless Gateway Node. These messages can be discerned from other message types by the topic which will always be “sensor_data”
To the right is an example of a Sensor Data message.
- topic
- Indicates the type of message this is
- data
- Contains the sensor data and all other pertinent details of the sensor
- data.nodeID
- A user configurable parameter allowing a user to input a simple id for a particular sensor
- For a unique identifier it is recommended to use the msg.data.addr property as it is tied to the individual sensor’s wireless module and will always be unique
- data.firmware
- This identifies the firmware version of the sensor sending the packet
- data.battery
- The current voltage level of the batteries at the time of transmission
- The batteries that come with the sensors drop off quickly once they reach 2.6 volts
- data.battery_percentage
- The current battery percent at the time of transmission
- data.counter
- The number of transmissions since boot or counter rollover
- The counter will rollover after a counter value of 255
- data.sensor_type
- The machine identifiable type of the sensor
- It is recommended to use this property to dictate dashboard generation and/or data integrity checks
- data.sensor_data
- Object containing all sensor data related to this sensor
- This property is a duplicate of the payload property
- data.sensor_name
- Human Readable Sensor Type Identifier
- data.type
- An easily passed message type declaration
- This property will be a duplicate of msg.topic
- data.addr
- The unique identifier of the sensor that transmitted the data
- data.received
- Timestamp of the message
- data.original
- Auxiliary information on the packet and underlying protocol
- data.modem_mac
- The unique identifier of the Gateway/Modem that received the data
- Primarily used to tie locations/projects to sensors/sensor data
- payload
- Object containing all sensor data related to this sensor
- See msg.payload Breakdown for more information
- time
- Timestamp of the message
{
"topic": "sensor_data",
"data": {
"nodeId": 0,
"firmware": 3,
"battery": "3.28",
"battery_percent": "98.56",
"counter": 26,
"sensor_type": 32,
"sensor_data": {
"mass_concentration_1_0": 5
"mass_concentration_2_5": 9
"mass_concentration_4_0": 80
"mass_concentration_10_0": 150
"number_concentration_0_5": 2
"number_concentration_1_0": 3
"number_concentration_2_5": 5
"number_concentration_4_0": 8
"number_concentration_10_0": 15
"typical_size": 10
"Humidity": 60.53
"Temperature": 25.78
},
"sensor_name": "Particulate Matter Sensor",
"addr": "00:13:a2:00:42:37:73:52",
"received": 1721424191583,
"original": {...},
"modem_mac": "00:13:A2:00:41:F5:2C:D3"
},
"payload": {
"mass_concentration_1_0": 5
"mass_concentration_2_5": 9
"mass_concentration_4_0": 80
"mass_concentration_10_0": 150
"number_concentration_0_5": 2
"number_concentration_1_0": 3
"number_concentration_2_5": 5
"number_concentration_4_0": 8
"number_concentration_10_0": 15
"typical_size": 10
"Humidity": 60.53
"Temperature": 25.78
},
"time": 1721424191584,
"_msgid": "48e99332fc104565"
}
msg.payload Breakdown
- mass_concentration_1_0
- The total mass of 1.0µm sized particles in µg/m³
- mass_concentration_2_5
- The total mass of 2.5µm sized particles in µg/m³
- mass_concentration_4_0
- The total mass of 4.0µm sized particles in µg/m³
- mass_concentration_10_0
- The total mass of 10.0µm sized particles in µg/m³
- number_concentration_0_5
- The total number of 0.5µm sized particles in #/cm³
- number_concentration_1_0
- The total number of 1.0µm sized particles in #/cm³
- number_concentration_2_5
- The total number of 2.5µm sized particles in #/cm³
- number_concentration_4_0
- The total number of 4.0µm sized particles in #/cm³
- number_concentration_10_0
- The total number of 10.0µm sized particles in #/cm³
- typical_size
- The typical particle size in µm
- Humidity
- The relative humidity in %
- Temperature
- The measured temperature in °C
Wireless Device Node Config Results Message
- topic
- Indicates the type of message this is
- payload
- Contains the responses for each configuration command sent
- payload.x
- Each command will be listed as its own sub property of payload keyed by the command with a value of the command status
- A command with the value of true indicates a successful command and a corresponding response from the sensor
- Any other value indicates an error in the command or a failure of the sensor to respond
- Some commands will never return a true such as reboot_sensor or the establish_config_network commands
- time
- Timestamp of the message
- addr
- Indicates the unique address of the sensor sending the configuration results
{
"topic": "Config Results",
"payload": {
"establish_config_network_1": {
"res": "Broadcast mode, no target device",
"sent": [...]
},
"establish_config_network_2": {
"res": "Broadcast mode, no target device",
"sent": [...]
},
"establish_config_network_3": {
"res": "Broadcast mode, no target device",
"sent": [...]
},
"network_id": true,
"reboot_sensor": {
"err": "No config err or ack, timeout",
"sent": [...]
}
},
"time": 1721424010563,
"addr": "00:13:a2:00:42:37:73:52",
"_msgid": "c29c7695c93ae747"
}
Wireless Device Node OTN Request Results Message
- topic
- Indicates the type of message this is
- payload.config_enter_otn_mode
- A value of true indicates that the sensor successfully extended the temporary configuration mode
- time
- Timestamp of the message
{
"topic": "OTN Request Results",
"payload": {
"config_enter_otn_mode": true
},
"time": 1721424530709,
"_msgid": "1014b31e53e5c7ac"
}
Wireless Device Node Configuration Options
Our Node-Red library lets you configure any of sensor easily, simply by adjusting a few fields in your Node-RED flow and triggering a configuration update either through the CFG button on the sensor or waiting for a FLY message sent every hour during normal operations.
You can edit a Wireless Device node by double clicking the node once it is placed in a flow.
Primary Wireless Device Node Configurations
- Name
- Arbitrary name of this node
- Primarily used for easy identification in the flow
- Serial Device*
- The primary communication interface used to receive data from the sensor
- Clicking the edit icon will take you to a submenu to edit the particulars of the device chosen in the Serial Device dropdown
- To add a new configuration option you will want to choose “Add new ncd-gateway-config…” from this dropdown
- For More information on the submenu the edit icon brings up see section ncd-gateway-config Nodes
- Serial Device for Config
- A secondary communication interface used to configure sensors without losing sensor data
- If no option is selected the communication interface selected under Serial Device will be used for configuration
- A second modem will be required to make full use of this option
- Mac Address
- Using this field allows you to choose a specific sensor that corresponds to this Wireless Device node
- Leaving this field blank allows any sensor of the type chosen under the Sensor Type field to correspond with this Wireless Device Node
- A search icon on the right can be clicked to search for Wireless Devices that the Serial Device has heard from to auto fill information for that device
- Sensor Type*
- This field limits the sensors that correspond to this Wireless Device node to a particular type of sensor
- Auto Config
- Checking the box next to this field tells Node-Red that the sensor(s) corresponding to this Wireless Device node should be configured when put into Configuration Mode manually
- OTF Config
- Checking the box next to this field AND having Auto Config checked tells Node-Red that the sensor(s) corresponding to this Wireless Device node should be configured when a FLY message is detected
General Sensor Configurations
These configurations are transmitted to the sensor when Node-Red configures the sensor. Node-Red will need to configure the sensor in order for these settings to go into effect.
- Wait for Network Formation
- This option sends three commands to all local devices on the wireless network to help form the mesh network
- Destination Address
- This option will tell the sensor to ONLY send its data to a single receiver
- For more information on how to get the Address of the receiver module connected to Node-Red see section Wireless Gateway modem_mac Message
- Network ID
- This option allows you to change the Network ID that the sensor will use to report its data while in RUN module
- You will need to make sure that a Gateway or Modem is configured to use this network ID in order to receive sensor data from it after configuration
- Node ID and Delay
- Node ID
- Node ID allows you to set an easy to understand unique ID for a particular sensor
- Delay
- Delay is the time in seconds between sensor data reading transmissions
- Node ID
- Power
- This option allows you to set the transmission power level of the sensor
- Retries
- Sets the maximum number of retries the sensor will attempt before considering a packet transmission failed
Sensor Specific Configurations
ncd-gateway-config Nodes
ncd-gateway-config nodes handle communications between the Wireless Network hardware and Node-Red. They are not full nodes that will ever display as a node in your flow and instead act as underlying communication handlers and data emitters. These are the objects/entities that are configured in the Wireless Gateway and Wireless Device nodes chosen under “Serial Device”.
These nodes connect directly to the wireless module/modem to send and receive data to and from Node-Red. They act as the bridge between the hardware and software layers of the Gateway or computer running Node-Red.
Their primary function is to open comms to the wireless network and send sensor data to any other Node that selects them as their Serial Device allowing messages to be routed to all pertinent Nodes and use their respective flows.
ncd-gateway-config Node Configuration
Serial Connection
- Name
- This allows you to enter a human readable name for identifying this config node
- If no name is chosen it will default to the text for the Serial Port field
- Modem Type
- This allows you to choose between USB (Serial) or TCP (Ethernet/Network)
- If you are using an Enterprise Gateway or a USB Modem you will want to choose USB (Serial)
- If you are using an Ethernet Modem you will want to use TCP (Ethernet/Network)
- Serial Port
- Select the correct serial port that your USB Modem/Wireless Module is mounted to
- The default Serial Port for our Enterprise Gateways will be /dev/ttymxc2
- Baud Rate
- Do not choose anything other than 115200 unless you have changed the baud rate on the Modem/Module manually
- Network ID
- Network IDs allow you to have multiple groups of sensors, repeaters, and Gateway/Modems in a single area without interfering with each other
- The default value is 7FFF
- We do not recommend changing this value without specific purpose
- Make sure to change the Network ID of the sensors you want to be on this network BEFORE changing the Network ID here
- Add RSSI to incoming packets
- Selecting this box will add a signal strength indicator to all incoming comms
- Selecting this option will have a negative, but generally negligible effect on the Wireless Communication throughput
TCP Socket Connection
A TCP socket connection allows the Gateway/Server running Node-Red to be in an out of the way location while still receiving the sensor data from a Network Modem placed in a more central location. These communications heavily rely on the network that the Modem and Gateway/Server are on. It is recommended to put the Gateway/Server and the Ethernet Modem on the same network or have an IT team to oversee the communications if this option is used.
- Name
- This allows you to enter a human readable name for identifying this config node
- If no name is chosen it will default to the text for the Serial Port field
- Modem Type
- This allows you to choose between USB (Serial) or TCP (Ethernet/Network)
- If you are using an Enterprise Gateway or a USB Modem you will want to choose USB (Serial)
- If you are using an Ethernet Modem you will want to use TCP (Ethernet/Network)
- TCP Port
- Select the TCP Port that the modem is listening on
- The default TCP Port for our Ethernet Modems is 2101
- IP Address
- The IP address of the Ethernet Modem on the network
- It is recommended to have the Ethernet Modem use a Static IP address so that this value never needs to change
- Network ID
- Network IDs allow you to have multiple groups of sensors, repeaters, and Gateway/Modems in a single area without interfering with each other
- The default value is 7FFF
- We do not recommend changing this value without specific purpose
- Make sure to change the Network ID of the sensors you want to be on this network BEFORE changing the Network ID here
- Add RSSI to incoming packets
- Selecting this box will add a signal strength indicator to all incoming comms
- Selecting this option will have a negative, but generally negligible effect on the Wireless Communication throughput
Sensor Configuration Processes
Manual Configuration Process
Sensors can be manually put into configuration mode by pressing and releasing the Reset button on the sensor and then immediately holding the CFG button on the sensor for 5-15 seconds. See section Hardware Controls for more information on this.
If the Wireless Gateway node in Node-Red is set to configuration mode then you will receive a sensor_mode message from the sensor indicating it is now in Configuration Mode and can be configured. If you also have a Wireless Device Node corresponding to the sensor that was put into configuration mode then Node-Red will begin configuring that sensor according to the settings entered on the Wireless Device node.
See section Primary Wireless Device Node Configurations for more information on how to set up a Wireless Device to configure a sensor.
OTF/Automatic Configuration
This sensor supports configuration while in Run Mode. We call this configuration OTF or On the Fly. This configuration is initiated by a sensor_mode message from the Sensor with the mode of FLY. These messages are sent over the standard Run Mode wireless network so there is no need to change the Wireless Gateway nodes mode or manually manipulate the buttons on the sensor.
FLY messages are sent once an hour and on boot and tell Node-Red that the sensor is ready for configuration changes. Node-Red has two seconds to respond with a configuration or extend this temporary configuration mode.
If you have a Wireless Device node with Auto Config and OTF Config corresponding to the sensor that sent the FLY message then Node-Red will begin configuring that sensor according to the settings entered on the Wireless Device node.
See section Primary Wireless Device Node Configurations for more information on how to set up a Wireless Device to configure a sensor.
Troubleshooting
Check Sensor Power
First check that the Power Switch is in the correct position. See section Hardware Controls for more information and a diagram on the correct position.
Second press the CFG button on the sensor. If the TEST LED on the sensor lights up then the sensor has power. If the LED does not light up try swapping out the batteries or changing the external power supply.
If the LED still doesn’t light up after changing the power source please contact us for additional troubleshooting steps.
Factory Reset Sensor
If the power tests above show that power is on and the TEST LED lights up then you can attempt a factory reset. There are certain configurations that can be made to the sensor that will prevent data from being received properly such as Destination Address and Network ID. A factory reset will revert these to default settings.
- Factory Reset the Sensor
- Press and release the RESET button and then immediately hold the CFG button for > 15 seconds
- See section Hardware Mode Selection for more information
- You should receive a sensor_mode message with the mode of PUM and then a second sensor_mode message with the mode of PGM
- It is recommended to have a Debug node connected directly to the Wireless Gateway node to see these messages
Multiple Gateways
If you have multiple Gateways in the vicinity of a sensor that is having issues you will need to make sure that only one Gateway is set to configure these sensors using OTF Config. Multiple OTF Configuration attempts simultaneously will cause failures during configuration.
Additionally if one Gateway is setting the Destination Address or Network ID of the sensor it will prevent the other Gateways from seeing its sensor data or being able to perform OTF Configurations to that sensor.
The recommended resolution is to make sure that only one gateway is set to configure the device. If communications are down to the intended receiver perform a factory reset of the device.
See section Hardware Mode Selection for more information on performing a factory reset.
Move Devices Closer
Its possible that there was an environmental change at the install location that is causing the Wireless range of the sensor to be reduced. To check for this it is recommended to move the sensor closer to approximately 3 feet or 1 meter from the gateway and press the RESET button to see if the sensor_mode message with the mode of RUN is received.
If it is determined that it is a range issue you can check that the antenna is fully seated. If there appears to be no issue with the antenna this can usually be resolved by adding a Repeater between the Sensor and the Receiver/Gateway running Node-Red.
If the range is limited to a few feet contact us for additional troubleshooting steps.
Check Module Frequency - WIP
Check Antenna Connection - WIP
Examples
Dashboard
We have built an example dashboard to display the sensor data from a single Vibration Sensor. You can find it by importing it directly into Node-Red.
- Click the menu in the top right of Node-Red (three horizontal lines)
- Import
- Choose Examples on the left side of the subsequent modal window
- Expand @ncd-io/node-red-enterprise-sensors
- Expand Type 32 – Particulate Matter Sensor
- Select Quick Start Dashboard
- Select new flow along the bottom
- Click on Import
Example Flows
We have many examples of how to manipulate and disseminate data on our Github Repository. To view all of our example flows check out our Full Repository.