You are here

Setting up a development environment on Ubuntu 16.04 and later LTS releases

Submitted by benjamin on Wed, 2018-01-24 10:16

This guide describes how to set up a development environment on Ubuntu 16.04 and later for working with the VESC firmware and VESC Tool. Open a terminal and follow along...

Start by updating the system and installing some required packages:

sudo apt update
sudo apt upgrade
sudo apt install build-essential openocd git libudev-dev qt-sdk

Now install the gcc-arm-embedded toolchain (see this page for more details)

sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa

press Y, enter, then

sudo apt update
sudo apt install gcc-arm-embedded

now add udev rules to use the stlink v2 programmer without beeing root

wget vedder.se/Temp/49-stlinkv2.rules
sudo mv 49-stlinkv2.rules /etc/udev/rules.d/
sudo udevadm trigger

At this point you should be able to clone the firmware from github, build it and upload it. Let's give it a try

git clone https://github.com/vedderb/bldc.git vesc_firmware
cd vesc_firmware
make

by default this will build firmware for hardware version 6. To change the hardware version, open conf_general.h and change it to use the hardware version that you have. For example, for HW 4.12 it should look like this

/*
 * Select only one hardware version
 */
#if !defined(HW_VERSION_40) && !defined(HW_VERSION_45) && !defined(HW_VERSION_46) && \
	!defined(HW_VERSION_48) && !defined(HW_VERSION_49) && !defined(HW_VERSION_410) && \
	!defined(HW_VERSION_60) && !defined(HW_VERSION_R2) && !defined(HW_VERSION_VICTOR_R1A) && \
	!defined(HW_VERSION_DAS_RS) && !defined(HW_VERSION_PALTA) && !defined(HW_VERSION_RH) && \
	!defined(HW_VERSION_TP)
//#define HW_VERSION_40
//#define HW_VERSION_45
//#define HW_VERSION_46 // Also for 4.7
//#define HW_VERSION_48
//#define HW_VERSION_49
#define HW_VERSION_410 // Also for 4.11 and 4.12
//#define HW_VERSION_60
//#define HW_VERSION_R2
//#define HW_VERSION_VICTOR_R1A
//#define HW_VERSION_DAS_RS
//#define HW_VERSION_PALTA
//#define HW_VERSION_RH
//#define HW_VERSION_TP
#endif

there are also many other options that can be changed in conf_general.h. To rebuild the firmware after the changes, run

make

now connect the stlink v2 programmer, connect power from a lab power supply and try to upload the firmware

make upload

It should say verified ok towards the end if everything went well.

VESC Tool

In order to build VESC Tool you need a recent version of the Qt SDK. Go to https://www.qt.io/download and get Qt Open Source. You should get a file called something like qt-unified-linux-x64-3.0.2-online.run. Set the executable flag of the file and install it as root to get a system-wide installation

cd Downloads
chmod +x qt-unified-linux-x64-3.0.2-online.run
sudo ./qt-unified-linux-x64-3.0.2-online.run

follow the instructions to finish the installation. You might also need the following packages:

sudo apt install mesa-common-dev libgl1-mesa-dev libglu1-mesa-dev

At this point you should be able to clone the source code for VESC Tool and build it.

git clone https://github.com/vedderb/vesc_tool.git vesc_tool

It is recommended to open the project file from Qt Creator (which you should have after the previous step) and build the project from there. Instructions for building the android version will be added later.

Comments


If you want to take your video projects to the next level, the wink video editor provides easy-to-use features like creative templates, smooth transitions, and premium editing tools. It’s a practical resource for mobile creators who want polished, professional-quality results quickly and efficiently.


For creators looking to enhance their mobile content, the https://winkapkz.com/ offers a variety of tools,

This is an excellent, detailed guide for anyone looking to step beyond the VESC Tool GUI and customize the firmware. The instructions for setting up the `gcc-arm-embedded` toolchain and handling different hardware versions (like 4.12) are crucial. I imagine this level of customization would be essential for pushing the limits of high-performance applications, maybe even optimizing the controllers used in something powerful like the *Ramp Xtreme*.

This sounds like a really fun and exciting event for the Sacramento community! If you love creative block-based games and puzzles, you should definitely check out   block blast. It’s a great way to bring healthy competition and creativity to a gaming gathering. I hope to see you all there!

This approach is very logical and has a clear investment strategy, standardizing Ubuntu 16.04 LTS as a foundation is a smart move to optimize the VESC Tool code production pipeline later. The process of updating the system and installing required packages is the first Friday Night Funkin' of the system, each flow and beat must be standardized to ensure liquidity for the dev environment. Just maintain this technical vision, ensure quality from the preparation step, and you will have a firm grasp of the maximum performance profit margin for the entire project, no need to worry much.

This guide is incredibly useful for anyone diving into VESC development. Getting the correct `gcc-arm-embedded` toolchain and Qt SDK configuration is always the biggest hurdle. Once the development environment is finally set up and the firmware uploaded, it feels like we've just completed the pre-flight checks before the main "orbit kick" maneuver!

The live betting interface is fast, reliable, and features real-time odds updates, which is crucial for UK users placing dynamic wagers during matches. The speed is impressive. Experience lightning-fast in-play action and quick cash-out options by joining the efficient live platform BoyleSports to place dynamic bets instantly and gain a real edge over the competition.

You should definitely check out the "Tournaments" section on

https://bangercasino-online.com/bonuses/ Apart from standard deposit bonuses, they run regular slot races and leaderboards. Basically, you play specific games (like those from Pragmatic Play), and you earn points for every win. If you finish in the top positions, you win a share of a huge prize pool. It adds a lot of excitement because you can win the tournament prize on top of your regular slot winnings. It’s much more engaging than just standard play.

I understand your concern because there are many scam sites, but 

glory casino pk is reliable. I have made several withdrawals over the last few weeks, including one for 25,000 PKR, and it was processed without any issues. As long as you don't create multiple accounts and your phone number is verified, they pay out very quickly.

If you are tired of routine and want vivid emotions, register at

website . It's not just a dating site, it's a window to the world. Here I met people from countries I had only heard of before. It's a really cool experience to communicate with foreigners. If you are open to the world and looking for a partner abroad, there is no better place. Try it, it's addictive!

The variety of reload bonuses available at Lukki Casino provides continuous value for consistent players who want to get the most out of every deposit they make in Canada. Secure extra playtime by checking out their daily promotions and ensure your bankroll stays healthy while you explore the latest high-RTP releases from world-class developers.

This site stands out as a comfortable option for players in Canada. Spending time on slots garden felt straightforward and welcoming, without feeling overwhelming. It’s a nice recommendation for those who enjoy a simple and well-organized online casino setting.

Pages