This repository hosts the software for the 32x32 Internet-of-Things RGB LED Matrix, based on an ESP32 and Arduino IDE. The display data is generated on a server and transferred via MQTT.
The pin assignment is not strict and every pin can be reconfigured to another one, but it is recommended to follow the pinout below so it would work with the unmodified code:
Pin | GPIO | Reference |
---|---|---|
OE | 13 | |
CLK | 14 | |
LAT | 15 | |
CH_A | 26 | |
CH_B | 4 | |
CH_C | 27 | |
CH_D | 2 | |
R1 | 5 | |
G1 | 17 | |
BL1 | 18 | |
R2 | 19 | |
G2 | 16 | |
BL2 | 25 |
The config_dummy.h
file hosts all the required configuration variables. This file must be renamed to config.h
before uploading.
WIFI_SSID
: Access point SSIDWIFI_PASSWORD
: Access point passwordMQTT_SERVER
: MQTT server address or IPMQTT_PORT
: MQTT server port, default value: 1883
HOST_NAME
: Host name, default value: IoTRGBLEDMatrix
MQTT_USERNAME
: (optional) MQTT server user nameMQTT_PASSWORD
: (optional) MQTT server passwordMQTT_TOPIC_DISPLAY
: MQTT topic to listen to for the frame updatesThe MQTT_USERNAME
and MQTT_PASSWORD
definitions are optional, they can be commented out if authentication has not been enabled on the server.
The HiveMQ MQTT broker configured by default publishes a "word clock" display (like the image above), provided by my own Node-RED server. This is an example for testing purposes only.
The project is documented on hackaday.io.
This software is licensed under GNU General Public License.