I had successfully updated the CircuitPython on my ItsyBitsyM4 Express. I now carries the new version.
Afterwards I read the suggestion to also update the UF2-bootloader from version 2.0 to version 3.14.
> I downloaded update-bootloader-itsymitsy_m4-v3.14.0.uf2
> I double-pressed the Reset-button on the board and the Windows FileExplorer changed the drivename from CIRCUTPY to ITSYM4BOOT.
> The I drag the file in the windows Explorer to that boot-drive.
It took a little while, an LED was pink, then the board restarted and now a green LED glows. OK
But the instance in the WindowsFileExplorer stays ITSYM4BOOT and does not go back to CIRCUTPY.
I tried eject in the WindowsFileExplorer or press the Reset button - no success.
How should I proceed?
ITSYM4BOOT stays after updating bootloader - instead of returning to CIRCUITPY
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- HansH
- Posts: 117
- Joined: Wed Apr 14, 2021 2:49 pm
- adafruit_support_carter
- Posts: 29483
- Joined: Tue Nov 29, 2016 2:45 pm
Re: ITSYM4BOOT stays after updating bootloader - instead of returning to CIRCUITPY
Just need to reinstall CircuitPython.
Download CP firmware UF2:
https://circuitpython.org/board/itsybitsy_m4_express/
and drag to ITSYM4BOOT folder.
Just missing the last step (sentence) in the bootloader update process.
Download CP firmware UF2:
https://circuitpython.org/board/itsybitsy_m4_express/
and drag to ITSYM4BOOT folder.
Just missing the last step (sentence) in the bootloader update process.
To update, first save the contents of CIRCUITPY, just in case. Then double-click the reset button to show the BOOT drive. Drag the update-bootloader .uf2 file to the BOOT drive. Wait a few tens of seconds for the bootloader to update; the BOOT drive will reappear. After you update, check INFO_UF2.TXT to verify that the bootloader version has been updated. Then you will need to reload CircuitPython.
- HansH
- Posts: 117
- Joined: Wed Apr 14, 2021 2:49 pm
Re: ITSYM4BOOT stays after updating bootloader - instead of returning to CIRCUITPY
@adafruit_support_carter - Thank You
Perfect! That worked. I didn't dare to do so on my own, as I didn't what state the controller was in.
Could You shortly mention, what is the physical difference between both states? Are just different area of the Flash-memory accessed?
And another question: There are different language versions for the python-update. Where do they come into effect?
Perfect! That worked. I didn't dare to do so on my own, as I didn't what state the controller was in.
Could You shortly mention, what is the physical difference between both states? Are just different area of the Flash-memory accessed?
And another question: There are different language versions for the python-update. Where do they come into effect?
- adafruit_support_carter
- Posts: 29483
- Joined: Tue Nov 29, 2016 2:45 pm
Re: ITSYM4BOOT stays after updating bootloader - instead of returning to CIRCUITPY
From the point of view of the Itsy, the UF2 bootloader and the CircuitPython firmware are both just pieces of software (firmware). On power up or reset, the UF2 bootloader runs first, and in normal cases, the UF2 bootloader quickly jumps to running whatever is loaded after it in memory. This could be anything. If using Arduino, it'd be an Arduino sketch. For CircuitPython, it's the CircuitPython firmware.
The bootloader update process wipes out any installed firmware and ends with a board with nothing but an updated bootloader installed on it.
Each language specific firmware is a separate stand alone CircuitPython build. The low level details of how that work would be buried in the circuitpython firmware source code:
https://github.com/adafruit/circuitpython
But for end use - pick the firmware UF2 for whichever language you want and install that UF2.
The bootloader update process wipes out any installed firmware and ends with a board with nothing but an updated bootloader installed on it.
Each language specific firmware is a separate stand alone CircuitPython build. The low level details of how that work would be buried in the circuitpython firmware source code:
https://github.com/adafruit/circuitpython
But for end use - pick the firmware UF2 for whichever language you want and install that UF2.
Please be positive and constructive with your questions and comments.