{"id":46083883,"url":"https://github.com/tensorturtle/cycarla","last_synced_at":"2026-03-01T16:17:01.435Z","repository":{"id":257218146,"uuid":"581968653","full_name":"tensorturtle/cycarla","owner":"tensorturtle","description":"Ride your bike in CARLA using zwift indoor cycling accessories","archived":false,"fork":false,"pushed_at":"2025-12-01T06:15:47.000Z","size":95003,"stargazers_count":8,"open_issues_count":6,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-12-03T17:39:44.600Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tensorturtle.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-12-25T04:59:54.000Z","updated_at":"2025-12-01T06:15:51.000Z","dependencies_parsed_at":"2024-09-15T11:09:18.552Z","dependency_job_id":"b09c216e-e06f-48bb-b982-92c135eba7ee","html_url":"https://github.com/tensorturtle/cycarla","commit_stats":null,"previous_names":["tensorturtle/cycarla"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/tensorturtle/cycarla","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorturtle%2Fcycarla","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorturtle%2Fcycarla/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorturtle%2Fcycarla/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorturtle%2Fcycarla/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tensorturtle","download_url":"https://codeload.github.com/tensorturtle/cycarla/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tensorturtle%2Fcycarla/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29974696,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T15:41:30.362Z","status":"ssl_error","status_checked_at":"2026-03-01T15:37:07.343Z","response_time":124,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2026-03-01T16:17:00.797Z","updated_at":"2026-03-01T16:17:01.422Z","avatar_url":"https://github.com/tensorturtle.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e [!WARNING]  \n\u003e This project is no longer maintained. It has been replaced by [metacycle](https://github.com/tensorturtle/metacycle).\n\n![banner](logo/cycarla-github-banner.png)\n\n# Introduction\n\nCyCARLA is an open source cycling simulator. It pairs with smart indoor cycling accessories to offer the highest degree of in-game control and feedback, providing the ultimate interactive indoor cycling experience.\n\n# The Story\n\nCyCARLA was created in 2021 by [tensorturtle](https://github.com/tensorturtle) for a fun and imaginative 'future of cycling vision' demo by Boreal Bikes GmbH at the [Bike2CAV](https://www.bike2cav.at/en/home-2/) consortium presentation at Salzburg Research.\n\nIn 2023, CyCARLA was officially adopted and re-written by [Velovision Labs](https://github.com/velovision) as an AI training and validation environment. It was crucial to the development of [Velovision Rearview](https://velovision.app) and its advanced computer vision algorithms. See Tesla's [simulation presentation (YouTube)](https://www.youtube.com/live/j0z4FweCy4M?si=XWvyaFaxmshTBO1n\u0026t=5715) to get a sense of how CyCARLA is used at Velovision Labs.\n\nThis project is a free, open source fork maintained by [tensorturtle](https://github.com/tensorturtle), the original author of CyCARLA, with the goal of creating a superior, free, and modifiable alternative to indoor cycling games like Zwift.\n\n![](readme_assets/town-15-riding.png)\n\n# Requirements\n\nCommercial indoor cycling games sacrifice graphics, control, and customizability in favor of compatibility with a wide range of devices. CyCARLA is different. CyCARLA requires a relatively high-performance computer, a smart trainer, and a smart steering plate. In return, CyCARLA offers unlimited freedom to roam the numerous maps and modify everything about the environment or the game itself.\n\nTo reiterate, you need the following:\n\n1. A bike, such as [this absolute beauty](https://www.bastioncycles.com/)\n2. [Elite Sterzo](https://www.elite-it.com/en/products/home-trainers/ecosystem-accessories/sterzo-smart) front wheel steering plate.\n3. Smart Trainer, such as [Elite Suito T](https://www.elite-it.com/en/products/home-trainers/interactive-trainers/suito-t)\n4. A gaming computer (with dedicated GPU) running Windows 10 or Ubuntu 22.04. See [more detailed requirements](#computer-requirements)\n\n\n# Installation\n\nCurrently, you need to follow this installation guide to install three different programs. It will then show you how to launch them as a single Application.\n\n## Ubuntu\n\n### 1. Install CARLA Simulator\n\nFull instructions: [see CARLA documentation](https://carla.readthedocs.io/en/latest/start_quickstart/#carla-installation). The following is an abbreviated, recommended way.\n\nDownload [CARLA 0.9.15 pre-compiled ZIP for Ubuntu](https://carla-releases.s3.us-east-005.backblazeb2.com/Linux/CARLA_0.9.15.tar.gz). \n\nWe'll create a new `carla` directory in the home directory to place CARLA content. This is used as the default in following steps so if you decide to change it, pay attention to when this path comes up later.\n\n```\nmkdir -p ~/carla\n```\n\nGo to where the ZIP was downloaded, assumed to be `~/Downloads` and extract it to the new directory.\n```\ncd ~/Downloads\ntar -xvf CARLA_0.9.15.tar.gz -C ~/carla\n```\n\n### 2. Install Cycarla Agent\n\nPlease navigate to [releases](https://github.com/tensorturtle/cycarla/releases) page and download the `cycarla_agent` appropriate for your machine. \n\nAssuming it was downloaded to `~/Downloads`, rename it to `cycarla-gent` and move it to `~/.local/bin`, or somewhere else on PATH.\n\nFor example:\n```\nmv ~/Downloads/cycarla_app-linux-x86_64 ~/.local/bin/cycarla-app\n```\n\n### 3. Install Cycarla App\n\nVery similar to the previous step.\n\nDownload `cycarla_app` from [releases](https://github.com/tensorturtle/cycarla/releases), rename it and move it:\n\nFor example:\n```\nmv ~/Downloads/cycarla_app-linux-x86_64 ~/.local/bin/cycarla-app\n```\n\n### 4. Manual Installation as Single App in Ubuntu\n\nFirst, move all three binaries to a directory in PATH, such as: `~/.local/bin`:\n\nCyCARLA App:\n\n\nCyCARLA Agent:\n```\nmv ~/Downloads/cycarla_agent-linux-x86_64 ~/local/bin/cycarla-agent\n```\n\nNow, all three programs should be runnable just by typing in `carla`, `cycarla-app` or `cycarla-agent` on the command line from anywhere.\n\nNext, we create a single script that launches all three simulataneously, and also terminates them if the script is ended by the user.\n\nCreate a convenient directory for this script:\n```\nmkdir -p ~/cycarla\n```\n\nDownload [the logo icon](/logo/cycarla-logo-icon.png) and put it in that directory.\n\nCreate a bash script:\n```\nvim ~/cycarla/launch-script.sh\n```\n\nWith content:\n```\n#!/bin/bash\n\nCARLA_PATH=\"~/carla\" # default. Feel free to change.\n\ncycarla-agent \u0026\nPID_A=$!\n\ncycarla-app \u0026\nPID_B=$!\n\n# Adopted from CarlaUE4.sh launch script\nUE4_PROJECT_ROOT=$(eval echo \"$CARLA_PATH\")\nchmod +x \"$UE4_PROJECT_ROOT/CarlaUE4/Binaries/Linux/CarlaUE4-Linux-Shipping\"\n\"$UE4_PROJECT_ROOT/CarlaUE4/Binaries/Linux/CarlaUE4-Linux-Shipping\" CarlaUE4 \u0026\nPID_C=$!\n\n# Define a cleanup function to kill both applications\ncleanup() {\n    echo \"Terminating applications...\"\n    kill $PID_A $PID_B $PID_C\n    wait $PID_A $PID_B $PID_C 2\u003e/dev/null\n}\n\n# Trap signals to ensure cleanup happens\ntrap cleanup EXIT INT TERM\n\n# Wait for both processes (this keeps the script running)\nwait $PID_A $PID_B $PID_C\n```\n\nCreate a `cycarla.desktop` file in `~/.local/share/applications`\n\n```\nvim ~/.local/share/applications/cycarla.desktop\n```\nWith content:\n```\n[Desktop Entry]\nVersion=1.0\nType=Application\nName=CyCARLA\nExec=~/cycarla/launch-script.sh\nIcon=~/cycarla/cycarla-logo-icon.png\nTerminal=true\nCategories=Game;\n```\n\nMake sure it's permissioned correctly:\n```\nsudo chmod 664 ~/.local/share/applications/cycarla.desktop\n```\n\nThat's it! Now you should be able to see the CyCARLA App icon in the app menu. Click it to launch everything.\n\n## Windows\n\n### 1. Install CARLA Simulator\n\nDownload [CARLA 0.9.15 pre-compiled ZIP for Windows](https://tiny.carla.org/carla-0-9-15-windows). Other versions can be found [here](https://github.com/carla-simulator/carla/releases)\n\nUnzip it and find `CarlaUE4.exe`. Double click to launch it.\n\nRight-click on the icon and pin it to the taskbar.\n\n\n### Next Steps\n\nComing Soon\n\n**Enjoy your ride!**\n\n![](readme_assets/riding-in-the-park.png)\n\n*Roaming about in CyCARLA - you can go anywhere!*\n\n# Community \u0026 Support\n\n## Pull Requests\n\nCYCARLA accepts Pull Requests. If you have an improvement idea and have experience in Python / Javascript, please go ahead and submit and Issue. Let's discuss!\n\n## Donations\n\nThis is a personal free-time project. If CyCARLA helped you avoid expensive subscriptions and want to see it get better, please consider [making a donation!](https://buy.stripe.com/aEUeVkaAuc8XgP69AB) \n\n## Open Source\n\nCYCARLA is MIT licensed.\n\nCyCARLA is made possible thanks to the following open source projects:\n+ [Unreal Engine](https://github.com/EpicGames)\n+ [CARLA](https://github.com/carla-simulator/carla)\n+ [Pycycling](https://github.com/zacharyedwardbull/pycycling) - major contributions made to this project by [tensorturtle](https://github.com/tensorturtle)\n\n## Computer Requirements\n\nCYCARLA is based Unreal Engine 4, a serious 3D game engine with full customizability, so it'll be more demanding than typical indoor cycling games.\n\n+ CPU: Intel Core i5 6th-gen or better.\n+ GPU: NVIDIA RTX 2070 or better (2080, 3060, 3070, 3080, 4060, 4070, 4080 etc.)\n+ Hard drive: 30GB of free space.\n+ Bluetooth Low Energy (BLE) support.\n+ Internet connection required for installation, not required to run the game.\n\n## Versioning\n\nThis project uses SemVer. \n\nSince two binaries are distributed, they are related as follows:\n+ The two binaries must be compatible within the same major and minor versions (x.y._), where x and y match.\n+ Patch versions (0.0.z) don't need to match - they are used for bug fixes that don't affect the interoperability of the two programs.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftensorturtle%2Fcycarla","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftensorturtle%2Fcycarla","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftensorturtle%2Fcycarla/lists"}