• Hi @jm,

    What are the differences between the two switches? Do you can explain that for me?

    BTN1 and BTN? Absolutely nothing. They point to the same pin - BTN1 = BTN = C13.

    I'm sorry this has all been such a nightmare for you, but it sounds like there's actually a problem with your board and maybe C13 isn't actually connected to the chip itself.

    This is the first time I've seen this in ~7000 Pico boards shipped.

    digitalRead(BTN) should return 1 when the button is pressed, on any firmware version. And since you checked the voltage on C13 changes I can only assume there is some issue with the STM32 chip.

    I'll send you an email in a second and we'll work out how to get you a new board where the button works!

  • @jm, in post #6 [EDIT: #3] - within the very same day you started this conversation - I had suggested to test for that specific case. I did never notice the results of that test. Did I miss it on long way?

    EDIT: #3 is meant to be referred to. See #30.

  • Hi, Gordon,
    thank you for your help.

  • Yes, I made this test in #7. During the plugin the intervall of blinking never changed (normal programmingmode). If I understand correctly, the LED should flash briefly to indicate that the bootloader is enabled and this has not happened.

  • Sorry, my mistake... I meant to refer to #3. Because nothing came back immediately, I went a level lower to see if your Pico is still alive... and that was #6 and you answered right away in #7.

    #3 was to test wether the switch is connected and working.

  • Mon 2018.10.08

    'During the plugin the intervall of blinking never changed '

    @jm is it at all possible what is witnessed during the flash process is being confused with what will be displayed when just plugging in the device? The above line seems to conflict with what I understood the issue you had was.

  • If I understand correctly, the LED should flash briefly to indicate that the bootloader is enabled and this has not happened.

    The LED should 'pulse' between red and green when in bootloader mode. Have you ever managed to get your Pico so that the Green LED lights?

  • ...too many cooks... but I give it a try again about the flashings and blinkings:

    1. just inserting the PICO into USB makes PICO blink red briefly once - not in boot loader mode, not connected (yet), but connectable
    2. inserting with button pressed and held into USB makes PICO pulse green and red alternately - in boot loader mode, not connected (yet), but connectable
    3. uploading (and running) the line of code of post #3 turns the red LED on when pressing the button, and off, when button is released / not pressed (anymore).

    #1. is used for checking if PICO is still alive (for the most part)
    #2. is used to go into update of firmware - boot loader mode
    #3. is used to test if button works and is recognized by PICO

  • Tank for all advices.
    I've done all these tests:

    1. I can program the pico. The connection to the IDE is ok.
    2. The alternate flashing of the two ED I could not watch. Thus, the boot loader could not be activated.
    3. I did the detection test of the button with "digitalRead (BTN1)". There was always only level "0", the test with "var iid = setInterval (function () {LED1.write (BTN1.read ());}, 100)" did not produce any result - the flashing of the LED did not change.

  • @jm, that confirms what @Gordon diagnosed (and directed action): the button is not connected to the pin or the pin is not connected to the die inside the MC IC. For sure a defect, and with your measurements in post #16, we can confirm that there is a disconnect inside the MC IC between pin PC13 and die (bonding broken) or the GPIO pin appliance on the die is defect. The PICO though was originally programmed, but in low level mode where everything is erased and rewritten, including the bootloader. This obviously worked, because how else would 1v93 to come on it... ;-)

    I can now understand that you took any info and any measure to overcome this issue.

    Thank you a lot for sticking with us for such a long time for getting this to a resolution.

  • Tue 2018.10.09

    I'm with @Gordon on this, as requested in #32 above, would you respond with what this does please:

    digitalWrite(LED2, 1);
    and after a brief period
    digitalWrite(LED2, 0);
    digitalWrite(LED1, 1);

    ref: http://www.espruino.com/Pico+Buttons

    I'm bewildered with how the LEDs sequence in one manner, the very instance that indicates the flash process is underway, which implies the button press had to have been recognized. The board can not be stuck in bootloader mode, as it has been indicated that coding is possible. #34

    It is also not clear as to whether the Green LED has ever been seen illuminated. Both of us would like confirmation that the LEDs do in fact illuminate on command.

    Then attempt
    setInterval(function() {
    digitalWrite(LED2, digitalRead(BTN));
    }, 20);

    and press the button with fingernail several times. What is witnessed?

    Ref #25 are you willing/able to provide a short video on the cable connecting process during flash?

  • Can take it upfront: GREEN LED will not go on... as did not the RED one as @jm already confirmed. Even if the green LED would be dead, the RED one would still pulse... which it never did. None of the button driven on and off of the working RED LED1 showed any change in behavior. RED LED1 gives only a single blink on power up.

    When powered on, Espruino checks as some of the first things whether button BTN, BTN1 is pressed and C13 is H (all the same)... and if it is, it goes to boot loader mode, and if not, it resumes normal operation. Pressing and holding the button afterwards will never get it back to the state where boot loader mode can be entered (not even by code, I expect, to prevent erroneous, running away code could push it into this - for the application - dead mode).

  • @jm did you get my email? If you could respond (or just email/message me personally if you didn't get it) with your address and whether you want a pinned or unpinned Pico I'll get a new board sent out to you.

    No need to enter or test any other commands.

    @Robin I think it's pretty clear at this point that the button on @jm's board is broken somehow, and it looks like it's in a way that isn't easily fixable (the actual connection to the chip). At this point it's not worth wasting any more of his time trying to debug it - I'll just send him a new board.

    @jm you can probably still update the software on your Pico using the steps outlined at https://www.espruino.com/Pico#advanced-r­eflashing along with the ST DFU tool rather than the Web IDE. However that's not going to magically make the button work. Since it's obviously a hardware fault I'm happy to just replace your board.

  • Just a quick update on this: The board was definitely defective.

    @jm now has a new board and it works great.

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

My pico ist unable to activate the bootloader to upgrade the firmware 1.93 to 1.99

Posted by Avatar for jm @jm

Actions