Home

Awesome

CAN Wizard

CAN Wizard is a project designed for communication using the CAN (Controller Area Network) protocol, primarily targeted at embedded systems utilizing the ESP32 microcontroller family. This project is developed using ESP-IDF and supports ESP32-C3, allowing flexible development for different use cases.

Here are more information:

Features

Requirements

Setup and Installation

  1. Clone the Repository: Clone this repository using:

    git clone --recursive git@github.com:okhsunrog/can_wizard.git
    
  2. Install ESP-IDF: Follow the official ESP-IDF installation guide for your operating system: ESP-IDF Setup Guide

  3. Configure ESP-IDF: Set up your environment by running the following commands:

    cd <project-directory>
    idf.py set-target esp32c3
    idf.py menuconfig
    
  4. Build and Flash: Build the project and flash it to your microcontroller:

    idf.py build
    idf.py flash
    idf.py monitor
    

Usage

Console Commands

The CAN Wizard project provides several commands that can be executed through a console interface:

Additional commands can be explored through the console by typing help.

File System Operations

The project includes basic file system operations to read and write configuration or log files. These operations can be accessed through the fs_* commands in the console.

Project Structure

can_wizard-main/
├── components/
│   └── C-Linked-List/          # Linked list implementation used in the project
├── main/
│   ├── can.c                   # CAN communication implementation
│   ├── console.c               # Custom console implementation
│   ├── cmd_can.c               # CAN command handlers
│   ├── fs.c                    # File system operations
│   └── main.c                  # Main entry point
└── CMakeLists.txt              # Project build system configuration

TODO:

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please submit a pull request or open an issue to discuss your ideas.

Author

Danila Gornushko