Nano33 BLE Sense Will Not Allow Flash

Hello,

I have bought a Nano33 BLE Sense Rev2 and I am unable to flash. I know there are a lot of posts on this already but I cannot get any of the “fixes” to work.

I compile and try to flash the unit with a bare-bones baseline project (just empty setup and loop functions) and the flash fails.

Previous to flashing, I see the Nano on COM3 and pin13 LED is flashing like normal.

During the flash, we get this:

Performing 1200-bps touch reset on serial port COM3
Waiting for upload port...

At which point the Nano enter bootloader-mode (the LED slowly ramps up and down, like double-tapping the reset button). At this point, COM3 is lost and I do not see any other ports available.

I hit the reset button and then see this:

Upload port found on COM3

But then the software hangs up and does not flash anything - I have to manually kill the operation.

Any Ideas?

Correction - when the system attempts to flash, a different COM port (COM4) is now the Nano’s COM port.

Update:

I am able to flash now, however only when the board is in bootlader-mode.

Previously I was not able to flash in bootloader-mode, I am not sure why I can now.

The question remains - How can I flash this thing “normally” or will I always need to flash using bootloader-mode?

Thank You

My Nano33 BLE also has a mind of its own. Sometimes the upload port is managed successfully by the system and other times I need to put the board in programming mode and manually select the port. I don't know if it is a windows issue, or a board issue.

My Nano 33 BLE is not inaccessible so I have not worked very hard to resolve the issue, and its something I just live with.

Hi @dimitri.

This result is expected. As you noted, the "1200-bps touch reset" puts the board into the "bootloader mode" that is required for it to accept a sketch upload. When you press the reset button while the board is in bootloader mode, it exits the bootloader mode and goes into the normal application mode where it runs the previously loaded sketch program. The board can not accept uploads while in the application mode, so the upload is expected to fail under these conditions.

The upload process has the following sequence for the Nano 33 BLE board:

  1. Perform "1200-bps touch".
  2. Wait for a new serial port to appear. If this happens, use that port for the upload. If no new port appears after some seconds fall back to attempting the upload to the originally selected port (which is the correct thing to do in the case where the user has manually put the board into bootloader mode before starting the upload).
  3. Flash the binary via the chosen serial port.

The reason you see the "Upload port found on COM3" message after you press the reset button is because the reset causes the port of the board to change. So COM3 is chosen as the port for the upload.

What is unexpected is that the upload system is not selecting the port that appears after the board is put into the bootloader mode by the "1200-bps touch". We would expect this if for some reason the board was not going into the bootloader mode, but the pulsing LED proves that the "1200-bps touch" did indeed put the board into that mode. Unfortunately I don't have any explanation for what might cause this.