Jason Reiss
Forum Replies Created
-
AuthorPosts
-
Jason Reiss
KeymasterThe network server will queue the message until the device sends an uplink.
Node-RED flow:
inject -> function -> lora-outfunction node body:
var msg = {
“ack”: false,
“eui”: “00-80-00-00-00-00-ab-b0”,
“port”: 1,
“payload”: “lkajsdf”
}return msg;
Jason Reiss
KeymasterDo you have an /dev/ttyXRUSB0 file?
Or you can look at the diff between “ls /dev” before and after plugging the xdot dev board.
Jason Reiss
KeymasterThe Rx1 DR Offset will be sent to the device in the Join Accept message in an OTA join. So a rejoin of the device after changing the Rx1 Offset in the network server would be needed.
Otherwise this command can be used to adjust the setting in current network session.
int32_t mDot::injectMacCommand(const std::vector& data) Inject the following MAC command
RxParamSetupReq => CMD | Rx1Offset & Rx2DR | Rx2 Frequency (LSB)
05 2 0 68E28C (923.3)
0x052068E28CThe gateway can transmit at a higher power than the mDot so this adjustment may not be needed if max power is used.
Jason Reiss
KeymasterTry to allocate the pin object dynamically.
AnalogIn *tmp3 = new AnalogIn(PB_0);
…
uint16_t TC = tmp3->read_u16();
…
delete tmp3;Jason Reiss
KeymasterThe only way to connect to a network server without “node add” is to use the common NetworkID and NetworkKey on all devices and use OTAA join.
Jason Reiss
KeymasterThe updated packet forwarder >=2.2.0 does not support the FTDI USB interface to the MTAC-LORA cards.
SPI interface is needed on the cards to work with 3.0.0 recipes.
SPI will be supported on our soon to be release cards.Jason Reiss
KeymasterWhen only packet_recv messages are seen it is because the network recognizes the NetAddr in the packet header but cannot authenticate the MIC using the Uplink Counter and Network Session Key.
Check the session information or for an OTA join.
Jason Reiss
KeymasterYes, I mean that the protocol definition of Class B is not complete.
We have no time-frame as to when this will happen.Jason Reiss
Keymastersee output of:
> lora-query -nand
> lora-query -c 01234567
A manually joined node should have DevAddr, NetSKey and DataSKey set.
AppEUI and AppKey values are used for OTA join.
DevEUI is used to report to the application on Conduit.Jason Reiss
KeymasterFor an ABP connected device the AppEUI will not be used so it can be set to any value.
The easiest way to get AppEUI from a network name is on an mDot.
Set the network name
> AT+NI=1,test network
Read back the value to show the EUI
> AT+NIJason Reiss
KeymasterPiyush,
It appears the AT command reference is not in order.
There is another note for AT+DC near the top of page 59.
Note: Currently only Class A and Class C are supported.This is the correct information. The “version 2.0 or older” note should be set next to Class C.
Class B definition is not complete in LoRaWAN until 1.1.
Jason Reiss
Keymasterno. The mDot does not support USB. Only the developer UDK/MDK boards have USB support to access the programming chip that flashes the mDot MCU memory.
Jason Reiss
KeymasterIt indicates the device missed a transmitted ACK packet.
Jason Reiss
Keymasterhttps://developer.mbed.org/teams/MultiTech/code/libmDot/file/0b4eb17d07ae/mDot.h
See this function
mdot_stats getStats();Jason Reiss
KeymasterJason Reiss
KeymasterThe default session key is used with the passphrase as input to the CMAC.
2b.7e.15.16.28.ae.d2.a6.ab.f7.15.88.09.cf.4f.3c
Jason Reiss
KeymasterAT command Source is available for using libmDot to derive the values problematically.
https://developer.mbed.org/teams/MultiTech/code/Dot-AT-Firmware/See the definitions for the AT+NI and AT+NK commands.
What is the use case to want to do this outside of mDot/Conduit?
In most cases the EUI and Key can be used.Jason Reiss
KeymasterYou can use AT+NK and AT+NI to retrieve the values in hex.
at+ni=1,hellothere
Set Network Name: hellothereOK
at+ni
4d-b0-93-6c-d0-64-24-ec
Passphrase: ‘hellothere’OK
at+nk=1,hellotoyou
Set Network Passphrase: hellotoyouOK
at+nk
13.c7.2d.61.78.01.9e.db.dc.7e.a4.29.ad.82.a5.88
Passphrase: ‘hellotoyou’OK
Jason Reiss
KeymasterHave you analyzed the debug output?
It may be helpful to see the system event log.Do you have ACK enabled? This would only work with a P2P system between two dots.
The P2P feature was not designed for more that 2 end-points.This mbed user has some good examples of using the Sx1272 chip on the mDot without the library if you want some lower level control.
https://developer.mbed.org/users/dudmuck/code/Jason Reiss
KeymasterThe link check in this context is used as an occasional ACK just to determine if the network is still available.
It is a compromise between ACKing every packet and sending packets into the air hoping the network is still there.
There is no method to determining if a single packet was received by the gateway in this scenario. Just that in general the gateway is still able to hear the device. In the example the success ratio could be as little as 1/15 packets, but an action can be taken when it reaches 0/15.
Jason Reiss
KeymasterThe AT Firmware does not have command to cancel the rx windows.
https://developer.mbed.org/teams/MultiTech/code/Dot-AT-Firmware/5 packets in one second may not be possible depending on datarate and payload size of course.
DR0 with 11 bytes of payload will be on air 400 ms.
DR3 with 242 bytes of payload will be on air 399 ms.
DR4 at max payload 242 bytes will use 176 ms time on air.Canceling the rx windows is not suggested in LoRaWAN as this cuts off the network server from sending downlink commands. Class A functionality
is expected of all devices.The AT Firmware can be modified to cancel the windows either by modifying the AT+SEND command or add a custom command.
The library does have the functionality in this function:
void cancelRxWindow();https://developer.mbed.org/teams/MultiTech/code/libmDot-mbed5/file/610f9e955516/mDot.h
Jason Reiss
KeymasterOn the end-node you only need to enable ADR.
This will signal the network server to control the device datarate based on SNR. This will happen inline with sending uplink packets.
When the network server determines that the device may use a higher datarate or lower power, when at max datarate, it will send a command for the device to change settings.The ADR step can be used to adjust the aggressiveness of datarate switching. Theoretically there is a 25 cB link budget difference between each datarate. Therefore the min value for ADR step is 25 cB. Default value of 30 cB is used to allow a small variation of SNR. Higher values will require greater SNR to reach the highest datarates.
DR4 is the default max and the maximum uplink datarate in the US/AU channel plans. DR3 – SF7BW125 and DR4 – SF8BW500, the bandwidth is 500k which more 4x faster than a 125k channel. Each SF or BW step will double datarate.
The link check does NOT need to be called in order for ADR to work. It is merely a way for the device to query the network link health. The link check could be used by the device to implement manage its own datarate in similar fashion to ADR but this would not be AUTOMATIC. Managing ADR at the server is more efficient as downlink packets will be minimum.
When ADR is enabled and ACK is requested with >2 retransmissions the datarate will be lowered after 2 missed ACK’s. The ADR check will not allow ADR to lower the datarate below the minimum required to send the current payload size. It will NOT automatically increase the datarate to match a new payload.
Jason Reiss
KeymasterTo get the mdot box configured for AU915 load the linked firmware on to the device. Then reload the 2.1.2 firmware
http://multitech.net/downloads/mdot-firmware-no-cmd-interface-switch-to-AU915.bin
For Node-RED, have you used the public sample node-red app available for install from device hq?
Jason Reiss
KeymasterDid you register with the AppEUI value? Or do you have this matching the Conduit global setting?
Try.
lora-query -a 1 A 70b3d53260000100 70b3d53260001390 a4fe7622cebb98406cd99a8565c6a82f
Jason Reiss
KeymasterHave you read the getting started and ensured the network settings match on mdot and Conduit?
Getting Started with LoRa Conduit mLinux (LoRa Configuration)
I would like to know what means “invalid NET EUI and no record of Dev EUI”.
This means the AppEUI in the join request did not match the lora network server setting and a record of the device was not found in the database.
lora-query utility can be used to register a device with unique appkey appeui pair, this will be used if the conduit NetEUI NetKey does not match.
Jason Reiss
KeymasterXDot samples may have the wrong crystal installed.
Try to set the P2P frequency on the xDot to 25 KHz higher than set on mDot and see if communication is working.Jason Reiss
KeymasterMin tx power is not configurable. We can add a feature request for this functionality.
However when the device is at the set to the max datarate the network server should try to step down the power in if there is sufficient SNR.
-
This reply was modified 8 years, 4 months ago by
Jason Reiss.
Jason Reiss
KeymasterUsing the Link Check will give the demodulation margin above the SNR floor for the packet spreading factor.
For BW125 the lora demod SNR floors in dBm are
SF7 => -7.5
SF8 => -10.0
SF9 => -12.5
SF10 => -15.0
SF11 => -17.5
SF12 => -20.0For BW250 add 3.0, BW500 add 6.0
Jason Reiss
KeymasterThe SX1301 can receive up to 8 packets. The emulated demodulators can handle multiple packets on one channel at different spreading factors.
Each channel has a demodulator for each SF attached.
6 SF * 8 channels = 48 emulated demodulators.With two Sx1255 front ends a packet can also be demodulated by the front end chip, so add 1 lora packet and one FSK.
-
This reply was modified 8 years, 4 months ago by
-
AuthorPosts