GitHub - vedderb/bldc: The code for my custom BLDC controller.
source link: https://github.com/vedderb/bldc
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
VESC firmware
An open source motor controller firmware.
This is the source code for the VESC DC/BLDC/FOC controller. Read more at https://vesc-project.com/
Supported boards
All of them!
Make sure you select your board in conf_general.h
//#define HW_SOURCE "hw_40.c" //#define HW_HEADER "hw_40.h" //#define HW_SOURCE "hw_45.c" //#define HW_HEADER "hw_45.h" //#define HW_SOURCE "hw_46.c" // Also for 4.7 //#define HW_HEADER "hw_46.h" // Also for 4.7 //#define HW_SOURCE "hw_48.c" //#define HW_HEADER "hw_48.h" //#define HW_SOURCE "hw_49.c" //#define HW_HEADER "hw_49.h" //#define HW_SOURCE "hw_410.c" // Also for 4.11 and 4.12 //#define HW_HEADER "hw_410.h" // Also for 4.11 and 4.12 #define HW_SOURCE "hw_60.c" #define HW_HEADER "hw_60.h" //#define HW_SOURCE "hw_r2.c" //#define HW_HEADER "hw_r2.h" //#define HW_SOURCE "hw_victor_r1a.c" //#define HW_HEADER "hw_victor_r1a.h" //#define HW_SOURCE "hw_das_rs.c" //#define HW_HEADER "hw_das_rs.h" //#define HW_SOURCE "hw_axiom.c" //#define HW_HEADER "hw_axiom.h" //#define HW_SOURCE "hw_rh.c" //#define HW_HEADER "hw_rh.h" //#define HW_SOURCE "hw_tp.c" //#define HW_HEADER "hw_tp.h" //#define HW_SOURCE "hw_75_300.c" //#define HW_HEADER "hw_75_300.h" //#define HW_SOURCE "hw_mini4.c" //#define HW_HEADER "hw_mini4.h" //#define HW_SOURCE "hw_das_mini.c" //#define HW_HEADER "hw_das_mini.h" //#define HW_SOURCE "hw_uavc_qcube.c" //#define HW_HEADER "hw_uavc_qcube.h" //#define HW_SOURCE "hw_uavc_basic.c" //#define HW_HEADER "hw_uavc_basic.h"
There are also many other options that can be changed in conf_general.h
Prerequisites
On Ubuntu
Install the gcc-arm-embedded toolchain
sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa sudo apt update sudo apt install gcc-arm-embedded
Add udev rules to use the stlink v2 programmer without being root
wget vedder.se/Temp/49-stlinkv2.rules sudo mv 49-stlinkv2.rules /etc/udev/rules.d/ sudo udevadm trigger
On MacOS
Go to the GNU ARM embedded toolchain downloads Website and select the mac version, download it and extract it to your user directory.
Append the bin directory to your $PATH. For example:
export PATH="$PATH:/Users/your-name/gcc-arm-none-eabi-8-2019-q3-update/bin/"
Install stlink and openocd
brew install stlink brew install openocd
Build
Build and flash the bootloader first
Clone and build the firmware
git clone https://github.com/vedderb/bldc.git vesc_firmware
cd vesc_firmware
make
Flash it using an STLink SWD debugger
make upload
Contribute
Head to the forums to get involved and improve this project.
License
The software is released under the GNU General Public License version 3.0
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK