[solved] ESP32 DMX Receiver Problems

I’m trying to receive DMX and send 9 channels through ESP-NOW.
I bought a SparkFun DMX Thing and connected it to an ESP32 Thing (not plus)
First I tried the SparkFun DMX Lib but got the same issues as several other with shifted data and/or complete wrong data.
Because of the issues forum in that lib I found ESP32-DMX-RX lib (GitHub - luksal/ESP32-DMX-RX: Example code for receiving DMX512 with ESP32 and RS485 transceiver IC like MAX485 or isolated ADM2486) and want to give it a try but I can’t even compile it. I downloaded it from github as zip and used the import lib by zip function in arduino IDE (1.8.12).
When I try to compile the SimpleRX example I get “error: ‘uint8_t’ does not name a type” and several others. What am I doing wrong?

A few errors from my output (for full output see `In file included from C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\sr - Pastebin.com):

`In file included from C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\src\dmx.cpp:1:0:

C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\src/dmx.h:9:16: error: "uint8_t" does not name a type

         static uint8_t Read(uint16_t channel);              // returns the dmx value for the givven address (values from 1 to 512)


C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\src/dmx.h:16:16: error: "QueueHandle_t" does not name a type

         static QueueHandle_t dmx_rx_queue;                  // queue for uart rx events


C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\src/dmx.h:18:16: error: "SemaphoreHandle_t" does not name a type

         static SemaphoreHandle_t sync_dmx;                  // semaphore for syncronising access to dmx array


C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\src/dmx.h:22:16: error: "uint16_t" does not name a type

         static uint16_t current_rx_addr;                    // last received dmx channel


C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\src\dmx.cpp:25:15: error: "uint16_t DMX::current_rx_addr" is not a static data member of "class DMX"

 uint16_t DMX::current_rx_addr = 0;


C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\src\dmx.cpp:29:26: error: "uint8_t DMX::dmx_data [513]" is not a static data member of "class DMX"

 uint8_t DMX::dmx_data[513];


C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\src\dmx.cpp: In static member function "static void DMX::Initialize()":

C:\Users\markus\Documents\Arduino\libraries\ESP32DMXRX\src\dmx.cpp:54:72: error: "dmx_rx_queue" was not declared in this scope

     uart_driver_install(DMX_UART_NUM, BUF_SIZE * 2, BUF_SIZE * 2, 20, &dmx_rx_queue, 0);


A:Not posting the rest of your code.

have you tried:

#include "sdkconfig.h"
#include "esp_system.h" //This inclusion configures the peripherals in the ESP system.


I just included Arduino.h at top of the Lib's dmx.cpp file and now I am receiving my 512 values.

Sorry to hijack your post, could you please confirm how you wired your ESP32 and MAX485 ad I cannot seem to get mine working together?