Skip to content

For learning, or just a simpler flow more condusive workflow for ESP-32 builds. Also allows those withiut hardware to create for community with built in IDE and syntax!

License

Notifications You must be signed in to change notification settings

Flapjacode/esp32-simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Esp32-Development-Sim-Tool

Project Overview

This web application provides an interactive interface for configuring ESP-32 microcontroller pins. The tool assists developers in properly setting up their ESP-32 projects by generating boilerplate code based on their pin configuration selections.

Key Features

Visual Pin Selection Interface: Interactive representation of all ESP-32 pins with clear labeling

Pin Configuration System:


image

Select from multiple functions (GPIO, I2C, SPI, UART, etc.)

Configure pin modes (digital input/output, analog, etc.)

Add custom names and descriptions for each pin

Code Generation:


image

Automatic generation of initialization code for individual pins

Complete setup function template for all configured pins

Validation of pin assignments for conflicts


image

Integrated Development Environment:

Built-in terminal for immediate feedback

Code validation before deployment

Support for common ESP-IDF and Arduino frameworks

ESP32 Pin Configuration Simulator

Project Overview

A web-based ESP32 pin configuration tool that allows developers to:

  • Visually configure ESP32 pins with different modes (GPIO, I2C, SPI, UART)
  • Generate Arduino-compatible code templates
  • Validate code syntax before deployment
  • Test configurations without physical hardware

Features

  • Interactive Pin Configuration:

    • Visual representation of ESP32 pins
    • Pin-specific configuration options
    • Custom variable naming and descriptions
  • Code Generation:

    • Automatic template generation
    • Setup/Loop structure
    • Pin mode initialization
  • Code Validation:

    • Syntax checking
    • Pin usage verification
    • Common ESP32 function detection

Installation

Web Version (No Installation Required)

The application runs directly in modern browsers:

  1. Open index.html in your preferred browser
  2. Start configuring your ESP32 pins

Development Setup

  1. Clone the repository:
git clone https://github.com/Flapjacode/Esp32-Sim-Tool.git
cd Esp32-Sim-Tool
  1. Install dependencies (if using Node.js server):
npm install
  1. Start the development server:
npm start
  1. Open in browser:
http://localhost:3000

Usage

  1. Configure Pins:

    • Click on any ESP32 pin to select it
    • Choose the appropriate mode from the dropdown
    • Assign a variable name and description
  2. Generate Code:

    • Click "Generate Template" to create starter code
    • The editor will populate with properly configured pin setups
  3. Validate Code:

    • Click "Validate Code" to check for common errors
    • The output panel will show validation results
  4. Export Code:

    • Copy the generated code directly from the editor
    • Paste into your Arduino IDE or PlatformIO project

Project Structure

Esp32-Sim-Tool/
├── index.html          # Main application file
├── README.md           # Project documentation
├── assets/             # Static assets (CSS, JS, images)
│   ├── styles.css      # Additional styles
│   └── scripts.js      # Additional JavaScript
└── package.json        # Node.js dependencies (optional)

Dependencies

  • Modern web browser (Chrome, Firefox, Edge, Safari)
  • Node.js (optional for local development server)

License

MIT License - See LICENSE file for details

Ensure all code follows the existing style and conventions

Include appropriate tests for new functionality

Update documentation as needed

Submit a pull request with a clear description of changes

License ESP IDE SimTool © 2025 by Matthew Shannon is licensed under Creative Commons Attribution 4.0 International

Support For issues or feature requests, please open an issue in the GitHub repository. For direct inquiries, contact the project maintainers through GitHub.

About

For learning, or just a simpler flow more condusive workflow for ESP-32 builds. Also allows those withiut hardware to create for community with built in IDE and syntax!

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published