Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Build Status codebeat badge Documentation Status License: MIT Donate

⚠️ This repo is no longer being maintained. Feel free to use the source or send me any questions, unfortunately no new commits or PRs will be added/accepted ⚠️

Welcome! This is an open source self-driving development platform aimed for rapid prototyping, deep learning, and robotics research. The system currently runs on a modified electric golf cart. Here are our goals:


Research and develop a deep learning-driven self-driving car. The vehicle should be able to achieve level 4 autonomy within a geofenced area.

The modules in this project.

  1. End-to-End Steering (Behavioral cloning)
  2. Semantic Segmentation
  3. Object Detection πŸš™
  4. Drive by Wire (DBW)
  5. CARLA simulator integration
  6. ZED stereoscopic vision system
  7. Mapping with rtabamp
  8. Path planning with ROS nav stack.
  9. Localization, pose tracking, and odom with ZED and rtabmap.

For the full documentation of the development process, please visit my website:

Table of Content

Try it out

Before you jump in, let me describe the hardware requirement for this project. A webcam is the minimum requirment. At this point, you can only run the whole system on the actual self-driving vehicle. ROS will throw warnings (even errors) at you if you don't have the hardware connected to your Linux machine. If you don't have access to the hardware setup, don't worry πŸ‘‡

  • The best way is to download and play back the ROS bags. [coming soon...]
  • You can tryout individual packages and nodes, and might find them helpful for your own projects.
  • You can also tryout the CARLA simulator. (Maybe even improve the current system.)

To compile the project:

  1. Make sure that you have ROS installed on your computer. (I am using ROS Melodic)
  2. Make sure you have all the dependencies installed.
Clone & Compile
  1. Clone the repository. $ git clone
  2. $ cd self-driving-golf-cart/ros
  3. $ catkin_make
  4. $ source devel/setup.bash
Launch ZED cameras
  • $ roslaunch zed_wrapper zed.launch (no rviz)
  • $ roslaunch zed_display display.launch (with rviz)
Launch the Navigation Stack
  • $ roslaunch path_planning rtab_mapping_navigation.launch


πŸš™ Bon Voyage πŸ˜€

Contact / Info

If you are interested in the detailed development process of this project, you can visit Neil's blog at to find out more about it. Neil will make sure to keep you posted about all of the latest development on the club.



Neil (Yongyang) Nie | Email | Github | Website | Linkedin


Michael Meng | Email | Github