How to get the GPS Unit NEO-M8 working with the Core 2



  • Hi everyone, i'm new to the M5Stack. I'm trying to get the GPS Module on my Core 2 running. The application (i guess at least) crashes and restarts the unit.

    From the Unit Part of UI Flow my GPS is not listed there, so i took the only GPS module available.

    Here is the software:

    0_1643356813856_Screenshot 2022-01-28 at 08.48.46.png

    And this is the hardware:
    0_1643357018489_IMG_5679.jpeg
    0_1643357027233_IMG_5678.jpeg

    Hope someone could give me a Hand to start in this world ;)

    Btw. i'm quite familiar with python. Any Solution in Python is welcome too.



  • Hello @tspycher

    in the M5Stack world there are modules and units. Modules are stacked under the cores, whereas units are connected via Groove cable.

    The GPS device you have (judging from the posted picture) is a module and therefore you'll find its blocks under Modules - GPS.

    Thanks
    Felix



  • Hi @felmue
    Thank you for your reply. Found the GPS Module thanks to your help! But i still don't get it running. As soon as i setup the GPS interface the device crashes. This is my code:

    from m5stack import *
    from m5stack_ui import *
    from uiflow import *
    import module
    
    screen = M5Screen()
    screen.clean_screen()
    screen.set_screen_bg_color(0xffffff)
    
    try:
      gps = module.get(module.GPS, (16, 17))
    except:
      pass
    label = M5Label('Loading', x=107, y=113, color=0xff0000, font=FONT_MONT_14, parent=None)
    

    The numbers RX/TX Numbers 16/17 i've got from the board and the documentation. With this code the device keeps crashing without any further error message.



  • Hello @tspycher

    some GPIOs on the M5 bus have changed between M5Stack (Basic, Go, Fire) and M5Core2. I've mad a table a while ago which lists the differences.

    In short M5Core2 uses GPIO16 and GPIO17 internally for PSRAM - that is why it doesn't work and crashes. Try GPIO13 and GPIO14 instead.

    Note: the GPIO numbers printed on most (if not all) modules are the GPIO numbers used for when stacked to an M5Stack (Basic, Go, Fire). If the module is stacked to an M5Core2 you'll need to do some translation.

    Edit: I've just tried the UiFlow GPS blocks myself - even when selecting M5Core2 the selected default GPIOs are incorrect. I guess that is something the M5Stack engineers should fix. (Posted here.)

    Thanks
    Felix



  • @felmue said in How to get the GPS Unit NEO-M8 working with the Core 2:

    you made my day!!!! Thank you so much! Now i'm only lacking of signal :-P But a visit on the balcony should solve that issue too...