Using Sigfox and UART 1 causes instability



  • I am suspecting the default UART 1 pins are shared wit the Sigfox pins because when I hook up a NMEA GPS module over UART 1, anything I do with an object created from the Sigfox module may hang the SiPy.
    The simplest way to reproduce is to run

    • sigfox = Sigfox(mode=Sigfox.SIGFOX, rcz=Sigfox.RCZ4)
    • soft reboot (CTRL-D)
    • sigfox = Sigfox(mode=Sigfox.SIGFOX, rcz=Sigfox.RCZ4)
    • hang 100%

    There is no way to reset the sigfox without creating the sigfox object ?

    Anyone with this similar problem ?



  • @jmarcelino
    Yes, my problem is the same as what you highlight, thanks for solving the mystery.
    As an temp solution (for lazy ppl) I can suggest :

    # hard reset if last was a soft reset
    if reset_cause() == 4:
        reset()
    if not 'sigfox' in locals():
        sigfox = Sigfox(mode=Sigfox.SIGFOX, rcz=Sigfox.RCZ4)
    

    Regarding the UART1 activity causing Sigfox instability, I will do more tests later.
    Maybe update the SiPy pinout PDF to include the UART1 pins (like LoPy) as @livius mentioned?



  • @noxqs
    The Sigfox chip on the SiPy doesn't use UART.

    Can you explain a bit better how the GPS is affecting it? If you try the steps you listed without a GPS it works? Trying to understand the relevancy.

    The problem around re-instantiating the Sigfox class after soft reboot is known - see https://forum.pycom.io/topic/941/sipy-crashes-when-attempting-to-initialise-sigfox-twice - try using machine.reset() instead of Ctrl-D



  • From the pinout image above and uart example url link text we lerarn the UART default pinouts:
    UART0 uses RX/TX PIN0 and PIN1
    UART1 uses RX/TX PIN3 and PIN4



  • @noxqs
    interesting that in pinout there are no description of UART
    on the left is for Wipy2

    0_1495263526442_upload-5f1d9437-06de-44fc-b3a2-f0810b2629fd



Pycom on Twitter