Closed fjsalc closed 2 years ago
Hola, efectivamente ArduinoJson no viene incluido en el repositorio, respecto a los textos, debes compilar el fichero spiffs.bin y subirlo también al esp32.
Primero lo compilas desde la consola de platformio con pio run -t buildfs
Y luego lo subes con pio run -t uploadfs
Sobre el error al conectar puede ser por señal o por la clave que tenga el ssid, pero dudo mucho que sea problema de compilación.
También decirte que la versión subida al repositorio no está totalmente actualizada, ahora mismo estoy liado con temas de trabajo, pero en un mes o así ya podré retomar de nuevo el proyecto.
¿Qué cambios quieres hacer?
Saludos.
Gracias @pablozg.
He compilado y subido el fichero spiffs.bin y ahora los mensajes aparecen correctamente en el display. Sin embargo, sigo teniendo problemas con las conexión a las wifi. He probado varias veces y siempre da el mismo error, el que puse en el mensaje anterior. Por supuesto no es problema de la contraseña, e incluso para probar si es problema de hardware, he subido al ESP32 los binarios de la versión PID y funcionan correctamente, se conectan a las wifi. Por eso sigo pensando que es un problema de versiones de librerías wifi o algo así.
Lo que quiero hacer es que dé la posibilidad de tener en cuenta la compensación por horas. Todo el que tiene compensación de excedentes reconocido por la comercializadora y distribuidora, se le hace primero una compensación dentro de cada hora, donde los Kwh vertidos se compensan con los consumidos. Este el mejor modo de rentabilizar los KWh que produce tu instalación solar. Por ello, sería interesante que el freeds calculara el balance de Kwh vertidos y consumidos en cada hora para no activar el consumo de las salidas o del derivador si en la hora que corre se ha consumido más de lo que se ha vertido. Como esta situación viene bien sólo en determinadas circunstancias, habría que poner un interruptor en la web para decidir si se activa o no este modo. Yo tengo hecho ya los cambios en los fuentes para hacer la contabilidad de este balance por horas y hacer que se pare o activen las salidas y el derivador. Lo único que me queda es buscarle un sitio en el display para mostrar cuál es este balance en cada momento y el activar o desactivar este modo de funcionamiento en la web. Si quieres te paso lo que he hecho o lo subo como un fork para que puedas utilizarlo y no te calientes mucho la cabeza, aunque no es muy difícil.
Hola he actualizado el código fuente a la versión que tengo actualmente y he subido un archivo .zip (lib.zip) con las librerias tal y como las tengo yo en mi sistema.
Prueba a compilar con las librerías que he subido, si te sigue fallando ya debe ser problema de configuración del platformio.
Respecto a los cambios, cuando lo tengas todo compilado y probado, crea un pull request para que me sea más sencillo comprobar los cambios y hacer los ajustes si fueran necesarios.
Gracias.
Hola de nuevo. Bien parece que ahora va todo mejor. Compila sin problemas y pasa el código al ESP32. El único inconveniente es que yo tengo un Solax (no híbrido) y cuando lo conecto en modo local lee perfectamente los datos de producción y de consumo. Sin embargo, cuando lo conecto a través del ESP01 (no local), se conecta al inversor, pero ya no le llegan bien los parámetros. Parece como si no interpretara bien el vector de datos que le llega.
En el código fuente que subiste no está la fuente de los programas del ESP01, no? Si es así, te pediría que lo subieras también, o al menos el binario, porque para mí es más fácil hacer los cambios y correcciones sobre la conexión no local, es decir, usando el ESP01. (Por cierto, el ESP01 está bien porque funciona perfectamente con OpenDS en conexión no local)
Corrijo: Subiendo directamente los binarios al ESP32 lee perfectamente los datos del inversor en local pero no en red. Cuando pruebo con el programa compilado, los datos del inversor ya no aparecen bien.
Gracias.
El binario para el esp01 lo tienes en el zip de las releases: https://github.com/pablozg/freeds/releases/download/1.0.7/FreeDS_1.0.7Rev2.zip
Ten en cuenta que el binario del esp01 ya no es compatible con opends por eso no te lee los datos, en cuanto lo programes, tendrás que elegir en la configuración el ssid del solax para que lo envíe al esp01.
Si los datos no te salen de forma correcta prueba a enviar el comando "solaxVersion 2" desde la consola o "solaxVersion 3", el comando depende de la versión de solax que tengas.
Gracias @pablozg.
El comando era lo que faltaba. Ya puedo compilar y comprobar los cambios. Te aviso cuando los tenga subidas las modificaciones.
Hola, estoy tratando de hacer algunas pequeñas modificaciones, pero la verdad, es que me está resultando imposible porque de partida no va bien, lo que me hace sospechar que las librerías que se utilizan, o no están actualizadas, o bien no son con las que realmente se compilan finalmente con el programa. Voy a explicar paso a paso los errores con los que me he ido encontrando.
Agradecería que alguien pudiera echarme una mano en este punto en el que ya no veo una posible solución. Espero hacer una pequeña contribución al proyecto.
Gracias