{"id":13470930,"url":"https://github.com/linorobot/linorobot","last_synced_at":"2025-05-12T09:55:09.200Z","repository":{"id":46097099,"uuid":"52732156","full_name":"linorobot/linorobot","owner":"linorobot","description":"Autonomous ground robots (2WD, 4WD, Ackermann Steering, Mecanum Drive)","archived":false,"fork":false,"pushed_at":"2023-05-10T19:54:23.000Z","size":12060,"stargazers_count":1017,"open_issues_count":27,"forks_count":351,"subscribers_count":60,"default_branch":"master","last_synced_at":"2025-04-10T10:50:04.438Z","etag":null,"topics":["2wd","4wd","ackermann","agv","autonomous","autonomous-vehicles","linorobot","mecanum-wheel","robotics","ros"],"latest_commit_sha":null,"homepage":"http://linorobot.org","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/linorobot.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2016-02-28T16:56:47.000Z","updated_at":"2025-04-06T14:32:10.000Z","dependencies_parsed_at":"2023-10-22T09:30:20.415Z","dependency_job_id":null,"html_url":"https://github.com/linorobot/linorobot","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linorobot%2Flinorobot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linorobot%2Flinorobot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linorobot%2Flinorobot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/linorobot%2Flinorobot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/linorobot","download_url":"https://codeload.github.com/linorobot/linorobot/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253711945,"owners_count":21951667,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2wd","4wd","ackermann","agv","autonomous","autonomous-vehicles","linorobot","mecanum-wheel","robotics","ros"],"created_at":"2024-07-31T16:00:37.471Z","updated_at":"2025-05-12T09:55:09.135Z","avatar_url":"https://github.com/linorobot.png","language":"C++","funding_links":[],"categories":["C++","[Libraries](#awesome-robotics-libraries)","Open Source Robots"],"sub_categories":["[Robot Platform](#awesome-robotics-libraries)","Rovers and Cars"],"readme":"\u003cimg src=\"https://raw.githubusercontent.com/linorobot/lino_docs/master/imgs/wiki/logo1.png\" width=\"200\" height=\"200\" /\u003e\n\n# linorobot [![Build Status](https://travis-ci.org/linorobot/lino_install.svg?branch=master)](https://travis-ci.org/linorobot/lino_install)\nLinorobot is a suite of Open Source ROS compatible robots that aims to provide students, developers, and researchers a low-cost platform in creating new exciting applications on top of ROS.\n\nYou can also check out the ROS2 port of this project [linorobot2](https://github.com/linorobot/linorobot2).\n\n## Tutorial\n\nYou can read the full tutorial how to build your robot [here](https://github.com/grassjelly/linorobot/wiki/1.-Getting-Started).\n\n## Multiplatform\nSupports multiple types of robot base:\n- 2WD\n- 4WD\n- Ackermann Steering \n- Mecanum drive\n\n![alt text](https://github.com/linorobot/lino_docs/blob/master/imgs/readme/family.png?raw=true)\n\nWorks on:\n- ROS Indigo (Ubuntu 14.04)\n- ROS Kinetic (Ubuntu 16.04)\n\n## Hardware\nFabricate your own Teensy 3.1/3.2 [shield,](https://github.com/linorobot/lino_docs/tree/master/schematics)\n\n![alt text](https://github.com/linorobot/lino_docs/blob/master/imgs/readme/shield.JPG?raw=true)![alt text](https://github.com/linorobot/lino_docs/blob/master/imgs/readme/shield2.JPG?raw=true)\n\nor wire it on your own. Wiring diagrams are also provided.\n[![alt text](https://github.com/linorobot/lino_docs/blob/master/imgs/readme/schematicsfamilyphoto.png?raw=true)](https://github.com/linorobot/linorobot/wiki/2.-Base-Controller)\n\n#### Supported IMUs:\n\n- GY-85\n- MPU6050\n- MPU9150\n- MPU9250\n\nThe IMU drivers are based on [i2cdevlib](https://github.com/jrowberg/i2cdevlib).\n\n#### Supported Motor Drivers:\n- [L298](http://www.st.com/content/ccc/resource/technical/document/datasheet/82/cc/3f/39/0a/29/4d/f0/CD00000240.pdf/files/CD00000240.pdf/jcr:content/translations/en.CD00000240.pdf) (MAX: 35V, 2A)\n- [BTS7960](https://www.mouser.com/ds/2/196/Infineon-BTN7960-DS-v01_01-en-785559.pdf) (MAX: 24V, 43A)   \n- Electronic Speed Controllers (ESC) w/ Reverse. [This](https://hobbyking.com/en_us/hobbykingtm-brushless-car-esc-2s-4s-60a-w-reverse.html) has been tested to control brushless motors used in RC cars and hoverboards.\n\n#### Supported ROS Compatible Sensors:\n- XV11 Lidar\n- RPLidar\n- YDLIDAR X4\n- Hokuyo (SCIP 2.2 Compliant)\n- Intel RealSense R200\n- Kinect\n\n#### Tested on Linux compatible ARM dev boards:    \n- Raspberry Pi 3/B+   \n- Jetson TK1   \n- Jetson TX1   \n- Odroid XU4   \n- Radxa Rock Pro   \n**Technically this should also work with any ARM dev board at least (1GB RAM) that runs Ubuntu Trusty or Xenial.\n\n## Installation\n![alt text](https://github.com/linorobot/lino_docs/blob/master/imgs/readme/installationshot.png?raw=true)\n\n```\ngit clone https://github.com/linorobot/lino_install \u0026\u0026 cd lino_install\n./install \u003cbase\u003e \u003csensor\u003e\n```\n\n## Firmware\nFlexible and configurable components.\nlinorobot_ws/teensy/firmware/lib/config/lino_base_config.h\n\n#### Robot base configuration:\n```\n//uncomment the base you're building\n#define LINO_BASE DIFFERENTIAL_DRIVE\n// #define LINO_BASE SKID_STEER\n// #define LINO_BASE ACKERMANN\n// #define LINO_BASE ACKERMANN1\n// #define LINO_BASE MECANUM\n```\n\n#### IMU configuration:\n```\n//uncomment the IMU you're using\n#define USE_GY85_IMU\n// #define USE_MP6050_IMU\n// #define USE_MPU9150_IMU\n// #define USE_MPU9250_IMU\n```\n\n#### Motor driver configuration:\n```\n//uncomment the motor driver you're using\n#define USE_L298_DRIVER\n// #define USE_BTS7960_DRIVER\n// #define USE_ESC\n```\n\n#### Motor configuration:\n```\n//define your robot' specs here\n#define MAX_RPM 330               // motor's maximum RPM\n#define COUNTS_PER_REV 1550       // wheel encoder's no of ticks per rev\n#define WHEEL_DIAMETER 0.10       // wheel's diameter in meters\n#define PWM_BITS 8                // PWM Resolution of the microcontroller\n#define LR_WHEELS_DISTANCE 0.235  // distance between left and right wheels\n#define FR_WHEELS_DISTANCE 0.30   // distance between front and rear wheels\n#define MAX_STEERING_ANGLE 0.415  // max steering angle. This only applies to Ackermann steering\n\n```\n\n#### Uploading the codes:\n```\ncd ~/linorobot_ws/src/linorobot/teensy/firmware\nplatformio run --target upload\n```\n\n## Creating a Map\n![alt text](https://github.com/linorobot/lino_docs/blob/master/imgs/readme/slam.png?raw=true)\n\n#### Launch base driver:\n```\nroslaunch linorobot bringup.launch\n```\n\n#### Launch mapping packages:\n```\nroslaunch linorobot slam.launch\n```\n\n## Autonomous Navigation\n[![IMAGE ALT TEXT](http://img.youtube.com/vi/aqzMq-jMd-c/maxresdefault.jpg)](https://www.youtube.com/embed/aqzMq-jMd-c \"Linorobot Autonomous Navigation\")\n\n#### Launch base driver:\n```\nroslaunch linorobot bringup.launch\n```\n\n#### Launch navigation packages:\n```\nroslaunch linorobot navigate.launch\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flinorobot%2Flinorobot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flinorobot%2Flinorobot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flinorobot%2Flinorobot/lists"}