Hi,
I was trying to upload a customized firmware(simply adding servo ouput from can-bus signal) on my VESC6 mk5.
I followed the instructions from bldc github (https://github.com/vedderb/bldc).
I tried both vesc_tool_3.0 and vesc_tool_3.1, but the results are the same "The selected file is too large to be a firmware."
Does anyone have the same problem? How do you solve it?
You need to select the .hex file instead of the .bin file. That worked for me. It's a bit strange always used the .bin file before, that was with firmware 5.03 and Vesc Tool 3.00
I did a bit more experimenting, looks like it did not work with the hex file. When I examine the upload a bit more, it aborts at like 80%, but it say's that the firmware update is done. But I try to upload the firmware with my custom application, but the custom appliction does not work, so probably the upload is gone wrong and it fails back to the previous uploaded firmware ?.
If you look at the size, the standard bin file is 384 kb but the one I compiled myself is 512 kb. With the firmware 5.02 it is also 384 kb when I compiled it myself
Anybody a solution ?
Same problem here
VESC v6 uses a new bootloader. Have you updated your bootloader since v5.3 was released?
Any update on this ? firmware for hw60 compiled with master branch is 512kB large.
I don't think upgrading bootloader will help(not tried yet) since it seems clearly that size is limited to 393216 kB in bootloader code ( main.c line 40 then main.c line 200)
So there is two questions regarding this :
Should our firmware not exceed 393kb size, so sommething is wrong in the compilation process/configuration ?
or
does the bootloader need to be updated to accept larger FW ?
theses are only assumption, i will try asap to build and flash the bootloader and see if there is still an error in VESC_TOOL
It worked for me....I updated the bootloader via the Vesc Tool.
I also update bootloader through VESC_TOOL but still complains that my .bin is too large ...
@Gatze you confirm that now VESC_TOOL display version 6.0 (corresponding to master branch) when you connect your vesc ?
Did you use .hex ? or .bin to achieve this ?
Are you using the test version of VESC tool ? (Windows->vesc_tool_test_windows.exe, Linux->vesc_tool_linux) You should update the bootloader of your hardware from within the test version of VESC tool. You can find them in the downloads when you purchase Vesc tool on this website, the files are in vesc_tool_BETA_ALL.zip. I'm using the bin file.
I tried it again to downgrade both bootloader and firmware and then upgrade to the beta version, it should work.
I would like to join the discussion since I'm facing similar problems: By trying to upload a customized firmware I get the error that '.bin' (~524kB) file is too large while '.hex' (1.1MB) comes without warning. Nethertheless uploading always fails at around 80% and restarts the controller with previous version - same behaviour when trying to reupload the default firmware(Fw5.3, Hw410). Unfortunately it does not make any difference using different serial ports (USB, UART) or baudrates. Uploading the bootloader seems to work fine by the way.
Apparently I have a former version of VESC Tool (3.01) but can't figure out how to get version 4.00.
I would be very thankful for any advice!
This is probably a mismatch between VESC Tool version and Firmware version. As for I can see VESC Tool 3.01 uses firmware version 5.3 which is 384kb, you can download this from github if you change the branche to 5.3 (the button with the text master).
VESC Tool 4.00 (which uses firmware version 6.0. the 512kb version) you can find with the downloads from VESC Tool (the downloadlinks you get in the mail), this is a Beta/test version, it is in the zip -> vesc_tool_BETA_ALL.zip
That's it - thanks for quick solution! Yesterday I happened to make it work and I still want to share it:
It is indeed a mismatch because I used VESC Tool V3.01 and tried to upload custom Firmware Version based on the latest commit V6.0. Unfortunately I was stuck with troubleshooting since there was no message of mismatch or any failure. The upload is fast and the controller was working but my changes were not effective. I started to make nonsensical but destructive code changes just to recognize that my build was never flashed sucessfully. I found out that transfering both (custom or included) firmware from now on pretend to be successfull but interupt their uploading somewhere at 80%.
As you said: VESC Tool V3.01 works with Firmware V5.3 and -beta- VESC Tool V4.00 works with Firmware V6.00.
I could find the beta version in the downloadlinks and flashed my costum firmware for the first time to 100%. As far as I understand customizing should be done by using both tool and firmware either on the latest changes or you go back to their previous release. In masters git it took me a while to find the corresponding commit since it was just marked by a 'blunt' branch but no tag. I decided to make my minor changes for custom firmware on top of that last stable version (Tool V3.01 and Firmware V5.3) and grow that branch locally. As soon as there is a new stable release I will adjust that one too...
Please let me know if there are any thoughts on my noob opinions and approaches. I was so happy when my theoretical considerations got finally effective after uploading successfully ;-)
Thanks for the whole project and support!
Glad it worked, you are not a noob if you customize and compile the code your self ;)
Hello,
i have the same issue, i tried to download the beta version of VESC tool but the link i received is not working including the link from purchased files?
Fahad M