Les identifiants par défaut de la passerelle Wise-6610 v2 sont `admin`/ `admin`.
L'accès au LNS de la v2 se fait via le menu `LoRaWan > Advantech LoRaWan Service`.
Tableau de bord du LNS de la Wise-6610 v1
Tableau de bord du LNS de la Wise-6610 v1
Dans la v2, ce menu est accessible via `Devices > Create Device > Type : OTAA`
Capture d'écran de l'interface Node-RED
Dans la v2 `Application Toos > Node-RED > Settings`.
Dans la v2, cochez `Node-RED control`.
{ "d":[ { "tag":"Something:IoTEdge_Tag", "value":value }, { "tag":"Something:IoTEdge_Other_Tag", "value":other_value } ], "ts":"00000000000" }
//This script currently doesnt support Dual Channel Mode. bytes = [] c = 0 while(c < msg["data"].length) { bytes.push(parseInt(msg["data"].substr(c, 2), 16)); c+=2; } result = {} if(msg.port == 2 || msg.port == 3) { //Real Time Open/Close status and historical //For simplicity sake, only translate the first entry of historical events. result["DOOR:COUNT_MODE"] = (bytes[0] & 0x08) ? "RES" : "FAC"; //RES : Since reset / FAC : Since factory result["DOOR:TDC"] = (bytes[0] & 0x04) ? 1 : 0; result["DOOR:ALARM"] = (bytes[0] & 0x02) ? 1 : 0; result["DOOR:DOOR_OPEN_STATUS"] = (bytes[0] & 0x01) ? 1 : 0; result["DOOR:DOOR_OPEN_TIMES"] = bytes[1] << 16 | bytes[2] << 8 | bytes[3]; result["DOOR:LAST_DOOR_OPEN_DURATION"] = bytes[4] << 16 | bytes[5] << 8 | bytes[6]; } if(msg.port == 4) { //Sensor configuration //Only sent after downlink msg from server result["DOOR:TDC"] = bytes[0] << 16 | bytes[1] << 8 | bytes[2]; result["DOOR:DISALARM"] = (bytes[3] & 0x1) ? 1:0; result["DOOR:KEEP_STATUS1"] = (bytes[4] & 0x1) ? 1:0; result["DOOR:KEEP_TIME1"] = bytes[5] << 8 | bytes[6] result["DOOR:KEEP_STATUS2"] = (bytes[7] & 0x1) ? 1 : 0; result["DOOR:KEEP_TIME2"] = bytes[8] << 8 | bytes[9] result["DOOR:ALARM_INTERVAL"] = bytes[10] } if(msg.port == 5) { //Device status result["DOOR:SENSOR_MODEL"] = (bytes[0] & 0x1B) ? "DS03A" : "Unknown Device"; result["DOOR:FIRMWARE_VERSION"] = "${bytes[1]}"; result["DOOR:FREQUENCY_BAND"] = "EU868"; result["DOOR:SUB_BAND"] = 0x00; result["DOOR:BATTERY"] = byte[5] << 8 | byte[6]; } output = { "d":[], "ts":"00000000000000000000000" } for(k in result) { output["d"].push({"tag":k, "value":result[k]}) } output["raw"] = result return output
//Les bool dans IoTEdge sont représentés par {0, 1}, pour pouvoir etre utilisé dans les dashboard bool DOOR_OPEN_STATUS; bool ALARM; int LAST_DOOR_OPEN_DURATION; // in seconds int DOOR_OPEN_COUNT;