-
Notifications
You must be signed in to change notification settings - Fork 7.5k
Build process produces hex files which will not install on BBC micro:bit #14782
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Setting this as high since it completely breaks more than one board. The alternative right now is |
Curious if anyone's tried to reproduce this using Linux SDK, is this a windows issue, and which windows toolchain is being used or a general linker/link script issue? |
@galak what do you need to know about my Windows development environment, exactly? |
FYI I just experienced this problem building against v1.14.0-rc1 which I had previously found to be OK. |
On qemu_arc, the ro_data section was not 4-byte aligned (in terms of address and size) after sorting. Maybe this is similar to that? (see 507f8ca) |
Not sure what is happening here as there are too many conflicting questions. I'll attempt to help but may be some misinterpretation by me:
For building and flashing I use both CMake / ninja and the Zephyr West Tool, simply follow the Getting Started instructions. Environment: Almost forgot to mention that i even connected to my micro-bit using an Android phone and nRF Toolbox, all worked well. If you have more question or further detail let me know. Billy,, |
Could you try this dcpleung@f8ff64d and see if it fixes the issue? |
I've just pulled the v1.13 branch and the sample does not build for Micro-bit. It will not fit in memory.
Struggling to build in 1.12 without some reconfiguration. @bluetooth-mdw Martin are you using this for BLE Training sessions? Either way let me know the state of this. Thanks |
The easiest option would be to create a micro-bit specific .conf and reduce the stack size to free up some space (CONFIG_MAIN_STACK_SIZE=512) This is exactly how the is resolved in the Mesh examples. |
@bluetooth-mdw I have tried to reproduce this but I have not suceeded.
|
@WilliamGFish thanks for the feedback, but that is a different issue altogether unless I am mistaken. Overflowing the SRAM and flash areas is unrelated to the issue that @bluetooth-mdw is seeing, which is a malformed image. |
For some reason I've not been receiving notifications, even when @bluetooth-mdw is in the comment. Testing, testing. Will check spam folder! Anyway, just recreated with v1.14.0-rc2 and the peripheral_hr sample. Intend to upgrade my ARM toolchain as I'm running with something from 2017.
|
Updated ARM tools and now I get this:
|
@bluetooth-mdw that is a known bug in |
Thanks @carlescufi . Installed the q2-update version and with 1.14-rc2 I still get the same problem:
With 1.14-rc1 checked out, I don't get this problem. The hex file installs fine. This does seem to be 1.14-rc2 related. |
@bluetooth-mdw I wonder what the difference is then. I cannot reproduce this on my machine at all, using the exact same commands as you and the same toolchain. |
It seems to relate to an older version of the DAPLink firmware on my micro:bit. The problem occurs with my old microbit which states Interface version 0234 in the Details.txt file which is accessible via the mbed mass storage drive. I updated to 0250 per https://microbit.org/guide/firmware/ and re-tested. The problem did not occur. I also tested with another micro:bit that had Interface Version 0241 and that did not exhibit the problem either. git bisect did point to a commit that related to the linker so I suspect there's a bit more to this than just a bug in the DAPLink firmware but it seems a solution has been found. Closing this issue. |
Uh oh!
There was an error while loading. Please reload this page.
Describe the bug
Building for BBC micro:bit against v1.14.0-rc2 I found that often (but not always) the resultant hex file would not copy onto the device over USB. micro:bit is an mbed device and flashing involves copying the binary hex file to a target USB drive. Copying would fail like this:
C:\workspaces\zephyr_projects\peripheral_hr\build>copy zephyr\zephyr.hex d:
The system cannot find the file specified.
0 file(s) copied.
and the mbed USB drive would disconnect. Physically unplugging the USB cable and plugging it in again would bring back the mbed drive.
The hello_world sample project builds and installs OK.
The bluetooth/peripheral_hr project exhibits the problem.
To Reproduce
Steps to reproduce the behavior:
cmake -GNinja -DBOARD=bbc_microbit ..
ninja
copy zephyr\zephyr.hex d:
Expected behavior
The hex file should successfuly copy to the mbed drive and the mbed drive should stay connected to the host computer:
C:\workspaces\zephyr_projects\peripheral_hr\build>copy zephyr\zephyr.hex d:
1 file(s) copied.
Instead, this happens:
C:\workspaces\zephyr_projects\peripheral_hr\build>copy zephyr\zephyr.hex d:
The system cannot find the file specified.
0 file(s) copied.
Impact
Have to work with 1.14.0-rc1. Showstopper for 1.14.0 if this is not fixed though.
Screenshots or console output
Environment (please complete the following information):
I used git bisect and determined that the following commit is probably where the problem was introduced:
af10d16 is the first bad commit
commit af10d16
Author: Daniel Leung [email protected]
Date: Sat Mar 9 00:58:57 2019 -0800
:100644 100644 4e04694a38b07ddb063b7755bdbe932dd87b7de5 3ab4ef394cce8ea560304345f9d91165a77b54da M CMakeLists.txt
Additional context
It's been pointed out to me that this commit has relevance:
#14563
The text was updated successfully, but these errors were encountered: