This project involves the design and implementation of a PCB featuring an ESP32-C3 microcontroller. The system is designed to receive temperature data either directly from an RTD Temperature Probe (Probe A) or via an internet API. Based on this input, the firmware calculates and adjusts the temperature of a second RTD Temperature Probe (Probe B) using a digital potentiometer, ensuring Probe B maintains a temperature approximately 1°C higher than Probe A.
- Dual temperature data acquisition:
- Direct reading from RTD Temperature Probe (Probe A).
- Fetching temperature data from an internet API.
- Dynamic temperature adjustment of Probe B via a digital potentiometer.
- Firmware developed in C++ for the ESP32-C3, adhering to the Google Style Guide.
- Hardware design created using KiCAD v8.0.8.
esp32-probe-align/
├── firmware/
│ └── esp32-c3_code/
├── hardware/
│ └── kicad_project_files/
└── README.md
- firmware/esp32-c3_code/: Contains the C++ source code for the ESP32-C3 microcontroller.
- hardware/kicad_project_files/: Includes the KiCAD design files for the PCB.
- ESP32-C3 development environment set up.
- KiCAD installed for hardware design viewing and editing.
-
Clone the Repository:
git clone https://github.com/yourusername/esp32-probe-align.git cd esp32-probe-align
-
Firmware Setup:
- Navigate to the
firmware/esp32-c3_code/
directory. - Follow the instructions in the
README.md
file within that directory to set up and compile the firmware.
- Navigate to the
-
Hardware Setup:
- Open the KiCAD project located in
hardware/kicad_project_files/
to view or modify the PCB design.
- Open the KiCAD project located in
-
Programming the ESP32-C3:
- Connect your ESP32-C3 device to your computer.
- Upload the compiled firmware to the device.
-
Operating the System:
- Upon powering the system, it will read the temperature from Probe A or the internet API, depending on the configuration.
- The system will then adjust Probe B's temperature to maintain it approximately 1°C higher than Probe A.
Contributions are welcome! Please fork this repository and submit a pull request with your proposed changes. Ensure that your code adheres to the Google Style Guide for C++.
This project is licensed under the MIT License.
- Thanks to the open-source community for providing tools and libraries that made this project possible.
- Special mention to the developers of KiCAD and the ESP32 platform.
**Notes:**
- Replace `yourusername` in the clone URL with your actual GitHub username.
- Ensure that the `LICENSE` file is present in your repository. If not, consider adding one to specify the terms under which your project can be used.
- Feel free to add more sections or details as your project evolves.