Purdue University ECE 47700 senior design project
- Redesign PCBs to fix current issuues
- Through-hole USB port
- Type-C USB
- Fix auto-program issue on main controller board
- Fix Flash error on PC adapter
- Solder IMU on controller board
- Better software libraries and documentation support
oTTo is a two-wheel self-balancing robot designed as an experimental hardware platform for control theory students to gain hands-on experience on real-world control problems. In addition to the microcontroller part, a MATLAB/Simulink interface will be also provided to facilitate the implementation of various controllers with Simulink.
- A4988 stepper motor driver
- Adafruit TDK InvenSense ICM-20948 9-DoF IMU
- ESP32 microcontroller
- Stepper Motor
- eInk Display
- Hardware & Embedded Software
- Read IMU sensors
- Control motor via driver chips
- Host a UDP server for data transmission
- Send/receive sensor readings/control signals to/from main PC over UDP
- MATLAB/Simulink
- Create Simulink block interface
- Use UDP client to send/receive information to/from hardware
- ESP32 chip datasheet
- ESP32 chip technical reference
- A4988 stepper motor driver chip datasheet
- Stepper Motor
- eInk Display Controller
- ESP32 RTOS SDK
- ESP32 IDF SDK, since the RTOS SDK is very close to it
- ICM-20948 driver
- Custom Simulink library
- Custom Simulink block
- MATLAB UDP functions
- eInk Display Driver
- Sensor AHRS Fusion
- ESP32 IDF JTAG Debug Setup
- Openocd
- Openocd 8266 Port
- Not an official release from neither Espressif nor Openocd
- Though the Espressif mentions that they might support esp8266 with openocd in the future but it is not their first priority: GitHub Issue