Pytrack and LoPy4 - I2C bus error



  • Hi, I'm having some issues with my new LoPy4 and Pytrack.

    I've updated the Pytrack using dfu-util to 0.0.8 (and tried 0.0.7) on Windows and Linux (every time returns "Done!");
    I've used the current and beta (https://beta.pycom.io/downloads/pycom_firmware_update_1.10.0.b0.exe) firmware updaters to install v1.14.0.b1:

    0_1516224704704_lopy4.PNG

    I've cleared the flash "os.mkfs('/flash')" and downloaded the latest files from https://github.com/pycom/pycom-libraries (tweaked pycoproc.py on line 109/110 to "..as e: raise Exception('Board not detected: {}'.format(e))")
    When I run an i2c scan like this:

    0_1516224928869_ef6d5c3e-507d-4864-80c0-d93b07d4ae35-image.png

    I get:

    0_1516225045489_641eca48-44c1-4af1-959f-70a1c6f4a369-image.png

    When I try and get the Pytrack firmware version, I get a "I2C bus error":

    0_1516225264370_2e68255e-ccc7-4249-9ad2-f6864c45b776-image.png

    Any help/guidance? I noted that v1.14.0.b1 was only release this morning, could this be an issue with that firmware? This is the first time I've attempted to use the devices and not sure how to now downgrade to a previous version to check.

    Many thanks in advance,
    Ollie



  • address 0x08 in the PIC microcontroller on the Pytrack/sense so it is supposed to be there. When I tested this out on a LoPy4 with the latest firmware and a Pytrack with the latest firmware it worked fine the first time. So are you completely unable to talk to the PIC without errors?



  • @seb thanks.
    Did you manage to replicate this issue with the 0x08 address with a LoPy4 and Pytrack?
    I'm looking to use the battery level functionality.
    Could it be a board issue?



  • I just checked with a colleague, there is a PIC on the pysense/pytrack boards for handling deepsleep etc and its connected via i2c on address 0x08



  • @seb thanks, that was also my next thought!

    GPS and accel. is working:

    0_1516287172753_dcb4691e-243d-45cd-ab96-8e039011963a-image.png

    0_1516287359317_06bf51ad-de34-45d0-b21f-9ab2c9f2e42a-image.png

    What is on the "8" address..?



  • Could you try accessing the accelerometer that is also on the Pytrack? This would help narrow down if the error is specific to the GPS module or the whole I2C bus. The scan is finding the correct addresses (16 and 30) but its also sometimes finding something at 8. I am now going to try a LoPy4 with a known working pytrack to see if I encounter a similar issue.

    Edit: I just tested it successfully using a LoPy4 and a Pytrack.



  • Just downgraded to v1.13.0.b1 but still getting the same I2C bus error.. :/
    Any ideas? DOA device..?

    Edit: for anyone else wanting to downgrade..
    pycom-fwtool-cli.exe -t "LoPy4_868-1.13.0.b1.tar.gz" -p COM9 -s 115200 flash



  • Hi,

    It seems like there is an issue with I2C on your device. I will report this to the rest of the team to see if this is a wider problem with the LoPy4. Its worth trying a downgrade, the instructions on how to do this can be found here: https://forum.pycom.io/topic/517/downgrading-firmware-advanced-users/2

    You can get the previous version of the LoPy4 firmware here
    868MHz: https://software.pycom.io/downloads/LoPy4_868-1.13.0.b1.tar.gz
    915MHz: https://software.pycom.io/downloads/LoPy4_915-1.13.0.b1.tar.gz


 

Pycom on Twitter