LoraMAC demo not working



  • I've received new Lopy units, and upgraded to latest version, details as:
    (sysname='LoPy', nodename='LoPy', release='1.7.8.b1', version='v1.8.6-724-g2b9ed601 on 2017-07-28', machine='LoPy with ESP32', lorawan='1.0.0')

    I've tried the basic LoraMAC sample and am not receiving any data between the pair of units.
    (wifi is working fine)

    I noticed an old support message, that mentions similar error.
    https://forum.pycom.io/topic/770/lora-receiving-only-b

    Is this bug still existing?

    This is a pain as I'm doing a workshop demo later this week and wanted to use the units for a hands on demo.



  • @bucknall
    Had a couple of hours on it and have all 5 units working. I'm not sure I fully understand the issue, but this is what I noticed:

    I have a wifi router connected to my laptop, that I'm using as a separate AP for the Lopy. If I disconnect the ethernet from the Laptop, this may remove the problem.
    So, I've wondering if there is RF EMC interference in the cables between the router/laptop/lopy.
    Also if I then reboot the Lopy the problem disappears.



  • @johnmcdnz Great to hear! Sometimes it's worth changing external variables for things like RF. I know I've previously had issues with some antennas as well.



  • Sleep on it....

    Alex, and anyone else: I came home this evening to have another crack at this problem. Turned my PC on (Lopy powered from the USB ports). Suddenly I see the 'hello' message!!!!

    What can I say?

    I have each unit on opposite sides of the PC, about 50cm apart. So we can suspect some local RF interference probably.

    Now I can get my workshop demo ready.



  • @bucknall Thanks Alex....
    This code runs on both units, and each just prints b' ' repeatedly.

    from network import LoRa
    import socket
    import time

    #lora = LoRa(mode=LoRa.LORA, frequency=925000000, sf=7)
    lora = LoRa(mode=LoRa.LORA, frequency=925000000, power_mode=LoRa.ALWAYS_ON, tx_power=5, bandwidth=LoRa.BW_250KHZ, sf=7, preamble=8, coding_rate=LoRa.CODING_4_5, tx_iq=False, rx_iq=False)

    s = socket.socket(socket.AF_LORA, socket.SOCK_RAW)
    s.setblocking(False)

    while True:
    # send some data
    s.setblocking(True)
    s.send('Hello')
    print('hello send')

    # get any data received...
    s.setblocking(False)
    data = s.recv(64)
    print(data)
    
    # wait a random amount of time
    time.sleep(machine.rng() & 0x0F)


  • @johnmcdnz Could you please give a snippet of your code? I'll have a look at this now.

    Thanks!



  • @jcaron Yes. I already have two working Lopy from earlier delivery (on different os version) that are working fine.



  • @johnmcdnz Just to be sure, you have connected the antenna to the correct port (the one next to the LED and reset button)?


 

Pycom on Twitter