Main repository for the Kugle robot project. The repository contains the MATLAB code and Simulink models for the Kugle robot developed as part of the master thesis work. This includes a non-linear Quaternion ballbot model, Sliding mode attitude controller, Quaternion Extended Kalman filter and ACADO MPC for path-following.