Giter Site home page Giter Site logo

Cant flash ESP32-S2 about probe-rs HOT 14 CLOSED

SergioGasquez avatar SergioGasquez commented on May 27, 2024 1
Cant flash ESP32-S2

from probe-rs.

Comments (14)

SergioGasquez avatar SergioGasquez commented on May 27, 2024 1

As I said, that is not supposed to be pin 2, but pin 42 :) Your wires are shifted by one position (should be 39-42).

🤡 <- This is me. Sorry for wasting your time and thanks! Also, what an awful pinout image

from probe-rs.

bugadani avatar bugadani commented on May 27, 2024

Sorry @SergioGasquez but I can't immediately reproduce this issue:

     Running `probe-rs run --chip esp32s2 target\xtensa-esp32s2-none-elf\debug\probe-s2`
      Erasing ✔ [00:00:00] [###################################################################################################################################################################] 192.00 KiB/192.00 KiB @ 259.93 KiB/s (eta 0s )
  Programming ✔ [00:00:01] [######################################################################################################################################################################] 32.89 KiB/32.89 KiB @ 24.53 KiB/s (eta 0s )
    Finished in 2.239s

My setup is somewhat different, though:

  • I'm using the same devkit
  • I'm using an FT232H, as opposed to an FT2232H. Both should work but I had the 232H wired up to my S2 already.
  • It seems my pinout is different than what you use:
    image

Can you verify that your S2 is wired up correctly?

from probe-rs.

SergioGasquez avatar SergioGasquez commented on May 27, 2024

My connections seem to be right. Did some more testing:

probe-s2 on  main [?] is 📦 v0.1.0 via 🦀 v1.77.0-nightly
❯ cargo r
    Finished dev [optimized + debuginfo] target(s) in 0.11s
     Running `probe-rs run --chip esp32s2 target/xtensa-esp32s2-none-elf/debug/probe-s2`
ERROR probe_rs::probe::common: Fewer IRs detected than TAPs
Error: Connecting to the chip was unsuccessful.

Caused by:
    0: An error with the usage of the probe occurred
    1: Invalid IR scan chain
    2: Invalid IR scan chain

probe-s2 on  main [?] is 📦 v0.1.0 via 🦀 v1.77.0-nightly
❯ espflash erase-flash
[2024-03-22T17:12:48Z INFO ] Serial port: '/dev/ttyUSB2'
[2024-03-22T17:12:48Z INFO ] Connecting...
[2024-03-22T17:12:48Z INFO ] Using flash stub
[2024-03-22T17:12:49Z WARN ] Setting baud rate higher than 115,200 can cause issues
[2024-03-22T17:12:49Z INFO ] Erasing Flash...
[2024-03-22T17:13:07Z INFO ] Flash has been erased!

probe-s2 on  main [?] is 📦 v0.1.0 via 🦀 v1.77.0-nightly took 19s
❯ cargo r
    Finished dev [optimized + debuginfo] target(s) in 0.03s
     Running `probe-rs run --chip esp32s2 target/xtensa-esp32s2-none-elf/debug/probe-s2`
ERROR probe_rs::probe::common: Truncated IDCODE: BitSlice<u8, bitvec::order::Lsb0> { addr: 0x6486eb0eab1c, head: 011, bits: 1D } [01, 01, 01, 00, 01, 01, 01, 01, 00, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 01, 00, 01, 01]
Error: Connecting to the chip was unsuccessful.

Caused by:
    0: An error with the usage of the probe occurred
    1: Invalid IDCODE
    2: Invalid IDCODE

Also encountered this error in other iteration:

probe-s2 on  main [?] is 📦 v0.1.0 via 🦀 v1.77.0-nightly
❯ espflash erase-flash
[2024-03-22T17:15:20Z INFO ] Serial port: '/dev/ttyUSB2'
[2024-03-22T17:15:20Z INFO ] Connecting...
[2024-03-22T17:15:20Z INFO ] Using flash stub
[2024-03-22T17:15:21Z WARN ] Setting baud rate higher than 115,200 can cause issues
[2024-03-22T17:15:21Z INFO ] Erasing Flash...
[2024-03-22T17:15:39Z INFO ] Flash has been erased!

probe-s2 on  main [?] is 📦 v0.1.0 via 🦀 v1.77.0-nightly took 19s
❯ cargo r
    Finished dev [optimized + debuginfo] target(s) in 0.03s
     Running `probe-rs run --chip esp32s2 target/xtensa-esp32s2-none-elf/debug/probe-s2`
ERROR probe_rs::probe::common: Truncated IDCODE: BitSlice<u8, bitvec::order::Lsb0> { addr: 0x56de072cea8f, head: 111, bits: 01 } [01]
Error: Connecting to the chip was unsuccessful.

Caused by:
    0: An error with the usage of the probe occurred
    1: Invalid IDCODE
    2: Invalid IDCODE

I'm using an FT232H, as opposed to an FT2232H. Both should work but I had the 232H wired up to my S2 already.

Just to confirm, mine is FT2232H

It seems my pinout is different than what you use

I think they are the same, Im referring to the pin number on the devkit, not the GPIO number.

from probe-rs.

bugadani avatar bugadani commented on May 27, 2024
❯ espflash erase-flash
[2024-03-22T17:25:49Z INFO ] 🚀 A new version of espflash is available: v3.0.0
[2024-03-22T17:25:49Z INFO ] Serial port: 'COM46'
[2024-03-22T17:25:49Z INFO ] Connecting...
[2024-03-22T17:25:49Z INFO ] Using flash stub
[2024-03-22T17:25:51Z INFO ] Erasing Flash...

❯ cargo run
    Finished dev [optimized + debuginfo] target(s) in 0.44s
     Running `probe-rs run --chip esp32s2 target\xtensa-esp32s2-none-elf\debug\probe-s2`
      Erasing ✔ [00:00:00] [###################################################################################################################################################################] 192.00 KiB/192.00 KiB @ 274.43 KiB/s (eta 0s )
  Programming ✔ [00:00:01] [######################################################################################################################################################################] 32.89 KiB/32.89 KiB @ 18.10 KiB/s (eta 0s )
    Finished in 2.678s
 WARN probe_rs::util::rtt: No RTT header info was present in the ELF file. Does your firmware run RTT?
 WARN probe_rs::session: Could not clear all hardware breakpoints: An Xtensa specific error occurred.

Caused by:
    0: Xtensa debug module error
    1: Error while accessing register
    2: Unexpected value
 WARN probe_rs::session: Failed to deconfigure device during shutdown: An Xtensa specific error occurred.

Caused by:
    0: Xtensa debug module error
    1: Error while accessing register
    2: Unexpected value
Error: An Xtensa specific error occurred.

Caused by:
    0: Xtensa debug module error
    1: Error while accessing register
    2: Unexpected value
error: process didn't exit successfully: `probe-rs run --chip esp32s2 target\xtensa-esp32s2-none-elf\debug\probe-s2` (exit code: 1)

Apart from the random errors after flashing my S2 works as expected. I'd ask you to triple check your cabling, TMS on pin 2 is definitely not correct. This devkit has a slightly misleading silkscreen where the labels are under the pins as opposed to above them as one would expect.

from probe-rs.

SergioGasquez avatar SergioGasquez commented on May 27, 2024

Wires:

  • Red: 5V
  • Orange: GND
  • Blue: TMS
  • Purple: TCK
  • Grey: TDO
  • White: TDI

ESP-Prog
ESP32-S2

TMS on pin 2 is definitely not correct.

Im using pin number 2 from devkit (GPIO 42) as according to:
image

Not sure if Im missing something, hope is not my late friday brain doing some magic

from probe-rs.

bugadani avatar bugadani commented on May 27, 2024

Im using pin number 2 from devkit (GPIO 42) as according to:

As I said, that is not supposed to be pin 2, but pin 42 :) Your wires are shifted by one position (should be 39-42). For some reason this pin chart reads a lot more confusing than it should be.

from probe-rs.

bugadani avatar bugadani commented on May 27, 2024

I'm glad this turned out to be an easy issue. I do wonder what monsters we'll run into the current Xtensa implementation though, so please keep reporting anything you find! :)

from probe-rs.

SergioGasquez avatar SergioGasquez commented on May 27, 2024

I do wonder what monsters we'll run into the current Xtensa implementation though, so please keep reporting anything you find! :)

S3 has been working like a charm for me, ESP32 and ESP32-S2 not that much, currently having some issues with the test branch: #2292 (comment)

from probe-rs.

juliankrieger avatar juliankrieger commented on May 27, 2024

@SergioGasquez Would you share your config for your S3? I'm struggling getting the chip to work, with probe-rs either failing because of a too large of a binary or other errors.

from probe-rs.

SergioGasquez avatar SergioGasquez commented on May 27, 2024

Would you share your config for your S3?

No real setup required, as S3 has a builtin usb-serial/jtag. I was just connecting the devkit (ESP32-S3-DevKitC-1) via USB port.

from probe-rs.

juliankrieger avatar juliankrieger commented on May 27, 2024

@SergioGasquez are you just using probe-rs run --chip es32s3? What does your launch.json look like?

from probe-rs.

SergioGasquez avatar SergioGasquez commented on May 27, 2024

are you just using probe-rs run --chip es32s3?

More or less, my goal was to run some tests using embedded-test, so I was not using any launch.json, but something like https://docs.esp-rs.org/book/tooling/debugging/probe-rs.html#example-launchjson should do the trick

from probe-rs.

juliankrieger avatar juliankrieger commented on May 27, 2024

Have you encountered any partition table issues, or the flash algorithm reporting mismatches?

from probe-rs.

bugadani avatar bugadani commented on May 27, 2024

S3 should work just fine, except for certain variants that have Octal flash ICs. If it's not working for you @jukrieger please open a new issue with as much detail as you can (specific ESP module, specific commands, maybe a reproducer project I can try to flash).

from probe-rs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.