ODrive - High performance motor control

  •        98

This project is all about accurately driving brushless motors, for cheap. The aim is to make it possible to use inexpensive brushless motors in high performance robotics projects. You need one or two brushless motors, quadrature incremental encoder(s), and a power resistor.




Related Projects

autonomous-rc-car - Autonomous RC car using Raspberry Pi and ANN

  •    Python

This project aims to build an autonomous rc car using supervised learning of a neural network with a single hidden layer. We have not used any Machine Learning libraries since we wanted to implement the neural network from scratch to understand the concepts better. We have modified a remote controlled car to remove the dependency on the RF remote controller. A Raspberry Pi controls the DC motors via an L293D Motor Driver IC. You can find a post explaining this project in detail here. Here's a video of the car in action. We will be referring the DC motor controlling the left/right direction as the front motor and the motor controlling the forward/reverse direction as the back motor. Connect the BACK_MOTOR_DATA_ONE and BACK_MOTOR_DATA_TWO GPIO pins(GPIO17 and GPIO27) of the Raspberry Pi to the Input pins for Motor 1(Input 1, Input 2) and the BACK_MOTOR_ENABLE_PIN GPIO pin(GPIO22) to the Enable pin for Motor 1(Enable 1,2) in the L293D Motor Driver IC. Connect the Output pins for Motor 1(Output 1, Output 2) of the IC to the back motor.

piCNC Controller

  •    C

piCNC is a PIC based stepper motor controller for use in CNC applications. Its software and hardware development is completely open source and community supported.

Daybreak .motor XNA 3D engine


DBM (Daybreak Motor Engine) is a scene-oriented, flexible 3D game engine written in C# and XNA framework. It is designed to make it easier and more intuitive for developers to produce applications utilising hardware-accelerated 3D graphics.

AeroQuad - AeroQuad Flight Software

  •    C

The Aeroquad 32 bit boards are supported by other more active flight softwares like dRonin (http://dronin.org/). Additionally fixed incorrect sensor orientation for v1.7 Shield with Duemilanove, and Wii for Duemilanove and Mega, and APM with APM sensor shield. Added #defines for Wii for Mega. Solved DCM overflow issues for APM when performing calibration or writing to EEPROM. Flight tested ArduCopter hardware, v2.0 Shield with Mega, v1.8 Shield with Duemilanove, v1.7 Shield with Duemilanove, v1.8 Shield using Wii sensors with Duemilanove. Updated default PID values for v2.0 shield using 30.5cm motor to motor configuration at 1.2kg.

AR2 - 6 axis stepper motor robot and control software - Gen2


The AR2 is a small desktop robot that is modeled similar to an industrial 6 axis robot. This is a DIY project that can be built from 3D printed components or from machined aluminum components, uses low cost stepper motors and arduino controller. All geared stepper motors and drivers are available from www.omc-stepperonline.com and all other misc. hardware are off-the-shelf items available from multiple sources (see the bill of materials info within each manual).

libEPOS - command an EPOS motor control

  •    C

libEPOS is a C library to control the EPOS motor control from maxon motor ( http://www.maxonmotor.com ) using a GNU/Linux system. This software is NOT from maxon motor, but was written from scratch by Marcus Hauser and others. The tar file is outdate

motor - Motor - the async Python driver for MongoDB and Tornado or asyncio

  •    Python

Motor presents a callback- or Future-based API for non-blocking access to MongoDB. The source is on GitHub and the docs are on ReadTheDocs.See requirements for details about compatibility.

Open Source Focus Controller

  •    C

Source code and diagrams for a dual focuser motor controller for a telescope. Includes source for an ASCOM driver that interfaces with the controller.

SwiftyGPIO - A Swift library for hardware projects on Linux/ARM boards with support for GPIOs/SPI/I2C/PWM/UART/1Wire

  •    Swift

A Swift library for hardware projects on Linux/ARM boards with support for GPIOs/SPI/I2C/PWM/UART/1Wire. This library provides an easy way to interact with external sensors and devices using the digital GPIOs, SPI/I2C interfaces, 1-Wire buses, PWM signals and serial ports that boards like the Raspberry Pi provide, on Linux using Swift.



libnxter is a collection of robot utilities for lego mindstorms nxt robotics kit, written in NXC language, and currently implements: two wheel drive vehicle, odometer, motor control, sonar, integer matrix algebra, vectors, PID control and kalman filter.

Solar Tracker


This netduino project uses a motor shield, a linear actuator and a solar cell out of a garden light to move a set of solar panel so that they face the sun.

Kerala Motor Vehicle Department Bot


This is data mining application developed to collect data from Kerala Motor Vehicle Department web site

JavaScript SQL (JSSQL)

  •    Javascript

A database engine entirely in JavaScript (AJAX)

Motor Yoda

  •    Pascal

Motor Yoda is a 2D directx based engine for develop games as: tile based, isometric(2D) games, RTS, RPG, etc. The engine purpose is to eliminate the hard work of reinvent the wheel for common task as map loading and displaying, sprite and particle syste


  •    C++

Adafruit Motor shield firmware with basic Microstepping support. Works with all Arduinos and the Mega

ev3dev - ev3dev meta - bug tracking, wiki and releases


Ev3dev is an operating system that runs on the LEGO MINDSTORMS EV3 and other platforms with compatible motor/sensor hardware. Its goal is to allow you to write code which controls your MINDSTORMS robots in any language you want, with whatever frameworks and libraries you like to use. Ev3dev is based on Debian Linux, so any software that runs on Linux and can be built for ARM should be able to run on ev3dev.

Gobot - ng framework for robotics, drones, and the Internet of Things (IoT)

  •    Go

Gobot is a framework using the Go programming language for robotics, physical computing, and the Internet of Things. It provides a simple, yet powerful way to create solutions that incorporate multiple, different hardware devices at the same time. It provides next generation robotics / IoT framework with support for 30 different platforms.

Cylon.js - JavaScript framework for Robotics, Physical computing, and the Internet of Things

  •    Javascript

Cylon.js is a JavaScript framework for robotics, physical computing, and the Internet of Things (IoT). It provides a simple, but powerful way to create solutions that incorporate multiple, different hardware devices concurrently. It is a next generation robotics framework with support for 43 different platforms.

react-hardware - A React renderer for Hardware.

  •    Javascript

React Hardware enables you to build firmata-based hardware applications using a consistent developer experience based on JavaScript and React. The focus of React Hardware is on developer efficiency across all the platforms you care about - learn once, write anywhere. React Hardware is a IoT and Robotics programming framework developed by Dustan Kasten. Being based on firmata, it is capable of providing feature parity with alternative tools such as Johnny-Five.

MRS Service for VEX Robotics


Microsoft Robotics Studio services to interface with the VEX Robots controller