I am receiving a build error on the EByte library. It is related to the following conflict.
termios.h:
define B110 3
binary.h:
define B011 3
define B110 6
Building this LoRa library generates the following error when the VFS framework for ESP32 is included.
C:\Users\blue_\Documents\Arduino\libraries\EByte_LoRa_E22_SeriesLibrary-master/includes/statesNaming.h: In function 'String getUARTBaudRateDescriptionByParams(byte)':
C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:157:4: error: duplicate case value
case UART_BPS57600:
^
C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:148:4: error: previously used here
case UART_BPS9600:
^
C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_SeriesLibrary-master/includes/statesNaming.h: In function 'String getAirDataRateDescriptionByParams(byte)':
C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:203:4: error: duplicate case value
case AIR_DATA_RATE_110384:
^
C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:194:4: error: previously used here
case AIR_DATA_RATE_01148:
^
C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_SeriesLibrary-master/includes/statesNaming.h: In function 'String getWORPeriodByParams(byte)':
C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:294:4: error: duplicate case value
case WOR_3500000:
^
C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:285:4: error: previously used here
case WOR_2000_011:
^
I have detailed the source of the problem in the following ticket. But I don't anticipate it being fixed any time soon.
I am receiving a build error on the EByte library. It is related to the following conflict. termios.h:
define B110 3
binary.h:
define B011 3
define B110 6
Building this LoRa library generates the following error when the VFS framework for ESP32 is included. C:\Users\blue_\Documents\Arduino\libraries\EByte_LoRa_E22_SeriesLibrary-master/includes/statesNaming.h: In function 'String getUARTBaudRateDescriptionByParams(byte)': C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:157:4: error: duplicate case value case UART_BPS57600: ^ C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:148:4: error: previously used here case UART_BPS9600: ^ C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_SeriesLibrary-master/includes/statesNaming.h: In function 'String getAirDataRateDescriptionByParams(byte)': C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:203:4: error: duplicate case value case AIR_DATA_RATE_110384: ^ C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:194:4: error: previously used here case AIR_DATA_RATE_01148: ^ C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_SeriesLibrary-master/includes/statesNaming.h: In function 'String getWORPeriodByParams(byte)': C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:294:4: error: duplicate case value case WOR_3500000: ^ C:\Users\blue\Documents\Arduino\libraries\EByte_LoRa_E22_Series_Library-master/includes/statesNaming.h:285:4: error: previously used here case WOR_2000_011: ^
I have detailed the source of the problem in the following ticket. But I don't anticipate it being fixed any time soon.
https://github.com/espressif/esp-idf/issues/7678#issuecomment-940950491
The best workaround for this is to avoid using the BXXX macros for your enumerations in statesNaming.h. This will resolve the problem.