Unhandled error: Timed out waiting for Bootloader response

I am using a Cube cell AB02 but I experienced an issue when compiling any sketch: Initialising bootloader.
[8120] Failed to execute script CubeCellflash
I tried to follow your suggestion (holding user button, holding and releasing reset button, releasing button) but when I try to compile a sketch I get the following error messages:
Initialising bootloader.
Unhandled error: Timed out waiting for Bootloader response.
It seems that the mcu entered the bootloader mode but It could not upload the compiled program.
I have 4 cubecell AB02 and I experienced the same problem with all of them. After trying several times your “user-reset button” procedure I was able to upload my sketch on 2 cubecell Ab02 (with the other 2 there was no way out) but if I want to use these Ab02 I always have to press the user-rst button to upload the sketch. Is there a way to solve this issue ? To me it seems that 4 cubecell broken (or unasable) it is really a bad performance of this product. Thanks for any support

I have just received two new CubeCell Dev-Board V2 modules. The two boards booted OK and played ping-pong but when I tried to load another sketch, one of the boards consistently returned the Bootloader error being described in this thread—the other board loads sketches as expected.

On one occasion I managed to get the problem board to load the ChipID example sketch by holding the USER button then pressing the RST button, but I couldn’t get that procedure to work again, so now that board will only run the ChipID sketch—I cannot reload the Factory_Test sketch, or any other.

If I hold the USER button and press the RST button, the message

bootloader Rev 1.0

appears in the Serial Monitor, but with the exception of that one time when I managed to load the ChipID sketch, I just get the error:

Initialising bootloader.
Unhandled error: Timed out waiting for Bootloader response.

when attempting to upload sketches.

The fact that I have one board that works as expected and another that doesn’t would seem to suggest that the problem, whatever it is, is with the CubeCell board, not anything else like the cable (I’ve tried two different cables) or the host computer hardware or software installation.

I also have two CubeCell Dev-Board V1 and several CubeCell Dev-Board Plus modules and they have all worked as expected ‘out of the box’ (and continue to do so).

I have installed the latest version of the Arduino IDE (2.0.2) on macOS (10.14.5) and downloaded the latest version of the CubeCell software from GitHub.

Any further advice from Heltec (or anyone actually) on how to resolve this issue would be appreciated.

With the help of the information provided in this post, I seem to have found a solution, although I would suggest that there is clearly something wrong with CubeCell boards that display this problem.

If I press the USER button and keep it pressed, then press and release the RST button, then upload the sketch, I can reliably get sketches to load (and run).

If I release the USER button before the upload commences, the upload fails with the message we are all seeing.

If I release the USER button after the upload commences, but before the upload is complete, the subsequent automatic reset to start the sketch doesn’t seem to work. In this case, I have to manually reset the board again (press the RST button) before the sketch will begin execution.

I find that I need to keep the USER button pressed until the sketch has uploaded and commenced execution for things to work as they normally would (and should do, without having to hold down the USER Botton).

I have managed to do this now several times, with several different sketches, and it has worked every time. But if I try to do things as we would normally expect to (i.e. just upload a sketch, without any incantations for button pressing), things fail as previously described.

2 Likes

@UniquePete,

I just discovered the same workaround this morning as well and came here to post my findings, only to see that you’d already updated this thread!

To be clear, here’s what worked for me:

  1. Hold USER
  2. Press RST
  3. Release RST
  4. Program via CubeCellflash.exe -serial “COM3” firmware.cyacd (should also work from Arduino/Platformio, but was attempting to remove those as variables).
  5. Once programming completes, release USER

Board should auto reset and start executing newly flashed binary.

the same behavior with uploading code via VSCode and platformio.

I need hold USR, press RST, release RST, and still hold USR and upload sketh, release USR.
only this way it works.

I would say - it is not very convenient…

1 Like

1.upload sketh
2.hold USER as soon as possible
3.release USER when programming finished
:point_up_2:That works for me

1 Like

Hello, @UniquePete It worked for me without presing the RST button, olye the USER one. Thanks for your post!

Yes it’s working as you suggested in a very simple way. Thanks

how to override this pressing USR and RST buttons? is it possible to upload new firmware without press these keys?

Just for the record, this has only ever been a problem with one of my CubeCell V2 boards. A few months ago, without initially realising which board I was using, I successfully uploaded a sketch to the ‘dud’ board without having to go through the USER/RST process. The board was fine then for a month or so, but then reverted to its old ways (requiring the USER/RST sequence). It would certainly seem that there is a production quality issue that underpins this problem, which in my case now seems to be intermittent.

for example, you have a board inside a outdoor box, which is closed and sealed. and you need update the firmware. for this it possible make some external connector and connect board to phone with USB-OTG and there are a lot of apps which allows to upload binary firmware via UART or USB.
but HOW to press these buttons whilie the box is closed and you dont want to open it? ))
because I dont like the idea to wire 2 buttons outside the box only for this purpose.