Skip to content

Commit

Permalink
Merge branch 'release/1.0.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
Daisuke Baba committed Apr 24, 2018
2 parents 87e9d28 + 1d11db2 commit c0bb156
Show file tree
Hide file tree
Showing 11 changed files with 180 additions and 58 deletions.
4 changes: 2 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
language: node_js
node_js:
- 6.13
- 8.10
- 6.14.1
- 8.11.1
python:
- 2.7

Expand Down
49 changes: 43 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,46 @@ node-red-contrib-smartmesh
[![GitHub release](https://img.shields.io/github/release/CANDY-LINE/node-red-contrib-smartmesh.svg)](https://github.com/CANDY-LINE/node-red-contrib-smartmesh/releases/latest)
[![master Build Status](https://travis-ci.org/CANDY-LINE/node-red-contrib-smartmesh.svg?branch=master)](https://travis-ci.org/CANDY-LINE/node-red-contrib-smartmesh/)

Node-RED nodes for Analog Devices' SmartMesh® IP Motes and Manager
Node-RED nodes for Analog Devices' [DC2274A-A SmartMesh IP™ USB Network Manager](http://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/dc2274a-a.html).

# ALPHA RELEASE
![DC2274A-A, Motes, RPi Zero WH and CANDY_Pi_Lite](images/DC2274A-A_Motes_RPi_CANDY_Pi_Lite.jpg)

These nodes are NOT YET AVAILABLE via Node-RED palette manager.
The above picture shows a typical demonstration set including:

- DC2274A-A SmartMesh IP™ USB Manager dongle
- SmartMesh IP™ Motes containing controllable LED, temperature sensor and GPIO/UART/SPI/I2C interfaces
- Raspberry Pi Zero WH for running Node-RED/CANDY RED(a custom version of Node-RED dedicated to CANDY Pi Lite)
- CANDY Pi Lite LTE Board for 4G/LTE mobile connection to upload data/download control commands to/from cloud servers

## Example Flow

The bundled example flow includes the following operations:

- Turn on/off LED on remote motes
- Getting LED on/off command results
- Showing temperature data from remote motes
- Showing SmartMesh network event notifications

![Example flow](images/example-flow-working.jpg)

## Easy to use

These are provided by the default firmware on the evaluation kit. So you don't have to flash a specific firmware to work the example but just turn all motes on and connect the USB manager to Raspberry Pi, ASUS Tinker Board or other Linux box where Node-RED runs.

## Listing Active Motes

You can find the active (online) motes from the manager dialog while monitoring the flow.

![DC2274A-A SmartMesh IP™ USB Manager Dialog](images/usb-manager-dialog.jpg)

## SmartMesh IP Document

See [SmartMesh IP™ Tools Guide(PDF)](http://cds.linear.com/docs/en/software-and-simulation/SmartMesh_IP_Tools_Guide.pdf) for SmartMesh IP™ technical details.

# Prerequisites

[SmartMesh SDK v1.3.0.1](https://dustcloud.atlassian.net/wiki/spaces/SMSDK/overview) ([GitHub repo](https://github.com/dustcloud/smartmeshsdk)) requires the following environments.

1. Python 2.7 (Python 2.6/3.x are NOT supported)
1. PySerial 3.4+

Expand All @@ -30,9 +62,9 @@ sudo npm install --unsafe-perm node-red-contrib-smartmesh

Then restart Node-RED process.

`sudo` is used for installing SmartMesh SDK into dist-package directory.
`sudo` is used for installing [SmartMesh SDK](https://dustcloud.atlassian.net/wiki/spaces/SMSDK/overview) into dist-package directory.

**Node-RED users cannot install this node via `Manage Palette` dialog because of insufficient permission.**
**Node-RED users cannot install this node via `Manage Palette` dialog because of insufficient permission unless the process is owned by privileged user. Use the above commands to install it.**

### Uninstallation

Expand Down Expand Up @@ -87,6 +119,11 @@ $ rm -fr node_modules; \

# Revision History

* 1.0.0
- Initial General Availability Release
- Add `node-red` keyword
- Fix an issue where Active Motes were never shown in the manager dialog

* 0.3.1
- Fix an issue where Object.value function was missing on Node.js v6

Expand All @@ -99,7 +136,7 @@ $ rm -fr node_modules; \

* 0.2.0
- Fix an issue where /usr/local directory was removed when uninstalling this package
- Add a new property to SmartMesh manager node to append a source manager identifier to the mote event message
- Add a new property to SmartMesh IP™ manager node to append a source manager identifier to the mote event message

* 0.1.0
- Initial Release (alpha)
Expand Down
104 changes: 67 additions & 37 deletions examples/01-basic-use.json
Original file line number Diff line number Diff line change
@@ -1,57 +1,57 @@
[
{
"id": "c6d89d06.5920f",
"id": "92e1ac59.e47078",
"type": "tab",
"label": "SmartMesh Example",
"disabled": false,
"info": ""
},
{
"id": "b2986a8f.d9ad7",
"id": "54fcf07a.bf08a",
"type": "debug",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "Data",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"x": 483.5,
"y": 338,
"x": 467.5,
"y": 322,
"wires": []
},
{
"id": "3ffb1672.a60f62",
"id": "7025063f.b96168",
"type": "catch",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "",
"scope": null,
"x": 288.5,
"y": 407.25,
"x": 285.5,
"y": 453.25,
"wires": [
[
"c501407a.4f901"
"c015984c.413828"
]
]
},
{
"id": "c501407a.4f901",
"id": "c015984c.413828",
"type": "debug",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "Error",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"x": 466,
"y": 430,
"x": 463,
"y": 476,
"wires": []
},
{
"id": "ec6099a0.8fa528",
"id": "304fbe9d.7fd2d2",
"type": "inject",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "LED ON (77-66-55-44-33-22-11-00)",
"topic": "",
"payload": "{\"mac\":\"77-66-55-44-33-22-11-00\",\"id\":\"led_on_1\",\"command\":\"PUT\",\"address\":\"/3/2\",\"tags\":[{\"tag\":0,\"format\":\"byte\",\"value\":\"01\"}]}",
Expand All @@ -64,14 +64,14 @@
"y": 126.25,
"wires": [
[
"3e057e47.5a7ec2"
"6fc4a724.b5b028"
]
]
},
{
"id": "c8ba34be.f56728",
"id": "6b2a80f9.18ed18",
"type": "inject",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "LED OFF (77-66-55-44-33-22-11-00)",
"topic": "",
"payload": "{\"mac\":\"77-66-55-44-33-22-11-00\",\"id\":\"led_off_1\",\"command\":\"PUT\",\"address\":\"/3/2\",\"tags\":[{\"tag\":0,\"format\":\"byte\",\"value\":\"00\"}]}",
Expand All @@ -84,14 +84,14 @@
"y": 165,
"wires": [
[
"3e057e47.5a7ec2"
"6fc4a724.b5b028"
]
]
},
{
"id": "b108ec89.42f84",
"id": "ea75a621.087868",
"type": "debug",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "Results",
"active": true,
"tosidebar": true,
Expand All @@ -103,9 +103,9 @@
"wires": []
},
{
"id": "f24254f3.f27428",
"id": "45c6981.3bbe268",
"type": "inject",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "LED ON (00-11-22-33-44-55-66-77)",
"topic": "",
"payload": "{\"mac\":\"00-11-22-33-44-55-66-77\",\"id\":\"led_on_2\",\"command\":\"PUT\",\"address\":\"/3/2\",\"tags\":[{\"tag\":0,\"format\":\"byte\",\"value\":\"01\"}]}",
Expand All @@ -118,14 +118,14 @@
"y": 38,
"wires": [
[
"3e057e47.5a7ec2"
"6fc4a724.b5b028"
]
]
},
{
"id": "793d90b2.1e85a",
"id": "af823f6.ba6cd4",
"type": "inject",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "LED OFF (00-11-22-33-44-55-66-77)",
"topic": "",
"payload": "{\"mac\":\"00-11-22-33-44-55-66-77\",\"id\":\"led_off_2\",\"command\":\"PUT\",\"address\":\"/3/2\",\"tags\":[{\"tag\":0,\"format\":\"byte\",\"value\":\"00\"}]}",
Expand All @@ -138,56 +138,86 @@
"y": 76,
"wires": [
[
"3e057e47.5a7ec2"
"6fc4a724.b5b028"
]
]
},
{
"id": "158ec6f5.4b6a91",
"id": "4885770e.30ee",
"type": "SmartMesh in",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "",
"subscriptionType": "data",
"smartMeshManager": "ee6b7dce.0f8d9",
"x": 287.5,
"y": 317.5,
"y": 304.5,
"wires": [
[
"b2986a8f.d9ad7"
"54fcf07a.bf08a"
]
]
},
{
"id": "f93ecaa3.027ad8",
"id": "36e2a78c.1953e8",
"type": "SmartMesh in",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "",
"subscriptionType": "result",
"smartMeshManager": "ee6b7dce.0f8d9",
"x": 287.5,
"y": 236.5,
"wires": [
[
"b108ec89.42f84"
"ea75a621.087868"
]
]
},
{
"id": "3e057e47.5a7ec2",
"id": "6fc4a724.b5b028",
"type": "SmartMesh out",
"z": "c6d89d06.5920f",
"z": "92e1ac59.e47078",
"name": "",
"smartMeshManager": "ee6b7dce.0f8d9",
"x": 484.5,
"y": 89.5,
"wires": []
},
{
"id": "f45bdede.d01c98",
"type": "debug",
"z": "92e1ac59.e47078",
"name": "Notifications",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "payload",
"x": 489,
"y": 393,
"wires": []
},
{
"id": "97ac2d0d.43742",
"type": "SmartMesh in",
"z": "92e1ac59.e47078",
"name": "",
"subscriptionType": "notification",
"smartMeshManager": "ee6b7dce.0f8d9",
"x": 288,
"y": 374.5,
"wires": [
[
"f45bdede.d01c98"
]
]
},
{
"id": "ee6b7dce.0f8d9",
"type": "SmartMesh manager",
"z": "",
"enabled": true,
"serialport": "/dev/DC2274A-A.API",
"identifier": "manager1",
"redirectSmartMeshManagerLog": true
}
]
Binary file added images/DC2274A-A_Motes_RPi_CANDY_Pi_Lite.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/example-flow-working.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/usb-manager-dialog.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion npm-shrinkwrap.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 3 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "node-red-contrib-smartmesh",
"version": "0.3.1",
"description": "Node-RED nodes for Analog Devices' SmartMesh® IP Motes and Manager",
"version": "1.0.0",
"description": "Node-RED nodes for Analog Devices' SmartMesh IP Motes and Manager",
"license": "Apache-2.0",
"repository": {
"type": "git",
Expand All @@ -25,6 +25,7 @@
],
"homepage": "https://github.com/CANDY-LINE/node-red-contrib-smartmesh#readme",
"keywords": [
"node-red",
"smartmesh",
"dust networks",
"Analog Devices",
Expand Down
Loading

0 comments on commit c0bb156

Please sign in to comment.