Is LBT implemented in libmdot?

Home Forums mDot/xDot Is LBT implemented in libmdot?

Tagged: 

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • #12847
    Guillermo Glaria
    Participant

    Dear Sirs,

    We are developing a LoRaWAN project with 5 mDot nodes and a Conduit gateway. The mDot firmware is based on libmdot.

    I have read in LoRa MAC Specification v1.0 this paragraph:

    “Prior to transmission, the end device uses Listen Before Talk (LBT) to assess that the intended transmission channel is free. A channel is considered free if the instantaneous signal strength measured is smaller than RSSI_FREE_TH. If the channel is not free, the end device changes to another channel and repeats the LBT procedure.”

    I suspect that it’s not implemented. When I put a mDot with SF12 transmiting every 3 minutes and another mDot with SF7 transmiting every 15 seconds simultaneously and near the gateway, the PER (Packet Error Rate) of the SF12 node is extremely incresed to about 40-55%.

    The change log of libmdot last version (1.0.8) says that it’s LoRaWAN 1.0 Certified. Is this LBT requirement implemented in libmdot just now?

    If the mDot uses LBT, I will have to search the cause of this PER in the MultiTech Conduit gateway.

    But another test that I have done is to put an interferer that sends continuously a carrier signal in 868.3 MHz. However, the mDot sends frames in this channel.

    Is there any bug in libmdot? This could be a issue that must be resolved because the network does not have reliability.

    Thank you and regards,

    Guillermo Glaria

    #12848
    Jason Reiss
    Keymaster

    The specification in use is today LoRaWAN 1.0.

    LoRaMAC was a predecessor with specification versions up to v3.1. It appears you are looking at an old spec.

    The LoRaWAN protocol exclusively uses duty-cycle to manage access to the medium.

    From LoRaWAN 1.0

    7 7.1.2 EU863-870 ISM Band channel frequencies 
    ... 
    14 In order to access the physical medium the ETSI regulations impose some restrictions such 
    15 maximum time the transmitter can be on or the maximum time a transmitter can transmit per 
    16 hour. The ETSI regulations allow the choice of using either a duty-cycle limitation or a so- 
    17 called Listen Before Talk Adaptive Frequency Agility (LBT AFA) transmissions 
    18 management. The current LoRaWAN specification exclusively uses duty-cycled limited 
    19 transmissions to comply with the ETSI regulations.
    #12850
    Guillermo Glaria
    Participant

    Dear Jason,

    OK. Thank you for your quick response.

    Now, I understand.

    So, how can I explain the 40-55% PER?

    If time-on-air of an SF12 node frame is about 1.3 seconds, if the mDot only uses 3 channel, and there is an interferer like another SF7 node sending with a period of 15 seconds, the probability of collisions should be very high.

    Does this testbed explains the high PER and the responsible for this is the no LBT LoRaWAN end node?

    Or I have to search the cause in the gateway? Can SX1301 or MultiTech mCard firmware be the cause of this behaviour? Can they ear and process two frames simultaneously, in same period of time?

    Has there been any change or firmware update in mCard? I had purchased the Conduit gateway in July of 2015. If there is a firmaware new version, can I upgrade it by myself? Or is there any mCard replacement under warranty?

    Thank you and regards,

    Guillermo Garia

    #12852
    Jason Reiss
    Keymaster

    Different SF settings should not interfere with each other.
    How near the gateway is the SF7 node?
    How near the gateway is the SF12 node? Distance < 20m can has impact on SF12 reception. Are there any downlink transmission from the gateway? ACK or otherwise. The mCard is a half-duplex design, any TX will toss an RX in progress. A single mCard is able to receive 8 packets simultaneously. Firmware are available in downloads. http://www.multitech.net/developer/downloads/ Check currently installed versions with: > opkg list
    > opkg list | grep lora

    #12853
    Guillermo Glaria
    Participant

    The nodes are about 10 meters from the gateway. With distances of the SF12 node >20m the beahviour is the same.

    We have configured ACKed frames, and the ACK downlink is in RX2 window (869.525MHz channel).

    I have checked the firmwares in downloads page link. We are working with a Loriot’s packet-forwarder, no with MultiTech’s original Linux applications.

    Nevertheless, I was asking for the firmware of the mCard, because I suppose that the mCard itself has a MCU connected to the SX1301 Base Band Processor (another microcontroller different from the Conduit’s ARM9). Isn’t it?

    Thanks,

    Guillermo

    #12876
    Guillermo Glaria
    Participant

    Hi,

    I have been studing the basic packet-forwarder implementation of Semtech and patches that MultiTech has added to 1.4.1 version.

    I understand that the mCard is a half-duplex hardware design, and that any TX will loss an RX in progress, but only in the RX2 window moment. The ACK transmitted to the SF7 will be time-on-air of few miliseconds. So the probability of collission between the downlink frame with the SF12 node uplink frame is very low, in 15 seconds about 8% and no 40-50%. This doesn’t explain the high PER of SF12 node.

    Another cause could be that the reception thread and the downlink thread would be blocking processes, or that the packet-forwarder waits to transmit de queued downlink to take other frames from SX1301.

    Are there full-duplex LoRa gateway designs in the Market? Has MultiTech any of those in its portfolio or roadmap?

    Thank you and regards,

    Guillermo

    #12877
    Jason Reiss
    Keymaster

    Have you analyzed the PER when ACK is off?
    Perhaps try SF10 instead of SF12 for another datapoint.

    Thanks,

    Jason

    #12895
    Guillermo Glaria
    Participant

    Dear Jason,

    We have been evaluating our LoRaWAN system during last month. We have obtained results that concern us and we have doubts about reabillity of this LoRa system.

    The system parts are:
    – mDot node with SF12: mbed application based in libmdot library that sends uplink frames every 3 minutes and waits for ACK (reception in RX2 window because the latency in 2G-3G connection is high).
    – mDot node with SF17: mbed application based in libmdot library that sends uplink frames every 15 seconds and waits for ACK.
    – Multi-Tech Conduit gateway with LORIOT gateway binary loriot_multitech_conduit_mCard_USB_1.0.1.tgz.
    – Loriot Network server with comercial account.

    With Loriot’s API we have programmed an application that takes data and saves them in a database. We can calculate the PER (Packet Error Rate) and present graphs with temperature, the gateway’s RSSI (GW RSSI) and the RSSI meassured by the mDot in ACK frames (RSSI). When any frame is lost the RSSI value is presented like 0dBm.

    Test 1: Only mDot SF12 node sending frames.

    In next two graphs you can see the values obtained with this node locating it in different positions during a few days.
    The PER is too high (2-6 %). If the node and the gateway are so near and there is only one mDot transmitter, if LoRa is a modulation with low susceptibility to interference, if the spread factor is SF12 with redundancy and error correction, and the 868 MHz band in my environment is clean…, I would expect lower PER, around 0.1% or less.
    Most of the lost frames sent by mDot are not arriving to the Gateway, so neither to the server. I am sure that the frames are lost between mDot and Gateway, because I have monitored the log of “loriot_multitech_conduit_mCard_USB_1.0.1”, and those frames are not appearing. The problem could reside in mDot, in the gateway’s LoRa mCard or in the Loriot’s packet forwarder executable.

    Another curious behaviour is in the Gateway meassured RSSI with this spread factor SF12. As you can see, the GW RSSI has variations in time, however the RSSI meassured by the node is very stable. It is striking that this behaviour is repetitive with a period of exactly 14 hours in gateway (14 hours noisy and 14 hours stable). Is there any explanation for this behaviour? Any bug in gateway implementation?

    29/04/2016 – 2/05/2016, SF12 PER 2.89% (1500 total frames)
    PER_SF12_1

    29/04/2016 – 6/05/2016, SF12 PER 3.44% (3400 total frames)
    PER_SF12_2

    3/06/2016 – 6/06/2016, SF12 PER 5.5% (1252 total frames)
    PER_SF12_3

    Test 2: Only mDot SF7 node sending frames.

    In next graph you can see the values obtained with this node locating it in different positions during 5 days.
    With SF7 the PER is less than with SF12. But we still think that the PER is too high considering that the distance between node and gateway is very short, less than 10 meters. We expected about 0%.

    10/05/2016 – 14/05/2016, SF7 PER 0.66% (20680 total frames)
    PER_SF7_1

    Test 3: mDot SF7 and mDot SF12 nodes sending frames simultaneously.

    In next two graphs you can see the values obtained with the two nodes during some hours in different days. The RSSI meassured by the two nodes are presented in same graph. The nodes and the gateway are near, less than 10 meters between them.
    The PER is drastically incremented in the two nodes, and much of the SF12 node frames are lost. Can mCard ear two channels at the same time and process two frames? Can Multitech’s or Loriot’s gateway firmware manage frames in different channels simultaneously, and forward them to Loriot server? As we have discussed above, another cause could be that the uplink reception thread and the downlink thread would be blocking processes, or that the packet-forwarder waits to transmit de queued downlink to take other frames from SX1301. Do you know if there have been any mCard firmware update by Multitech? The new SX1301 Calibration firmware could have any relation with this?

    10/05/2016 (7:15 – 16:36), SF7 PER 2.05% (1907 total frames), SF12 PER 57.07% (191 total frames)
    PER_SF12_SF7_1

    17/05/2016 (12:00 – 17:47), SF7 PER 1.96% (1175 total frames), SF12 PER 38.92.07% (167 total frames)
    PER_SF12_SF7_2

    In the next test, I will analyze PER without ACK in SF7 node, and the SF12 node with the ACK on. I will send you the results.

    Thank you and regards,

    Guillermo

    #12897
    Guillermo Glaria
    Participant

    Hi Jason,

    I have found a discussion in the below forum, and they talk about limitations in a LoRaWAN gateway. It could be interesting to understand our behaviour.

    http://forum.thethingsnetwork.org/t/universal-lora-wan-gateway-limitations-because-physics/1749

    Guillermo

    #12898
    Jason Reiss
    Keymaster

    Guillermo,

    Thank you for the detailed analysis.

    The mCard has a spi interface to the SX1301 so the software interfacing with the concentrator chip is running on the main CPU. I will forward your results to the hardware team. The observed 14 hour cycle is most interesting.

    As I have mentioned before we have noticed a decrease in PER when SF12 is used near the gateway. I suspect the increased redundancy is causing interference by multi-path effect and echos. The PER is less affected when run in an anechoic chamber.

    mCard firmware and calibration firmware is loaded by the library.
    Our default software is built from the Semtech gateway and packet forwarder with a few added tweaks. I would be interested in seeing your test scenarios run against the default Multitech software as well.
    http://git.multitech.net/cgi-bin/cgit.cgi/lora_gateway.git/
    https://github.com/Lora-net/packet_forwarder

    Would you be able to also post your results to the open lora forum? It is run by the loriot team and they may be able to provide insight regarding their software functionality.
    http://openlora.com

    Please open a support ticket at support.multitech.com to further discuss your issues.

    Sincerely,

    Jason

    #12899
    Guillermo Glaria
    Participant

    Hi Jason,

    I have done the test with ACK and without ACK.

    SF12 node with confirmed uplink and SF7 node without unconfirmed uplink: The PER in SF12 is 3,6%, 55 packets and 2 lost.

    SF12 and SF7 nodes with confirmed uplinks: The PER in SF12 is 56%, 30 packets and 17 lost.

    My conclusion is that the half-duplex characteristic of the gateway is the responsible of this behaviour. So, the reability of a LoRaWAN network with ACKs or downlink packets is very low and the capacity of a gateway goes down drastically. It could be another reason in Loriot’s firmware, but the prime cause is that gateway doesn’t ear while downlink packets are processing.

    Is there any full-duplex gateway in market?
    I will open the support ticket.

    Thank you and regards,

    Guillermo

    #12900
    Jason Reiss
    Keymaster

    In EU868 LoRaWAN a full-duplex single gateway may not be possible as the gateway will respond on the same frequency in the first rx window and limited amount of spectrum does not allow sufficient frequency separation for RX2. So the downlink TX may still affect the reception of uplink packets as the TX antenna could overwhelm the RX antenna.

    A half-duplex card where the rx/tx path is switched is desired in the EU868 because of this.

    #12922
    Jason Reiss
    Keymaster

    Guillermo,

    I have done similar testing in order to investigate your RSSI results. We noticed a similar periodic drop in RSSI although the period was different. I then conducted the same test inside an anechoic/shielded chamber with filtered AC power and the period drop in RSSI disappeared. This leads me to believe there may be an environmental cause. I also note the SNR value reported by the gateway did not seem affected in these time periods.

    If you have SNR data can you compare as well?

    Thanks,

    Jason

    #12924
    Guillermo Glaria
    Participant

    Hi,

    Yes I have the SNR data and it is stable.

    In my case the RSSI is not dropping, the meassurement is unstable and noisy.

    I had done the test with a laboratory DC power source to discard any interference from the 220Vac power network. The result was the same periodic behaviour.

    If the period would have been in exactly same time, hour and minute, I could think in an environmental cause. 14 hours period is very unusual.

    Which is the period you have detected? Is your testbed with a 2G-3G connection Conduit Gateway?

    Thanks,

    Guillermo

Viewing 14 posts - 1 through 14 (of 14 total)
  • You must be logged in to reply to this topic.