[SOLVED] How update LoPy firmware through PySense expansion board

  • Hello again,

    Is possible to update the firmware of a LoPy that it is connected to the PySense expansion board?

    Thaks a lot.

    edit-Conclusion: We need the Expansion Board 2.0 or a USB to TTL adapter (CP2104) to update the LoPy board.

  • @jmarcelino

  • @alvaroBT
    Yes that's it!

  • @jmarcelino
    Now only I have just one CP2102.
    OK, then I use this connection:

    CP2102 RX --> LoPy TX0 (P1)
    CP2102 TX --> LoPy RX0 (P0)
    CP2102 +5V --> LoPy 5V
    CP2102 GND --> LoPy GND



    Best Regards.

  • That module uses 3.3V levels (native to the CP2102 - modules with that chip that do 5V I/O have voltage translation like e.g. extra FET you can easily spot )

    @alvaroBT Connect 5V supply to LoPy 5V and RX/TX as @livius says.

    I'd still recommend the CP2104 and not the CP2102 because the CP2104 (or the new confusingly named CP2102N) will support faster programming rates, but just nitpicking and the CP2102 will do anyway.

  • @alvaroBT
    Rx from CP2102 connect to TX
    Tx from CP2102 to Rx

    And connect 5V to 5V pin on Lopy
    But still do not know what signal level is on Rx/Tx.
    I do not see any jumper to change level on Tx/Rx to 3V3.
    Are you sure it is capable to 3V3 level signals output?

  • @livius
    ok, thanks.
    This is a correct version:


    1. The embedded USB transceiver, without external circuit
    2. It contains the clock circuit, without an external circuit
    3. Reset circuit embedded on electricity
    4. Output voltage regulation can be within 3.3 V voltage
    5. Accord with the requirement of USB2.0 specification
    6. SUSPEND pin support USB state hung
    7. Asynchronous serial data bus controller interface compatible with all shake hands and modulation signal
    8. Support data format for the data of 8, 1, 2, and stop bit parity bit
    9. The connotation of the 512 - byte receive buffer and 512 words

  • @alvaroBT
    No it is not correct
    DO not connect 5V and in the same time 3V3
    And also what is the level of signals from this CP2102 - have it some switch or jumper?
    e.g. this one have jumper
    alt text
    You need 3V3 level on TX/RX pins.
    DTR leave unconnected

  • @jmarcelino
    How do I conect the CP2104? Does the next picture is correct?


    The DTR pin Where I do conect it?

  • @jmarcelino
    Thanks a lot.
    I'm going to buy a USB to TTL adapter (CP2104)

  • @alvaroBT
    As I was saying I don't think the PySense was designed to support updating the firmware on the LoPy, only to give you a Python REPL console.

    The easiest option is to pick up an expansion board: https://www.pycom.io/product/expansion-board-2-0/

    The cheapest is to get a 3.3V USB to TTL serial adapter (I recommend CP2104, plenty on Ebay for about $2-$5 ) and program the LoPy on a breadboard.

  • @jmarcelino
    OK, now works fine with this driver.

    But now, How do I update the LoPy firmware through PySense expansion board?
    When I attach the LoPy to the PySense expansion board to upload the LoPy, How do I conect a jumper cable between G23 and GND? How do I put the LoPy in update mode?
    Thanks a lot.
    Best Regards.

  • Hi Alvaro,

    That driver is only for the PySense firmware update (DFU mode - which you get into by pressing the button at start)

    Outside of DFU mode (i.e. if you don't press the button at start, or after 7 seconds if you do) Windows 10 should pick it up as a COM port without anything else. Then you can use that COM port in Atom.

    If you still use Windows 7 then try the driver posted here https://forum.pycom.io/post/7912

    I haven't been able to update the LoPy firmware using it, I don't think it's possible both because of the driver (USB ACM is very limited) and also because it's extremely awkward to try and connect GND to G23 on the PySense/PyTrack. I suggest the Expansion board instead.

  • Any Idea?
    I installed the Windows PySense Driver from:
    (see this post: https://forum.pycom.io/topic/1320/pytrack-and-pysense-firmware-release-0-0-2/9)
    I updated the PySense firmware to 0.0.2 version:

    Then, How I acces to the LoPy attached to the PySense expansion board for update the LoPy's firmware? And how I connect the LoPy to PC (Atom COM port) for develop inside?


Log in to reply

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