Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vistx/factory-io-with-esp32
This repository contains code to establish communication between an ESP32 and Factory IO, specifically for controlling the "Pick and Place XYZ" scene using real-life buttons and a joystick.
https://github.com/vistx/factory-io-with-esp32
esp esp32 factorio modbus modbus-tcp platformio plc tcp-ip vscode
Last synced: 2 months ago
JSON representation
This repository contains code to establish communication between an ESP32 and Factory IO, specifically for controlling the "Pick and Place XYZ" scene using real-life buttons and a joystick.
- Host: GitHub
- URL: https://github.com/vistx/factory-io-with-esp32
- Owner: Vistx
- Created: 2024-09-07T22:58:40.000Z (4 months ago)
- Default Branch: master
- Last Pushed: 2024-09-07T23:16:29.000Z (4 months ago)
- Last Synced: 2024-09-25T18:46:16.105Z (3 months ago)
- Topics: esp, esp32, factorio, modbus, modbus-tcp, platformio, plc, tcp-ip, vscode
- Language: C++
- Homepage:
- Size: 89.4 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# FactoryIO with ESP32
![Untitled](https://github.com/user-attachments/assets/da7fff78-f270-4078-a151-05525448e1ac)
## Description
This repository contains code to establish communication between an ESP32 and Factory IO, specifically for controlling the "Pick and Place XYZ" scene using real-life buttons and a joystick.
## Files and usage
- **Factory IO with Esp32/Factory io Server** - Esp32 Code.
- **Pick & Place XYZ ESp32**.factoryio - Modified scene.### Software and Libraries
- FactoryIO
- VS Code with PlatformIO
- [This](https://github.com/emelianov/modbus-esp8266) Modbus TCP/IP library for Esp32### Schematics
![Espconnections](https://github.com/user-attachments/assets/35309a41-43f6-40ca-bb7e-44e5c8a13491)
- **Pin 21, 22** → Button inputs (FactoryIO Z+ and Z-)
- **Pin 23** → Joystick switch (FactoryIO Vacuum Actuator)
- **Pin 32** → Joystick X pin (FactoryIO X+ and X-)
- **Pin 33** → Joystick Y pin (FactoryIO Y+ and Y-)### Usage
Upload the given code to the ESP32, then go to the Serial Monitor and grab the output IP address.
Next, navigate to **File > Drivers > Configuration** in Factory IO and paste the IP address into the **Host** section. After that, connect and start the scene.
![Untitled1](https://github.com/user-attachments/assets/b1b65c92-7c40-4ff8-9173-fd29a16da723)
## Results
[Video](https://github.com/user-attachments/assets/ee38de30-46aa-4430-96e0-2ab1b09bd2e9)