Problem Flashing Zephyr OS #74478
-
I planned to port Artemis Nano to Zephyr OS. After adapting the device tree and some other files, I was able to build the OS. I wanted to flash Artemis Nano with Zephyr OS. After compiling, I found zephyr.bin and used the following command to flash it to Artemis Nano, which is not a runner (I plan to make a custom runner if this works):
The size of zephyr.bin is 14,603 bytes, and the output of the above command is as follows:
If you add up all the bytes, you will see the sum is exactly 14,603, but the artemis_svl is not able to flash the last frame, and I don't know why. Please correct me if I am wrong: zephyr.bin is the OS and application linked together and one of the only formats that is supposed to be flashed on the board. Any guide about the mechanism would also be helpful. Please note that I am aware of the two bootloaders on Artemis Nano: one from Ambiq and another from SparkFun. For your reference, I am sharing the address of my forked version of the GitHub repository. You can find the new_board/artemis_nano branch and all of the files under zephyr/boards/sparkfun/artemis_nano: https://github.com/AlienSarlak/zephyr/tree/new_board/artemis_nano |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 2 replies
-
Hi @AlienSarlak! We appreciate you submitting your first issue for our open-source project. 🌟 Even though I'm a bot, I can assure you that the whole community is genuinely grateful for your time and effort. 🤖💙 |
Beta Was this translation helpful? Give feedback.
-
After looking into the Artemis firmware uploader code, I believe the issue might be rooted in the CRC16 of the Zephyr binary file. While I am not entirely sure, it seems the zephyr.bin file might contain special characters that are incompatible with the SparkFun firmware uploader. Please let me know if there is an option in zephyr I can select in such a scenario. |
Beta Was this translation helpful? Give feedback.
-
@AlienSarlak if you haven't found the solution yet, you may be able to get more attention to your question in discord. |
Beta Was this translation helpful? Give feedback.
-
I'm not familiar with this bootloader, but it looks like it expects the image size to be a multiple of 4 bytes:
https://github.com/sparkfun/Apollo3_Uploader_SVL/blob/main/bootloader/src/main.c#L584 Try padding the image 1 byte |
Beta Was this translation helpful? Give feedback.
I'm not familiar with this bootloader, but it looks like it expects the image size to be a multiple of 4 bytes:
https://github.com/sparkfun/Apollo3_Uploader_SVL/blob/main/bootloader/src/main.c#L584
Try padding the image 1 byte