File Exchange

image thumbnail

Lego Mindstorms EV3 Gyroboy

version 1.0.4 (19.6 MB) by Tim Hughes
Observer-based reference tracking feedback controller for the LEGO Mindstorms EV3 Gyroboy segway robot.


Updated 18 Jun 2019

GitHub view license on GitHub

Observer-based reference tracking feedback controller based on the standard LEGO Mindstorms EV3 Gyroboy segway robot build. Takes input from an Xbox One controller or keyboard.

This is joint work with Gareth Willetts and Jakub Kryczka.

The main Simulink files have been saved in MATLAB 2019a, and also exported to 2018a, 2017a and 2016a formats.

To begin, refer to the file setup_guide.m on the github repository.

Details of the project will appear in:
"Observer-based feedback controller for the LEGO MINDSTORMS EV3
Gyroboy segway robot." by Timothy H. Hughes, Gareth H. Willetts and Jakub A. Kryczka. Submitted to the 2019 IEEE Conference on Decision and Control.

KeyboardControl.slx: Simulink file for sending keyboard inputs to the Gyroboy robot.
gb_load.m: Matlab script for loading in model data and implementing controller design
gyroboy.mp4: Brief video of the Gyroboy robot in operation.
keyboard_input.mat: Saved keyboard input data (for simulation purposes).
setup_guide.pdf: instructions for getting started.
sysnss.mat: Saved variables for precompensator design.
xb_kf_pc_hp_nl.slx: Simulink file for deploying to the Gyroboy robot. Implements LQR with integral action, Kalman filter based observer, and a precompensator

Cite As

Tim Hughes, Gareth Willetts and Jakub Kryczka (2019). LegoMindstormsEV3 (, GitHub. Retrieved June 18, 2019.

Comments and Ratings (0)



Updated image


Added image (courtesy of Millie Papworth)


Edited description and added Acknowledgments


Included website

MATLAB Release Compatibility
Created with R2019a
Compatible with R2016a to R2019a
Platform Compatibility
Windows macOS Linux
Tags Add Tags