Teensy 4.0 & 4.1
Re: Teensy 4.0 & 4.1
JFlashExe complained about a missing license, JFlashLiteExe worked. So it's time to get our bootloader ready.
Re: Teensy 4.0 & 4.1
I know I know
When booting from QSPI it should already work with the Teensy40/41 bootloader because the 105x and 106x have the same FlexRAM default config if I am not mistaken. HyperFlash integration will take some more time due to different sector size etc.
Re: Teensy 4.0 & 4.1
Anyhow. Tonight I will integrate 1052 QSPI into the bootloader and then we can test.
Re: Teensy 4.0 & 4.1
The Teensy 4.1 bootloader starts on that device. Only the target cannot be built yet since the matching firmware loader spec file is missing.
Edit: Solved
Edit: Solved
Re: Teensy 4.0 & 4.1
I have added board files for the ARCH MIX board to https://github.com/robert-hh/micropytho ... t_combined.
Documentation on how devices are assigned to Pins can be found in https://github.com/robert-hh/micropytho ... imxrt_docs.
Edit: Updated - I2C assignment changed.
Documentation on how devices are assigned to Pins can be found in https://github.com/robert-hh/micropytho ... imxrt_docs.
Edit: Updated - I2C assignment changed.
Re: Teensy 4.0 & 4.1
I tested more the RT1050/RT1060 serial downloader feature, and I can say it is really easy and simple to use.
The firmware can be uploaded to flash without the need for J-link (or similar) programmer/debugger, just over the USB HID connection provided on practically every board (usually marked USB-OTG).
The only thing one must do is to place the MCU in serial downloader mode which is easy to do as practically all board have the mode switches provided.
To enter serial download mode the pin GPIO_AD_B0_05 has to be set high, all other mode switches low.
I've testes on Arch Mix and SomLabs boards and it is working without issues. On MIMXRT1050-EVK (not tested), switch SW7 should be used.
The UART1_RXD (GPIO_AD_B0_13) must also be pulled to 3.3V. On Arch Mix it must be pulled high by a jumper, On SomLabs board and MIMXRT1050-EVK it is already pulled high on board.
I've prepared a simple script to upload the built MicroPython firmware (firmware.bin) to the board. It can be simply used by executing:
It is the Linux script, but the similar script (batch file) could be easily prepared also for Windows
I've packed the script and all needed files (only 3) into an archive which you can download and test.
The firmware can be uploaded to flash without the need for J-link (or similar) programmer/debugger, just over the USB HID connection provided on practically every board (usually marked USB-OTG).
The only thing one must do is to place the MCU in serial downloader mode which is easy to do as practically all board have the mode switches provided.
To enter serial download mode the pin GPIO_AD_B0_05 has to be set high, all other mode switches low.
I've testes on Arch Mix and SomLabs boards and it is working without issues. On MIMXRT1050-EVK (not tested), switch SW7 should be used.
The UART1_RXD (GPIO_AD_B0_13) must also be pulled to 3.3V. On Arch Mix it must be pulled high by a jumper, On SomLabs board and MIMXRT1050-EVK it is already pulled high on board.
I've prepared a simple script to upload the built MicroPython firmware (firmware.bin) to the board. It can be simply used by executing:
Code: Select all
./FLASH.sh <path_to_firmware.bin>
I've packed the script and all needed files (only 3) into an archive which you can download and test.
Code: Select all
boris@UbuntuMate:/home/LoBo2_Razno/IMXRT10xx/FWdownloader$ ./FLASH.sh /home/LoBo2_Razno/IMXRT10xx/micropython/ports/mimxrt/build-MIMXRT1050_EVK/firmware.bin
=======================
RT10XX Firmware flasher
=======================
Check if the FlashLoader exists on target
FlashLoader not started, checking target ROM bootloader
ROM bootloader detected at -u 0x1FC9,0x0130, upload Flashloader
OK, start Flashloader on target
OK, check for Flashloader again
FlashLoader ready
Flash Firmware file to target
'/home/LoBo2_Razno/IMXRT10xx/micropython/ports/mimxrt/build-MIMXRT1050_EVK/firmware.bin'
Prepare target memory
Erasing 444384 bytes at 0x60000000
Write image
Firmware flashed successfully.
boris@UbuntuMate:/home/LoBo2_Razno/IMXRT10xx/FWdownloader$
Re: Teensy 4.0 & 4.1
Thanks for that script. If you like you can check out the “alpha” release of my DFU bootloader in my repository https://github.com/alphaFred/micropytho ... bootloader
No need to touch the board since it works over the device USB port. Just start an upload via dfu-tool and the board will automatically switch to the bootloader, upgrade and jump back to the firmware.
This is still work in progress but I got positive feedback for MINXRT1020-EVK, Teensy40/41 and also the ARCH MIX board.
No need to touch the board since it works over the device USB port. Just start an upload via dfu-tool and the board will automatically switch to the bootloader, upgrade and jump back to the firmware.
This is still work in progress but I got positive feedback for MINXRT1020-EVK, Teensy40/41 and also the ARCH MIX board.
Re: Teensy 4.0 & 4.1
Thanks, I'll check it.
The firmware still needs to be flashed at least the first time and my script is mostly for those who have the board but don't have J-link (which is not exactly low priced).
Re: Teensy 4.0 & 4.1
@loboris This is definitely a great help for all people without and with JLink hardware for flashing firmware. Thank you for your effort. This is required, even with the DFU-Bootloader we are developing at the moment. This initial bootloader cannot be installed by DFU and has to be installed by other means - your serial bootloader tool or JFlash.
The DFU-Bootloader made by @alphaFred works already and was tested with ARCH MIX, Teensy and the MIMXRT1020 and 1050 board.
b.t.w. Which Version of the MIMXRT1050_EVK do you have. Is it -EVK or -EVKB, nor flash or hyper flash?
The DFU-Bootloader made by @alphaFred works already and was tested with ARCH MIX, Teensy and the MIMXRT1020 and 1050 board.
b.t.w. Which Version of the MIMXRT1050_EVK do you have. Is it -EVK or -EVKB, nor flash or hyper flash?
Re: Teensy 4.0 & 4.1
I think I've mentioned it in the post, I don't have MIMXRT1050_EVK, the suggested use of SW7 is only from the schematic.
If you have it, you can test if the script works with hyper flash, some parameters for blhost maybe needs adjusting...
Edit: I'm designing my own RT1062 based PCB for one specific application, that is why I'm using SomLabs module (and carrier board for testing). I'm also considering the FET1052-C System on Module which could be a good choice (the cost is 28.82 €).