Close

VESC firmware build with Docker container [ v5.2 ]

danielDaniel wrote 09/16/2023 at 19:47 • 2 min read • Like

Hi all,

This is my first post and I just wanted to share this in a place where I hope others may find it.

TLDR: checkout my fork, build the docker image,run container with the BLDC repo mounted, running 'make' should build the firmware targeted in 'conf_general.h'.

I have been contracted to do some work on a Flipsky Dual FSESC4.20 Plus which is based on VESC.
The firmware is supposedly identical to the released version 5.2 - here.
Note that the FSESC4.20 is built for the target 410_o_411_o_412.

The specific application was not implemented in the out-of-box firmware, so I went down the path of exploring how to make custom firmware by following the instructions of Vedder himself - here.
However,  the version dates back to January 2021 and is only configured for Linux and Mac machines.
After setting up my toolchains in WSL, I had a mismatch in the binary build outputs - you can see the pattern right?

* Side note that STM32 Cube Programmer works best for reviving bricked VESC via SWD - credit.

This blew my mind because I have never encountered such an issue. I assumed, given the age of everything that there was a discrepancy in toolchains used to build FW.
After watching a few videos, I noted that someone (maybe Vedder?) had Ubuntu 14 and older ARM toolchains installed. So I decided to make a docker image with all the tools preconfigured for myself and any other folk who may wish to add functionality to this device.

Initially, I used GNU Make v3.8 which errored out, but from my attempts with WSL, I knew that make v4.1 worked as expected, so the docker image uses that as well.

All in all, I have loved working with the VESC thus far and will make another post once my custom FW is in a working state.

Hope someone out there finds this useful!

Like

Discussions