[Solucionado] Conflicto entre librerias

Buenas tardes,

Estoy con un proyecto que necesito utilizar las librerias de adafruit, concretamente Adafruit_NeoPixel.h y para un tema de modbus, la libreria ModbusSerial.h.

El caso que en un sketch con solo esta dos líneas:

#include <Adafruit_NeoPixel.h>
#include <ModbusSerial.h>

Ya da error de compilación. Investigando he encontrado en los foros a gente que le ocurre lo mismo pero con otras librerías , según he entendido hay librerías que repiten el mismo nombre de una constante o variable y claro ya tienes el lio montado porque se duplica.
Alguien me podría guiar si mis sospechas son fundadas y por donde podría mirar para solucionarlo??

Gracias.

¿Exactamente que error te marca?
¿Para cuál placa estás compilando?

Yo lo acabo de simular en wokwi para Uno/Nano y no me marcó ningún error.

Pues .... acabo de llegar a casa he probado y tampoco me da error .... Me acabas de dejar a cuadros ..... He perdido todo el día con este error, estoy sospechando que halla tocado algo en el .h y la he dejado corructo.

Mañana posteo desde el trabajo y cerramos hilo pero ya se por donde pueden ir los tiros.

Gracias MaximoEsfuerzo.

¿Cuál es el error que te da el compilador?

Buenos días maximoEsfuerzo y mancera1979, ya se puede cerrar el hilo, esta resuelto el problema. He borrado del IDE la libreria ModbusSerial.h y la he vuelto a instalar, he intentado compilar y todo correcto.

Explico lo sucedido, tengo que controlar un compresor mediante modbus rs485 y hay también unas tiras leds WS2812B para avisar a los operarios que en 5 minutos se va a poner en marcha el compresor, ya que es muy peligroso y tienen que retirarse de la zona.

El caso que la librería del compresor, solo hago uso de una función que contiene, que es realmente lo único que necesito de dicha librería, la copie y la pegue dentro del ModbusSerial.h (mala praxis, muy mala praxis).

Por temas de prioridades lo deje apartado y después de dos semanas lo he retomado olvidando que copie dicha función dentro del ModbusSerial.h, al meter los tres #includes, modbus, adafruit y compresor, dicha función se repetía dos veces y por eso me daba error de compilación, investigando por internet sospechaba de la librería del adafruit pero no.

Una vez más gracias MaximoEsfuerzo por tu comentario de simularlo en wokwi, eso me hizo encender la bombilla dentro de mi cabeza.

Saludos.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.