-
Notifications
You must be signed in to change notification settings - Fork 13
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
rom overflow? #11
Comments
Oh...Thank you for notice really important bug. |
Now the compilation step seems to work, but the flashing fails |
Oops...right. you are right. Do you have ST-LINK or have you any experience using system bootloader in STM32?? |
BTW, Why isn't the bootloader open source? |
I updated bootloader in OpenCM repository. |
The bootloader you've pushed is 128K, is it alright? |
And it appear to say "-Ready.." instead of "Ready.." |
Yes it is darwin Mini's total firmware including bootloader. Um.. so you failed again??? |
Yes |
I eventually got my board working again, but I had to erase flash protection options |
Actually it's OK right, now, the hardware bootloader seems bricked but the bootloader works fine. |
I've wrote a python script to send a program on the board: |
Oh...goood... I can not use python script but i will try it. thank you. |
Ok, it works OK but it's still preventing my Serial1 bootloader to write flash |
It appear that you tweak the WRPR registers... is that necessary? |
WRPR register means write protection to flash memory? |
The problem is that Serial1 bootloader (that can be used with your port BOOT0 RX1 TX1 GND VCC) doesn't work with this enabled |
you can modify write protection by using ST Flash Loader Demonstrator. please let me know how to use Serial1 bootloader in your case. |
Actually I am using |
Ah...stm32loader.py :-) |
:-) |
Yes right. I think some guide will be noticed. |
I have a solution: This magical sketch will patch the bootloader, clients just have to load it and run it |
Wow Thank you. |
My e-mail is: g.passault@gmail.com |
So, this issue is still open? What's the current recommendation on solving it? I tried Gregwar's robotis-bootloader-fixer and that resulted in a pretty annoying bug – I have to perform a board reset before each upload. I tried Gregwar's robotis-loader python script after that and both of the OpenCM9.04 bootloaders here resulted in the same issue (and the script had to be control-C-ed). Perhaps there is also an issue with the new version of the ROBOTIS OpenCM9.04_1.0.2 IDE I'm using? Also, if I wanted to revert my to the original bootloader/firmware, which version/file should I use? |
Hello |
robotis loader is intendeed to be used to send firmware just like OpenCM ide, this will not change your bootloader |
Nope |
Actually, the thing that make upload possible without manually putting the board in bootloader mode (holding the user button during reset) is some kind of backdoor in the virtual serial port that put the board in bootloader mode And also in |
@Gregwar: I am using the OpenCM IDE (downloaded from here). If I understand you correctly then the IDE should automatically be putting the board in bootloader mode every time I upload. I can send one sketch after going through the process in your README and then I get a "Board is not responding" error on all subsequent attempts. |
Put the board in bootloader mode manually, holding the reset button during reset |
Can you get any sketch using the virtual serial port working? |
I have to reset the board every time I want to upload a new sketch. After resetting I can load one sketch (these work perfectly including using SerialUSB) and then the next time I try to upload I get the "Board is not responding" error that I mentioned. |
OK, let's try without OpenCM first, just download that example bin: Try going to bootloader mode manually, and load that binary using |
Can you be explicit about what you mean by "going to bootloader mode manually"? Are there instructions for the OpenCM9.04? Is this different from the "Recovery Mode" described here? Assuming it's the same as "Recovery Mode", if I hold down USER SW, plug in USB, and then release USER SW, I can load the opencm904.bin file (LOG 1 below). The green status LED starts blinking after a few seconds (sometimes it seems very random on how long it can take). However, once the status LED is blinking, I can't load the binary again – it stops at "Download signal transmitted, waiting..." until I press RESET on the board or control-C in the Terminal (see LOG 2 below). Maybe this is normal? I can load the binary again without having to unplug the USB if I either load it before the LED starts flashing or press RESET while it's flashing. LOG 1: mercurial:robotis-loader-master horchler$ python robotis-loader.py /dev/tty.usbmodem1411 opencm904.bin
LOG 2: mercurial:robotis-loader-master horchler$ python robotis-loader.py /dev/tty.usbmodem1411 opencm904.bin
|
Indeed, I mean recovery mode The behaviour of your board is not normal. Maybe this is related to Mac OSX, do you have any computer running on Ubuntu for instance? |
I just tried on a colleague's Ubuntu (Linux Mint) machine. Very different behavior. Much worse. I was never able to load the binary. Back on OS X – should I be able to load the binary again using If it's helpful, I'm using Python 2.7 and PySerial 2.7 on OS X. |
Did you disabled modem manager on your Ubuntu machine? |
Hello,
The ROM size of the STM32 in the OpenCM9.04 is supposed to be 118000, but if I write firmwares biggest than ~57k, the IDE fails (region `rom' overflowed by 8 bytes)
The text was updated successfully, but these errors were encountered: