Hi All,
Going to be in a world of trouble if I can't get this to work quickly. It worked a while back (few months?) but now will not compile. Using ESP8266.
#include <ESP8266WiFi.h>
#include <WiFiUdp.h>
#include <LXDMXWiFi.h>
#include <LXWiFiSACN.h>
const char* ssid = "xxxxxxx";
const char* pwd = "xxxxxxx";
uint8_t chan = 2;
LXDMXWiFi* interface; // dmx protocol interface for parsing packets (created in setup)
WiFiUDP wUDP; // An EthernetUDP instance to let us send and receive UDP packets
uint8_t led_state = 0;
void blinkLED() {
if ( led_state ) {
digitalWrite(BUILTIN_LED, HIGH);
led_state = 0;
} else {
digitalWrite(BUILTIN_LED, LOW);
led_state = 1;
}
}
IPAddress send_address;
void setup() {
pinMode(BUILTIN_LED, OUTPUT);
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, pwd);
WiFi.config(IPAddress(192, 168, 1, 124), IPAddress(192, 168, 1, 1), IPAddress(255, 255, 255, 0));
while (WiFi.status() != WL_CONNECTED) {
delay(100);
blinkLED();
}
interface = new LXWiFiSACN(); // Initialize Interface (defaults to first universe)
//interface->setUniverse(1); // for different universe, change this line and the multicast address below
wUDP.beginMulticast(WiFi.localIP(), IPAddress(239, 255, 0, 1), interface->dmxPort());
send_address = IPAddress(239, 255, 0, 1);
//note requires v2.1 of ESP8266WiFi library for >494 slots Art-Net
//prior to fix, total packet size is limited to 512 bytes
interface->setNumberOfSlots(512);
}
/************************************************************************
The main loop fades the levels of addresses 7 and 8 to full
*************************************************************************/
void loop() {
for (int i = 1; i <= 512; i++) {
interface->setSlot(i, 255);
}
interface->sendDMX(&wUDP, send_address, WiFi.localIP());
delay(5000);
for (int i = 1; i <= 512; i++) {
interface->setSlot(i, 0);
}
interface->sendDMX(&wUDP, send_address, WiFi.localIP());
delay(5000);
}
Arduino: 1.8.15 (Mac OS X), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"
/Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.cpp: In member function 'uint16_t LXWiFiSACN::parse_dmp_layer(uint16_t)':
/Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.cpp:316:42: error: call of overloaded 'abs(long unsigned int)' is ambiguous
316 | if ( abs(millis()-_last_packet_a) > 3000 ) {
| ^
In file included from /Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/cstdlib:75,
from /Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/stdlib.h:36,
from /Users/Alex/Library/Arduino15/packages/esp8266/hardware/esp8266/3.0.1/cores/esp8266/Arduino.h:27,
from /Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.h:12,
from /Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.cpp:22:
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/stdlib.h:74:5: note: candidate: 'int abs(int)'
74 | int abs (int);
| ^~~
In file included from /Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/cstdlib:77,
from /Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/stdlib.h:36,
from /Users/Alex/Library/Arduino15/packages/esp8266/hardware/esp8266/3.0.1/cores/esp8266/Arduino.h:27,
from /Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.h:12,
from /Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.cpp:22:
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:79:3: note: candidate: 'constexpr long double std::abs(long double)'
79 | abs(long double __x)
| ^~~
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:75:3: note: candidate: 'constexpr float std::abs(float)'
75 | abs(float __x)
| ^~~
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:71:3: note: candidate: 'constexpr double std::abs(double)'
71 | abs(double __x)
| ^~~
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:61:3: note: candidate: 'long long int std::abs(long long int)'
61 | abs(long long __x) { return __builtin_llabs (__x); }
| ^~~
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:56:3: note: candidate: 'long int std::abs(long int)'
56 | abs(long __i) { return __builtin_labs(__i); }
| ^~~
/Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.cpp:362:39: error: call of overloaded 'abs(long unsigned int)' is ambiguous
362 | if ( abs(millis()-_last_packet_b) > 3000 ) {
| ^
In file included from /Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/cstdlib:75,
from /Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/stdlib.h:36,
from /Users/Alex/Library/Arduino15/packages/esp8266/hardware/esp8266/3.0.1/cores/esp8266/Arduino.h:27,
from /Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.h:12,
from /Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.cpp:22:
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/stdlib.h:74:5: note: candidate: 'int abs(int)'
74 | int abs (int);
| ^~~
In file included from /Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/cstdlib:77,
from /Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/stdlib.h:36,
from /Users/Alex/Library/Arduino15/packages/esp8266/hardware/esp8266/3.0.1/cores/esp8266/Arduino.h:27,
from /Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.h:12,
from /Users/Alex/Dropbox/My Mac (Alex Mead 2)/Documents/Arduino/libraries/LXDMXWiFi_Library-master/src/LXWiFiSACN.cpp:22:
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:79:3: note: candidate: 'constexpr long double std::abs(long double)'
79 | abs(long double __x)
| ^~~
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:75:3: note: candidate: 'constexpr float std::abs(float)'
75 | abs(float __x)
| ^~~
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:71:3: note: candidate: 'constexpr double std::abs(double)'
71 | abs(double __x)
| ^~~
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:61:3: note: candidate: 'long long int std::abs(long long int)'
61 | abs(long long __x) { return __builtin_llabs (__x); }
| ^~~
/Users/Alex/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.0.3-gcc10.3-9bcba0b/xtensa-lx106-elf/include/c++/10.3.0/bits/std_abs.h:56:3: note: candidate: 'long int std::abs(long int)'
56 | abs(long __i) { return __builtin_labs(__i); }
| ^~~
exit status 1
Error compiling for board NodeMCU 1.0 (ESP-12E Module).
Your help is much appreciated. Thank you x