{"id":26577891,"url":"https://github.com/joshuaj03/swheels","last_synced_at":"2026-04-11T00:18:54.535Z","repository":{"id":282519020,"uuid":"948089339","full_name":"joshuaj03/SWheels","owner":"joshuaj03","description":"SWheels - Smart Autonomous Voice-Controlled Wheelchair","archived":false,"fork":false,"pushed_at":"2025-03-15T05:47:58.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-23T04:17:50.797Z","etag":null,"topics":["assistive-technology","autonomous-wheelchair","computer-vision","disability-assistance","disability-tech","healthcare-innovation","machine-learning","main-project","raspberry-pi","robotics","smart-wheelchair","voice-controlled-wheelchair","yolo11"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joshuaj03.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-13T18:22:25.000Z","updated_at":"2025-03-15T06:01:44.000Z","dependencies_parsed_at":"2025-03-15T06:29:02.348Z","dependency_job_id":"3fdc0f63-6842-4a46-b6f5-1bfd0f138ede","html_url":"https://github.com/joshuaj03/SWheels","commit_stats":null,"previous_names":["joshuaj03/swheels"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joshuaj03%2FSWheels","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joshuaj03%2FSWheels/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joshuaj03%2FSWheels/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joshuaj03%2FSWheels/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joshuaj03","download_url":"https://codeload.github.com/joshuaj03/SWheels/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245052724,"owners_count":20553184,"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":["assistive-technology","autonomous-wheelchair","computer-vision","disability-assistance","disability-tech","healthcare-innovation","machine-learning","main-project","raspberry-pi","robotics","smart-wheelchair","voice-controlled-wheelchair","yolo11"],"created_at":"2025-03-23T04:17:54.529Z","updated_at":"2025-12-30T23:39:54.635Z","avatar_url":"https://github.com/joshuaj03.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# SWheels - Smart Autonomous Voice-Controlled Wheelchair\n\n[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.15229054.svg)](https://doi.org/10.5281/zenodo.15229054)\n\n## Overview\nSWheels is an intelligent, voice-controlled wheelchair designed for individuals with partial or complete paralysis. Our primary goal is to implement a robust autopilot mode, allowing the wheelchair to navigate independently from point A to point B. Additionally, SWheels supports multiple control mechanisms, including voice commands and a joystick, ensuring ease of use. It also features automatic speed adjustment for inclines and real-time obstacle detection for enhanced safety.\n\n## Features\n### Phase 1 (Current Implementation)\n- **Voice and Joystick Control**: Users can operate the wheelchair using voice commands or a joystick.\n- **Automatic Speed Adjustment**: The wheelchair adjusts its speed dynamically when going uphill or downhill for safety and comfort.\n- **Incline Lock Mechanism**: Ensures stability on slopes.\n- **Obstacle Detection and Avoidance**: Uses ultrasonic sensors for real-time obstacle avoidance.\n- **Fall Detection \u0026 Alert System**: Sends alerts in case of unexpected falls.\n- **Incline Detection**: Uses the MPU6050 sensor to measure the wheelchair's angle and adjust speed accordingly.\n- **Dash Cam Facility**: Records the wheelchair’s journey for security and review purposes.\n\n### Phase 2 (Planned Features)\n- **Autopilot Mode**: Allows the wheelchair to autonomously navigate from point A to point B.\n- **Path Learning**: The system learns and remembers frequently traveled paths.\n- **Advanced Obstacle Detection**: Uses LiDAR or depth cameras for better navigation.\n- **Fall Detection**: Detects accidental falls and alerts caregivers.\n\n### Phase 3 (Future Enhancements)\n- **Extensive Control for Blind Users**: Integration of a touchscreen display for enhanced accessibility.\n- **Joystick Controls**: Additional navigation options for users with different mobility needs.\n- **Outdoor Use**: Adds GPS navigation for outdoor mobility.\n- **Emergency SOS**: Sends an emergency alert to a designated person in critical situations.\n\n## Technical Stack\n- **Hardware**:\n  - Raspberry Pi 5 (for voice processing, sensor fusion, and motor control)\n  - ESP32 (for real-time motor control and sensor integration, coded in Arduino IDE using C++)\n  - Ultrasonic and IR sensors (for obstacle detection)\n  - Web Camera (for object detection and path understanding using YOLOv11, integrated with Raspberry Pi)\n  - MPU6050 (for incline detection and stability adjustments)\n  - Electric motors with speed regulation\n- **Software**:\n  - Python (for voice command processing, AI/ML models, and system control)\n  - YOLOv11 (for real-time object detection and path understanding)\n  - Gemini API (for natural language understanding)\n  - Flask (for the Progressive Web App interface)\n  - MQTT (for communication between modules)\n\n## How It Works\nSWheels integrates multiple technologies to ensure seamless and intelligent mobility for users. Below is a breakdown of its core functionalities:\n\n### 1. Voice and Joystick Control\n- Users can issue voice commands like \"move forward\" or \"turn left,\" which are processed using the **Gemini API** on Raspberry Pi.\n- The joystick provides an alternative control mechanism for manual navigation.\n\n### 2. Obstacle Detection and Avoidance\n- A **web camera** captures real-time video, and **YOLOv11** detects objects such as doors, walls, and pathways.\n- **Ultrasonic sensors** provide additional real-time distance measurements for close-range obstacle detection.\n- The system fuses data from YOLOv11 and ultrasonic sensors to make precise navigation decisions.\n\n### 3. Incline Detection and Speed Adjustment\n- The **MPU6050 sensor** continuously monitors the wheelchair’s tilt and angle.\n- If the system detects an incline or decline, it automatically adjusts motor speed for a safe and stable ride.\n\n### 4. Autopilot Mode (Planned Feature)\n- The system will use **path learning algorithms** to memorize frequently traveled routes.\n- It will allow autonomous navigation from point A to point B, considering obstacles and terrain conditions.\n\n### 5. Web Interface (PWA)\n- A **Progressive Web App (PWA)** enables remote monitoring and control.\n- Users can access wheelchair diagnostics, battery status, and navigation logs.\n\n## Setup \u0026 Installation\n### Hardware Setup\n1. Assemble the motors, sensors, and microcontrollers as per the provided circuit diagrams.\n2. Flash the ESP32 firmware using PlatformIO or Arduino IDE.\n3. Set up Raspberry Pi 5 with PiOS and install the required dependencies.\n\n## Contributing\nWe welcome contributions! If you'd like to contribute, follow these steps:\n1. Fork the repository\n2. Create a new branch (`feature-new-functionality`)\n3. Commit your changes\n4. Push to your branch and submit a pull request\n\n## License\nThis project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.\n\n## Contact\nFor any questions or collaborations, feel free to reach out:\n- GitHub: [joshuaj03](https://github.com/joshuaj03)\n- LinkedIn: [Joshua Johnson](https://www.linkedin.com/in/joshua-johnson-63b560253/)\n\n## Citation\n\nIf you use this project in your research or work, please cite it:\n\n```bibtex\n@misc{swheels2025,\n  title        = {SWHEELS: THE SMART WHEELCHAIR},\n  author       = {Joshua Johnson, Nandkishore Binraj, Nikhil Manoj, Sourav S Pai, and  Neetha K Natraj},\n  year         = 2025,\n  publisher    = {Zenodo},\n  doi          = {10.5281/zenodo.15229054},\n  url          = {https://doi.org/10.5281/zenodo.15229054}\n}\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoshuaj03%2Fswheels","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoshuaj03%2Fswheels","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoshuaj03%2Fswheels/lists"}