Skip to content

HazemAbuelanin/Awesome_Eyes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 

Repository files navigation

Awesome_Eyes

A journey to mastering engineering through The Triangular Approach — Books, Courses, and Projects — to become a full-rounded engineer.
This is my open notebook, my playbook, and my gift to the community. Note: The repo is undergoing fixations of broken links.


Table of Contents

Introduction

This repository is the complete map of my engineering journey — everything I’m learning, building, and exploring, shared openly.
It’s not just a list of links.
It’s a system: a way to study, grow, and create things that matter.

I study Computer Engineering, but I’m not stopping at textbooks.
My interests span:

  • Robotics & Autonomous Systems
  • Artificial Intelligence
  • PCB & Hardware Design
  • Systems Engineering
  • Mathematics, Programming, and Problem Solving

From the fundamentals to advanced systems, this is where learning transforms into building, and building transforms into breakthroughs.

My mission with Awesome_Eyes is simple:

  1. Share the best resources I’ve found
  2. Show how I apply them
  3. Inspire others to create their own path

The Triangular Approach

Inspired by the Deathly Hallows from Harry Potter — three powerful artifacts that together grant mastery — The Triangular Approach is my framework for deep learning:

deathly hallows

The Three Pillars:

  1. Books – Deep, timeless knowledge
  2. Courses / Tutorials / Papers – Structured, guided learning
  3. Projects – Real-world application

Individually, each pillar is powerful. Together, they create mastery.


Roadmap Overview

Below is the master roadmap — each section contains:

  • Books (theory)
  • Courses / Tutorials / Papers (practice with guidance)
  • Projects (independent application)

Programming and Problem Solving

A comprehensive learning path from zero to hero in programming and problem-solving, following the Trinity Approach: Books + Courses/Tutorials/Papers + Projects.

Table of Contents


Phase 1: Fundamentals

Building the foundation: basic programming concepts and computational thinking.

Books

Courses/Tutorials/Papers

Projects

  • Calculator Application
  • Number Guessing Game
  • To-Do List Manager
  • Simple Text Adventure Game
  • Basic Web Scraper
  • Personal Expense Tracker

Phase 2: Core Programming

Deepening programming knowledge: OOP, design patterns, and software engineering.

Books

Courses/Tutorials/Papers

Projects

  • Library Management System
  • Banking System Simulator
  • Game of Life Implementation
  • Chat Application
  • File Compression Tool
  • Simple Database Engine

Phase 3: Data Structures & Algorithms

Mastering the core of computer science: efficient data handling and algorithmic thinking.

Books

Courses/Tutorials/Papers

Projects

  • Sorting Visualizer
  • Graph Path Finder
  • Binary Search Tree Operations
  • Hash Table Implementation
  • LRU Cache System
  • Expression Evaluator

Phase 4: Advanced Problem Solving

Competitive programming and complex algorithmic challenges.

Books

Courses/Tutorials/Papers

Projects

  • Online Judge System
  • Chess Engine
  • Compiler/Interpreter
  • Network Flow Solver
  • Computational Geometry Toolkit
  • Distributed Systems Simulator

Phase 5: Specialized Domains

Applying problem-solving skills to specific domains.

Books
Machine Learning & AI

Systems Programming

Web Development

Courses/Tutorials/Papers
Machine Learning

Systems

Web Development

Projects

  • Machine Learning: Recommendation System, Computer Vision App, NLP Chatbot, Time Series Forecasting
  • Systems Programming: Custom Shell, Memory Allocator, File System, Network Protocol
  • Web Development: E-commerce Platform, Real-time Collaboration Tool, API Gateway, Progressive Web App

Phase 6: Mastery & Leadership

Research, innovation, and teaching others.

Books

Courses/Tutorials/Papers

  • Graduate-level CS courses (choose your specialization)
  • Research Papers
  • Conference Talks: ICML, NeurIPS, SIGCOMM
  • Tech Company Engineering Blogs: Netflix, Uber, Google
  • Open Source Contributions to major projects

Projects

  • Open Source Library/Framework
  • Research Implementation
  • Startup MVP
  • Teaching Platform
  • Technical Writing
  • Mentorship Program

Problem-Solving Practice Platforms

Beginner to Intermediate

Advanced

Problem Solving Repository

Table of Contents

Overview

This section is designed to:

  • Curate high-quality resources for competitive programming and problem-solving, covering guides, platforms, and tools.
  • Provide practical projects inspired by my competition experience (e.g., algorithm optimization for autonomous vehicles).
  • Integrate with my broader repo, linking to /Programming_Problem_Solving (for coding skills) and /Robotics_Autonomous_Systems (for algorithmic applications).
  • Highlight my journey, showcasing problem-solving skills for robotics competitions and engineering challenges.

The resources below cover awesome lists, platforms, and courses for problem solving, organized for easy access.

Curated Resources

Repositories

Name Link Description
Competitive Programming Guideline github.com/ShahjalalShohag/Competitive-Programming-A-Complete-Guideline Complete guide to competitive programming, including algorithms and tips.
Arabic Competitive Programming github.com/mostafa-saad/ArabicCompetitiveProgramming Arabic resources for competitive programming, great for non-English speakers.
Awesome Competitive Programming github.com/lnishan/awesome-competitive-programming Curated list of competitive programming resources and tools.
Competitive Programming Library github.com/hazemadelkhalel/Competitive-Programming-Library Library and roadmap for competitive programming.

Practice Platforms

Name Link Description
Edabit C++ Challenges edabit.com/challenges/cpp C++ challenges for problem-solving practice.
HackerEarth hackerearth.com/ Platform for coding challenges and hackathons.
VJudge vjudge.net/ Virtual judge for practicing problems from multiple platforms.
LeetCode Interview leetcode.com/interview/ Interview preparation with coding problems.
HackerRank hackerrank.com/ Coding platform with challenges and tutorials.
CodeChef codechef.com/ Competitive programming contests and practice.
NeetCode neetcode.io/ Curated LeetCode problems for interview prep.
Codeforces codeforces.com/group/MWSDmqGsZm/contests Contests for competitive programming practice.
Codewars codewars.com/ Gamified coding challenges.
SPOJ spoj.com/ Sphere Online Judge for algorithm problems.
BeeCrowd judge.beecrowd.com/en/login?redirect=%2Fen%2Fcategories Problem-solving platform with categorized challenges.
LeetCode New Users leetcode.com/problem-list/challenges-for-new-users/?difficulty=EASY&page=1 Easy problems for new users on LeetCode.

Courses and Tutorials

Name Link Description
ITMO Competitive Programming courses.edx.org/courses/course-v1:ITMOx+I2CPx+3T2017/bf78f3a948074b16ba7146b1be3b4850/ edX course on competitive programming.
Azhar ICPC sites.google.com/view/azharicpc/home?authuser=0 ICPC preparation resources and guides.
Arabic Competitive Programming (YouTube) youtube.com/c/ArabicCompetitiveProgramming YouTube channel for Arabic competitive programming tutorials.
Problem Solving Sheet docs.google.com/spreadsheets/d/1iJZWP2nS_OB3kCTjq8L6TrJJ4o-5lhxDOyTaocSYc-k/edit?gid=84654839#gid=84654839 Spreadsheet with problem-solving practice problems.
ICPC Global icpc.global/ Official ICPC website for competitions and resources.

Projects

These projects leverage the provided problem-solving resources to build practical skills, inspired by my competition experience. See /Problem_Solving/projects/ for code and documentation.

  • LeetCode Interview Prep: Solve interview problems using LeetCode Interview and NeetCode for algorithmic optimization in robotics. (Intermediate, competition-ready.)
  • Codeforces Contest Simulator: Participate in virtual contests on Codeforces and implement solutions in C++. (Intermediate, Codeforces-focused.)
  • HackerRank Challenge Solver: Build a Python script to solve challenges on HackerRank for graph algorithms in autonomous navigation. (Beginner, practical.)
  • SPOJ Algorithm Implementation: Implement dynamic programming problems from SPOJ for resource allocation in Shell Eco-marathon. (Advanced, algorithm-focused.)
  • Markdown Guide on CP Roadmap: Summarize competitive programming roadmap based on Competitive Programming Library in /docs/cp_roadmap.md. (Beginner, educational.)

Repository Structure

Problem_Solving/
├── docs/            # Notes and summaries (e.g., cp_roadmap.md)
├── projects/        # Project code and notebooks (e.g., leetcode_solver)
├── README.md        # This file

Foundations of Computer Engineering

Foundations of Computer Engineering Repository

Welcome to the Foundations of Computer Engineering section of my GitHub repository, documenting my journey as a computer engineering student aiming to become a full-rounded engineer with a passion for robotics and autonomous vehicles. This section covers CS/CE Fundamentals and Mathematics, forming the bedrock for advanced topics like robotics, AI, and self-driving systems. Using a trinity approach (Books, Courses/Tutorials/Papers, Projects), this roadmap progresses from beginner to advanced levels, with hands-on projects tailored to robotics applications and my experience in autonomous vehicle competitions.

Table of Contents

Overview

This section is designed to:

  • Provide a structured roadmap for mastering the foundational skills of computer engineering, split into CS/CE Fundamentals and Mathematics.
  • Curate high-quality resources (books, courses, tutorials, papers) for each topic to support learning.
  • Showcase projects that demonstrate practical skills, from basic programming to robotics-relevant applications like pathfinding or sensor interfacing.
  • Integrate with my broader repo, connecting to areas like Robotics and AI, and highlighting my autonomous vehicle competition experience.

The roadmap is divided into CS/CE Fundamentals (software, hardware, and systems) and Mathematics (supporting robotics, AI, and control systems), with topics organized into Beginner, Intermediate, and Advanced levels. Each topic includes resources and projects stored in dedicated folders.

Roadmap Structure

CS/CE Fundamentals

This subcategory covers the core skills of computer science and engineering, from programming to hardware, with an emphasis on applications in robotics and autonomous systems. An introductory topic sets the context, connecting software and hardware to your engineering journey.

Introduction to CS/CE

Objective: Understand the scope of computer engineering, the interplay of hardware and software, and its relevance to robotics and autonomous systems.

Beginner Level: Core Basics

1. Programming Paradigms and Design

Objective: Master basic programming, structured programming, OOP, and design patterns for modular, reusable code.

2. Data Structures and Algorithms (Basics)

Objective: Learn fundamental data structures and algorithms for efficient coding.

3. Electronics Fundamentals

Objective: Understand basic circuits, components, and sensors for hardware applications.

Intermediate Level: Building Blocks

4. Computer Architecture and Organization

Objective: Understand CPU architecture, memory systems, and low-level programming.

5. Operating Systems

Objective: Master processes, scheduling, memory management, and RTOS for real-time systems.

6. Databases

Objective: Learn relational/NoSQL databases, design, and querying for data management.

Advanced Level: Applied Systems

7. Data Structures and Algorithms (Advanced)

Objective: Master advanced data structures and algorithms for optimization and robotics applications.

8. Networks

Objective: Understand network models, protocols, and communication for distributed systems.

9. Microcontrollers and Embedded Systems

Objective: Master microcontroller programming and hardware interfacing for robotics.

10. Software Engineering

Objective: Learn software development lifecycle, version control, and CI/CD for scalable projects.

Mathematics

This subcategory provides the mathematical foundation for computer engineering, robotics, AI, and autonomous systems, progressing from basics to robotics-specific applications.

Beginner Level: Core Basics

1. Discrete Mathematics

Objective: Learn sets, logic, combinatorics, and graph theory for algorithms and digital systems.

2. Algebra and Precalculus

Objective: Master linear equations, matrices, and trigonometry for engineering foundations.

Intermediate Level: Building Blocks

3. Linear Algebra

Objective: Understand matrices, eigenvalues, and transformations for robotics and AI.

4. Calculus

Objective: Master derivatives, integrals, and optimization for dynamic systems.

5. Probability and Statistics

Objective: Learn probability and statistics for handling uncertainty in robotics and AI.

Advanced Level: Applied Mathematics

6. Differential Equations

Objective: Model dynamic systems for robotics and autonomous vehicles.

7. Numerical Methods

Objective: Learn computational methods for solving mathematical problems in engineering.

8. Geometry and Transformations

Objective: Master spatial reasoning and transformations for robotics navigation.

9. Control Theory Basics

Objective: Learn feedback systems and controllers for robotics stability.

Systems and Hardware Repository

Welcome to the Systems and Hardware section of my GitHub repository, documenting my journey as a computer engineering student aiming to become a full-rounded engineer with a focus on robotics and autonomous vehicles. This category bridges Operating Systems and Embedded Systems and Hardware Theory, providing the low-level foundation for robotics applications like real-time control and sensor integration in competitions (e.g., F1TENTH, Shell Eco-marathon). Using the trinity approach (Books, Courses/Tutorials/Papers, Projects), this roadmap progresses from beginner to advanced levels, covering software (e.g., kernel programming, RTOS), hardware (e.g., microcontrollers, FPGA), and their integration for efficient, high-performance systems.

This README serves as the central hub for the Systems and Hardware category, outlining the roadmap, linking to resources, and showcasing projects. Whether you're a beginner, a fellow student, or a recruiter, use this repo to explore low-level systems, embedded hardware, and their applications in robotics and autonomous systems.

Table of Contents

Overview

This section is designed to:

  • Provide a structured roadmap for mastering operating systems and embedded hardware, from basics to advanced applications in robotics.
  • Curate high-quality resources (books, courses, tutorials, papers) to support learning across software and hardware.
  • Showcase projects that demonstrate practical skills, from simple microcontroller setups to competition-ready real-time systems (e.g., F1TENTH vehicle drivers).
  • Integrate with my broader repo, linking to /Foundations (e.g., programming, electronics) and /Robotics_Autonomous_Systems (e.g., RTOS for control).
  • Highlight my journey, emphasizing low-level systems for autonomous vehicle competitions and contributions to open-source robotics.

The roadmap is organized into three levels, covering software (OS kernels, RTOS), hardware (microcontrollers, FPGA), and their integration. Each topic includes resources and projects stored in dedicated folders.

Roadmap Structure

Beginner Level: Core Basics

1. Introduction to Operating Systems and Embedded Systems

Objective: Understand the roles of OS and embedded systems, their interplay, and relevance to robotics.

2. Processes, Threads, and Scheduling

Objective: Master process/thread management and scheduling for efficient systems.

3. Embedded Hardware Basics

Objective: Understand microcontrollers, peripherals, and interfacing for embedded systems.

Intermediate Level: Building Blocks

4. Memory Management and File Systems

Objective: Master memory allocation and file systems for OS and embedded environments.

5. Device Drivers and Interrupts

Objective: Write drivers and handle interrupts for hardware interfacing.

6. Real-Time Operating Systems (RTOS)

Objective: Master RTOS for time-critical robotics applications.

Advanced Level: Applied Systems

7. Kernel Development and Customization

Objective: Build and customize OS kernels for embedded robotics platforms.

8. Advanced Embedded Hardware and Integration

Objective: Master advanced hardware (FPGA, SoC) and hardware-software co-design for robotics.

9. System Security and Optimization

Objective: Secure and optimize OS and embedded systems for robotics applications.

Artificial Intelligence

Artificial Intelligence Learning Roadmap

This roadmap outlines a structured path to master Artificial Intelligence (AI) from beginner to expert levels, covering foundational concepts, core machine learning, deep learning, specialized AI, and cutting-edge topics like Embedded AI and Embodied AI. For each topic, resources are provided in three categories: Books, Courses/Tutorials/Papers, and Projects, aligning with the trinity approach to create a robust GitHub repository.

Beginner Level: Foundations and Basics

1. Introduction to AI

Objective: Understand AI's history, definitions, types, and ethical implications.

  • Books:
    • "Artificial Intelligence: A Guide to Intelligent Systems" by Michael Negnevitsky - Covers AI basics, history, and applications for beginners.
    • "AI Superpowers: China, Silicon Valley, and the New World Order" by Kai-Fu Lee - Explores AI's societal impact and global context.
  • Courses/Tutorials/Papers:
  • Projects:
    • Create a simple chatbot using Python’s chatterbot library to understand basic AI interaction.
    • Write a GitHub README summarizing AI types (narrow, general, superintelligence) with examples.

2. Programming Fundamentals for AI

Objective: Learn Python programming and essential libraries for AI development.

  • Books:
    • "Python Crash Course" by Eric Matthes - Comprehensive guide to Python basics, data structures, and libraries.
    • "Automate the Boring Stuff with Python" by Al Sweigart - Practical Python for beginners (free online).
  • Courses/Tutorials/Papers:
  • Projects:
    • Build a simple calculator in Python to practice functions and control structures.
    • Create a GitHub repo with Python scripts using NumPy and Pandas for basic data manipulation (e.g., analyzing a CSV dataset).

3. Mathematics for AI

Objective: Master linear algebra, calculus, probability, and optimization for AI.

  • Books:
    • "Linear Algebra and Its Applications" by Gilbert Strang - Foundational for vectors and matrices.
    • "Introduction to Probability" by Joseph K. Blitzstein and Jessica Hwang - Covers probability and statistics for AI.
    • "Calculus Made Easy" by Silvanus P. Thompson - Simplified calculus for beginners.
  • Courses/Tutorials/Papers:
    • Course: Mathematics for Machine Learning (Imperial College London, free audit) - Covers linear algebra, calculus, and more.
    • Tutorial: Essence of Linear Algebra (3Blue1Brown, YouTube) - Visual explanations of linear algebra.
    • Paper: "A Tutorial on Principal Component Analysis" (Jonathon Shlens, 2014) - Introduces math for dimensionality reduction.
  • Projects:
    • Implement matrix operations (e.g., multiplication) in Python using NumPy.
    • Create a GitHub repo with Jupyter notebooks solving basic probability problems (e.g., coin toss simulations).

Intermediate Level: Core Machine Learning

4. Machine Learning Fundamentals

Objective: Understand supervised/unsupervised learning, evaluation metrics, and model challenges.

  • Books:
    • "An Introduction to Statistical Learning" by Gareth James et al. - Beginner-friendly ML with R (Python versions available).
    • "Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow" by Aurélien Géron - Practical ML guide.
  • Courses/Tutorials/Papers:
    • Course: Machine Learning by Andrew Ng (Stanford, free audit) - Classic ML course.
    • Tutorial: Scikit-Learn Tutorials - Official guides for ML algorithms.
    • Paper: "A Few Useful Things to Know About Machine Learning" (Pedro Domingos, 2012) - Practical ML insights.
  • Projects:
    • Build a simple classifier (e.g., spam email detection) using scikit-learn.
    • Create a GitHub repo comparing evaluation metrics (accuracy, precision, etc.) on a toy dataset.

5. Supervised Learning Algorithms

Objective: Implement and understand algorithms like regression, decision trees, and SVMs.

  • Books:
    • "Pattern Recognition and Machine Learning" by Christopher Bishop - Detailed on supervised learning.
    • "Machine Learning Yearning" by Andrew Ng - Strategy for building ML models.
  • Courses/Tutorials/Papers:
  • Projects:
    • Predict house prices using linear regression and random forests (dataset: Kaggle’s Boston Housing).
    • Create a GitHub repo with a decision tree classifier for a dataset like Iris.

6. Unsupervised Learning Algorithms

Objective: Learn clustering, dimensionality reduction, and anomaly detection.

  • Books:
    • "Data Mining: Concepts and Techniques" by Jiawei Han et al. - Covers clustering and association rules.
    • "Hands-On Unsupervised Learning Using Python" by Ankur A. Patel - Practical guide for unsupervised methods.
  • Courses/Tutorials/Papers:
  • Projects:
    • Cluster customer data using k-means (dataset: Kaggle’s Mall Customers).
    • Create a GitHub repo visualizing PCA on a high-dimensional dataset.

7. Data Preprocessing and Feature Engineering

Objective: Master data cleaning, normalization, and feature selection.

  • Books:
    • "Feature Engineering for Machine Learning" by Alice Zheng and Amanda Casari - Practical feature engineering guide.
    • "Data Science for Beginners" by Andrew Park - Covers EDA and preprocessing.
  • Courses/Tutorials/Papers:
  • Projects:
    • Preprocess a messy dataset (e.g., Titanic from Kaggle) with handling missing values and encoding.
    • Create a GitHub repo with EDA notebooks visualizing data distributions and correlations.

Advanced Level: Deep Learning and Specialized AI

8. Introduction to Neural Networks

Objective: Understand neural network basics, backpropagation, and optimization.

  • Books:
    • "Deep Learning" by Ian Goodfellow, Yoshua Bengio, and Aaron Courville - Comprehensive deep learning text.
    • "Neural Networks and Deep Learning" by Michael Nielsen - Free online book for beginners.
  • Courses/Tutorials/Papers:
  • Projects:
    • Build a simple feedforward neural network in Python to classify digits (MNIST dataset).
    • Create a GitHub repo with visualizations of backpropagation gradients.

9. Deep Learning Frameworks

Objective: Use TensorFlow/Keras or PyTorch for CNNs and RNNs.

  • Books:
    • "Deep Learning with Python" by François Chollet - Keras-focused practical guide.
    • "Programming PyTorch for Deep Learning" by Ian Pointer - PyTorch for practitioners.
  • Courses/Tutorials/Papers:
  • Projects:
    • Build a CNN for image classification (e.g., CIFAR-10 dataset) using Keras or PyTorch.
    • Create a GitHub repo with a trained RNN for text generation.

10. Reinforcement Learning

Objective: Learn RL concepts and algorithms like Q-learning and DQN.

  • Books:
    • "Reinforcement Learning: An Introduction" by Richard S. Sutton and Andrew G. Barto - Standard RL text (free online).
    • "Deep Reinforcement Learning Hands-On" by Maxim Lapan - Practical RL with PyTorch.
  • Courses/Tutorials/Papers:
  • Projects:
    • Implement Q-learning for a simple game (e.g., FrozenLake in OpenAI Gym).
    • Create a GitHub repo with a DQN agent for a game like CartPole.

11. Natural Language Processing (NLP)

Objective: Master tokenization, embeddings, transformers, and LLMs.

  • Books:
    • "Natural Language Processing with Python" by Steven Bird et al. - NLTK-based NLP basics.
    • "Speech and Language Processing" by Dan Jurafsky and James H. Martin - Comprehensive NLP text.
  • Courses/Tutorials/Papers:
  • Projects:
    • Build a sentiment analysis model using Hugging Face transformers.
    • Create a GitHub repo with a text summarization model using BERT.

12. Computer Vision

Objective: Learn image processing, object detection, and generative models.

  • Books:
    • "Computer Vision: Algorithms and Applications" by Richard Szeliski - Comprehensive CV text (free online).
    • "Deep Learning for Computer Vision with Python" by Adrian Rosebrock - Practical CV guide.
  • Courses/Tutorials/Papers:
  • Projects:
    • Build an object detection model using YOLO (dataset: COCO).
    • Create a GitHub repo with a GAN for generating synthetic images.

Expert Level: Cutting-Edge and Applied AI

13. Generative AI and Advanced Models

Objective: Explore diffusion models, VAEs, and multimodal AI.

  • Books:
    • "Generative Deep Learning" by David Foster - Covers GANs, VAEs, and more.
    • "Deep Learning for Coders with fastai and PyTorch" by Jeremy Howard and Sylvain Gugger - Advanced generative models.
  • Courses/Tutorials/Papers:
  • Projects:
    • Fine-tune a diffusion model for image generation (e.g., Stable Diffusion).
    • Create a GitHub repo with a multimodal AI model combining text and images.

14. AI in Production

Objective: Deploy models, understand MLOps, and manage data pipelines.

  • Books:
    • "Building Machine Learning Powered Applications" by Emmanuel Ameisen - Practical deployment guide.
    • "MLOps: Continuous Delivery and Automation Pipelines in Machine Learning" by Mark Treveil et al.
  • Courses/Tutorials/Papers:
  • Projects:
    • Deploy a classification model using Flask and Docker (e.g., on Heroku).
    • Create a GitHub repo with an end-to-end ML pipeline (data ingestion to deployment).

15. AI Ethics, Bias, and Society

Objective: Understand fairness, explainability, and societal impacts of AI.

  • Books:
    • "Weapons of Math Destruction" by Cathy O’Neil - Explores AI bias and ethics.
    • "The Ethical Algorithm" by Michael Kearns and Aaron Roth - Technical and ethical AI balance.
  • Courses/Tutorials/Papers:
    • Course: AI Ethics (LearnQuest, free audit).
    • Tutorial: FairML Tutorials - Free online fairness tutorials.
    • Paper: "Fairness and Machine Learning" (Barocas et al., 2019) - Comprehensive fairness guide.
  • Projects:
    • Analyze bias in a dataset (e.g., COMPAS dataset) and propose mitigation.
    • Create a GitHub repo with an explainable AI model using SHAP or LIME.

16. Embedded AI

Objective: Deploy AI on resource-constrained devices using optimization techniques.

  • Books:
    • "TinyML: Machine Learning with TensorFlow Lite on Arduino and Ultra-Low-Power Microcontrollers" by Pete Warden and Daniel Situnayake.
    • "Embedded Systems with ARM Cortex-M Microcontrollers in Assembly Language and C" by Yifeng Zhu - Hardware context for AI.
  • Courses/Tutorials/Papers:
    • Course: TinyML (Harvard, free) - Intro to TinyML.
    • Tutorial: TensorFlow Lite for Microcontrollers - Official guide.
    • Paper: "EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks" (Tan and Le, 2019) - Optimization techniques.
  • Projects:
    • Deploy a lightweight CNN on a Raspberry Pi for image classification.
    • Create a GitHub repo with a TinyML model for sensor data (e.g., motion detection).

17. Embodied AI

Objective: Integrate AI with physical systems like robots for real-world interaction.

  • Books:
    • "Probabilistic Robotics" by Sebastian Thrun et al. - Robotics and AI integration.
    • "Embodied Artificial Intelligence" by Rolf Pfeifer and Christian Scheier - Theoretical foundations.
  • Courses/Tutorials/Papers:
    • Course: Robotics Specialization (University of Pennsylvania, free audit).
    • Tutorial: ROS Tutorials - Robot Operating System for embodied AI.
    • Paper: "Sim-to-Real Transfer for Robotic Control with Dynamics Randomization" (Peng et al., 2018).
  • Projects:
    • Build a simple robotic arm controller using RL in a simulated environment (e.g., MuJoCo).
    • Create a GitHub repo with a sim-to-real transfer learning project for a robot.

18. Emerging Topics and Research

Objective: Explore federated learning, quantum AI, multi-agent systems, and AGI pursuits.

  • Books:
    • "Federated Learning" by Qiang Yang et al. - Covers distributed AI systems.
    • "Quantum Machine Learning" by Peter Wittek - Intro to quantum AI.
  • Courses/Tutorials/Papers:
  • Projects:
    • Implement a federated learning model for a distributed dataset.
    • Create a GitHub repo with a literature review of recent AI papers (e.g., from arXiv).

Artificial Intelligence and Machine Learning Resources Repository

Stars Forks License

Table of Contents

Overview

This repository is a curated collection of AI and ML resources, aimed at:

  • Providing structured roadmaps for learning AI/ML from zero to advanced levels, with a focus on robotics applications (e.g., computer vision for autonomous vehicles).
  • Curating high-quality resources including repositories, books, courses, papers, and tools, selected for their relevance and accessibility.
  • Offering practical projects inspired by my competition experience, such as vision models for F1TENTH or optimization for Shell Eco-marathon.
  • Integrating with my broader robotics engineering journey, linking to categories like robotics and embedded systems.

The resources below are organized by type, with brief descriptions and links to their potential use in robotics or autonomous systems.

Curated Resources

Repositories

Name Link Description
AI Expert Roadmap github.com/AMAI-GmbH/AI-Expert-Roadmap Structured roadmap to becoming an AI expert, covering fundamentals to advanced topics.
Best of ML Python github.com/lukasmasuch/best-of-ml-python Curated list of the best Python libraries for machine learning.
Jetson Inference github.com/dusty-nv/jetson-inference Deep learning inference for NVIDIA Jetson, ideal for embedded robotics vision.
Machine Learning Tutorials github.com/ujjwalkarn/Machine-Learning-Tutorials Tutorials and code for ML concepts, great for beginners in robotics data processing.
Awesome Deep Learning github.com/ChristosChristofidis/awesome-deep-learning Comprehensive list of deep learning resources and frameworks.
Updated AI Roadmap github.com/h9-tec/Updated_AI_roadmap Updated roadmap for AI learning, including ML and DL paths.
Awesome Machine Learning github.com/josephmisiti/awesome-machine-learning Curated ML frameworks, libraries, and software.
LibFaceDetection github.com/ShiqiYu/libfacedetection Face detection library, useful for robotics human-robot interaction.
SHAP github.com/shap/shap Explainable AI tool for model interpretability in ML.
ColossalAI github.com/hpcaitech/ColossalAI Scalable deep learning framework for large models.
CrewAI github.com/crewAIInc/crewAI Framework for building AI agents, applicable to autonomous systems.
ToolJet github.com/ToolJet/ToolJet Low-code platform for building AI/ML apps.
Machine Learning Specialization (Coursera) github.com/greyhatguy007/Machine-Learning-Specialization-Coursera Code and notes for Coursera's ML specialization.
Mathematics for ML & Data Science (Coursera) github.com/greyhatguy007/Mathematics-for-Machine-Learning-and-Data-Science-Specialization-Coursera Math resources for ML, essential for robotics optimization.
DeepLearning.AI Stanford ML Specialization github.com/shantanu1109/Coursera-DeepLearning.AI-Stanford-University-Machine-Learning-Specialization Code for Stanford's ML specialization on Coursera.
Learning Deep Learning github.com/patrick-llgc/Learning-Deep-Learning Hands-on deep learning projects and notes.
Deep Live Cam github.com/hacksider/Deep-Live-Cam Real-time face swapping using DL, fun for robotics HRI.
Movement (Neuroinformatics) github.com/neuroinformatics-unit/movement Movement analysis tool using ML for robotics behavior.
500+ AI/ML/CV/NLP Projects github.com/ashishpatel26/500-AI-Machine-learning-Deep-learning-Computer-vision-NLP-Projects-with-code Massive collection of AI/ML projects with code.
ML System Design github.com/ML-SystemDesign/MLSystemDesign Guide to ML system design for scalable applications.
Vision-Language Models Overview github.com/zli12321/Vision-Language-Models-Overview Overview of VLMs for computer vision in robotics.
PyTorch Tutorials github.com/niconielsen32/pytorch-tutorialsg Tutorials for PyTorch, key for DL in robotics.
Annotated DL Paper Implementations github.com/labmlai/annotated_deep_learning_paper_implementations Code implementations of DL papers with annotations.
AWS AI Stack github.com/serverless/aws-ai-stack AWS stack for AI applications.
Deep Dynamics github.com/linklab-uva/deep-dynamics Deep learning for robot dynamics modeling.
Hands-On LLMs github.com/HandsOnLLM/Hands-On-Large-Language-Models Hands-on projects with large language models.
GPU Puzzles github.com/srush/GPU-Puzzles Puzzles for learning GPU programming.
Home Assistant Core github.com/home-assistant/core Open-source home automation platform with AI integration.
OpenVINO github.com/openvinotoolkit/openvino Toolkit for optimizing DL models on hardware.
Computer Vision Projects github.com/avs-abhishek123/Computer-Vision-Projects Projects in computer vision for robotics.
Prompt Engineering Guide github.com/dair-ai/Prompt-Engineering-Guide Guide to prompt engineering for LLMs.
LLM Course github.com/mlabonne/llm-course Course on large language models.
GenAI Agents github.com/NirDiamant/GenAI_Agents Generative AI agents for tasks.
RAG Techniques github.com/NirDiamant/RAG_Techniques Retrieval-Augmented Generation techniques.
Made With ML github.com/GokuMohandas/Made-With-ML ML engineering guide with code.
PyTorch Deep Learning github.com/mrdbourke/pytorch-deep-learning PyTorch projects for DL.
DMLS Book github.com/chiphuyen/dmls-book Book on designing ML systems.
Open3D-ML github.com/isl-org/Open3D-ML ML for 3D data processing in robotics.
SALT github.com/anuragxel/salt SALT framework for ML.
Segment Anything github.com/facebookresearch/segment-anything Model for image segmentation in vision tasks.
365 Days CV Learning github.com/ashishpatel26/365-Days-Computer-Vision-Learning-Linkedin-Post Daily CV learning posts.
500+ AI/ML/CV/NLP Projects github.com/ashishpatel26/500-AI-Machine-learning-Deep-learning-Computer-vision-NLP-Projects-with-code Extensive project list (duplicate for emphasis).
CUDA Python github.com/NVIDIA/cuda-python Python bindings for CUDA in GPU-accelerated ML.
CuPy github.com/cupy/cupy NumPy-like library for GPU-accelerated computing.
Jetson Inference github.com/dusty-nv/jetson-inference DL inference for Jetson hardware (duplicate for emphasis).
EmLearn github.com/emlearn/emlearn ML for embedded systems.
Arabic NLP Preprocessing github.com/h9-tec/Arabic_nlp_preprocessing NLP preprocessing for Arabic text.
LLMs Collection github.com/IbrahimSobh/llms Collection of large language models.
Deep Learning Tips & Tricks github.com/h9-tec/Deep_learning_models_tips_tricks Tips for DL models.
ML YouTube Courses github.com/dair-ai/ML-YouTube-Courses Curated ML YouTube courses.
Awesome Computer Vision github.com/jbhuang0604/awesome-computer-vision Curated CV resources (duplicate for emphasis).
Real-Time Object Distance Measurement github.com/lucifertrj/Real-Time-Object-Distance-Measurement Real-time distance measurement using CV.
YOLOs C++ github.com/Geekgineer/YOLOs-CPP YOLO implementations in C++.
Awesome Computer Vision github.com/jbhuang0604/awesome-computer-vision Awesome CV list (duplicate for emphasis).
ML For Beginners (Microsoft) github.com/microsoft/ML-For-Beginners ML for beginners, with robotics applications.
Start Machine Learning github.com/louisfb01/start-machine-learning Starter guide for ML (duplicate for emphasis).
365 Data Science 365datascience.com/ Data science learning platform.
Awesome Computer Vision github.com/jbhuang0604/awesome-computer-vision Awesome CV (duplicate for emphasis).
Deep Learning Drizzle deep-learning-drizzle.github.io/ DL resources and papers.
DeepLearning.AI deeplearning.ai/ DL courses and resources.

Books

Name Link Description
Deep Learning on Embedded Systems dokumen.pub/deep-learning-on-embedded-systems-a-hands-on-approach-using-jetson-nano-and-raspberry-pi-first-edition-9781394269273-9781394269266-9781394269280-9781394269297.html Hands-on DL for embedded systems like Jetson Nano.
Deep Learning Book deeplearningbook.org Free book on deep learning fundamentals.

Courses and Tutorials

Name Link Description
Machine Learning Specialization (Coursera) coursera.org/specializations/machine-learning-introduction Intro to ML with practical projects.
NVIDIA CUDA C Programming Guide docs.nvidia.com/cuda/cuda-c-programming-guide/index.html Guide to CUDA programming for GPU acceleration.
NVIDIA CUDA Contents docs.nvidia.com/cuda/cuda-c-programming-guide/contents.html Detailed CUDA contents.
Object Tracking Guide encord.com/blog/object-tracking-guide/ Guide to object tracking in CV.
Edge AI Foundation edgeaifoundation.org/ Foundation for edge AI in embedded systems.
AI-900 Microsoft Course learn.microsoft.com/en-us/training/courses/ai-900t00 AI fundamentals course.
Hesham Asem Playlists youtube.com/@HeshamAsem/playlists Playlists on AI and ML topics.
DL YouTube Courses github.com/dair-ai/ML-YouTube-Courses Curated ML YouTube courses.
GPU Architecture Series youtube.com/watch?v=3iHag4k4yEg&list=PLFhc0MFC8MiCDOh3cGFji3qQfXziB9yOw Series on GPU architecture.
Awesome Computer Vision github.com/jbhuang0604/awesome-computer-vision Awesome CV resources (duplicate for emphasis).
Real-Time Object Distance Measurement github.com/lucifertrj/Real-Time-Object-Distance-Measurement Real-time distance measurement using CV.
YOLOs C++ github.com/Geekgineer/YOLOs-CPP YOLO in C++ for object detection.
AI for Beginners (Microsoft) microsoft.github.io/AI-For-Beginners/ AI intro for beginners.
Start Machine Learning github.com/louisfb01/start-machine-learning Starter guide for ML.
365 Data Science 365datascience.com/ Data science platform.
Awesome Computer Vision github.com/jbhuang0604/awesome-computer-vision Awesome CV (duplicate for emphasis).
Deep Learning Drizzle deep-learning-drizzle.github.io/ DL resources.
DataCamp datacamp.com/ Data science and ML courses.
ML Roadmap and Projects github.com/h9-tec/Machine-learning-roadmap-and-projects Roadmap and projects for ML.
Stanford Machine Learning Course youtube.com/playlist?list=PLoROMvodv4rMiGQp3WXShtMGgzqpfVfbU Stanford's ML course videos.
Awesome Computer Vision github.com/jbhuang0604/awesome-computer-vision Awesome CV (duplicate for emphasis).
Deep Learning Drizzle deep-learning-drizzle.github.io/ DL resources (duplicate for emphasis).
DeepLearning.AI deeplearning.ai/ DL courses (duplicate for emphasis).

Papers

Name Link Description
New Neural Network with 500 Billion Parameters mltechniques.com/2022/04/05/new-neural-network-with-500-billion-parameters/ Paper on large-scale neural networks.

YouTube Channels and Videos

Name Link Description
Neural Network Lecture youtube.com/watch?v=i_LwzRVP7bg&list=PLWKjhJtqVAblStefaz_YOVpDWqcRScc2s Lecture on neural networks.
DL YouTube Courses github.com/dair-ai/ML-YouTube-Courses Curated DL YouTube courses.
GPU Architecture Series youtube.com/watch?v=3iHag4k4yEg&list=PLFhc0MFC8MiCDOh3cGFji3qQfXziB9yOw Series on GPU architecture.
DL YouTube Courses github.com/dair-ai/ML-YouTube-Courses Curated DL YouTube courses (duplicate for emphasis).

Platforms and Datasets

Name Link Description
Kaggle kaggle.com/ Platform for datasets and ML competitions.
OpenCV AI Engineer Roadmap opencv.org/blog/ai-engineer-roadmap/ Roadmap for AI engineers using OpenCV.
Deep Learning Drizzle deep-learning-drizzle.github.io/ DL resources and papers (duplicate for emphasis).
DataCamp datacamp.com/ Data science courses (duplicate for emphasis).
ML Roadmap and Projects github.com/h9-tec/Machine-learning-roadmap-and-projects ML roadmap and projects (duplicate for emphasis).
Stanford Machine Learning Course youtube.com/playlist?list=PLoROMvodv4rMiGQp3WXShtMGgzqpfVfbU Stanford's ML course (duplicate for emphasis).
Awesome Computer Vision github.com/jbhuang0604/awesome-computer-vision Awesome CV resources (duplicate for emphasis).
Deep Learning Drizzle deep-learning-drizzle.github.io/ DL resources (duplicate for emphasis).
365 Data Science 365datascience.com/ Data science platform (duplicate for emphasis).
Awesome Computer Vision github.com/jbhuang0604/awesome-computer-vision Awesome CV (duplicate for emphasis).
Deep Learning Drizzle deep-learning-drizzle.github.io/ DL resources (duplicate for emphasis).
DeepLearning.AI deeplearning.ai/ DL courses (duplicate for emphasis).

Projects

These projects leverage the provided resources to build practical AI/ML skills, inspired by my competition experience. See /projects/ for code and documentation.

  • Jetson Vision Model: Implement a real-time vision model using Jetson Inference for F1TENTH vehicle detection. (Intermediate, robotics-focused.)
  • SHAP Model Interpretation: Use SHAP to explain a ML model for sensor data in Shell Eco-marathon optimization. (Advanced, explainable AI.)
  • CrewAI Agent for Robotics: Build an AI agent using CrewAI for task automation in autonomous systems. (Intermediate, agent-based.)
  • ColossalAI Large Model Training: Train a large model using ColossalAI for robotics data. (Advanced, scalable DL.)
  • Segment Anything for Robotics: Apply Segment Anything to segment objects in robot camera feeds. (Intermediate, CV project.)
  • Prompt Engineering for LLMs: Create prompts for robotics tasks using Prompt Engineering Guide. (Beginner, LLM-focused.)
  • RAG Technique Implementation: Implement Retrieval-Augmented Generation using RAG Techniques for a robotics Q&A system. (Advanced, GenAI.)
  • Made-With-ML Pipeline: Build an ML pipeline using Made With ML for autonomous vehicle data. (Intermediate, ML engineering.)
  • PyTorch DL Model: Train a model using PyTorch Deep Learning for image classification in robotics. (Beginner, DL hands-on.)
  • DMLS Book Project: Implement a chapter project from DMLS Book for designing an ML system in robotics. (Advanced, system design.)
  • Open3D-ML Point Cloud Processing: Process 3D data using Open3D-ML for robot perception. (Intermediate, 3D ML.)
  • SALT Framework Application: Use SALT for a simple ML task in robotics. (Beginner, framework intro.)
  • 365 Days CV Challenge: Complete a CV project from 365 Days CV Learning for object detection. (Intermediate, daily challenge.)
  • CUDA Python Acceleration: Accelerate a ML model using CUDA Python for GPU performance in robotics. (Advanced, GPU programming.)
  • CuPy Array Processing: Use CuPy for array operations in a robotics simulation. (Intermediate, GPU NumPy.)
  • Jetson Inference Robotics Vision: Apply Jetson Inference for real-time vision on embedded hardware. (Intermediate, embedded DL.)
  • EmLearn Embedded ML: Deploy a ML model on microcontroller using EmLearn for robot edge computing. (Advanced, embedded ML.)
  • Arabic NLP Preprocessing: Preprocess Arabic text for NLP tasks using Arabic NLP Preprocessing in a multilingual robot system. (Intermediate, NLP.)
  • LLMs Collection: Experiment with LLMs using LLMs Collection for robot natural language processing. (Advanced, LLMs.)
  • DL Tips & Tricks: Apply tips from Deep Learning Tips & Tricks to optimize a model for robotics. (Intermediate, DL optimization.)
  • ML YouTube Courses: Follow a course from ML YouTube Courses to build a simple ML project. (Beginner, video-based learning.)
  • Awesome Computer Vision: Build a CV project using resources from Awesome Computer Vision for robot vision. (Intermediate, CV-focused.)
  • Real-Time Object Distance Measurement: Implement Real-Time Object Distance Measurement for robot navigation. (Intermediate, CV project.)
  • YOLOs C++: Use YOLOs C++ for object detection in a robotics application. (Advanced, C++ DL.)
  • ML For Beginners: Complete a beginner project from ML For Beginners (Microsoft) for robotics data classification. (Beginner, intro ML.)
  • Start Machine Learning: Build a simple ML model using Start Machine Learning for sensor data. (Beginner, starter guide.)
  • 365 Data Science: Analyze robotics data using resources from 365 Data Science. (Intermediate, data science.)
  • Deep Learning Drizzle: Review papers from Deep Learning Drizzle and implement a DL technique. (Advanced, paper-based.)
  • DataCamp: Complete a DataCamp course on ML and apply it to a robotics dataset. (Beginner, interactive learning.)
  • ML Roadmap and Projects: Follow the ML Roadmap and Projects to build a full ML pipeline for autonomous navigation. (Intermediate, roadmap-driven.)
  • Stanford Machine Learning Course: Implement a project from Stanford Machine Learning Course for robot learning. (Advanced, course-based.)
  • Awesome Computer Vision: Develop a vision system using Awesome Computer Vision. (Intermediate, CV project.)
  • Deep Learning Drizzle: Explore DL papers from Deep Learning Drizzle for a robotics DL project. (Advanced, research-focused.)
  • 365 Data Science: Use 365 Data Science for data analysis in robotics. (Intermediate, data-focused.)
  • Awesome Computer Vision: Build another CV project from Awesome Computer Vision. (Intermediate, CV duplicate for emphasis.)
  • Deep Learning Drizzle: Implement a DL technique from Deep Learning Drizzle for robot perception. (Advanced, DL duplicate for emphasis.)
  • DeepLearning.AI: Complete a course project from DeepLearning.AI for DL in robotics. (Intermediate, course duplicate for emphasis.)

Systems and Hardware

Welcome to the Systems and Hardware section of my GitHub repository, documenting my journey as a computer engineering student aiming to become a full-rounded engineer with a focus on robotics and autonomous vehicles. This category bridges Operating Systems and Embedded Systems and Hardware Theory, providing the low-level foundation for robotics applications like real-time control and sensor integration in competitions (e.g., F1TENTH, Shell Eco-marathon). Using the trinity approach (Books, Courses/Tutorials/Papers, Projects), this roadmap progresses from beginner to advanced levels, covering software (e.g., kernel programming, RTOS), hardware (e.g., microcontrollers, FPGA), and their integration for efficient, high-performance systems.

This README serves as the central hub for the Systems and Hardware category, outlining the roadmap, linking to resources, and showcasing projects. Whether you're a beginner, a fellow student, or a recruiter, use this repo to explore low-level systems, embedded hardware, and their applications in robotics and autonomous systems.

Table of Contents

Overview

This section is designed to:

  • Provide a structured roadmap for mastering operating systems and embedded hardware, from basics to advanced applications in robotics.
  • Curate high-quality resources (books, courses, tutorials, papers) to support learning across software and hardware.
  • Showcase projects that demonstrate practical skills, from simple microcontroller setups to competition-ready real-time systems (e.g., F1TENTH vehicle drivers).
  • Integrate with my broader repo, linking to /Foundations (e.g., programming, electronics) and /Robotics_Autonomous_Systems (e.g., RTOS for control).
  • Highlight my journey, emphasizing low-level systems for autonomous vehicle competitions and contributions to open-source robotics.

The roadmap is organized into three levels, covering software (OS kernels, RTOS), hardware (microcontrollers, FPGA), and their integration. Each topic includes resources and projects stored in dedicated folders.

Roadmap Structure

Beginner Level: Core Basics

1. Introduction to Operating Systems and Embedded Systems

Objective: Understand the roles of OS and embedded systems, their interplay, and relevance to robotics.

2. Processes, Threads, and Scheduling

Objective: Master process/thread management and scheduling for efficient systems.

3. Embedded Hardware Basics

Objective: Understand microcontrollers, peripherals, and interfacing for embedded systems.

Intermediate Level: Building Blocks

4. Memory Management and File Systems

Objective: Master memory allocation and file systems for OS and embedded environments.

5. Device Drivers and Interrupts

Objective: Write drivers and handle interrupts for hardware interfacing.

6. Real-Time Operating Systems (RTOS)

Objective: Master RTOS for time-critical robotics applications.

Advanced Level: Applied Systems

7. Kernel Development and Customization

Objective: Build and customize OS kernels for embedded robotics platforms.

8. Advanced Embedded Hardware and Integration

Objective: Master advanced hardware (FPGA, SoC) and hardware-software co-design for robotics.

9. System Security and Optimization

Objective: Secure and optimize OS and embedded systems for robotics applications.

Section Structure

The section is organized as follows:

Systems_Hardware/ ├── Introduction/ │ ├── docs/ (summaries, notes) │ ├── projects/ (scheduler simulator, interrupt handler) ├── Processes_Threads_Scheduling/ ├── Embedded_Hardware_Basics/ ├── Memory_Management_File_Systems/ ├── Device_Drivers_Interrupts/ ├── RTOS/ ├── Kernel_Development/ ├── Advanced_Embedded_Hardware/ ├── System_Security_Optimization/ ├── docs/ (general documentation, progress tracker) ├── README.md

Robotics and Autonomous Systems

Welcome to the Robotics and Autonomous Systems section of my GitHub repository, documenting my journey as a computer engineering student passionate about robotics and autonomous vehicles. This roadmap builds on my experience in competitions like F1TENTH and Shell Eco-marathon, where I’ve worked on energy-efficient planners and autonomous navigation. It covers the full spectrum from foundational concepts to cutting-edge applications, with a focus on the core stacks of Perception, SLAM, Planning, and Controlling, alongside critical areas like sensor fusion, modeling, and hardware selection. Using the trinity approach (Books, Courses/Tutorials/Papers, Projects), this roadmap progresses from beginner to expert levels, integrating software (ROS/ROS2, Python/C++), simulators (Gazebo, CARLA, Webots), and hardware (sensors, motors, microcontrollers).

This README serves as the central hub for the Robotics and Autonomous Systems category, outlining the roadmap, linking to resources, and showcasing projects. Whether you’re a beginner, a fellow student, or a recruiter, use this repo to explore robotics fundamentals, advanced autonomous systems, and practical applications in competitions.

Table of Contents

Overview

This section is designed to:

  • Provide a structured roadmap for mastering robotics and autonomous systems, from basics to competition-ready applications.
  • Curate high-quality resources (books, courses, tutorials, papers) to support learning across software, simulators, and hardware.
  • Showcase projects that demonstrate practical skills, from simple Arduino bots to full autonomous vehicle systems in CARLA, tailored to my competition experience.
  • Integrate with my broader repo, linking to /Foundations (e.g., control theory, programming) and /Artificial_Intelligence (e.g., RL for navigation).
  • Highlight my journey, emphasizing autonomous vehicle competitions and contributions to open-source robotics (e.g., Autotronics Lab).

The roadmap is organized into four levels, covering software (ROS/ROS2, algorithms), simulators (Gazebo, CARLA, Webots), and hardware (sensors, motors, custom platforms). Each topic includes resources and projects stored in dedicated folders.

Roadmap Structure

Beginner Level: Foundations and Basics

1. Introduction to Robotics and Autonomous Systems

Objective: Understand robotics fundamentals, types, components, and their relevance to autonomous vehicles.

2. Robotics Hardware Fundamentals

Objective: Learn sensors, actuators, and microcontrollers for building physical robots.

3. Software Fundamentals for Robotics

Objective: Master programming and ROS/ROS2 for robotics development.

4. Introduction to Simulators

Objective: Learn to use simulators for safe testing of robotics algorithms.

Intermediate Level: Core Stacks

5. Perception

Objective: Process sensor data for environmental understanding (e.g., object detection, lane tracking).

6. SLAM (Simultaneous Localization and Mapping)

Objective: Enable robots to localize and map environments simultaneously.

7. Planning

Objective: Develop global and local path planners for robot navigation.

8. Controlling

Objective: Design controllers for precise robot/vehicle motion.

Advanced Level: Integration and Complex Systems

9. Sensor Fusion and State Estimation

Objective: Integrate multi-sensor data for robust state estimation.

10. Kinematics, Dynamics, and Modeling

Objective: Model robot motion and physical interactions for accurate control.

11. Hardware Selection and Integration

Objective: Choose and integrate sensors, motors, drivers, and microcontrollers for optimal robot design.

Expert Level: Real-World and Cutting-Edge Applications

12. Advanced Autonomous Systems and Deployment

Objective: Deploy competition-ready autonomous systems with multi-robot coordination and real-world integration.

Repository Structure

The repository is organized as follows:

Robotics_Autonomous_Systems/
├── Introduction/
│   ├── docs/ (summaries, notes)
│   ├── projects/ (ROS node, Gazebo sim)
├── Hardware_Fundamentals/
├── Software_Fundamentals/
├── Simulators_Introduction/
├── Perception/
├── SLAM/
├── Planning/
├── Controlling/
├── Sensor_Fusion/
├── Kinematics_Dynamics_Modeling/
├── Hardware_Selection_Integration/
├── Advanced_Autonomous_Systems/
├── docs/ (general documentation, progress tracker)
├── README.md

PCB Design and Electronics

Welcome to the PCB Design and Electronics section of my GitHub repository, documenting my journey as a computer engineering student passionate about robotics and autonomous vehicles. This category focuses on designing, building, and testing printed circuit boards (PCBs) and electronics, critical for creating custom hardware for robotics projects like autonomous vehicle controllers in competitions (e.g., F1TENTH, Shell Eco-marathon). Using the trinity approach (Books, Courses/Tutorials/Papers, Projects), this roadmap progresses from beginner to advanced levels, covering software (e.g., KiCad, Eagle), hardware (e.g., components, soldering), and testing (e.g., oscilloscopes, multimeters). It integrates with my broader repo, linking to /Foundations (electronics basics) and /Robotics_Autonomous_Systems (hardware integration).

This README serves as the central hub for the PCB Design and Electronics category, outlining the roadmap, linking to resources, and showcasing projects. Whether you're a beginner, a fellow student, or a recruiter, use this repo to explore PCB design, electronics, and their applications in robotics.

Table of Contents

Overview

This section is designed to:

  • Provide a structured roadmap for mastering PCB design and electronics, from basic circuits to advanced robotics hardware.
  • Curate high-quality resources (books, courses, tutorials, papers) to support learning across design, fabrication, and testing.
  • Showcase projects that demonstrate practical skills, from simple LED circuits to custom PCBs for autonomous vehicle controllers.
  • Integrate with my broader repo, linking to /Foundations (e.g., analog/digital electronics) and /Robotics_Autonomous_Systems (e.g., sensor integration).
  • Highlight my journey, emphasizing custom hardware for robotics competitions and contributions to open-source projects at Autotronics Research Lab.

The roadmap is organized into three levels, covering software (PCB design tools), hardware (components, soldering), and testing (debugging, validation). Each topic includes resources and projects stored in dedicated folders.

Roadmap Structure

Beginner Level: Core Basics

1. Introduction to Electronics for PCB Design

Objective: Understand fundamental electronics concepts for PCB design, building on Foundations' electronics.

2. PCB Fundamentals and Tools

Objective: Learn PCB design principles and tools like KiCad and Eagle.

3. Component Selection and Circuit Design

Objective: Choose appropriate components and design basic circuits for PCBs.

Intermediate Level: Design and Fabrication

4. Schematic Capture and PCB Layout

Objective: Master schematic design and PCB layout for functional boards.

5. PCB Fabrication and Assembly

Objective: Fabricate and assemble PCBs, including soldering and component placement.

6. Testing and Debugging PCBs

Objective: Test and debug PCBs using tools like multimeters and oscilloscopes.

Advanced Level: Optimization and Integration

7. Advanced PCB Design for Robotics

Objective: Design optimized PCBs for robotics applications, considering signal integrity and power efficiency.

8. PCB Integration with Embedded Systems

Objective: Integrate PCBs with embedded systems for robotics applications (e.g., motor controllers, sensor fusion).

Repository Structure

The repository is organized as follows:

PCB_Design_Electronics/
├── Introduction/
│   ├── docs/ (summaries, notes)
│   ├── projects/ (LED circuit, RC analysis)
├── PCB_Fundamentals/
├── Component_Selection/
├── Schematic_Capture_Layout/
├── Fabrication_Assembly/
├── Testing_Debugging/
├── Advanced_PCB_Design/
├── PCB_Integration/
├── docs/ (general documentation, progress tracker)
├── README.md

Self Driving Vehicles

Table of Contents

Overview

This section is designed to:

  • Curate high-quality resources for learning and developing self-driving car technologies, with a focus on perception, planning, and control.
  • Provide practical projects inspired by my competition experience (e.g., F1TENTH racing, Shell Eco-marathon).
  • Integrate with my broader repo, linking to /Robotics_Autonomous_Systems (for ROS) and /Artificial_Intelligence (for perception models).
  • Highlight my journey, showcasing skills in autonomous vehicle navigation and control.

The resources below cover repositories, books, courses, and datasets for self-driving vehicles, organized for easy access and practical application.

Curated Resources

Repositories

Name Link Description
Awesome Self-Driving Car github.com/daohu527/awesome-self-driving-car Curated list of self-driving car resources, covering tools, datasets, and frameworks.
Awesome Autonomous Vehicles github.com/manfreddiaz/awesome-autonomous-vehicles Comprehensive list of autonomous vehicle resources, including perception and planning tools.
Self-Driving-Ish CV System github.com/iwatake2222/self-driving-ish_computer_vision_system Computer vision system for self-driving, focusing on lane detection and object recognition.
Self-Driving Cars github.com/qiaoxu123/Self-Driving-Cars Collection of self-driving car projects and resources, with code examples.
Awesome Vehicle Security github.com/jaredthecoder/awesome-vehicle-security Resources for securing autonomous vehicles, critical for safe deployment.
AutoCarROS2 github.com/winstxnhdw/AutoCarROS2 ROS2-based autonomous car framework, ideal for F1TENTH-style navigation.
F1TENTH RL github.com/MichaelBosello/f1tenth-RL Reinforcement learning for F1TENTH racing, focusing on path optimization.

Books

Name Link Description
Self-Driving Car Resources github.com/ndrplz/self-driving-car Curated list of books and resources for self-driving cars, covering theory and practice.

Courses and Tutorials

Name Link Description
Coursera Self-Driving Cars Specialization coursera.org/specializations/self-driving-cars Comprehensive course on self-driving cars, covering perception, planning, and control (free audit available).
SAE J3016 Standard sae.org/standards/content/j3016_201806/ Standard defining autonomy levels, essential for understanding self-driving systems.
Autonomous Driving Survey arxiv.org/abs/2003.04882 Survey paper on autonomous driving technologies and challenges.
Self-Driving Car Playlist youtube.com/watch?v=wcibIqiRb04&list=PL8EeqqtDev54yyF5-o2jUEOhAm2GSZm6e&index=4 YouTube playlist covering self-driving car concepts, great for visual learners.
Pure Pursuit in ROS Noetic medium.com/@jefffer705/pure-pursuit-in-ros-noetic-7b2c0a3c36ef Tutorial on implementing Pure Pursuit algorithm in ROS for vehicle path tracking.
Low-Cost Path to Self-Driving Engineer linkedin.com/pulse/low-cost-path-become-self-driving-cars-engineer-ricardo-tellez/ Guide to becoming a self-driving car engineer with affordable resources.
Autonomous Driving Intro youtube.com/watch?v=eOevF5jFSoc Video introduction to autonomous driving concepts and applications.

Projects and Datasets

Name Link Description
KITTI Dataset cvlibs.net/datasets/kitti/ Industry-standard dataset for autonomous driving, with LiDAR, camera, and GPS data.
Apollo Auto github.com/ApolloAuto/apollo Open-source autonomous driving platform, supporting end-to-end vehicle control.
Gym-Ignition github.com/robotology-legacy/gym-ignition Gym environment for Ignition Gazebo, ideal for RL in autonomous driving.
Autoware Universe autowarefoundation.github.io/autoware_universe/main/ Open-source autonomous driving stack, with ROS2 integration for navigation.

Projects

These projects leverage the provided resources to build practical skills, inspired by my competition experience. See /Self_Driving_Vehicles/projects/ for code and documentation.

  • KITTI Dataset Analysis: Use the KITTI Dataset to process LiDAR and camera data for object detection in a Jupyter notebook. (Intermediate, builds perception skills.)
  • Pure Pursuit Path Tracking: Implement the Pure Pursuit algorithm using Pure Pursuit in ROS Noetic in a ROS2 node for F1TENTH racing. (Intermediate, competition-ready.)
  • F1TENTH RL Navigation: Build an RL-based navigation system using F1TENTH RL in a simulated environment. (Advanced, competition-focused.)
  • Apollo Auto Simulation: Deploy a basic autonomous driving pipeline with Apollo Auto in a simulator like CARLA. (Advanced, end-to-end autonomy.)
  • Autoware ROS2 Node: Create a ROS2 node for path planning using Autoware Universe for urban driving scenarios. (Intermediate, practical.)
  • Markdown Guide on Autonomy Levels: Summarize SAE J3016 autonomy levels based on SAE J3016 Standard in /docs/autonomy_levels.md. (Beginner, educational.)

Repository Structure

Self_Driving_Vehicles/
├── docs/            # Notes and summaries (e.g., autonomy_levels.md)
├── projects/        # Project code and notebooks (e.g., kitti_analysis)
├── README.md        # This file

Tools and Ecosystems

Table of Contents

Overview

This section is designed to:

  • Curate high-quality simulator resources for testing robotics and autonomous vehicle algorithms in virtual environments.
  • Provide practical projects inspired by my competition experience (e.g., F1TENTH, Shell Eco-marathon).
  • Integrate with my broader repo, linking to /Robotics_Autonomous_Systems (for ROS integration) and /Self_Driving_Vehicles (for driving scenarios).
  • Highlight my journey, showcasing simulation skills for competition-ready systems.

Curated Resources

Simulators

Name Link Description
Formula Student Driverless Simulator github.com/FS-Driverless/Formula-Student-Driverless-Simulator Simulator for Formula Student driverless competitions, ideal for F1TENTH.
NVIDIA Isaac GR00T github.com/NVIDIA/Isaac-GR00T NVIDIA’s simulator for humanoid robots and autonomous systems.
MuJoCo github.com/google-deepmind/mujoco Physics-based simulator for robotics and RL research.
AutoDRIVE github.com/Tinker-Twins/AutoDRIVE Simulator for autonomous driving, supporting ROS2 and F1TENTH-style testing.
Webots cyberbotics.com/ Open-source robot simulator, compatible with ROS for robot modeling.
AirSim github.com/microsoft/AirSim Simulator for drones and vehicles, with ROS and Unreal Engine support.
CARLA github.com/carla-simulator/carla Open-source autonomous driving simulator, widely used for perception and planning.
Autonomous Mobile Robot github.com/bandasaikrishna/Autonomous_Mobile_Robot Mobile robot simulation framework, with ROS integration.
Robot Assets github.com/ankurhanda/robot-assets Collection of robot models for simulation in Gazebo and other platforms.
Gazebo Fuel gazebosim.org/docs/fortress/fuel_insert/ Gazebo Fuel for importing robot models and environments.

Tutorials

Name Link Description
ROS Robotics Learning rosroboticslearning.com/ Tutorials for ROS-based simulation, including Gazebo and TurtleBot3.
CoppeliaSim Manual manual.coppeliarobotics.com/index.html Official manual for CoppeliaSim (formerly V-REP), a versatile robot simulator.
FS Driverless Simulator Docs fs-driverless.github.io/Formula-Student-Driverless-Simulator/v2.2.0/ Documentation for setting up the Formula Student Driverless Simulator.
ROS2 and CARLA Setup Guide learnopencv.com/ros2-and-carla-setup-guide/ Guide to integrating ROS2 with CARLA for autonomous driving simulation.
TurtleBot3 in ROS2 Humble medium.com/@nilutpolkashyap/setting-up-turtlebot3-simulation-in-ros-2-humble-hawksbill-70a6fcdaf5de Tutorial for setting up TurtleBot3 simulation in ROS2 Humble.
CARLA Simulation Intro youtube.com/watch?v=Uz_i_sjVhIM Video intro to CARLA simulator for autonomous driving.
ROS2 Simulation Playlist youtube.com/watch?v=inD2KquVzzo&list=PLbRa-L0fnTUzI6T6GBqBDYX9BSJjxySLZ&index=4 YouTube playlist on ROS2 simulation setups.

Projects

These projects leverage the provided simulator resources to build practical skills, inspired by my competition experience. See /Simulators/projects/ for code and documentation.

  • F1TENTH Simulation: Set up a racing environment in Formula Student Driverless Simulator with ROS2 for path planning. (Intermediate, competition-ready.)
  • CARLA Autonomous Driving: Implement a lane-following algorithm in CARLA using ROS2 and CARLA Setup Guide. (Intermediate, practical.)
  • TurtleBot3 Obstacle Avoidance: Simulate obstacle avoidance with TurtleBot3 in Gazebo using ROS Robotics Learning. (Beginner, ROS2-focused.)
  • Webots Robot Modeling: Create a robot model in Webots with Robot Assets for navigation tasks. (Intermediate, modeling skills.)
  • MuJoCo RL Environment: Build an RL environment for a robot using MuJoCo for control tasks. (Advanced, RL-focused.)
  • Markdown Guide on Simulator Setup: Document the setup process for CARLA and ROS2 based on ROS2 and CARLA Setup Guide in /docs/simulator_setup.md. (Beginner, educational.)

Repository Structure

Simulators/
├── docs/            # Notes and summaries (e.g., simulator_setup.md)
├── projects/        # Project code and notebooks (e.g., carla_lane_following)
├── README.md        # This file

Communities, Competitions and Growth

Table of Contents

Overview

This section is designed to:

  • Curate high-quality resources for robotics and autonomous vehicle competitions, covering platforms, challenges, and preparation guides.
  • Provide practical projects inspired by my competition experience (e.g., F1TENTH, Shell Eco-marathon).
  • Integrate with my broader repo, linking to /Robotics_Autonomous_Systems (for ROS) and /Simulators (for testing).
  • Highlight my journey, showcasing competition-ready skills in autonomous navigation and control.

The resources below cover major competitions like CARLA Leaderboard, RoboCup, and Teknofest, along with preparation tools and tutorials.

Curated Resources

Competition Platforms and Hubs

Name Link Description
MATLAB-Simulink Challenge Project Hub github.com/mathworks/MATLAB-Simulink-Challenge-Project-Hub MATLAB/Simulink projects for robotics and autonomous vehicle challenges.
SEM-APC Student Docker Environment github.com/swri-robotics/sem-apc-student-docker-environment Docker environment for Shell Eco-marathon Autonomous Programming Competition.
IMechE imeche.org/ Institution hosting competitions like Formula Student, relevant for autonomous vehicles.
CARLA Leaderboard leaderboard.carla.org/ Leaderboard for CARLA autonomous driving challenges, ideal for testing algorithms.
Teknofest Robotaxi teknofest.org/en/competitions/robotaxi-full-scale-autonomous-vehicle-competition/ Full-scale autonomous vehicle competition, focusing on real-world driving.
RoboCup robocup.org/ Global robotics competition, including autonomous navigation and manipulation.
Robocon robocon.io/ Robotics competition for innovative robot designs and tasks.
Roboracer AI roboracer.ai/ AI-driven racing competition, similar to F1TENTH.
Indy Autonomous Challenge indyautonomouschallenge.com/ High-speed autonomous racing challenge for advanced teams.
NASA Space Apps Cairo spaceappschallenge.org/nasa-space-apps-2024/2024-local-events/cairo/ Space-related robotics and autonomy challenges, hosted in Cairo.

Tutorials and Guides

Name Link Description
CARLA Leaderboard Intro youtube.com/watch?v=9KuySHCagYc Video guide to participating in the CARLA Leaderboard challenge.

Projects

These projects leverage the provided competition resources to build practical skills, inspired by my experience. See /Competitions/projects/ for code and documentation.

  • CARLA Leaderboard Submission: Develop a driving algorithm for the CARLA Leaderboard using ROS2 and CARLA simulator. (Advanced, competition-ready.)
  • Shell Eco-marathon Autonomy: Create an energy-efficient planner for SEM-APC Student Docker Environment in a simulated urban environment. (Intermediate, Shell Eco-marathon-focused.)
  • F1TENTH Race Prep: Build a ROS2-based navigation stack for Roboracer AI using Pure Pursuit or MPC. (Intermediate, F1TENTH-style.)
  • RoboCup Simulation: Implement a navigation task for RoboCup Junior in Webots using RoboCup resources. (Intermediate, practical.)
  • MATLAB Challenge Project: Develop a control system for an autonomous vehicle using MATLAB-Simulink Challenge Project Hub. (Intermediate, MATLAB-focused.)
  • Markdown Guide on Competition Prep: Summarize strategies for CARLA Leaderboard based on CARLA Leaderboard Intro in /docs/competition_prep.md. (Beginner, educational.)

Repository Structure

Competitions/
├── docs/            # Notes and summaries (e.g., competition_prep.md)
├── projects/        # Project code and notebooks (e.g., carla_leaderboard)
├── README.md        # This file

Resources I Gathered from the Open Source Community

Robotics and Autonomous Systems Repository

Table of Contents

Overview

This section is designed to:

  • Curate high-quality ROS/ROS2 resources to support learning and development in robotics and autonomous systems.
  • Provide practical projects that align with real-world applications, drawing from my experience in F1TENTH and Shell Eco-marathon.
  • Integrate with my broader repo, linking to /Systems_Hardware (for ROS drivers) and /Artificial_Intelligence (for perception).
  • Highlight my journey, showcasing competition-ready skills in autonomous navigation and control.

The resources below focus on ROS/ROS2, covering frameworks, tools, and tutorials for building robots. Projects emphasize hands-on applications, like navigation stacks for autonomous vehicles. This is the starting point for a growing collection—more categories and resources will be added incrementally.

Curated Resources

Below is a curated list of ROS/ROS2 resources, organized by type. Each includes a brief description and its relevance to robotics/autonomous systems.

Repositories

Name Link Description
ROS2 Migration Tools github.com/awslabs/ros2-migration-tools Tools to migrate from ROS1 to ROS2, ideal for updating legacy robot projects.
Inmoov ROS2 github.com/aalonsopuig/Inmoov_ROS2 ROS2 integration for Inmoov, a 3D-printed humanoid robot, great for learning ROS2 with humanoids.
GP-MPPI github.com/IhabMohamed/GP-MPPI Gaussian Process-based Model Predictive Path Integral control for autonomous navigation, useful for F1TENTH planners.
RealSense ROS github.com/IntelRealSense/realsense-ros ROS wrapper for Intel RealSense cameras, key for perception in autonomous robots.
RF2O Laser Odometry github.com/MAPIRlab/rf2o_laser_odometry Lightweight laser odometry for ROS, perfect for SLAM in resource-constrained robots.
TurtleBot3 github.com/ROBOTIS-GIT/turtlebot3 Official TurtleBot3 repo, a versatile platform for learning ROS/ROS2 basics and navigation.
TurtleBot3 Deliver github.com/ROBOTIS-GIT/turtlebot3_deliver TurtleBot3 delivery application, showcasing ROS for service robots.
NASA JPL ROSA github.com/nasa-jpl/rosa NASA’s ROS-based autonomy software, ideal for studying advanced robotic systems.
Autonomy Stack (Mecanum) github.com/jizhang-cmu/autonomy_stack_mecanum_wheel_platform ROS-based autonomy stack for mecanum wheel robots, useful for omnidirectional navigation.
Autonomous Racing github.com/Autonomous-Racing-PG/ar-tu-do ROS-based autonomous racing framework, directly applicable to F1TENTH competitions.
ROS Motion Planning github.com/ai-winter/ros_motion_planning ROS package for motion planning, including path planning algorithms for robots.
MoveIt github.com/moveit/moveit ROS motion planning framework for robotic arms, key for manipulation tasks.
Costmap Depth Camera github.com/tsengapola/costmap_depth_camera ROS package to create costmaps from depth cameras, useful for obstacle avoidance.
ROS Navigation github.com/ros-planning/navigation Official ROS navigation stack for mobile robots, critical for autonomous vehicle navigation.

Books

Name Link Description
A Gentle Introduction to ROS jokane.net/agitr/agitr-letter.pdf Free PDF introducing ROS concepts, perfect for beginners starting with TurtleBot or simulation.
Programming Robots with ROS alvarestech.com/temp/capp/GDT_Forma3D/Programming%20Robots%20with%20ROS.pdf Practical guide to ROS programming, with examples for sensors and navigation.
Mastering ROS for Robotics Programming (3rd Ed) github.com/PacktPublishing/Mastering-ROS-for-Robotics-Programming-Third-edition Comprehensive ROS guide covering advanced topics like navigation and manipulation.
Learning ROS for Robotics Programming vladestivill-castro.net/teaching/robotics.d/READINGS/Learning%20ROS%20for%20Robotics%20Programming%20[eBook].pdf Beginner-friendly eBook on ROS, with practical examples for robot control.
ROS2 Cookbook github.com/mikeferguson/ros2_cookbook Collection of ROS2 recipes and examples, great for transitioning to ROS2 projects.

Courses and Tutorials

Name Link Description
ROS Python Course theconstruct.ai/robotigniteacademy_learnros/ros-courses-library/ros-python-course/ Python-based ROS course, ideal for scripting robot behaviors in simulation.
ROS for Beginners (Udemy) udemy.com/course/ros-for-beginners Beginner-friendly course covering ROS basics, nodes, and topics (often discounted).
ROS Humble Installation docs.ros.org/en/humble/Installation/Alternatives/Ubuntu-Development-Setup.html Official guide to install ROS2 Humble, essential for setting up a development environment.
ROS Humble Tutorials docs.ros.org/en/humble/Tutorials.html Official ROS2 Humble tutorials, covering nodes, publishers, and subscribers.
ROS Tutorial Series (YouTube) youtube.com/watch?v=9U6GDonGFHw Video series on ROS basics, great for visual learners starting with ROS.

Projects

These projects leverage the provided ROS/ROS2 resources to build practical skills, inspired by my competition experience. See /Robotics_Autonomous_Systems/projects/ for code and documentation.

  • TurtleBot3 Navigation: Use the TurtleBot3 repo and ROS Navigation to implement a navigation stack in Gazebo. (Beginner, simulates F1TENTH navigation.)
  • RealSense Camera Integration: Integrate an Intel RealSense camera with RealSense ROS to process depth data for obstacle avoidance. (Intermediate, useful for Shell Eco-marathon sensor fusion.)
  • F1TENTH Autonomous Racing: Build a ROS-based racing node using Autonomous Racing and GP-MPPI for path planning. (Advanced, competition-ready.)
  • Costmap with Depth Camera: Create a costmap for navigation using Costmap Depth Camera in a simulated environment. (Intermediate, enhances autonomous navigation.)
  • MoveIt Robotic Arm: Implement a pick-and-place task with MoveIt for a robotic arm in simulation. (Advanced, explores manipulation.)
  • Jupyter Notebook on ROS2 Setup: Document ROS2 Humble installation and basic node creation using ROS Humble Tutorials. (Beginner, educational.)
  • Markdown Guide on ROS Basics: Summarize key ROS concepts (nodes, topics, services) based on A Gentle Introduction to ROS (/docs/ros_basics.md). (Beginner, learning aid.)

Repository Structure

Robotics_Autonomous_Systems/
├── docs/            # Notes and summaries (e.g., ros_basics.md)
├── projects/        # Project code and notebooks (e.g., turtlebot3_navigation)
├── README.md        # This file

Robotics and Autonomous Systems Repository

Stars Forks License

Welcome to the Robotics and Autonomous Systems section of my GitHub repository, documenting my journey as a computer engineering student passionate about robotics and autonomous vehicles. This category focuses on ROS/ROS2, the backbone of modern robotics, with curated resources to help you master robot software development for applications like autonomous navigation and competition vehicles (e.g., F1TENTH, Shell Eco-marathon). Built using the trinity approach (Books, Courses/Tutorials, Projects), this section provides a foundation for building, simulating, and deploying robotic systems.

This README serves as the hub for the provided resources, including ROS/ROS2 repositories, books, and tutorials, carefully organized for quick reference. Whether you're a beginner learning ROS/ROS2 basics, a hobbyist building a TurtleBot, or a recruiter exploring my competition-driven projects, this repo is designed to inspire and guide. Star, fork, or contribute to make it even better! 🌟

Table of Contents

Overview

This section is designed to:

  • Curate high-quality resources to support learning and development in robotics and autonomous systems, with a special emphasis on ROS/ROS2 as a foundational framework.
  • Provide practical projects that align with real-world applications, drawing from my experience in F1TENTH and Shell Eco-marathon.
  • Integrate with my broader repo, linking to /Systems_Hardware (for ROS drivers) and /Artificial_Intelligence (for perception).
  • Highlight my journey, showcasing competition-ready skills in autonomous navigation and control.

The resources below are organized by the subheadings from the provided list, covering repositories, books, courses, and industry tools for robotics/autonomous systems. This is the starting point for a growing collection—more categories and resources will be added incrementally.

Curated Resources

Below is a curated list of resources, organized by the provided categories. Each includes a brief description and its relevance to robotics/autonomous systems.

ROS/ROS2 Repositories

Name Link Description
ROS2 Migration Tools github.com/awslabs/ros2-migration-tools Tools to migrate from ROS1 to ROS2, ideal for updating legacy robot projects.
Inmoov ROS2 github.com/aalonsopuig/Inmoov_ROS2 ROS2 integration for Inmoov, a 3D-printed humanoid robot, great for learning ROS2 with humanoids.
GP-MPPI github.com/IhabMohamed/GP-MPPI Gaussian Process-based Model Predictive Path Integral control for autonomous navigation, useful for F1TENTH planners.
RealSense ROS github.com/IntelRealSense/realsense-ros ROS wrapper for Intel RealSense cameras, key for perception in autonomous robots.
RF2O Laser Odometry github.com/MAPIRlab/rf2o_laser_odometry Lightweight laser odometry for ROS, perfect for SLAM in resource-constrained robots.
TurtleBot3 github.com/ROBOTIS-GIT/turtlebot3 Official TurtleBot3 repo, a versatile platform for learning ROS/ROS2 basics and navigation.
TurtleBot3 Deliver github.com/ROBOTIS-GIT/turtlebot3_deliver TurtleBot3 delivery application, showcasing ROS for service robots.
NASA JPL ROSA github.com/nasa-jpl/rosa NASA’s ROS-based autonomy software, ideal for studying advanced robotic systems.
Autonomy Stack (Mecanum) github.com/jizhang-cmu/autonomy_stack_mecanum_wheel_platform ROS-based autonomy stack for mecanum wheel robots, useful for omnidirectional navigation.
Autonomous Racing github.com/Autonomous-Racing-PG/ar-tu-do ROS-based autonomous racing framework, directly applicable to F1TENTH competitions.
ROS Motion Planning github.com/ai-winter/ros_motion_planning ROS package for motion planning, including path planning algorithms for robots.
MoveIt github.com/moveit/moveit ROS motion planning framework for robotic arms, key for manipulation tasks.
Costmap Depth Camera github.com/tsengapola/costmap_depth_camera ROS package to create costmaps from depth cameras, useful for obstacle avoidance.
ROS Navigation github.com/ros-planning/navigation Official ROS navigation stack for mobile robots, critical for autonomous vehicle navigation.

Books

Name Link Description
A Gentle Introduction to ROS jokane.net/agitr/agitr-letter.pdf Free PDF introducing ROS concepts, perfect for beginners starting with TurtleBot or simulation.
Programming Robots with ROS [alvarestech.com/temp/capp/GDT_p Form3D/Programming%20Robots%20with%20ROS.pdf](alvarestech.com/temp/capp/GDT_p Form3D/Programming%20Robots%20with%20ROS.pdf) Practical guide to ROS programming, with examples for sensors and navigation.
Mastering ROS for Robotics Programming (3rd Ed) github.com/PacktPublishing/Mastering-ROS-for-Robotics-Programming-Third-edition Comprehensive ROS guide covering advanced topics like navigation and manipulation.
Learning ROS for Robotics Programming vladestivill-castro.net/teaching/robotics.d/READINGS/Learning%20ROS%20for%20Robotics%20Programming%20[eBook].pdf Beginner-friendly eBook on ROS, with practical examples for robot control.
ROS2 Cookbook github.com/mikeferguson/ros2_cookbook Collection of ROS2 recipes and examples, great for transitioning to ROS2 projects.

Courses and Tutorials

Name Link Description
ROS Python Course theconstruct.ai/robotigniteacademy_learnros/ros-courses-library/ros-python-course/ Python-based ROS course, ideal for scripting robot behaviors in simulation.
ROS for Beginners (Udemy) udemy.com/course/ros-for-beginners Beginner-friendly course covering ROS basics, nodes, and topics (often discounted).
ROS Humble Installation docs.ros.org/en/humble/Installation/Alternatives/Ubuntu-Development-Setup.html Official guide to install ROS2 Humble, essential for setting up a development environment.
ROS Humble Tutorials docs.ros.org/en/humble/Tutorials.html Official ROS2 Humble tutorials, covering nodes, publishers, and subscribers.
ROS Tutorial Series (YouTube) youtube.com/watch?v=9U6GDonGFHw Video series on ROS basics, great for visual learners starting with ROS.

Core Robotics & AI

Name Link Description
Lichtblick (ROS 2 Suite) github.com/lichtblick-suite/lichtblick ROS2 visualization tool for debugging and monitoring robot data.
Survey Autonomous Driving Unstructured Environments github.com/chaytonmin/Survey-Autonomous-Driving-in-Unstructured-Environments Survey on autonomous driving in unstructured environments, useful for off-road robotics.
NVIDIA Redtail (UGV) github.com/NVIDIA-AI-IOT/redtail AI framework for unmanned ground vehicles (UGV), integrating ROS for perception and navigation.
SLAM Resources for Beginner github.com/Taeyoung96/SLAM-Resources-for-Beginner Beginner-friendly resources for SLAM, including ROS-based tutorials.
Awesome Robotic Tooling github.com/Ly0n/awesome-robotic-tooling Curated list of robotics tools, including ROS extensions and simulators.
End-to-End Autonomous Driving github.com/OpenDriveLab/End-to-end-Autonomous-Driving End-to-end learning for autonomous driving, with ROS integration for vehicle control.
Robotics Python Tutorials github.com/kimsooyoung/robotics_python Python tutorials for robotics, including ROS and motion planning.
Open Robot Actuator Hardware github.com/open-dynamic-robot-initiative/open_robot_actuator_hardware Open-source actuator hardware for robots, compatible with ROS for control.
OttoNinja (DIY Robot) github.com/OttoDIY/OttoNinja DIY humanoid robot with ROS support for learning basic robotics.
Awesome Embodied AI github.com/TinyEmbodiedAI/Awesome-embodied-ai Curated list of embodied AI resources, including ROS for physical robots.
Berkeley Humanoid Lite github.com/HybridRobotics/Berkeley-Humanoid-Lite Lightweight humanoid robot framework, with ROS2 integration for embodied AI.
Embodied AI Paper List github.com/HCPLab-SYSU/Embodied_AI_Paper_List List of papers on embodied AI, relevant for ROS-based robot intelligence.
RSE Prob Robotics github.com/carlos-argueta/rse_prob_robotics Probabilistic robotics with ROS, for uncertainty handling in autonomous systems.
Xtreme1 (3D Data Platform) github.com/xtreme1-io/xtreme1 Platform for 3D data in robotics, compatible with ROS for perception.
Path Planning github.com/gabrielegilardi/PathPlanning Path planning algorithms for robots, integrating with ROS navigation.
Robot VLMs github.com/Robot-VLAs/RoboVLMs Vision-language models for robots, with ROS2 support for embodied tasks.
Openpilot Deepdive github.com/OpenDriveLab/Openpilot-Deepdive Deep dive into Openpilot for autonomous driving, with ROS-like structures.
Awesome Interaction-Aware Trajectory Prediction github.com/jiachenli94/Awesome-Interaction-Aware-Trajectory-Prediction Resources for trajectory prediction in autonomous vehicles, useful for ROS planning.
Lyft Motion Prediction github.com/JerryIshihara/lyft-motion-prediction-for-autonomous-vehicle Motion prediction for autonomous vehicles, integrating with ROS navigation.
Awesome Lane Detection github.com/amusi/awesome-lane-detection Lane detection resources for autonomous driving, ROS-compatible for perception.
Awesome RGB-D Datasets github.com/alelopes/awesome-rgbd-datasets RGB-D datasets for robotics perception, used in ROS SLAM.
NPYViewer github.com/csmailis/NPYViewer Viewer for NumPy files in robotics data analysis, useful with ROS.
Carla Multimodal Sensing github.com/joedlopes/carla-simulator-multimodal-sensing Multimodal sensing in CARLA simulator, ROS-integrated for autonomous testing.
Collision Avoidance Carla DRL MPC github.com/gustavomoers/CollisionAvoidance-Carla-DRL-MPC Collision avoidance using DRL and MPC in CARLA, with ROS support.
Gym-Carla github.com/cjy1992/gym-carla Gym environment for CARLA, for RL in autonomous driving with ROS.
Awesome CARLA github.com/Amin-Tgz/awesome-CARLA Curated CARLA resources, including ROS integrations for simulation.
Carla Lidar Mapping github.com/casper-auto/carla_lidar_mapping LiDAR mapping in CARLA, useful for ROS SLAM testing.
Carla Scenario Runner github.com/carla-simulator/scenario_runner Scenario runner for CARLA, for autonomous vehicle testing with ROS.
CarDreamer github.com/ucd-dare/CarDreamer CARLA-based RL environment for driving, ROS-compatible.
Shell Urban Simulator github.com/Shell-Urban-Concept-Autonomous/shell_urban_simulator Simulator for urban autonomous vehicles, inspired by Shell Eco-marathon.
OceanSim (Marine Robotics) github.com/umfieldrobotics/OceanSim Marine robotics simulator, extendable with ROS for underwater autonomy.
Faster (LiDAR SLAM) github.com/mit-acl/faster Fast LiDAR SLAM, ROS-integrated for real-time mapping.
Roman (Robotics Manipulation) github.com/mit-acl/roman Robotics manipulation framework, with ROS support for arms.
ICP Localization github.com/leggedrobotics/icp_localization ICP-based localization for robots, ROS-compatible.
Tinker (Humanoid Robot) github.com/Yuexuan9/Tinker Tinker humanoid robot, with ROS2 for embodied AI.
AgiBot-World github.com/OpenDriveLab/AgiBot-World AGI for robots in simulation, ROS-integrated.
Lerobot (Hugging Face) github.com/huggingface/lerobot Learning-based robot control, with ROS support.
RSL RL (Legged Robotics) github.com/leggedrobotics/rsl_rl RL for legged robots, ROS-compatible for training.
Genesis Embodied AI github.com/Genesis-Embodied-AI/Genesis Embodied AI framework for robots, with ROS2.
OpenVLA github.com/openvla/openvla Open vision-language-action model for robots, ROS-integrated.
Robot VLMs github.com/Robot-VLAs/RoboVLMs Vision-language models for robots, with ROS support.
Vision-Language Models Overview github.com/zli12321/Vision-Language-Models-Overview Overview of VLMs for robotics perception.
HCPLab Embodied AI Paper List github.com/HCPLab-SYSU/Embodied_AI_Paper_List Papers on embodied AI, relevant for ROS-based robots.
Awesome Embodied AI github.com/haoranD/Awesome-Embodied-AI Curated embodied AI resources, including ROS tools.
Awesome Quadrupedal Robots github.com/curieuxjy/Awesome_Quadrupedal_Robots Resources for quadrupedal robots, with ROS integrations.
LeCAR HumanoidVerse github.com/LeCAR-Lab/HumanoidVerse Humanoid robot framework, ROS2-based.
Humanoid Bench github.com/carlosferrazza/humanoid-bench Benchmark for humanoid robots, with ROS support.
3D Afford Splat github.com/HCPLab-SYSU/3DAffordSplat 3D affordance mapping for robots, ROS-integrated.
Deep Dynamics github.com/linklab-uva/deep-dynamics Deep learning for robot dynamics, with ROS.
ModernControl UGV github.com/seyedsaleh/ModernControl-UGV Modern control for unmanned ground vehicles, ROS-based.
Awesome Control Theory github.com/A-make/awesome-control-theory Curated control theory resources for robotics.
GP-MPC github.com/helgeanl/GP-MPC Gaussian Process MPC for autonomous systems.
Multi-Purpose MPC github.com/matssteinweg/Multi-Purpose-MPC Multi-purpose MPC for robot control.
Robust Tube MPC github.com/HiroIshida/robust-tube-mpc Robust MPC for tube-based control in robots.
TUMFTM Vehicle Dynamics Control github.com/TUMFTM/mod_vehicle_dynamics_control Vehicle dynamics control for autonomous driving.
TUMFTM Ethical Trajectory Planning github.com/TUMFTM/EthicalTrajectoryPlanning Ethical planning for autonomous vehicles.
Pyroki github.com/chungmin99/pyroki PyTorch-based robotics kinematics library.
Awesome Motion Planning github.com/AGV-IIT-KGP/awesome-motion-planning Curated motion planning resources.
OMPL github.com/ompl/ompl Open Motion Planning Library for robots.
MotionPlanning github.com/zhm-real/MotionPlanning Motion planning algorithms for autonomous systems.
PathPlanning github.com/zhm-real/PathPlanning Path planning tools for robots.
Path Planner github.com/karlkurzer/path_planner A* and hybrid path planners for ROS.
Robotics-Path-Planning-03-Hybrid-A-Star github.com/ChenBohan/Robotics-Path-Planning-03-Hybrid-A-Star Hybrid A* for path planning.
Robotics-Path-Planning-04-Quintic-Polynomial-Solver github.com/ChenBohan/Robotics-Path-Planning-04-Quintic-Polynomial-Solver Quintic polynomial solver for smooth trajectories.
Hybrid Path Planning github.com/armando-genis/hybrid_path_planning Hybrid planning for autonomous navigation.
Autonomous Dynamic Path Planning github.com/armando-genis/Autonomous_dynamic_path_planning Dynamic path planning for robots.
Frenet Optimal Trajectory Planner github.com/erdos-project/frenet_optimal_trajectory_planner Frenet-based optimal trajectory for vehicles.
Robust Tube MPC github.com/HiroIshida/robust-tube-mpc Robust MPC for robot control.
JJulio AHRobot github.com/JJulio/AHRobot Open-source humanoid robot.
Andro Robot github.com/devjewel01/Robot-Blueberry Blueberry robot project. (Note: Duplicate entry in provided resources.)
VoxelMapPlus FASTLIO2 github.com/liangheming/VoxelMapPlus_FASTLIO2 Voxel-based SLAM with FAST-LIO2.
Open Source Sensor Fusion github.com/memsindustrygroup/Open-Source-Sensor-Fusion Open-source sensor fusion for robotics.
VINS-Fusion github.com/HKUST-Aerial-Robotics/VINS-Fusion VINS-Fusion for visual-inertial SLAM.
XRDSLAM github.com/openxrlab/xrdslam XR-based SLAM for robots.
Vellons Humandroid github.com/vellons/Humandroid Humandroid humanoid robot.
Poppy Humanoid github.com/poppy-project/poppy-humanoid Poppy humanoid robot platform.
PCrnjak PAROL6 github.com/PCrnjak/PAROL6-Desktop-robot-arm Desktop robotic arm.
Roboterax Humanoid Gym github.com/roboterax/humanoid-gym Gym environment for humanoids.
EngineAI Humanoid github.com/engineai-robotics/engineai_humanoid EngineAI humanoid robot.
Pinocchio github.com/stack-of-tasks/pinocchio Robot dynamics library.
CppRobotics github.com/onlytailei/CppRobotics C++ robotics library.
Dusty NV Jetson Containers github.com/dusty-nv/jetson-containers Jetson containers for AI/robotics.
NVIDIA JetRacer github.com/NVIDIA-AI-IOT/jetracer JetRacer for autonomous racing.
NVIDIA JetBot github.com/NVIDIA-AI-IOT/jetbot JetBot for AI robotics.
RoboSapiens robosapiens-eu.tech/ RoboSapiens platform for humanoid robotics.
AllenAI Embodied AI allenai.org/embodied-ai Embodied AI research from AllenAI.
Humanoid Bench humanoid-bench.github.io/ Benchmark for humanoid robots.
KScale www.kscale.dev/ KScale robotics platform.
SWRI swri.org - Industrial robotics automation.
arXiv Paper arxiv.org/html/2408.06113v1 Paper on robotics topics.
Santa Fe Embodied Intelligence santafe.edu/research/projects/theory-of-embodied-intelligence Theory of embodied intelligence.
GitLab Autoware Core Planning gitlab.com/autowarefoundation/autoware.ai/core_planning/-/tree/master/mpc_follower/src MPC follower for Autoware.
Microsoft Embodied AI microsoft.com/en-us/research/collaboration/embodied-ai Microsoft’s embodied AI research.

Tools & Frameworks

Name Link Description
Autonomous Driving github.com/daohu527/awesome-self-driving-car Curated self-driving car resources.
Awesome Autonomous Vehicles github.com/manfreddiaz/awesome-autonomous-vehicles Awesome list for autonomous vehicles.
Self-Driving-Ish CV github.com/iwatake2222/self-driving-ish_computer_vision_system Computer vision for self-driving simulation.
AutoCarROS2 github.com/winstxnhdw/AutoCarROS2 ROS2 for autonomous car simulation.
MATLAB Driving Scenarios mathworks.com/videos/creating-driving-scenarios-from-recorded-vehicle-data-for-validating-lane-centering-systems-in-highway-traffic-1592820033589.html MATLAB for driving scenarios.
Coursera Self-Driving Cars coursera.org/specializations/self-driving-cars Coursera specialization on self-driving cars.
SAE J3016 Standard sae.org/standards/content/j3016_201806/ SAE autonomy levels standard.
arXiv Survey arxiv.org/abs/2003.04882 Survey on autonomous driving.
Self-Driving Car Playlist youtube.com/watch?v=wcibIqiRb04&list=PL8EeqqtDev54yyF5-o2jUEOhAm2GSZm6e&index=4 YouTube playlist on self-driving cars.
KITTI Dataset cvlibs.net/datasets/kitti/ KITTI dataset for autonomous driving.
Apollo Auto github.com/ApolloAuto/apollo Apollo autonomous driving platform.
Gym-Ignition github.com/robotology-legacy/gym-ignition Gym environment for ignition simulator.
Autoware Universe autowarefoundation.github.io/autoware_universe/main/ Autoware for autonomous driving.

Embodied AI & Humanoids

Name Link Description
Genesis Embodied AI github.com/Genesis-Embodied-AI/Genesis Embodied AI framework for robots.
OpenVLA github.com/openvla/openvla Open vision-language-action model for robots.
Robot VLMs github.com/Robot-VLAs/RoboVLMs Vision-language models for robots.
Vision-Language Models Overview github.com/zli12321/Vision-Language-Models-Overview Overview of VLMs for robotics perception.
HCPLab Embodied AI Paper List github.com/HCPLab-SYSU/Embodied_AI_Paper_List Papers on embodied AI.
Awesome Embodied AI github.com/haoranD/Awesome-Embodied-AI Curated embodied AI resources.
Awesome Humanoid Manipulation github.com/Tsunami-kun/awesome-humanoid-manipulation Resources for humanoid manipulation.
Awesome Quadrupedal Robots github.com/curieuxjy/Awesome_Quadrupedal_Robots Curated quadrupedal robot resources.
LeCAR HumanoidVerse github.com/LeCAR-Lab/HumanoidVerse Humanoid robot framework.
Humanoid Bench github.com/carlosferrazza/humanoid-bench Benchmark for humanoid robots.
3D Afford Splat github.com/HCPLab-SYSU/3DAffordSplat 3D affordance mapping for robots.

Reinforcement Learning for Robotics

Name Link Description
Gymnasium Robotics github.com/Farama-Foundation/Gymnasium-Robotics Gymnasium environments for robotics RL.
F1TENTH RL github.com/MichaelBosello/f1tenth-RL RL for F1TENTH autonomous racing.
Mathematical Foundation of RL Book github.com/MathFoundationRL/Book-Mathematical-Foundation-of-Reinforcement-Learning Book on mathematical foundations of RL for robotics.
KSim-Gym github.com/kscalelabs/ksim-gym Gym for robot simulation in RL.
ASAPRL github.com/Letian-Wang/asaprl ASAP RL for robotics.
F1TENTH RL (Duplicate) github.com/MichaelBosello/f1tenth-RL RL for F1TENTH (duplicate for emphasis).
RSL RL github.com/leggedrobotics/rsl_rl RL for legged robots.
Robust Tube MPC github.com/HiroIshida/robust-tube-mpc Robust MPC with RL elements.
JJulio AHRobot github.com/JJulio/AHRobot Open-source robot for RL experiments.
Robust Tube MPC (Duplicate) github.com/HiroIshida/robust-tube-mpc Robust MPC (duplicate for emphasis).
DRL Air Hockey github.com/AndrejOrsula/drl_air_hockey DRL for air hockey robot.

Hardware & Actuators

Name Link Description
Open Robot Actuator Hardware github.com/open-dynamic-robot-initiative/open_robot_actuator_hardware Open-source actuators for robots.
NVIDIA JetBot github.com/NVIDIA-AI-IOT/jetbot JetBot hardware for AI robotics.

Motion Planning & Control

Name Link Description
Awesome Control Theory github.com/A-make/awesome-control-theory Curated control theory resources.
GP-MPC github.com/helgeanl/GP-MPC GP-MPC for autonomous control.
Filippo MPC RL github.com/FilippoAiraldi/mpc-reinforcement-learning MPC with RL for robots.
Multi-Purpose MPC github.com/matssteinweg/Multi-Purpose-MPC Multi-purpose MPC for control.
Robust Tube MPC github.com/HiroIshida/robust-tube-mpc Robust tube MPC for robots.
TUMFTM Vehicle Dynamics Control github.com/TUMFTM/mod_vehicle_dynamics_control Vehicle dynamics control.
TUMFTM Ethical Trajectory Planning github.com/TUMFTM/EthicalTrajectoryPlanning Ethical trajectory planning.
Chungmin Pyroki github.com/chungmin99/pyroki PyTorch kinematics for robots.
Awesome Motion Planning github.com/AGV-IIT-KGP/awesome-motion-planning Curated motion planning resources.
OMPL github.com/ompl/ompl Open Motion Planning Library.
MotionPlanning github.com/zhm-real/MotionPlanning Motion planning algorithms.
Karlkurzer Path Planner github.com/karlkurzer/path_planner Path planner for robots.
Robotics-Path-Planning-03-Hybrid-A-Star github.com/ChenBohan/Robotics-Path-Planning-03-Hybrid-A-Star Hybrid A* for path planning.
Robotics-Path-Planning-04-Quintic-Polynomial-Solver github.com/ChenBohan/Robotics-Path-Planning-04-Quintic-Polynomial-Solver Quintic polynomial solver for trajectories.
Hybrid Path Planning github.com/armando-genis/hybrid_path_planning Hybrid planning for autonomy.
Autonomous Dynamic Path Planning github.com/armando-genis/Autonomous_dynamic_path_planning Dynamic path planning.
Frenet Optimal Trajectory Planner github.com/erdos-project/frenet_optimal_trajectory_planner Frenet-based trajectory planner.
TUM-AVS Frenetix github.com/TUM-AVS/Frenetix Frenetix planner for vehicles.
TUM-AVS Frenetix Motion Planner github.com/TUM-AVS/Frenetix-Motion-Planner Motion planner using Frenet frame.
RL Frenet Trajectory Planning in CARLA github.com/MajidMoghadam2006/RL-frenet-trajectory-planning-in-CARLA RL for Frenet planning in CARLA.
Behavior Planning by Finite State Machine github.com/A2Amir/Behavior-Planning-by-Finite-State-Machine FSM for behavior planning.
YulinLi Navigation with Tree of Free Regions github.com/YulinLi0/navigation_with_tree_of_free_regions Navigation using tree of free regions.
A2Amir Prediction Phase in Trajectory Generation github.com/A2Amir/Prediction-Phase-in-the-trajectory-generation-of-cars Prediction phase for trajectory generation.
Awesome FSM github.com/leonardomso/awesome-fsm Curated finite state machine resources.
StateSmith github.com/StateSmith/StateSmith State machine tool for robots.
Kalman and Bayesian Filters in Python github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python Kalman filters for state estimation.

Autonomous Driving & Simulation

Name Link Description
Carla Apollo Maps github.com/MaisJamal/Carla_apollo_maps Maps for CARLA and Apollo integration.
OpenLane-V2 github.com/OpenDriveLab/OpenLane-V2 OpenLane-V2 for lane detection.
DriveAGI github.com/OpenDriveLab/DriveAGI AGI for driving.
DriveLM github.com/OpenDriveLab/DriveLM Language models for driving.
End-to-End Autonomous Driving github.com/OpenDriveLab/End-to-end-Autonomous-Driving End-to-end autonomy.
UniAD github.com/OpenDriveLab/UniAD Unified autonomous driving framework.
BEVFormer github.com/fundamentalvision/BEVFormer Bird's-eye view transformer for driving.
Awesome 3D Object Detection github.com/TianhaoFu/Awesome-3D-Object-Detection 3D object detection resources.
SFA3D github.com/maudzung/SFA3D Super-fast and accurate 3D detection.
OpenPCDet github.com/open-mmlab/OpenPCDet Open-source point cloud detection.
MMDetection3D github.com/open-mmlab/mmdetection3d 3D detection framework.
Depth Anything github.com/LiheYoung/Depth-Anything Depth estimation for robotics.
TUM-AVS Frenetix github.com/TUM-AVS/Frenetix Frenetix planner (duplicate for emphasis).
Frenetix Motion Planner github.com/TUM-AVS/Frenetix-Motion-Planner Motion planner using Frenet (duplicate for emphasis).
RL Frenet in CARLA github.com/MajidMoghadam2006/RL-frenet-trajectory-planning-in-CARLA RL for Frenet planning in CARLA.
Behavior Planning FSM github.com/A2Amir/Behavior-Planning-by-Finite-State-Machine FSM for behavior planning (duplicate for emphasis).
Navigation with Tree of Free Regions github.com/YulinLi0/navigation_with_tree_of_free_regions Navigation using tree of free regions (duplicate for emphasis).
Prediction Phase Trajectory Generation github.com/A2Amir/Prediction-Phase-in-the-trajectory-generation-of-cars Prediction phase for trajectory generation (duplicate for emphasis).
Awesome FSM github.com/leonardomso/awesome-fsm Awesome FSM resources (duplicate for emphasis).
StateSmith github.com/StateSmith/StateSmith State machine tool (duplicate for emphasis).
Kalman and Bayesian Filters in Python github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python Kalman filters for estimation (duplicate for emphasis).

SLAM & Perception

Name Link Description
VoxelMapPlus FASTLIO2 github.com/liangheming/VoxelMapPlus_FASTLIO2 Voxel-based SLAM with FAST-LIO2.
Open Source Sensor Fusion github.com/memsindustrygroup/Open-Source-Sensor-Fusion Open-source sensor fusion.
VINS-Fusion github.com/HKUST-Aerial-Robotics/VINS-Fusion VINS-Fusion for SLAM.
XRDSLAM github.com/openxrlab/xrdslam XR SLAM.
Vellons Humandroid github.com/vellons/Humandroid Humandroid humanoid.
Poppy Humanoid github.com/poppy-project/poppy-humanoid Poppy humanoid platform.
PCrnjak PAROL6 github.com/PCrnjak/PAROL6-Desktop-robot-arm Desktop robotic arm (duplicate for emphasis).
Roboterax Humanoid Gym github.com/roboterax/humanoid-gym Humanoid gym environment.
EngineAI Humanoid github.com/engineai-robotics/engineai_humanoid EngineAI humanoid.
Pinocchio github.com/stack-of-tasks/pinocchio Pinocchio dynamics library (duplicate for emphasis).
CppRobotics github.com/onlytailei/CppRobotics C++ robotics library (duplicate for emphasis).
Dusty NV Jetson Containers github.com/dusty-nv/jetson-containers Jetson containers (duplicate for emphasis).
NVIDIA JetRacer github.com/NVIDIA-AI-IOT/jetracer JetRacer (duplicate for emphasis).
NVIDIA JetBot github.com/NVIDIA-AI-IOT/jetbot JetBot (duplicate for emphasis).
RoboSapiens robosapiens-eu.tech/ RoboSapiens platform (duplicate for emphasis).
AllenAI Embodied AI allenai.org/embodied-ai AllenAI embodied AI (duplicate for emphasis).
Humanoid Bench humanoid-bench.github.io/ Humanoid benchmark (duplicate for emphasis).
KScale www.kscale.dev/ KScale robotics (duplicate for emphasis).
SWRI swri.org - SWRI robotics (duplicate for emphasis).
arXiv Paper arxiv.org/html/2408.06113v1 Robotics paper (duplicate for emphasis).
Santa Fe Embodied Intelligence santafe.edu/research/projects/theory-of-embodied-intelligence Embodied intelligence theory (duplicate for emphasis).
GitLab Autoware Core Planning gitlab.com/autowarefoundation/autoware.ai/core_planning/-/tree/master/mpc_follower/src Autoware MPC (duplicate for emphasis).
Microsoft Embodied AI microsoft.com/en-us/research/collaboration/embodied-ai Microsoft embodied AI (duplicate for emphasis).

Simulators

Name Link Description
FS Driverless Simulator github.com/FS-Driverless/Formula-Student-Driverless-Simulator Simulator for formula student driverless.
AutoDRIVE github.com/Tinker-Twins/AutoDRIVE AutoDRIVE simulator for autonomous driving.
Gazebo gazebosim.org/docs/fortress/fuel_insert/ Gazebo simulator docs.
Carla Simulator github.com/carla-simulator/carla CARLA simulator for autonomous driving.
AirSim github.com/microsoft/AirSim AirSim simulator for drones/vehicles.
MuJoCo github.com/google-deepmind/mujoco MuJoCo physics simulator for robotics.
Isaac GR00T github.com/NVIDIA/Isaac-GR00T NVIDIA’s Isaac GR00T for humanoid simulation.
Webots cyberbotics.com/ Webots robot simulator.
Carla Scenario Runner github.com/carla-simulator/scenario_runner Scenario runner for CARLA.
CarDreamer github.com/ucd-dare/CarDreamer CARLA-based RL environment.
Shell Urban Simulator github.com/Shell-Urban-Concept-Autonomous/shell_urban_simulator Urban simulator for Shell Eco-marathon.
OceanSim github.com/umfieldrobotics/OceanSim Marine robotics simulator.
Carla Lidar Mapping github.com/casper-auto/carla_lidar_mapping LiDAR mapping in CARLA.
Awesome CARLA github.com/Amin-Tgz/awesome-CARLA Curated CARLA resources.
Gym-Carla github.com/cjy1992/gym-carla Gym environment for CARLA.
Carla Multimodal Sensing github.com/joedlopes/carla-simulator-multimodal-sensing Multimodal sensing in CARLA.
Carla Apollo Maps github.com/MaisJamal/Carla_apollo_maps Maps for CARLA and Apollo.
OpenLane-V2 github.com/OpenDriveLab/OpenLane-V2 OpenLane-V2 for simulation.
DriveAGI github.com/OpenDriveLab/DriveAGI AGI for driving simulation.
DriveLM github.com/OpenDriveLab/DriveLM Language models for driving simulation.
End-to-End Autonomous Driving github.com/OpenDriveLab/End-to-end-Autonomous-Driving End-to-end driving simulation.
UniAD github.com/OpenDriveLab/UniAD Unified autonomous driving in simulation.
BEVFormer github.com/fundamentalvision/BEVFormer BEV transformer for simulation.
Awesome 3D Object Detection github.com/TianhaoFu/Awesome-3D-Object-Detection 3D detection for simulation.
SFA3D github.com/maudzung/SFA3D SFA3D for 3D detection in simulation.
OpenPCDet github.com/open-mmlab/OpenPCDet OpenPCDet for point cloud detection.
MMDetection3D github.com/open-mmlab/mmdetection3d MM Detection for 3D.
Depth Anything github.com/LiheYoung/Depth-Anything Depth estimation for simulation.

Projects

These projects leverage the provided resources to build practical skills, inspired by my competition experience. See /Robotics_Autonomous_Systems/projects/ for code and documentation.

  • TurtleBot3 Navigation: Use the TurtleBot3 repo and ROS Navigation to implement a navigation stack in Gazebo. (Beginner, simulates F1TENTH navigation.)
  • RealSense Camera Integration: Integrate an Intel RealSense camera with RealSense ROS to process depth data for obstacle avoidance. (Intermediate, useful for Shell Eco-marathon sensor fusion.)
  • F1TENTH Autonomous Racing: Build a ROS-based racing node using Autonomous Racing and GP-MPPI for path planning. (Advanced, competition-ready.)
  • Costmap with Depth Camera: Create a costmap for navigation using Costmap Depth Camera in a simulated environment. (Intermediate, enhances autonomous navigation.)
  • MoveIt Robotic Arm: Implement a pick-and-place task with MoveIt for a robotic arm in simulation. (Advanced, explores manipulation.)
  • Jupyter Notebook on ROS2 Setup: Document ROS2 Humble installation and basic node creation using ROS Humble Tutorials. (Beginner, educational.)
  • Markdown Guide on ROS Basics: Summarize key ROS concepts (nodes, topics, services) based on A Gentle Introduction to ROS (/docs/ros_basics.md). (Beginner, learning aid.)

General Resources Repository

Table of Contents

Overview

This section is designed to:

  • Curate high-quality general resources for engineering, programming, and career development, with ties to robotics.
  • Provide practical projects inspired by my competition experience (e.g., system design for autonomous systems).
  • Integrate with my broader repo, linking to /Programming_Problem_Solving (for coding) and /Communities_Competitions_Growth (for career growth).
  • Highlight my journey, showcasing resources that helped in competitions and lab work.

The resources below cover awesome lists, platforms, and tools for general learning and development.

Curated Resources

Repositories

Name Link Description
Awesome Remote Job github.com/lukasz-madon/awesome-remote-job Curated list of remote job opportunities, useful for robotics freelancers.
Project-Based Learning github.com/practical-tutorials/project-based-learning Project-based learning resources for programming and engineering.
Developer Roadmap github.com/kamranahmedse/developer-roadmap Interactive roadmaps for developers, including backend and robotics paths.
System Design Primer github.com/donnemartin/system-design-primer Guide to system design for interviews, relevant for autonomous systems.
Tech Interview Handbook github.com/yangshun/tech-interview-handbook Handbook for tech interviews, with algorithms and system design tips.
Free Programming Books github.com/EbookFoundation/free-programming-books List of free programming books by language.
OSSU Computer Science github.com/ossu/computer-science Open-source computer science curriculum.
OSSU Data Science github.com/ossu/data-science Open-source data science curriculum, useful for robotics data analysis.

Learning Platforms and Courses

Name Link Description
freeCodeCamp freecodecamp.org/ Free coding bootcamp with projects and certifications.
Khan Academy khanacademy.org/ Free courses on math, science, and programming.
MIT OpenCourseWare ocw.mit.edu/ MIT's free online courses, including robotics and CS.
Codecademy codecademy.com/ Interactive coding courses for beginners.
W3Schools w3schools.com/ Free tutorials for web development and programming.
Udacity udacity.com/ Nanodegrees in AI, robotics, and self-driving cars.
Coursera coursera.org/ Online courses from universities, including Python and data science.
Pluralsight pluralsight.com/ Skills platform with engineering courses (free trial).
365 Data Science 365datascience.com/ Data science learning platform.
Engineer4Free engineer4free.com/ Free engineering tutorials.
CS Video Courses github.com/Developer-Y/cs-video-courses Curated CS video courses from MIT and others.
MOOC.org mooc.org/ Massive open online courses directory.
Coursera Meta Backend coursera.org/professional-certificates/meta-back-end-developer Meta's backend developer certificate.
Coursera Python Flask coursera.org/projects/python-flask Project on Python Flask for web development.
Meta Digital Skills facebook.com/business/learn/digital-skills-programs/meta-career-programs Meta's career programs for digital skills.
Cuemath cuemath.com/ Math learning platform for engineering foundations.
Awesome List github.com/sindresorhus/awesome Curated awesome lists for various topics.

Tools and Guides

Name Link Description
Unpaywall unpaywall.org/ Tool for accessing open-access research papers.
NotebookLM notebooklm.google.com/ Google AI tool for note-taking and research.
Intern Form Glossary internformglossary.net/ Glossary for intern forms, useful for career prep. (Note: Link appears incomplete; based on provided "sites.google.com/site/internformglossary/".)
MyGreatLearning mygreatlearning.com/ Industry courses for AI and engineering.
CodeWithMosh codewithmosh.com/ Coding courses for developers.
Udemy udemy.com/ Online learning platform with engineering courses.
AlgoExpert algoexpert.io/product Algorithm interview prep tool.
Tech Dev Guide techdevguide.withgoogle.com/paths/interview/ Google’s tech dev guide for interviews.
YouTube Videos youtube.com/watch?v=Q6G-J54vgKc Video on engineering topics.
YouTube Videos youtube.com/watch?v=twZ2ggIc0PQ Video on robotics or engineering.
YouTube Videos youtube.com/watch?v=_bYFu9mBnr4 Video on programming or engineering.

Projects

These projects leverage the provided general resources to build practical skills, inspired by my competition experience. See /General_Resources/projects/ for code and documentation.

  • System Design for Autonomous Vehicle: Design a scalable system using System Design Primer for F1TENTH navigation. (Intermediate, competition-focused.)
  • Developer Roadmap Project: Implement a web app based on Developer Roadmap to track engineering progress. (Beginner, educational.)
  • Tech Interview Prep: Solve system design problems from Tech Interview Handbook for robotics interviews. (Advanced, career-ready.)
  • Markdown Guide on Learning Platforms: Summarize platforms like freeCodeCamp in /docs/learning_platforms.md. (Beginner, educational.)

Repository Structure

General_Resources/
├── docs/            # Notes and summaries (e.g., learning_platforms.md)
├── projects/        # Project code and notebooks (e.g., system_design)
├── README.md        # This file

Embedded Systems and Low-Level Programming Repository

Table of Contents

Overview

This section is designed to:

  • Curate high-quality resources for embedded systems and low-level programming, covering microcontrollers, Linux kernels, and hardware interfacing.
  • Provide practical projects inspired by my competition experience (e.g., embedded controllers for autonomous vehicles).
  • Integrate with my broader repo, linking to /Systems_Hardware (for OS integration) and /Robotics_Autonomous_Systems (for robot applications).
  • Highlight my journey, showcasing low-level programming skills for robotics competitions and lab work.

The resources below cover repositories, videos, books, courses, papers, and tools for embedded systems, organized for easy access.

Curated Resources

Repositories

Name Link Description
Nexmon (Wi-Fi Firmware) github.com/seemoo-lab/nexmon Firmware patching for Wi-Fi chips, useful for embedded networking.
Serial Studio github.com/Serial-Studio/Serial-Studio Multi-purpose serial data visualization tool for embedded debugging (duplicate for emphasis).
Amun (Embedded Framework) github.com/AmrDeveloper/Amun Embedded framework for low-level programming.
Rust-CUDA github.com/Rust-GPU/Rust-CUDA Rust bindings for CUDA, for GPU-accelerated embedded systems.
Mastering Embedded Linux (3rd Ed) github.com/PacktPublishing/Mastering-Embedded-Linux-Programming-Third-Edition Code and resources for embedded Linux programming.
Awesome Embedded Linux github.com/fkromer/awesome-embedded-linux Curated list of embedded Linux resources.
Embedded Network Programming Guide github.com/cpq/embedded-network-programming-guide Guide to network programming in embedded systems.
Bare Metal Programming Guide github.com/cpq/bare-metal-programming-guide Guide to bare-metal low-level programming.
Awesome Embedded github.com/nhivp/Awesome-Embedded Curated embedded systems resources (duplicate for emphasis).
FPGA-ASIC Roadmap github.com/m3y54m/FPGA-ASIC-Roadmap Roadmap for FPGA/ASIC design in embedded systems.
Parallel Computing CUDA C github.com/CisMine/Parallel-Computing-Cuda-C CUDA C for parallel computing in embedded GPUs.
Embedded Linux with Yocto github.com/Rabie45/Embedded-Linux-System-with-the-Yocto-Project Project for building embedded Linux with Yocto.
EEPROM Programmer github.com/beneater/eeprom-programmer EEPROM programmer for low-level memory operations.

YouTube Videos and Playlists

Name Link Description
Embedded Linux Basics youtube.com/watch?v=eF9qWbuQLuw Intro to embedded Linux.
ARM Cortex-M Series youtube.com/watch?v=3l10o0DYJXg ARM Cortex-M microcontroller basics.
RTOS Explained youtube.com/watch?v=RWlI6O7yxMw Explanation of real-time operating systems.
Bare Metal Programming youtube.com/watch?v=cIG1nxoLw6U Bare metal programming intro.
Embedded C++ youtube.com/watch?v=GeSSkvwFDHs Embedded C++ programming.
STM32 HAL Tutorials youtube.com/watch?v=qJgsuQoy9bc&list=PLqCJpWy5Fohdz6Nu2yG6Loubocqk3sRNR STM32 HAL library tutorials.
AVR Microcontrollers youtube.com/watch?v=qJgsuQoy9bc&list=PLLwK93hM93Z13TRzPx9JqTIn33feefl37 AVR microcontroller series.
FPGA Design youtube.com/watch?v=scjT2yVA5tg&list=PLZ42ZUInDWC7NxkE0m1Dla2_HUtD5r1WM FPGA design playlist.
Altium Academy youtube.com/@AltiumAcademy Altium PCB design tutorials.
Computer Architecture youtube.com/watch?v=5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq Computer architecture series.
Embedded Linux with Yocto youtube.com/watch?v=ULY7rbJoROQ&list=PL6XhtJWb6Qa-fLyGoPdcp6sQtxbeChfTOOBd Yocto for embedded Linux.
Circuit Simulation circuitstoday.com/ Circuit simulation resources.
Embedded C Programming youtube.com/watch?v=71SRVEcbEwc&list=PLfIJKC1ud8gga7xeUUJ-bRUbeChfTOOBd Embedded C series.
Build a Computer youtube.com/watch?v=XbPMfoKi8kk Building a computer from scratch.
Programmable Hardware eng.ox.ac.uk/computing/projects/programmable-hardware/ Programmable hardware projects.
VHDL for Embedded youtube.com/watch?v=OW1EmG7b4DU VHDL for embedded systems.
Low-Level Programming youtube.com/watch?v=LnzuMJLZRdU&list=PLowKtXNTBypFbtuVMUVXNR0z1mu7dp7eH&index=2 Low-level programming series.
ARM Assembly youtube.com/watch?v=U6uMWm7-VJg ARM assembly programming.
MIPS Architecture youtube.com/watch?v=8zbpe43k4Qg&list=PL5Q2soXY2Zi_FRrloMa2fUYWPGiZUBQo2beChfKaKa9 MIPS architecture tutorials.
Embedded Systems Design youtube.com/watch?v=6caLyckwo7U Embedded systems design.
Build a Computer (Coursera) coursera.org/learn/build-a-computer Coursera course on building a computer.
Robotics ECS154B jlpteaching.github.io/ECS154B/modules/introduction/index/ Robotics course materials.
Computer Architecture Playlist youtube.com/watch?v=5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq Computer architecture playlist (duplicate for emphasis).
Low-Level C youtube.com/watch?v=bNkejpBBLAg&list=PLa4kqtM7SuFyf4P0EWHLpVGCxot0cAlPD Low-level C programming.
Circuit Simulation circuitstoday.com/ Circuit simulation resources (duplicate for emphasis).
Embedded Systems Playlist youtube.com/watch?v=71SRVEcbEwc&list=PLfIJKC1ud8gga7xeUUJ-bRUbeChfTOOBd Embedded systems series (duplicate for emphasis).
Build a Computer Video youtube.com/watch?v=XbPMfoKi8kk Video on building a computer (duplicate for emphasis).
Programmable Hardware eng.ox.ac.uk/computing/projects/programmable-hardware/ Programmable hardware projects (duplicate for emphasis).

Books

Name Link Description
Mastering Embedded Linux (3rd Ed) github.com/PacktPublishing/Mastering-Embedded-Linux-Programming-Third-Edition Book on advanced embedded Linux programming.

Courses and Tutorials

Name Link Description
ARM Embedded Linux arm.com/resources/education/online-courses/embedded-linux Online course on embedded Linux with ARM.
Embedded Linux Roadmap linkedin.com/pulse/embedded-linux-road-map-part-1-hazem-khaled-igfdf/ Roadmap for embedded Linux.
Steve Branam Blog embeddedrelated.com/blogs-1/nf/Steve_Branam.php Blog on embedded systems.
Azhar ICPC sites.google.com/view/azharicpc/home?authuser=0 ICPC preparation, relevant for low-level coding.
Master Micro Professional Courses master-micro.com/professional-courses Professional courses on microcontrollers (duplicate for emphasis).
CircuitLab circuitlab.com/editor/ Online circuit editor.
Mastering Microcontroller udemy.com/course/mastering-microcontroller-with-peripheral-driver-development/ Udemy course on microcontrollers (coupon available).
Master Micro Professional Courses master-micro.com/professional-courses Professional courses (duplicate for emphasis).
ST Community community.st.com/ ST Microelectronics community.
Altium Education education.altium.com/ Altium PCB education resources.
Embedded Linux with Yocto youtube.com/watch?v=ULY7rbJoROQ&list=PL6XhtJWb6Qa-fLyGoPdcp6sQtxbeChfTOOBd Yocto tutorial playlist.
Circuit Simulation circuitstoday.com/ Circuit tutorials.
Embedded Systems youtube.com/watch?v=71SRVEcbEwc&list=PLfIJKC1ud8gga7xeUUJ-bRUbeChfTOOBd Embedded systems playlist.
Build a Computer youtube.com/watch?v=XbPMfoKi8kk Build a computer video.
Programmable Hardware eng.ox.ac.uk/computing/projects/programmable-hardware/ Programmable hardware.
VHDL for Embedded youtube.com/watch?v=OW1EmG7b4DU VHDL tutorial.
Low-Level Programming youtube.com/watch?v=LnzuMJLZRdU&list=PLowKtXNTBypFbtuVMUVXNR0z1mu7dp7eH&index=2 Low-level programming playlist.
ARM Assembly youtube.com/watch?v=U6uMWm7-VJg ARM assembly.
MIPS Architecture youtube.com/watch?v=8zbpe43k4Qg&list=PL5Q2soXY2Zi_FRrloMa2fUYWPGiZUBQo2beChfKaKa9 MIPS tutorials.
Embedded Systems Design youtube.com/watch=v6caLyckwo7U Embedded design.
Build a Computer (Coursera) coursera.org/learn/build-a-computer Coursera course.
Robotics ECS154B jlpteaching.github.io/ECS154B/modules/introduction/index/ Robotics course.
Computer Architecture Playlist youtube.com/watch?v=5PHm2jkkXmi5CxxI7b3JCL1TWybTDtKq Computer architecture.
Low-Level C youtube.com/watch?v=bNkejpBBLAg&list=PLa4kqtM7SuFyf4P0EWHLpVGCxot0cAlPD Low-level C.
Circuit Simulation circuitstoday.com/ Circuit resources.
Embedded Systems Playlist youtube.com/watch?v=71SRVEcbEwc&list=PLfIJKC1ud8gga7xeUUJ-bRUbeChfTOOBd Embedded playlist.
Build a Computer Video youtube.com/watch?v=XbPMfoKi8kk Build a computer.
Programmable Hardware eng.ox.ac.uk/computing/projects/programmable-hardware/ Programmable hardware.

Papers

Name Link Description
Step-by-Step CPU Architecture researchgate.net/publication/262153059_Step-by-step_design_and_simulation_of_a_simple_CPU_architecture Paper on CPU architecture design.
AVR Architecture Guide exploreembedded.com/wiki/1._AVR_Architecture Guide to AVR architecture.

Tools and Websites

Name Link Description
LeetGPU leetgpu.com/ GPU-focused tool for low-level computing.
ST Community community.st.com/ ST Microelectronics community.
Microchip University mu.microchip.com/page/all-courses Microchip courses for embedded.
Altium Education education.altium.com/ Altium PCB education.
Datasheets.com datasheets.com/ Component datasheets.
CircuitLab circuitlab.com/editor/ Online circuit editor.
MIPS mips.com/ MIPS architecture resources.
Circuitstoday circuitstoday.com/ Circuit tutorials.
Skyfi Labs Embedded Projects skyfilabs.com/blog/list-of-good-embedded-systems-projects-for-engineering-students List of embedded projects.

Projects

These projects leverage the provided resources to build practical skills, inspired by my competition experience. See /Embedded_Systems_Low_Level_Programming/projects/ for code and documentation.

  • Nexmon Wi-Fi Firmware Patch: Modify Wi-Fi firmware using Nexmon for embedded networking in a robot. (Advanced, competition-ready.)
  • Serial Studio Debugger: Build a serial data visualizer using Serial Studio for F1TENTH sensor debugging. (Intermediate, practical.)
  • Rust-CUDA Embedded Accelerator: Implement a CUDA kernel in Rust using Rust-CUDA for GPU-accelerated low-level tasks. (Advanced, performance-focused.)
  • Bare Metal Bootloader: Create a bare-metal bootloader using Bare Metal Programming Guide for a microcontroller. (Intermediate, low-level.)
  • STM32 Peripheral Driver: Develop a peripheral driver using STM32 HAL Tutorials for a robotics sensor. (Intermediate, hardware-focused.)
  • Markdown Guide on Embedded Linux: Summarize embedded Linux concepts based on Mastering Embedded Linux (3rd Ed) in /docs/embedded_linux_guide.md. (Beginner, educational.)

Repository Structure

Embedded_Systems_Low_Level_Programming/
├── docs/            # Notes and summaries (e.g., embedded_linux_guide.md)
├── projects/        # Project code and notebooks (e.g., nexmon_firmware)
├── README.md        # This file

About

Awesome_Eyes Repo gathering various resources I used in my computer engineering journey.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published