Jason Reiss
Forum Replies Created
-
AuthorPosts
-
Jason Reiss
KeymasterThe whitelist are OTA device settings for devices that can join.
Once they join they will show in the LoRaWAN > Devices list.
AEP 1.7.4 is an ancient firmware version, you may want to look into updating the firmware at some point.
Jason Reiss
KeymasterReviewing functionality of Node-red and returning an array should result in each message in the array being passed to the next node.
https://nodered.org/docs/user-guide/writing-functionsThis code should queue a single byte to the node based on the System_Activated field. You can change the value as needed.
downlinks = []; for (var i = 0; i < msg.payload.length; i++) { downlink = {}; downlink.eui = msg.payload[i].valve_EUI; if (msg.payload[i].System_Activated) { downlink.payload = new Buffer("01", "hex"); } else { downlink.payload = new Buffer("00", "hex"); } downlink.port = 1; downlink.ack = true; downlinks.push(downlink); } return downlinks;
Jason Reiss
KeymasterFor your original JS code
How is System_Activated and value_EUI added to a payload?
This would not come out of the network server on Conduit.var Pay = msg.payload[i].System_Activated; let Dev_eui = msg.payload[i].valve_EUI;
Not sure why you create an array for data and push packets into it.
Only one downlink should be created. “eui” instead of “Dev_eui” as your second example should be used.This doesn’t look right.
data.push({ payload: Pay, Dev_eui: Dev_eui, port : “1″, ack: “1″ });
Let me know if you have more questions, seems like you are making progress in the right direction?
Jason Reiss
Keymastermsg.payload = "31";
This will send two bytes, 3 and 1 in ascii as 0x33 and 0x31 shown below.
The downlink format is [TYPE][DEVADDR][FCNT][PORT][PAYLOAD]at+send hello
018856a20005000000013331OK
End of packet is
Port: 01 Payload: 3331To send only one byte.
msg.payload = new Buffer("31", "hex");
at+send hello
018856a2000a0000000131OK
End of packet is
Port: 01 Payload: 31Port is an int and ack is a bool.
msg.port = 1 ; msg.ack = true;
Jason Reiss
KeymasterSabri,
The current hardware still does not support hw float point operations required for newer versions of node-red.
We are working on updated hardware platforms that should be available later this year.
Jason Reiss
KeymasterThere is an id associated for each message to correlate the ACK.
lora/11-22-33-44-55-66-77-88/1/down_queued {
…,
“id” : 752,
…
}lora/11-22-33-44-55-66-77-88/1/packet_sent {
…,
“id” : 752,
…
}lora/11-22-33-44-55-66-77-88/packet_ack {“seqn”:2, “id”: 752}
Jason Reiss
KeymasterCould you explain more on what “some sort of my own correlation id” could mean?
There are MQTT topics available from the network server.
down_queued – occurs when a downlink packet is successfully queued by an application.
packet_ack – occurs when the network server receives an uplink with acknowledgement of successful receipt of a downlink packet.
Jason Reiss
KeymasterHave a look at the mPower 6.0.0 release
https://www.multitech.com/documents/publications/sales-flyers/mPower%20Software%206.x.x%20Conduit%20Gateways.pdf
https://www.multitech.com/documents/publications/software-guides/s000727–mPower-Edge-Intelligence-Conduit-AEP-software-guide.pdfThere is the Administration > MQTT Broker > MQTT Bridge Configuration with authentication using the device certificates or imported certificates.
There is also LoRaWAN > Network Settings > Default App that can be configured to connect to a remote broker.
https://multitechsystems.github.io/lorawan-app-connectJason Reiss
KeymasterCheckout this command to see how to create a device profile.
$ lora-query -x helpThen assign to an existing device record or whitelist entry.
Jason Reiss
KeymasterThe LoRaWAN > Network Settings > Payload Broker should be left as default 127.0.0.1 and 1883 to use the local broker that the node-red application can also subscribe to.
Then in node-red you will connect to a remote broker to send to.
Jason Reiss
KeymasterWhat is the mPower version you are using?
Do you receive the ACK in Rx2?
The example shows a packet with FCNT 2. Can you provide later packets around 6 or 7?
What is the rssi/lsnr values received by the gateway?11:37:17:296|DEBUG| ED:31-30-34-37-5d-38-86-08|PACKET-TX|ADDR: 0149e6a7 PORT: 0 ACK: 0 FCNT: 00000002
This shows ADR is enabled and the average SNR is 7.2 and DR5 should be assigned eventually.
11:37:15:782|DEBUG| ADR|SNR: 72 AVG: 72 DR: 5 SEQ: 2
11:37:15:782|INFO| ED:31-30-34-37-5d-38-86-08|FCTRL|ADR:1 ADRACK:0 ACK:0 CLASS:A OPTS:0 LAST-PKT: 120009 msJason Reiss
KeymasterI suggest creating a ticket at support.multitech.com for further help.
See section 3.4.4 Register the Device
https://www.multitech.com/documents/publications/marketing-guides/MultiTech_Getting_Started_Guide_for_AWS_LoRaWAN.pdfJason Reiss
KeymasterWhat frequencies did you see in server mode?
What Frequency Sub Band was configured for server mode?The frequencies are sent to the gateway from the AWS network server when basic station mode is used. Is there configuration available for the gateway in AWS?
I did not see a device manual on the linked page. You may need to contact the device manufacturer.
Jason Reiss
KeymasterDo you see uplinks from the device?
Did it work when you configured the local network server?Jason Reiss
KeymasterWhat region are have you configured the gateway for?
8 channel configuration would only help a US915 or AU915 device.Do you have a manual for the device?
Jason Reiss
KeymasterIf gateway is connected and uplinks are received, there should be no further gateway configuration needed.
An end-device may need to be limited to only 8 channels to help join.
Default may have 64 channels enabled.What end-device are you trying to connect?
What firmware or library is being used?
Have you added the device to the AWS network server?Jason Reiss
KeymasterThe device DevEUI and AppKeys would need to be added to AWS LoRaWAN services.
Is there a gateway status in the AWS cloud that shows the gateway is connected?
I suggest creating a ticket at support.multitech.com for further help.
Jason Reiss
KeymasterWhat LoRaWAN network service have you configured basic station to connect to?
| I was able to connect the gateway, but not the devices
You may want to create a support case to share your configuration and logs with our team, support.multitech.com.
Jason Reiss
KeymasterBasic Station does no use local keys, they only work with network server mode.
All packets are sent to the remote network server configured with basic station.
The end-devices need to be provisioned with the remote network service.There is an updated firmware that will hide the rest of the LoRaWAN menu items when packet forwarder or basic station is selected.
Sorry for any inconvenience.
Jason Reiss
KeymasterNormally packets scheduled and sent by the network server will be target at the end-devices. These packets are transmitted with reversed polarity so that other gateways do not see them and they do not interfere with end-device uplinks. The network server schedules transmission and regulates the duty-cycle of the gateway transmitter where required by law.
The MQTT message to the network server can only be used to queue packets to end-devices. RAW lora messages cannot be queued or transmitted.
One possibility is to use an MTAC-XDOT card as a secondary transmitter configured as an end-device connecting to the central Conduit via LoRaWAN.
Jason Reiss
KeymasterAT Firmware has the AT+TM!=1 command to enable the test mode.
A custom firmware would need to implement the test mode to support certification. It is not built into the library.
Jason Reiss
KeymasterIf it is configured correctly is should work, otherwise it will not.
If you configure the Network Interfaces > br0 to be a DHCP client
Also turn off the DHCP server.When you plug into the home router is should get an address and DNS entry to reach the internet. You could then log into the home router to find the IP address that was assigned. Or you could scan the network from your PC to find the mac address on the label of the MTCAP.
If you need more help with the settings feel free to open a ticket at support.multitech.com
January 27, 2022 at 3:00 pm in reply to: Programming Channel Plan at runtime as opposed to compile time #32326Jason Reiss
KeymasterThey should both work the same and create the same channel plan.
The new ones are better to use, the old ones should not be used for new stuff.The new ID’s have a bit field to specify that the plan is a dynamic vs fixed channel plan. US and AU are the only fixed plans, all the channels are provided by the plan, no channels can be added. Dynamic plans are EU,IN,AS, etc.. where new channel are sent in a join accept.
Jason Reiss
KeymasterShow loaded plan
AT+FREQChange to EU868
AT+DFREQ=EU868
AT&WP
ATZChange to US915
AT+DFREQ=US915
AT&WP
ATZJason Reiss
Keymasterhttps://github.com/MultiTechSystems/Dot-AT-Firmware
For xDot the global plan provided with 4.1.2 would be needed to change the channel plan through commands only.
Other wise the channel plan specific firmware must be used, i.e. load US915 for use in NA.
Jason Reiss
KeymasterWhat channel plan are you using?
Do you have ADR enabled?In LoRaWAN 1.0.4 the network controls the number of retries when ADR is enabled.
Perhaps the settings is being overridden by an ADR MAC Command?You could try to call setACK before each send.
What LoRaWAN network are you communicating with?
Jason Reiss
KeymasterMissedAck retries should be the current number of retries attempted.
If you miss the first ACK is should be 0
If you miss the second ACK is should be 1
…Jason Reiss
KeymasterSee getAck in the header file to retrieve the value that is set.
https://github.com/MultiTechSystems/libxDot-dev/blob/master/mDot.hThere are events for missed ACK that shows number of retries, and PacketRx gives the number of total retries when ACK is received.
https://github.com/MultiTechSystems/libxDot-dev/blob/master/mDotEvent.hJanuary 12, 2022 at 9:06 am in reply to: Programming Channel Plan at runtime as opposed to compile time #32301Jason Reiss
KeymasterThe latest commit to the dev libraries will skip this check.
[WARNING] New ChannelPlan detected…A changed channel plan will need to perform a join if the session does not match. The application has a better chance of detecting and fixing this once the dot instance is configured.
January 11, 2022 at 1:21 pm in reply to: Programming Channel Plan at runtime as opposed to compile time #32300Jason Reiss
KeymasterDid you enable setPreserveSession? normally the session is reset unless this is enabled.
In the ALL-PLANS AT Firmware we use these settings for saving the channel plan.
https://github.com/MultiTechSystems/Dot-AT-FirmwaresetDefaultFrequencyBand
getDefaultFrequencyBand
saveProtectedConfig -
AuthorPosts