Trouble with FiPy code not working

  • Hello,

    I have a some new FiPys that I am trying to use the same way as I used the LoPy, therefore I am using the exact same code to run the FiPy as I did the LoPy node. For some reason the FiPy executes the code once and never repeats it like the lopy node does.

    I feel like there is something obvious that I am missing but I am yet to find it, any tips would be much appreciated.


  • @mj Very similar, the biggest difference I found is the Run/Upload/Download buttons are down the bottom left and I guess it all looks slightly different ofcourse.

  • @dylan Is it Visual Studio code work as the same as the Atom? The language using also the same?

  • @mj I've tried lots of different things to get Atom working again with no luck, I just didn't even realize Visual studio was an option, I'm liking it so far.

  • @dylan Thanks for sharing but i am using the Atom not the Visual Studio. But until now the Pymakr still cannot installed.

  • @mj
    Not sure if this will help but I just downloaded the VScode and got it running so I can do all I need to do in that.

  • @ralph Is the Pymakr version 1.2.10 compatible for the Atom 1.25.0 already? As until now i am unable to install the Pymakr 1.2.10 and show me failed to search for the Pymakr package " connect ETIMEDOUT". May i know how can i solve this? Thank you.

  • @seb
    The code that worked on LoPy but not on FiPy. Worth noting that the LoPy was 1.11.0.b1 which is the version I downgraded the FiPy too.

    Also how do I make the code look all neat in posts like I've seen elsewhere?

    from network import LoRa
    from pytrack import Pytrack
    from coords import Coords
    from CayenneLPP import CayenneLPP
    from L76GNSS import L76GNSS
    from LIS2HH12 import LIS2HH12
    import machine
    from machine import Pin
    from machine import I2C
    import socket
    import binascii
    import struct
    import time
    import array

    Initialize LoRa in LORAWAN mode.

    lora = LoRa(mode=LoRa.LORAWAN, public=1, adr=0, tx_retries=0)

    Remove default channels

    dev_addr = struct.unpack(">l", binascii.unhexlify('269928E2'.replace(' ','')))[0]
    nwk_swkey = binascii.unhexlify('7A7E7000000F93BD1BB4693127C374FE'.replace(' ',''))
    app_swkey = binascii.unhexlify('F93BD1BBBA53BBF3B4096A72115E9F5D'.replace(' ',''))

    for index in range(0, 72):

    lora.add_channel(index, frequency=918000000, dr_min=0, dr_max=3)

    lora.join(activation=LoRa.ABP, auth=(dev_addr, nwk_swkey, app_swkey), timeout=0)

    wait until the module has joined the network

    while not lora.has_joined():

    remove all the non-default channels

    for i in range(8, 15):

    create a LoRa socket

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

    set the LoRaWAN data rate

    s.setsockopt(socket.SOL_LORA, socket.SO_DR, 3)

    make the socket blocking

    while lora.has_joined():
    acc = LIS2HH12()
    pitch = acc.pitch()
    roll = acc.roll()
    py = Pytrack()
    battery = py.read_battery_voltage()
    battery = battery * 10
    cayenne = CayenneLPP()
    l76 = L76GNSS(py, timeout=10)
    lat1 = str(l76.lattitude())
    lon1 = l76.longitude()
    if len(lat1) > 5:
    lona = lat1
    lata = lon1
    meta = 9500
    lat = float(lona)
    lon = float(lata)
    met = float(meta)
    cayenne.add_gps(4, lat, lon, met)
    cayenne.add_temperature(3, battery)

    if len(lat1) < 5:
        cayenne = CayenneLPP()
        cayenne.add_temperature(3, battery)
        print('No fix')
    rx = s.recv(256)
    if rx:

  • @ralph Ok Cool, it all worked on the home computer so I managed to get a bit of work done over the weekend anyway.

    @seb No problem, I'll put both here next post.

  • Global Moderator

    @Dylan Sorry about this, but Pymakr has some issues with Atom 1.25. If you are on OSX, update to todays v1.2.10 of Pymakr. For windows and linux we are still working on a fix.

  • administrators

    Can you share the code that didnt work until you upgraded? If you dont want to share publicly you can email it to me:

    As for the pymakr issue, I will pass this along to that team, they will be in touch soon.

  • Not sure if coincidence or not, but straight after downgrading the firmware I get the following error in atom:
    Failed to load the Pymakr package
    Cannot find module 'serialport'

    I've tried re-installing many times to no success, I'm just going to Filezilla what I need to test over the weekend and let it be a Monday problem, but if you have any ideas whats going on there, any help would be appreciated,

  • Downgrading the firmware has solved the problem

  • @dylan Looks like it isn't waking up from time.sleep or machine.deepsleep, I'll give that a google and see how it goes.

  • @livius I am using the sample code from the LoRaWAN nano-gateway docs for the node with ABP.

  • @dylan
    without the sample i suppose no one can predict the reason

Log in to reply

Pycom on Twitter

Looks like your connection to Pycom Forum was lost, please wait while we try to reconnect.