Hello guest, if you read this it means you are not registered. Click here to register in a few simple steps, you will enjoy all features of our Forum.
Hi Guest this is an announcement for guests !!!

Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Lancement du module complémentaire JK-BMS RS485 pour Home Assistant
#1
Bomb    Je suis heureux de vous annoncer la sortie d’un nouveau module complémentaire Home Assistant dédié à la gestion des BMS JKong via une connexion filaire RS485. 

Et comme à l'accoutumée celui-ci reste gratuit  Cool        (Le code source est disponible sur le Github)

   

Ce module permet de superviser et de centraliser le suivi de plusieurs JK-BMS (jusqu’à 15) directement depuis votre installation Home Assistant. 
Ceci sans recourir à une multiplication de modules matériels spécifiques. Seul des câbles RJ45 sont requis. 

Principales fonctionnalités :
  • Compatibilité multi-BMS : prise en charge simultanée de plusieurs modèles JKong (PBA16S20P, PB2A16S15P, PB1A16S15P, PB1A16S10P) connectés sur un seul bus RS485.
  • Intégration transparente à Home Assistant : configuration simple via l’interface avec création automatique des entités pour chaque BMS dans Home Assistant.
  • Interopérabilité MQTT : toutes les données collectées sont publiées sur un broker MQTT (celui de votre choix), ce qui permet de les exploiter dans d’autres solutions domotiques comme Jeedom.
  • Dashboards préconfigurés : Deux tableaux de bord prêts à importer sont proposés pour visualiser rapidement les informations essentielles, sans passer par une configuration longue et fastidieuse. Une contribution est demandée pour ceux-ci  [Image: githubbutton_sm.svg]
  • Installation facilitée : ajout du dépôt GitHub, installation via l’add-on store, configuration des paramètres principaux (port USB, nombre de BMS, accès MQTT), et le module est opérationnel en quelques minutes.

Points distinctifs :
Contrairement aux solutions actuelles qui nécessitent un module ESP32 par BMS, ce module permet une gestion centralisée et filaire de tous vos BMS JKong depuis un unique add-on Home Assistant, pour une installation plus simple et plus fiable.

Usage recommandé :
Ce module s’adresse à tous les utilisateurs souhaitant superviser efficacement plusieurs BMS JKong dans un environnement Home Assistant, tout en limitant le matériel et en privilégiant la stabilité de la connexion RS485.

Vidéo de démo:



Pour aller plus loin et se lancer dans l'installation :
  • Dépôt GitHub pour installation et documentation :
    Code :
    https://github.com/jean-luc1203/jkbms-rs485-addon

  • Pour le support et échanges : via le forum (privilégié) ou les issues GitHub.

Si vous avez envie de m'aider en supportant mon travail pour fournir des logiciels libres et supporter ce forum ainsi que les vidéos, c'est par là.
Je vous en remercie beaucoup.

[Image: paypal.png]

N’hésitez pas à partager vos retours ou à contribuer à l’amélioration du module par vos remarques et idées.

   

Captures écran:

   

4 JK-BMS en série:

   
Jean-Luc
Like Répondre
#2
Thumbs Up 
Exelent !!  Thumbsup
Et c’est marrant, j’ai aussi vendu mes Pylontech pour passer sur deux batteries avec un JK-BMS.
J’utilise également la solution Wi-Fi/Bluetooth pour le moment, (qui saute de temps en temps) et du coup j’étais en train de tout migrer vers un ESP mais cette fois en RJ45 (PoE) > RS485 > JK-BMS. J’ai reçu les composants hier, je vais tester ça ce week-end.

Ta solution fonctionne aussi avec un Elfin a la place de ton convertiseur usb du coup ? Si mon montage ne marche pas, je me rabattrai sur cette option, même si, comme toi, je préfère clairement une connexion filaire.
Dans ta vidéo, tu es branché directement sur ton PC  Home Assistant c'est bien ca?

Moi, je n’utilise pas le port de gauche pour l’onduleur sur le jk bms (le WKS Circle ne le reconnaît pas).
C’est justement là que je pensais me brancher mon esp… j'ai bon ou pas bon ?   Cool
Like Répondre
#3
bravo JeanLuc !
j'avais démarré avec JKBMS il y a 2ans avec pas mal de galères... et maintenant tu as créé la solution toute faite !
j'ai peu d'internet pour suivre le forum sur mon chantier, toujours pas fini...
Like Répondre
#4
(17-06-2025, 08:53 PM)vavann a écrit : Exelent !!  Thumbsup
Et c’est marrant, j’ai aussi vendu mes Pylontech pour passer sur deux batteries avec un JK-BMS.
J’utilise également la solution Wi-Fi/Bluetooth pour le moment, (qui saute de temps en temps) et du coup j’étais en train de tout migrer vers un ESP mais cette fois en RJ45 (PoE) > RS485 > JK-BMS. J’ai reçu les composants hier, je vais tester ça ce week-end.

Ta solution fonctionne aussi avec un Elfin a la place de ton convertiseur usb du coup ? Si mon montage ne marche pas, je me rabattrai sur cette option, même si, comme toi, je préfère clairement une connexion filaire.
Dans ta vidéo, tu es branché directement sur ton PC  Home Assistant c'est bien ca?

Moi, je n’utilise pas le port de gauche pour l’onduleur sur le jk bms (le WKS Circle ne le reconnaît pas).
C’est justement là que je pensais me brancher mon esp… j'ai bon ou pas bon ?   Cool

Elle va bientôt fonctionner avec un gateway (passerelle) RS485 <--> Ethernet (ou wifi) j'ai fait les 1ers essais, c'est concluant. 
J'ai eu quelques demandes en ce sens en effet. Regarde à cet endroit pour voir la bestiole
Je suis en train de modifier le module Home assistant à mes heures perdues (j'en ai peu en ce moment)
Ca ne va pas trop tarder.
J'utilise un module Ebyte que j'avais qui ne me servait pas trop. Cela fonctionnera certainement avec un Elfin EE11a. Mais je n'en ai pas pour tester.

Je mettrai un message sur le forum lorsque ce sera prêt.
Oui le JK est connecté direct au port USB du pc. Un des 2 ports de droite. 
Celui de gauche est réservé à la communication avec l'onduleur. Chez moi il est donc connecté au Voltronic.
Donc si j'étais toi je ne tenterai pas de passer par celui de gauche. Mais va savoir, tu vas peut être y arriver  Relief
Jean-Luc
Like Répondre
#5
(18-06-2025, 11:00 AM)bishnoi a écrit : bravo JeanLuc !
j'avais démarré avec JKBMS il y a 2ans avec pas mal de galères... et maintenant tu as créé la solution toute faite !
j'ai peu d'internet pour suivre le forum sur mon chantier, toujours pas fini...

faudra nous montrer ton "palace" à l'occasion
Jean-Luc
Like Répondre
#6
Bonjour et bravo pour ce boulot qui me facilite grandement la tache pour récupérer mes batteries sous HA

Je recontre toutefois un petit soucie
Y a til un moyen de lire un jkbms avec une adresse en 0 (obligée de mettre cette batterie en 0 pour que mon onduleur reconnaît les 2 batteries, sinon il en voit que 1)
Like Répondre
#7
Eh bien voilà le 1er retour sur le module. C'est agréable. Je vois plein de téléchargements mais sans commentaires.
Donc oui tu as raison, j'ai commencé par le chiffre 1 sans y réfléchir plus. Du coup l'adresse 0 est oubliée (et elle est possible en Modbus) Nothingtosay

Et vu que ton onduleur souhaite le 1er BMS à l'adresse 0, je vais modifier mon code pour partir de 0 et non pas 1 comme 
le voudrait un humain normal qui a appris à compter à l'école.

Le truc c'est que cette semaine, cela va être compliqué niveau timing pour moi. SI tu peux attendre un "chouilliat" ça devrait être disponible début de la semaine suivante. 
Tu l'as donc installé via les modules complémentaires, donc tu auras l'information de mise à jour automatiquement. 
Cependant j'informerai aussi ici une fois que c'est fait. 
Affaire à suivre donc.....
Jean-Luc
Like Répondre
#8
Nota Bene:

J'y pense, peux-tu ouvrir une "Issue" sur le github
Ça m'arrangerai et en anglais du coup:

Citation :Hello, and congratulations on this work, which greatly facilitates my task of recovering my batteries under HA.

However, I am encountering a minor issue.
Is there a way to read a jkbms with an address of 0 (I am required to set this battery to 0 so that my UPS recognises both batteries, otherwise it only sees one)?


Merci d'avance
Jean-Luc
Like Répondre
#9
(22-06-2025, 03:49 PM)jlm a écrit : Nota Bene:

J'y pense, peux-tu ouvrir une "Issue" sur le github
Ça m'arrangerai et en anglais du coup:

Citation :Hello, and congratulations on this work, which greatly facilitates my task of recovering my batteries under HA.

However, I am encountering a minor issue.
Is there a way to read a jkbms with an address of 0 (I am required to set this battery to 0 so that my UPS recognises both batteries, otherwise it only sees one)?


Merci d'avance

Fait

Je ne suis pas pressé, comme ont dit Paris ne c’est pas fait en 1 jour
Like Répondre
#10
J'ai besoin d'un éclaircissement après avoir bien étudié ta demande entre hier et ce matin.
Le Deye, 

  1. Il est connecté sur quel port de la carte communication du jk-bms ?
  2. Est-ce qu'il ne fait que lire les données envoyées régulièrement par le bms ou peut il modifier les paramètres du jk-bms ?
Jean-Luc
Like Répondre
#11
L’onduleur est raccordé à la batterie maître en can

Il ne fait que lire les valeur envoyé par le(s) BMS , et ne modifie pas à ma connaissance les valeur du BMS

Si ma batterie maître est sur ladressse 1 , il ne vois que cette batterie, et si je remet la batterie maître sur adresse 0 , j’ai bien ma capacité des 2 batterie et charge /décharge max qui correspondent
Like Répondre
#12
Bon, ma solution "maison" n’a pas fonctionné, et pour être franc, je n’ai même pas cherché pourquoi...
Du coup, j’ai reçu un convertisseur USB ce matin, j’ai tout branché et ça fonctionne.

MERCI !!!
Like Répondre
#13
(18-06-2025, 05:54 PM)jlm a écrit :
(18-06-2025, 11:00 AM)bishnoi a écrit : bravo JeanLuc !
j'avais démarré avec JKBMS il y a 2ans avec pas mal....

faudra nous montrer ton "palace" à l'occasion

passe chez nous quand tu veux !
Like Répondre
#14
@Jeremyd

On continue notre conversation sur le Github, ça fait en effet double travail de le mettre ici et là bas.
Donc regarde mes derniers commentaires sur https://github.com/jean-luc1203/jkbms-rs.../issues/12

Je pense que je vais pouvoir faire la lecture des paramètres lorsque le BMS est en position 0 donc Master.
Jean-Luc
Like Répondre
#15
wifi+esp32 

vs

usb+rs485

dit moi question j'ai pas moyen de faire pareil avec mon WKS circel? qui décroche aussi souvent avec smart photon et les elfins?


Pièces jointes Image(s)
   
Like Répondre
#16
Citation :dit moi question j'ai pas moyen de faire pareil avec mon WKS circel? qui décroche aussi souvent avec smart photon et les elfins?


Que veux tu dire plus précisément. Vous pouvez répéter la question ?  Laughing

Jean-Luc
Like Répondre
#17
   
le B2A20S20P monobloc fonctionnne aussi !
ća y est, je viens de tester l'addon avec le JK monobloc et toutes les infos remontent, avec un FTDI_FT232R_USB_UART sur le connecteur GPS...
par contre sans succes avec l'adapdateur RS485 de JK.
penses-tu qu' avec un elfin rs232 ça puisse communiquer ?

et comment puis-je afficher la tension de la cellule la plus faible et celle de la plus haute comme ceci : ?
   

merci JL
Like Répondre
#18
Un peu en retard, mais je suis sur plein de projets en même temps alors voilà voilà. 
Pour ta question, vas dans création entité type Template et tu colles ce code. ca doit faire ce que tu souhaites. 

Code :
{% set voltages = [] %}
          {% for i in range(1, 17) %}
            {% set sensor = states('sensor.bms_' ~ i ~ '_cell_1_volt') %}
            {% if sensor != 'unknown' and sensor != 'unavailable' %}
              {% set voltage = sensor | float(0) %}
              {% if voltage > 0 %}
                {% set voltages = voltages + [voltage] %}
              {% endif %}
            {% endif %}
          {% endfor %}
          {{ voltages | min if voltages else states('sensor.bms_1_cell_1_volt') | float(0) }}

   
Jean-Luc
Like Répondre
#19
EDIT: j'ai trouve mon erreur, comme mon BMS est en ID1 je n'avias pas change le bms_broadcasting a false.


Bonjour et cool pour le module, merci.
par contre etant une bille (histoire d'etre poli) avec MQTT je pense que je me suis plante quelque part car mon BMS n'apparait pas.

j'utilise un dongle usb vers RS485-RJ45 qui fonctionne tres bien avec le soft de JK.


je n'avais pas installe ni configure MQTT avant, mon zigbee et le growatt faisant l'affaire parfaitement.

Bref je vais essayer de lister tout ce que j'ai fait en esperant ne rien oublier.

1- j'ai installer le mosquitto broker, cocher lancer au demarrage, rien touche d'autre a la configuration.
2- j'ai cree un utilisateur "hamqtt" password "toto1234", acces local uniquement
3- j'ai teste a l'aide de mqtt explorer que j'arrive bien a me connecter au mqtt://192.168.1.123:1883 avec l'utilisateur hamqtt/toto1234
je vois bien une entree dans le journall de mosquitto broker
4- j'ai installe le module "JKL-BMS wired management"
 au niveau configuration j'ai mis ceci:

jkbms_path: /dev/ttyUSB0
jkbms_count: 1
use_gateway: false
gateway_ip: 192.168.1.100
gateway_port: 5000
bms_broadcasting: true
CAN_bus_usage: false

mqttadresse: 192.168.1.123
mqttport: 1883
mqttuser: hamqtt
mqttpass: toto1234

mon tty j'ai mis celui ca car il correspond au lien symbolique /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A955AQ84-if00-port0

dnas le journal j'ai ceci:
Code :
-----------------------------------------------------------
Add-on: JK-BMS wired management
JK-BMS management via RS485 & Ip Gateway
-----------------------------------------------------------
Add-on version: 2.0.1
You are running the latest version of this add-on.
System: Home Assistant OS 16.0  (amd64 / qemux86-64)
Home Assistant Core: 2025.7.1
Home Assistant Supervisor: 2025.07.1
-----------------------------------------------------------
Please, share the above information when looking for help
or support in, e.g., GitHub, forums or the Discord chat.
-----------------------------------------------------------
s6-rc: info: service base-addon-banner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service base-addon-log-level: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service base-addon-log-level successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service init-customizations: starting
s6-rc: info: service init-customizations successfully started
s6-rc: info: service init-nodered: starting
[17:04:49] WARNING:
[17:04:49] WARNING: Direct access mode is disabled, Node-RED Dashboard
[17:04:49] WARNING: will not work!
[17:04:49] WARNING:
[17:04:49] WARNING: Please assign a port in the Network section of this
[17:04:49] WARNING: add-on configuration.
[17:04:49] WARNING:
s6-rc: info: service init-nodered successfully started
s6-rc: info: service nodered: starting
s6-rc: info: service nodered successfully started
s6-rc: info: service legacy-services: starting
[17:04:49] INFO: Starting Node-RED...
s6-rc: info: service legacy-services successfully started
npm warn Unknown builtin config "globalignorefile". This will stop working in the next major version of npm.
npm warn Unknown builtin config "python". This will stop working in the next major version of npm.
> start
> node $NODE_OPTIONS node_modules/node-red/red.js --settings /etc/node-red/config.js
✅ config.js is being loaded
✅ Node-RED is using userDir = /config/smartphoton_jkbms/
✅ Node-RED is using uiPort = 1891
12 Jul 17:04:50 - [info]
Welcome to Node-RED
===================
12 Jul 17:04:50 - [info] Node-RED version: v4.0.9
12 Jul 17:04:50 - [info] Node.js  version: v22.16.0
12 Jul 17:04:50 - [info] Linux 6.12.35-haos x64 LE
12 Jul 17:04:50 - [info] Loading palette nodes
12 Jul 17:04:50 - [info] Node-RED Contrib Theme Collection version: v4.0.11
12 Jul 17:04:51 - [info] Dashboard version 3.6.5 started at /endpoint/ui
12 Jul 17:04:52 - [info] node-red-contrib-home-assistant-websocket v0.77.1 nodes initialized
12 Jul 17:04:52 - [info] Settings file  : /etc/node-red/config.js
12 Jul 17:04:52 - [info] Context store  : 'default' [module=localfilesystem]
12 Jul 17:04:52 - [info] User directory : /config/smartphoton_jkbms/
12 Jul 17:04:52 - [warn] Projects disabled : editorTheme.projects.enabled=false
12 Jul 17:04:52 - [info] Flows file     : /config/smartphoton_jkbms/flows.json
12 Jul 17:04:52 - [warn] Encrypted credentials not found
12 Jul 17:04:52 - [info] Server now running at http://127.0.0.1:1891/
12 Jul 17:04:52 - [info] Starting flows
12 Jul 17:04:52 - [info] [ui-base:Setup] Node-RED Dashboard 2.0 (v1.25.0) started at /dashboard
12 Jul 17:04:52 - [info] [ui-base:Setup] Created socket.io server bound to Node-RED port at path /endpoint/dashboard/socket.io
12 Jul 17:04:52 - [info] Started flows
12 Jul 17:04:52 - [error] [serialconfig:6e1abcbcc6ebb714] serial port /dev/JKBMS error: Error: Error: No such file or directory, cannot open /dev/JKBMS
12 Jul 17:04:52 - [info] [mqtt-broker:56f7b2737cce493b] Connection failed to broker: mqtt://core-mosquitto.local.hass.io:1883
12 Jul 17:04:53 - [info] [mqtt-broker:56f7b2737cce493b] Connected to broker: mqtt://192.168.1.123:1883
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'path' définie: /dev/ttyUSB0
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'nb_jkbms' définie: 1
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'use_gateway' définie: false
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'gateway_ip' définie: 192.168.1.100
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'gateway_port' définie: 5000
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'bms_broadcasting' définie: true
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'mqttadresse' définie: 192.168.1.123
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'mqttport' définie: 1883
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'mqttuser' définie: hamqtt
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'mqttpass' définie: toto1234
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'ssl' définie: false
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'certfile' définie: fullchain.pem
12 Jul 17:04:53 - [info] [function:Définir global variables] Variable globale 'keyfile' définie: privkey.pem
12 Jul 17:04:53 - [info] serial port /dev/JKBMS closed
12 Jul 17:04:53 - [info] [serialconfig:6e1abcbcc6ebb714] serial port /dev/ttyUSB0 opened at 115800 baud 8N1

du cote log MQTT j'ai ceci
Code :
2025-07-12 17:03:13: Client <unknown> closed its connection.
2025-07-12 17:04:46: Client nodered_c1344544e2fa8d62 disconnected.
2025-07-12 17:04:52: New connection from 172.30.32.1:40238 on port 1883.
error: received null username or password for unpwd check
2025-07-12 17:04:52: Client nodered_be0ace75a96afb22 disconnected, not authorised.
2025-07-12 17:04:53: New connection from 192.168.1.123:55008 on port 1883.
2025-07-12 17:04:53: New client connected from 192.168.1.123:55008 as nodered_0e35953e4b4b41a9 (p2, c1, k60, u'hamqtt').
2025-07-12 17:05:13: New connection from 172.30.32.2:40258 on port 1883.
2025-07-12 17:05:13: Client <unknown> closed its connection.
2025-07-12 17:07:13: New connection from 172.30.32.2:38284 on port 1883.
2025-07-12 17:07:13: Client <unknown> closed its connection.

mais quand je vais dans appareil aucun appareil n'apparait dans l'integration mqtt, j'ai une seule entree: mosquitto broker.

donc toujours dans MQTT j'ai clique sur les 3 point de l'entree mosquitto broker  et sur reconfigurer j'ai change
les infos (courtier =>192.168.1.123, user=>hamqtt, password=>toto1234) 
enregistrer essaye de redemarrer le jk-bms wired management attendu quelque minutes et retour sur mqtt... toujorus zero appareils.

donc ma question est: qu'est ce que je fais de travers ?
merci
Like Répondre
#20
(10-07-2025, 10:33 PM)jlm a écrit : Un peu en retard, mais je suis sur plein de projets en même temps alors voilà voilà. 
Pour ta question, vas dans création entité type Template et tu colles ce code. ca doit faire ce que tu souhaites. 

Code :
{% set voltages = [] %}
          {% for i in range(1, 17) %}
            {% set sensor = states('sensor.bms_' ~ i ~ '_cell_1_volt') %}
            {% if sensor != 'unknown' and sensor != 'unavailable' %}
              {% set voltage = sensor | float(0) %}
              {% if voltage > 0 %}
                {% set voltages = voltages + [voltage] %}
              {% endif %}
            {% endif %}
          {% endfor %}
          {{ voltages | min if voltages else states('sensor.bms_1_cell_1_volt') | float(0) }}

une petite correction il faut remplacer  sensor.bms_' ~ i ~ '_cell_1_volt par  sensor.bms_1_cell_ ' ~ i ~ ' _volt
Like Répondre
#21
Alors je suis sur mon téléphone donc pas évident de tester et lire, mais une chose retient mon attention, accès local du broker, peux tu désactiver ceci ?
On voit bien dans le log que le client, donc le module se fait jeter, donc évidemment pas de données vu que tout passe par là. Essaye ça et donne nous un retour
Jean-Luc
Like Répondre
#22
Bonjour à tous,
Je rencontre un problème concernant le port série.
HA est installé sur un VMWare sur une machine Windows 11.
J'ai câblé le 485 sur mes 3 JKBMS et l'adaptateur 485/USB puis testé sous Windows avec l'application JKBMS, elle communique bien avec les BMS N°1,2 et 3.
Ma question est comment connaitre le /dev/xxxx correspondant au COM3 de Windows ?
Je précise que linux est plutôt nouveau pour moi.
Merci d'avance pour vos lumières.
Like Répondre
#23
Alors je n'ai jamais essayé avec vmware. Est-ce la version Workstation ?
De toute manière il faut lui expliquer comment remonter le Com3 de ton Windows dans la VM Vmware. Ce qui fera apparaître un port série type ttyUSBx dans le HAOS de la VM
As-tu trouvé le ou les menus pour la gestion des périphériques à remonter ?
Si oui peux-tu juste me faire quelques captures écran pour que je me mette un peu le truc dans l'esprit.
Est-ce gratuit le Vmware ?
Je connais par contre Virtual box si jamais tu t'en fiches de quel outil de virtualisation.
Bon évidemment si c'est le superviseur Esx là j'ai pas en stock pour essayer ?
Jean-Luc
Like Répondre
#24
J'y ai pas résisté, 

je viens d'installer Vmware Workstation 17 Player.
Puis j'ai installé HAOS dans une VM (Téléchargé le VMDK)
Je l'ai démarrée
Ensuite j'ai connecté l'adaptateur USB-RS485 et hop, Vmware m'informe qu'il y a un nouvel interface de disponible
Il me propose de le déconnecter du "host" donc de mon windows et de le connecter dans la VM HAOS
Je l'ai finalement fait à la main pour voir mieux et en détail

Donc en passant par le menu "Player --> Removable Device --> Mon interface"

et hop le ttyUSB0 était visible dans le "Matériel" 

Voilà quelques captures d'écrans:

   

   

   
Jean-Luc
Like Répondre
#25
pas de retour ?
Jean-Luc
Like Répondre
#26
Bonjour, et merci pour toutes ces infos, ca progresse.
Le problème du port série est résolu (je n'avais pas bien compris le basculement du port com vers la VM).
j'ai maintenant toutes les 2-3 secondes une erreur "undefined (reading 'length')"  dans ls logs.
Code :
jkbms:
  jkbms_path: /dev/ttyS0
  jkbms_count: 3
  use_gateway: false
  gateway_ip: 192.168.1.100
  gateway_port: 5000
  gateway_debug: false
  bms_broadcasting: true
  CAN_bus_usage: false
mqtt:
  mqttadresse: 192.168.16.37
  mqttport: 1883
  mqttuser: ha-mqtt
  mqttpass: XXXXXXX
ssl: false
certfile: fullchain.pem
keyfile: privkey.pem

Code :
[09:59:51] INFO: Starting Node-RED...
s6-rc: info: service legacy-services successfully started
npm warn Unknown builtin config "globalignorefile". This will stop working in the next major version of npm.
npm warn Unknown builtin config "python". This will stop working in the next major version of npm.
> start
> node $NODE_OPTIONS node_modules/node-red/red.js --settings /etc/node-red/config.js
✅ config.js is being loaded
✅ Node-RED is using userDir = /config/smartphoton_jkbms/
✅ Node-RED is using uiPort = 1891
19 Aug 09:59:52 - [info]
Welcome to Node-RED
===================
19 Aug 09:59:52 - [info] Node-RED version: v4.1.0
19 Aug 09:59:52 - [info] Node.js  version: v22.16.0
19 Aug 09:59:52 - [info] Linux 6.12.41-haos x64 LE
19 Aug 09:59:52 - [info] Loading palette nodes
19 Aug 09:59:52 - [info] Node-RED Contrib Theme Collection version: v4.1.0
19 Aug 09:59:53 - [info] Dashboard version 3.6.3 started at /endpoint/ui
19 Aug 09:59:53 - [info] node-red-contrib-home-assistant-websocket v0.77.2 nodes initialized
19 Aug 09:59:53 - [info] Settings file  : /etc/node-red/config.js
19 Aug 09:59:53 - [info] Context store  : 'default' [module=localfilesystem]
19 Aug 09:59:53 - [info] User directory : /config/smartphoton_jkbms/
19 Aug 09:59:53 - [warn] Projects disabled : editorTheme.projects.enabled=false
19 Aug 09:59:53 - [info] Flows file     : /config/smartphoton_jkbms/flows.json
19 Aug 09:59:53 - [warn] Encrypted credentials not found
19 Aug 09:59:53 - [info] Server now running at http://127.0.0.1:1891/
19 Aug 09:59:53 - [info] Starting flows
19 Aug 09:59:53 - [info] Started flows
19 Aug 09:59:53 - [error] [serialconfig:6e1abcbcc6ebb714] serial port /dev/JKBMS error: Error: Error: No such file or directory, cannot open /dev/JKBMS
19 Aug 09:59:53 - [info] [mqtt-broker:56f7b2737cce493b] Connection failed to broker: mqtt://core-mosquitto.local.hass.io:1883
19 Aug 09:59:54 - [info] [mqtt-broker:56f7b2737cce493b] Connected to broker: mqtt://192.168.16.37:1883
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'path' définie: /dev/ttyS0
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'nb_jkbms' définie: 3
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'use_gateway' définie: false
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'gateway_ip' définie: 192.168.1.100
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'gateway_port' définie: 5000
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'gateway_debug' définie: false
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'bms_broadcasting' définie: false
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'CAN_bus_usage' définie: false
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'mqttadresse' définie: 192.168.16.37
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'mqttport' définie: 1883
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'mqttuser' définie: user
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'mqttpass' définie: Pass
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'ssl' définie: false
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'certfile' définie: fullchain.pem
19 Aug 09:59:54 - [info] [function:Définir global variables] Variable globale 'keyfile' définie: privkey.pem
19 Aug 09:59:55 - [info] serial port /dev/JKBMS closed
19 Aug 09:59:55 - [info] [serialconfig:6e1abcbcc6ebb714] serial port /dev/ttyS0 opened at 115800 baud 8N1
19 Aug 09:59:55 - [error] [function:Vérifie Trame 2] TypeError: Cannot read properties of undefined (reading 'length')
19 Aug 09:59:56 - [error] [function:Vérifie Trame 3] TypeError: Cannot read properties of undefined (reading 'length')
19 Aug 09:59:58 - [error] [function:Vérifie Trame 3] TypeError: Cannot read properties of undefined (reading 'length')
Like Répondre
#27
Ca avance en effet, mais je pense que le port série n'est pas le bon /dev/ttyS0 n'est très certainement pas le bon choix.
Il faut aller dans HAOS, menu paramètres-système-matériel-tout le matériel et rechercher le port ttyUSBx.

Il faut récupérer le port série qui est remonté dans la VM et le coller dans les paramètres du module
Code :
jkbms_path: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0

comme démontré dans cette petite vidéo:

   
Jean-Luc
Like Répondre
#28
Dans System/matériel
https://photos.google.com/documents/CgVO...hk6DDbEB2h

En mettant  /dev/serial/by-id/usb-1a86_USB_Single_Serial_58EC006754-if00 je n'ai plus d'erreur mais toujours rien dans le MQTT

Dans MQTT Explorer
https://photos.google.com/documents/CgVO...pCYhuCov86
Like Répondre
#29
Je ne vois pas les images que tu as posée sur Google.
Peux-tu simplement les télécharger avec le bouton dessous et ensuite utiliser le bouton
Insérer. Merci
Jean-Luc
Like Répondre
#30
La config actuelle:
Code :
jkbms:
  jkbms_path: /dev/serial/by-id/usb-1a86_USB_Single_Serial_58EC006754-if00
  jkbms_count: 3
  use_gateway: false
  gateway_ip: 192.168.1.100
  gateway_port: 5000
  gateway_debug: false
  bms_broadcasting: true
  CAN_bus_usage: false
mqtt:
  mqttadresse: core-mosquitto.local.hass.io
  mqttport: 1883
  mqttuser: ha-mqtt
  mqttpass: XXXXX
ssl: false
certfile: fullchain.pem
keyfile: privkey.pem

Voici les images (apparemment il ne prend pas les .PNG)

   

   

La config actuelle:
Code :
jkbms:
  jkbms_path: /dev/serial/by-id/usb-1a86_USB_Single_Serial_58EC006754-if00
  jkbms_count: 3
  use_gateway: false
  gateway_ip: 192.168.1.100
  gateway_port: 5000
  gateway_debug: false
  bms_broadcasting: true
  CAN_bus_usage: false
mqtt:
  mqttadresse: core-mosquitto.local.hass.io
  mqttport: 1883
  mqttuser: ha-mqtt
  mqttpass: XXXXX
ssl: false
certfile: fullchain.pem
keyfile: privkey.pem


Le LOG
Code :
> start
> node $NODE_OPTIONS node_modules/node-red/red.js --settings /etc/node-red/config.js
✅ config.js is being loaded
✅ Node-RED is using userDir = /config/smartphoton_jkbms/
✅ Node-RED is using uiPort = 1891
19 Aug 16:05:10 - [info]
Welcome to Node-RED
===================
19 Aug 16:05:10 - [info] Node-RED version: v4.1.0
19 Aug 16:05:10 - [info] Node.js  version: v22.16.0
19 Aug 16:05:10 - [info] Linux 6.12.41-haos x64 LE
19 Aug 16:05:10 - [info] Loading palette nodes
19 Aug 16:05:10 - [info] Node-RED Contrib Theme Collection version: v4.1.0
19 Aug 16:05:11 - [info] Dashboard version 3.6.3 started at /endpoint/ui
19 Aug 16:05:11 - [info] node-red-contrib-home-assistant-websocket v0.77.2 nodes initialized
19 Aug 16:05:11 - [info] Settings file  : /etc/node-red/config.js
19 Aug 16:05:11 - [info] Context store  : 'default' [module=localfilesystem]
19 Aug 16:05:11 - [info] User directory : /config/smartphoton_jkbms/
19 Aug 16:05:11 - [warn] Projects disabled : editorTheme.projects.enabled=false
19 Aug 16:05:11 - [info] Flows file     : /config/smartphoton_jkbms/flows.json
19 Aug 16:05:11 - [info] Server now running at http://127.0.0.1:1891/
19 Aug 16:05:11 - [warn] Encrypted credentials not found
19 Aug 16:05:11 - [info] Starting flows
19 Aug 16:05:12 - [info] Started flows
19 Aug 16:05:12 - [error] [serialconfig:6e1abcbcc6ebb714] serial port /dev/JKBMS error: Error: Error: No such file or directory, cannot open /dev/JKBMS
19 Aug 16:05:12 - [info] [mqtt-broker:56f7b2737cce493b] Connection failed to broker: mqtt://core-mosquitto.local.hass.io:1883
19 Aug 16:05:12 - [info] [mqtt-broker:56f7b2737cce493b] Connected to broker: mqtt://core-mosquitto.local.hass.io:1883
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'path' définie: /dev/serial/by-id/usb-1a86_USB_Single_Serial_58EC006754-if00
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'nb_jkbms' définie: 3
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'use_gateway' définie: false
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'gateway_ip' définie: 192.168.1.100
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'gateway_port' définie: 5000
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'gateway_debug' définie: false
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'bms_broadcasting' définie: true
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'CAN_bus_usage' définie: false
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'mqttadresse' définie: core-mosquitto.local.hass.io
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'mqttport' définie: 1883
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'mqttuser' définie: ha-mqtt
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'mqttpass' définie: XXXX
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'ssl' définie: false
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'certfile' définie: fullchain.pem
19 Aug 16:05:13 - [info] [function:Définir global variables] Variable globale 'keyfile' définie: privkey.pem
19 Aug 16:05:13 - [info] serial port /dev/JKBMS closed
19 Aug 16:05:13 - [info] [serialconfig:6e1abcbcc6ebb714] serial port /dev/serial/by-id/usb-1a86_USB_Single_Serial_58EC006754-if00 opened at 115800 baud 8N1
19 Aug 16:07:28 - [error] [tcp request:374bbe6e8c64a12a] connect failed 192.168.1.100:5000

Est-ce normal les erreurs concernant la passerelle alors que use_gateway est défini sur false ?
Like Répondre
#31
Code :
19 Aug 16:07:28 - [error] [tcp request:374bbe6e8c64a12a] connect failed 192.168.1.100:5000

alors oui, clairement il ne devrait pas tenter une connexion si le paramètre est à "false".
Je vais investiguer ceci.

Par contre mauvaise nouvelle, ton adaptateur n'a pas la bonne puce, celle que tu as créer dans le Linux un interface ttyACM0 qui ne fonctionne pas
comme un véritable port série et donc le driver chargé n'est pas le bon. Je n'ai jamais eu cette puce dans mes mains donc je n'ai jamais cherché comment elle pourrait être adressée.
Regarde le sujet sur mon Github, on en a beaucoup parlé. La solution est de simplement changer d'adaptateur.

   

   

PS. Mes images sont bien en .png
Jean-Luc
Like Répondre
#32
Sad 
L'adaptateur RS485 installé était vu comme un CHR343.
J'en avais un autre sous la main qui est un CHR340 (dans la liste des puces compatibles), j'ai bien maintenant un /dev>/ttyUSB0
Mais ça ne semble pas résoudre le problème ... 

Code :
jkbms:
  jkbms_path: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
  jkbms_count: 3
  use_gateway: false
  gateway_ip: 192.168.1.100
  gateway_port: 5000
  gateway_debug: false
  bms_broadcasting: true
  CAN_bus_usage: false
mqtt:
  mqttadresse: core-mosquitto.local.hass.io
  mqttport: 1883
  mqttuser: ha-mqtt
  mqttpass: XXX
ssl: false
certfile: fullchain.pem
keyfile: privkey.pem


Code :
> start
> node $NODE_OPTIONS node_modules/node-red/red.js --settings /etc/node-red/config.js
✅ config.js is being loaded
✅ Node-RED is using userDir = /config/smartphoton_jkbms/
✅ Node-RED is using uiPort = 1891
19 Aug 17:52:06 - [info]
Welcome to Node-RED
===================
19 Aug 17:52:06 - [info] Node-RED version: v4.1.0
19 Aug 17:52:06 - [info] Node.js  version: v22.16.0
19 Aug 17:52:06 - [info] Linux 6.12.41-haos x64 LE
19 Aug 17:52:06 - [info] Loading palette nodes
19 Aug 17:52:06 - [info] Node-RED Contrib Theme Collection version: v4.1.0
19 Aug 17:52:07 - [info] Dashboard version 3.6.3 started at /endpoint/ui
19 Aug 17:52:07 - [info] node-red-contrib-home-assistant-websocket v0.77.2 nodes initialized
19 Aug 17:52:08 - [info] Settings file  : /etc/node-red/config.js
19 Aug 17:52:08 - [info] Context store  : 'default' [module=localfilesystem]
19 Aug 17:52:08 - [info] User directory : /config/smartphoton_jkbms/
19 Aug 17:52:08 - [warn] Projects disabled : editorTheme.projects.enabled=false
19 Aug 17:52:08 - [info] Flows file     : /config/smartphoton_jkbms/flows.json
19 Aug 17:52:08 - [warn] Encrypted credentials not found
19 Aug 17:52:08 - [info] Server now running at http://127.0.0.1:1891/
19 Aug 17:52:08 - [info] Starting flows
19 Aug 17:52:08 - [info] Started flows
19 Aug 17:52:08 - [error] [serialconfig:6e1abcbcc6ebb714] serial port /dev/JKBMS error: Error: Error: No such file or directory, cannot open /dev/JKBMS
19 Aug 17:52:08 - [info] [mqtt-broker:56f7b2737cce493b] Connection failed to broker: mqtt://core-mosquitto.local.hass.io:1883
19 Aug 17:52:09 - [info] [mqtt-broker:56f7b2737cce493b] Connected to broker: mqtt://core-mosquitto.local.hass.io:1883
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'path' définie: /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'nb_jkbms' définie: 3
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'use_gateway' définie: false
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'gateway_ip' définie: 192.168.1.100
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'gateway_port' définie: 5000
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'gateway_debug' définie: false
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'bms_broadcasting' définie: true
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'CAN_bus_usage' définie: false
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'mqttadresse' définie: core-mosquitto.local.hass.io
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'mqttport' définie: 1883
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'mqttuser' définie: ha-mqtt
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'mqttpass' définie: XXX
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'ssl' définie: false
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'certfile' définie: fullchain.pem
19 Aug 17:52:09 - [info] [function:Définir global variables] Variable globale 'keyfile' définie: privkey.pem
19 Aug 17:52:09 - [info] serial port /dev/JKBMS closed
19 Aug 17:52:09 - [info] [serialconfig:6e1abcbcc6ebb714] serial port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 opened at 115800 baud 8N1
19 Aug 17:54:23 - [error] [tcp request:374bbe6e8c64a12a] connect failed 192.168.1.100:5000


Ca y est, ça cause !
J'ai simplement mis bms_broadcasting: false
Encore merci pour ton aide
Like Répondre
#33
Dommage. As-tu les 2 leds sur ton adaptateur ? Inversé A et B , idem ?
Je vais regarder demain si je peux mettre une sorte de log sur le port série pour mieux voir ce qui se passe.
J'ai peut être fait une erreur dans la dernière mouture sur la gestion du port série en passant en mode Gateway.
Faut que je vérifie cela dès demain.
Ce soir je n'ai pas le temps.
Jean-Luc
Like Répondre
#34
(19-08-2025, 06:22 PM)jlm a écrit : Dommage. As-tu les 2 leds sur ton adaptateur ? Inversé A et B , idem ?
Je vais regarder demain si je peux mettre une sorte de log sur le port série pour mieux voir ce qui se passe.
J'ai peut être fait une erreur dans la dernière mouture sur la gestion du port série en passant en mode Gateway.
Faut que je vérifie cela dès demain.
Ce soir je n'ai pas le temps.

Ca y est, ça cause !
J'ai simplement mis bms_broadcasting: false
Encore merci pour ton aide
Like Répondre
#35
Je suis un brin dissipé, voir éparpillé sur plusieurs choses en // alors parfois je passe à coté. 
Je voulais te demander si tu avais mis des adresses à chacun de tes BMS et pfuit j'ai oublié. 

C'est TOP que ça cause. Maintenant on sait que cela fonctionne sur tous les superviseurs de France et de Navarre  Laughing

Bien joué Callaghan
Jean-Luc
Like Répondre
#36
(19-08-2025, 06:56 PM)jlm a écrit : Je suis un brin dissipé, voir éparpillé sur plusieurs choses en // alors parfois je passe à coté. 
Je voulais te demander si tu avais mis des adresses à chacun de tes BMS et pfuit j'ai oublié. 

C'est TOP que ça cause. Maintenant on sait que cela fonctionne sur tous les superviseurs de France et de Navarre  Laughing

Bien joué Callaghan

Le numérotation des BMS et le câblage du 485 avait été validé avec le logiciel JK sous windows.
J'avais du modifier le paramètre du broadcast au cours des différents essais et oublié de le remettre.
Quand au CHR343, je pensais que c'était juste une évolution du CHR340 sans altérer la compatibilité.
Encore merci pour ton dévouement. Thumbsup
Like Répondre
#37
Salut
sur la dernière mis a jour ou j'ai du replongé dans "config" car les infos des bms ,ne remontaient plus. mon log annonce

[info] [serialconfig:6e1abcbcc6ebb714] serial port /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 opened at 115800 baud 8N1

c'est pas plutot 115200 qui faut?

bon au final ca fonctionne Merci encore pour les mise a jour !  Cool
Like Répondre
#38
Eh bien tu as l’œil affuté. En effet le bon texte aurait été 115200 bds. 
D'ailleurs dans l'éditeur NRed, c'est juste, et heureusement. Mais dans leur texte d'information ils ont fait faux
Il faudrait écrire au gars qui à fabriqué ce noeud serial  Angel

Voilà le nœud en question:

   
Jean-Luc
1
Like Répondre
#39
Bonjour,

Excellent add-on que je découvre et que je suis en train d'implémenter dans mon home assistant.
Toutefois, je suis en difficulté pour le paramétrage. Vous pourrez peut-être m'aider.

Je cherche à connecter mon JK-BMS à mon instance Home Assistant en RS485 <> NB114 <> ETHERNET.
La configuration de l'interface semble correcte (je parviens à lire des datas avec Modbus Poll).

ça se corse sous Home Assistant. Voici les symptômes :
- aucun JK-BMS n'est visible dans MQTT explorer
- quels que soient mes paramètres de configuration, Coud Broker est actif dans les logs (avec un id qui n'est pas le mien, donc un doublon et une coupure connexion - j'ai pourtant paramétré sur false cette fonction)
- comme un chemin de port série est obligatoire, j'ai également essayé avec et sans interface RS485<>USB branchée.

Ci-dessous une coupe du journal.
D'avance, merci pour votre appui.

Code :
-----------------------------------------------------------
Add-on: JK-BMS wired management
Management via RS485 & CAN bus. Also with an Ip Gateway
-----------------------------------------------------------
Add-on version: 3.1.2
You are running the latest version of this add-on.
System: Home Assistant OS 16.2  (amd64 / qemux86-64)
Home Assistant Core: 2025.10.1
Home Assistant Supervisor: 2025.10.0
-----------------------------------------------------------
Please, share the above information when looking for help
or support in, e.g., GitHub, forums or the Discord chat.
-----------------------------------------------------------
s6-rc: info: service base-addon-banner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service base-addon-log-level: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service base-addon-log-level successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service init-customizations: starting
s6-rc: info: service init-customizations successfully started
s6-rc: info: service init-nodered: starting
[07:23:19] INFO: configentities_list.json copied to /config/
s6-rc: info: service init-nodered successfully started
s6-rc: info: service nodered: starting
s6-rc: info: service nodered successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
[07:23:19] INFO: Starting Node-RED...
> start
> node $NODE_OPTIONS node_modules/node-red/red.js --settings /etc/node-red/config.js
✅ config.js is being loaded
✅ Node-RED is using userDir = /config/smartphoton_jkbms/
✅ Node-RED is using uiPort = 1891
11 Oct 07:23:24 - [info]
Welcome to Node-RED
===================
11 Oct 07:23:24 - [info] Node-RED version: v4.1.0
11 Oct 07:23:24 - [info] Node.js  version: v22.16.0
11 Oct 07:23:24 - [info] Linux 6.12.43-haos x64 LE
11 Oct 07:23:25 - [info] Loading palette nodes
11 Oct 07:23:30 - [info] Settings file  : /etc/node-red/config.js
11 Oct 07:23:30 - [info] Context store  : 'default' [module=localfilesystem]
11 Oct 07:23:30 - [info] User directory : /config/smartphoton_jkbms/
11 Oct 07:23:30 - [warn] Projects disabled : editorTheme.projects.enabled=false
11 Oct 07:23:30 - [info] Flows file     : /config/smartphoton_jkbms/flows.json
11 Oct 07:23:30 - [warn] Encrypted credentials not found
11 Oct 07:23:30 - [info] Server now running at http://127.0.0.1:1891/
11 Oct 07:23:30 - [info] Starting flows
11 Oct 07:23:31 - [info] Started flows
11 Oct 07:23:31 - [error] [serialconfig:6e1abcbcc6ebb714] serial port /dev/JKBMS error: Error: Error: No such file or directory, cannot open /dev/JKBMS
11 Oct 07:23:32 - [info] [function:traitement des variables] Champ 'gateway_ip_port' traité: 192.168.0.17:502
11 Oct 07:23:32 - [info] [function:traitement des variables] Champ 'mqttadresse_port' traité: core-mosquitto.local.hass.io:1883
11 Oct 07:23:32 - [info] [function:traitement des variables] Champ 'cloud_broker_adress_port' traité: 95a4xxx.s1.eu.hivemq.cloud:8883
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'path' = /dev/ttyUSB0
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'nb_jkbms' = 1
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'use_gateway' = true
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'gateway_ip' = 192.168.0.17
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'gateway_port' = 502
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'communication_debug' = true
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'bms_broadcasting' = false
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'CAN_bus_usage' = false
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'mqttadresse' = core-mosquitto.local.hass.io
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'mqttport' = 1883
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'mqttuser' = xxx
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'mqttpass' = xxx
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'cloud_broker' = false
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'cloud_broker_adress' = 95a4bxxx.s1.eu.hivemq.cloud
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'cloud_broker_port' = 8883
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'cloud_broker_user' = xxx
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'cloud_broker_pass' = xxx
11 Oct 07:23:32 - [info] [function:traitement des variables] Variable globale 'cloud_HA_long_term_access_tokens' = xxx
11 Oct 07:23:32 - [info] serial port /dev/JKBMS closed
11 Oct 07:23:32 - [error] [serialconfig:6e1abcbcc6ebb714] serial port /dev/ttyUSB0 error: Error: Error: No such file or directory, cannot open /dev/ttyUSB0
11 Oct 07:23:32 - [info] [mqtt-broker:56f7b2737cce493b] Connected to broker: mqtt://core-mosquitto.local.hass.io:1883
11 Oct 07:23:32 - [info] [mqtt-broker:Cloud MQTT Broker] Connected to broker: JK-BMS@mqtts://bca204074b3740d684ea0a81bae5b858.s1.eu.hivemq.cloud:8883
11 Oct 07:23:33 - [info] [mqtt-broker:Cloud MQTT Broker] Broker JK-BMS@mqtts://bca204074b3740d684ea0a81bae5b858.s1.eu.hivemq.cloud:8883 disconnected client: 142 Another client connected with the same client id.
Like Répondre
#40
Peux tu me dire quelle version de l'addon tu as installé
Donc peux tu joindre ta passerelle avec la page web  192.168.0.17 ? Le port est bien défini sur 502 chez toi ?
Peux tu vérifier si elle correspond à ce setting ?
   

Peux tu me mettre une capture d'écran de ton setting stp
Peux tu activer le mode   JK-BMS → Debug Communication et regarder ce que donne le log du module. capture écran aussi stp
Cela devrait ressembler à ceci:

   
Jean-Luc
Like Répondre
#41
(12-10-2025, 09:58 PM)jlm a écrit : Peux tu me dire quelle version de l'addon tu as installé
Donc peux tu joindre ta passerelle avec la page web  192.168.0.17 ? Le port est bien défini sur 502 chez toi ?
Peux tu vérifier si elle correspond à ce setting ?


Peux tu me mettre une capture d'écran de ton setting stp
Peux tu activer le mode   JK-BMS → Debug Communication et regarder ce que donne le log du module. capture écran aussi stp
Cela devrait ressembler à ceci:

Bonjour, Merci pour le retour :)
Je suis en version 3.1.2.
Je pense que les liaison logiques entre HA <> NB114 <>JK-BMS fonctionnent car les requêtes lancées depuis depuis l'application Modbus Poll lors des premiers essais ont permis de valider la configuration (j'ai bien des retours de valeurs).
En revanche, j'avais des petits écarts de paramètres : MODBUS TCP to RTU > OPEN (je passe en close) et Modbus mode > SImple (je passe en Disable).
Le Baudrate est bien sur 115200 et les paramètres IP sont OK.

Concernant la réception de trames au travers du paramètre Debug communications, je n'ai aucune ligne de ce type.
Pour être précis, je n'en observe que si je lance une interrogation depuis l'application Modbus Poll en parallèle. Le reste du temps, c'est le calme plat.

J'ai tenté plusieurs conf du BMS : ID à 0000 (master) ou 0001 et BMS Broadcasting ON ou OFF dans l'appli > idem.

Je teste avec les nouveaux settings du NB114 et reviens vers toi pour partager les résultats.
Merci encore !

EDIT : pas mieux avec la mise à jour des paramètres NB114 : aucune trame en réception.
Like Répondre
#42
j'ai tout recâblé mon installation pour me mettre dans ta situation.
J'ai installé ton logiciel et je te fais une démo sur la vidéo sur l'accès au JK-BMS depuis ton PC
en Modbus/TCP. 

Regarde-les setting et tu me diras si tu arrives jusque là ?
Dans la vidéo je vais lire le SOC des 2 JKBMS.


.mp4   2025-10-13_17h29_43.mp4 (Taille : 5.9 Mo / Téléchargements : 199)
Jean-Luc
Like Répondre
#43
(13-10-2025, 05:34 PM)jlm a écrit : j'ai tout recâblé mon installation pour me mettre dans ta situation.
J'ai installé ton logiciel et je te fais une démo sur la vidéo sur l'accès au JK-BMS depuis ton PC
en Modbus/TCP. 

Regarde-les setting et tu me diras si tu arrives jusque là ?
Dans la vidéo je vais lire le SOC des 2 JKBMS.

Merci pour le retour :

J'ai refait les étapes sous Modbus Poll > je parviens bien à lire le SOC de mon JKBMS.
Entre temps, j'ai repassé l'ID du JKBMS sur 1 et j'ai relancé : c'est good ! J'ai des infos qui remontent :)

Code :
13 Oct 19:11:31 - [info] [debug:port used] 502
13 Oct 19:11:31 - [info] [debug:host used] 192.168.0.17
13 Oct 19:11:31 - [info] [debug:JK-BMS response: ]
<Buffer 55 aa eb 90 02 00 00 0d 00 0d 00 0d 00 0d ff 0c ff 0c ff 0c ff 0c ff 0c 00 0d 00 0d 00 0d 00 0d 00 0d 00 0d ff 0c 00 00 00 00 00 00 00 00 00 00 00 00 ... 258 more bytes>

Bizarre que ça n'ait rien donné ce matin, j'étais en ID=0 et BMS Broadcasting.

Merci encore pour l'appui.
Ce qui a été déterminant, c'est le paramétrage MODBUS TCP to RTU = CLOSE et MODBUS MODE = DISABLE
[-] The following 1 user Likes j_ofen's post:
  • jlm
Like Répondre
#44
Excellent !
oui si tu mets le JK en 0000, il devient le maitre du bus.
 
Donc si tu veux, toi le questionner avec le module, il faut lui donner une adresse entre 1 et 15.

J'en ai profité ce matin pour faire un peu de ménage dans le module.
Une prochaine version tout bientôt.
Je vais voir pour ajouter la gestion du buzzer alarme lorsque l'on descend en dessous du % minimal défini.
Et évidement lorsque l'on remonte au % de récupération.
J'en ai eu besoin ce matin et j'ai dû utiliser l'application JK pour modifier ces valeurs.

Keep tunned !

Jean-Luc
[-] The following 1 user Likes jlm's post:
  • j_ofen
Like Répondre
#45
Bonjour,

Excellente la mise à jour en v3.2.0 !
Beau boulot.

Si je peux me permettre, ces 2 paramètres ne sont pas éditables :
bms_1_bms_request_charge_voltage_time
bms_1_bms_request_floaf_voltage_time
Peux tu les passer de capteur à configuration, avec des attributs modifiables?

D'autre part, dans diagnostic, j'ai un item
bms_1_switch_balance qui est forcé à 0.
Pour autant, le switch est bien accessible dans configuration et fait son office.
Je ne sais pas si c'est voulu.

Enfin, dernière bizarrerie : dans configuration, une ligne 0x1114 vient d'apparaître.

Merci encore pour cet excellent addon!
Like Répondre
#46
(05-11-2025, 11:03 PM)j_ofen a écrit : Si je peux me permettre, ces 2 paramètres ne sont pas éditables :
bms_1_bms_request_charge_voltage_time
bms_1_bms_request_floaf_voltage_time
Peux tu les passer de capteur à configuration, avec des attributs modifiables?

Alors comme je t'ai répondu sur le Github, 
Je les ai bien modifié pour qu'ils soient en Heure et non pas en Secondes. Mais pour ce qui est de les modifier
il faut attendre car c'est assez compliqué. Je sais comment faire mais je n'ai pas pu prendre le temps de m'y mettre.
Je garde ta demande ouverte pour ne pas l'oublier. 
Je suis en ce moment sur la partie Alarmes lorsque un des BMS est Master. C'est pas simple de retoruver quel bit parmis 32 possibles correspond à quelle alarme.
Je dois les créer physiquement pour trouver leurs positions et ça c'est chaud comme boulot.
Créer des vraies alarmes sans détruire le pack de cellules

Citation :D'autre part, dans diagnostic, j'ai un item
bms_1_switch_balance qui est forcé à 0.
Pour autant, le switch est bien accessible dans configuration et fait son office.
Je ne sais pas si c'est voulu

Parles-tu de celui-ci ?
   
si oui en effet il fonctionne pour désactiver / activer la balance des cellules
Mais que veux-tu dire par il est forcé à 0 ?

Citation :Enfin, dernière bizarrerie : dans configuration, une ligne 0x1114 vient d'apparaître.

Alors là oui,  Il s'agit d'une préparation (en mode Master / Slave) pour gérer
ce genre de choses:
Entre autre la gestion du LCD

   

Tu as eu donc ce genre de message 
Code :
`Valeur actuelle du registre 0x1114: 0x$

[color=#000000][font=Consolas, 'Courier New', monospace][color=#a31515]`État actuel de l'écran (bit 4):[/color][/font][/color]

Ce n'est pas encore fonctionnel, c'est le même genre de logique que pour le RCV / RCF . C'est prévu mais bon .... dès que possible
Jean-Luc
Like Répondre
#47
Merci pour ton retour.

Très clair pour les projets d'évolution ! C'est chouette.

Concernant l'équilibrage :

Il y a.2 items en lien :
bms_1_switch_balance qui correspond au switch dont tu as posté le screenshot et qui n'appelle pas de remarque.
bms_1_balance_switch qui apparaît dans Diagnostic (au même titre qu'il y a les status des switch Charge et Décharge).
Pour le coup, balance_switch reste à zéro chez moi, comme si HA le forçait à zéro.

Dans les faits, avec HA connecté au BMS, je ne suis plus jamais parvenu à avoir de la balance en fin de charge.
- un arret marche du BMS n'y a rien fait ;
- en déconnectant l'add-on, l'equilibrage a repris.

J'ai crée une ligne sur Gitgub / issue car c'est peut être plus approprié dans le cas présent.
Ce qui est sournois, c'est que, avec l'add-on connecté, le BMS présentait un travail d'équilibrage en fin de charge, avec des intensités non nulles mais dans les faits, aucune convergence des tensions (le BMS présenterait les consignes et non les mesures?)
Lors du cycle suivant, j'ai désactivé l'équliibrage : j'ai eu strictement les mêmes courbes pour des tensions de cellules qui n'ont jamais convergé.
J'ai alors déconnecté l'add-on et l'équilibrage a alors été immédiatement perceptible.
Like Répondre
#48
okay je te répond sur Github en effet ce sera mieux https://github.com/jean-luc1203/jkbms-rs...3603024134
Jean-Luc
Like Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  Launch of the JK-BMS RS485 add-on for Home Assistant jlm 14 2,145 05-11-2025, 11:47 AM
Dernier message: Smukc91
  Annonces sur les mises à jour de versions du module jkbms-rs485-addon jlm 4 1,102 16-09-2025, 01:01 PM
Dernier message: jlm

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
[-]
Synthèse
Please login or register to use this functionality.

[-]
discussions récentes
Problème CEM?
Voila le schéma de câblage. ...jlm — 01:01 PM
cette borne à ce prix, c'est...
Bon ben si comme moi vous avez...gag — 12:49 PM
Problème CEM?
Voila le schéma de câblage. J'...Merlin — 10:28 PM
Lancement du module complémen...
okay je te répond sur Github e...jlm — 03:15 PM
Lancement du module complémen...
Merci pour ton retour. Très...j_ofen — 10:57 AM
Lancement du module complémen...
Si je peux me permettre, c...jlm — 10:32 AM
Problème CEM?
désolé je ne comprends pas du ...jlm — 10:00 AM
Problème CEM?
Bon… j’ai débranché mes adapta...Merlin — 12:01 AM
Problème CEM?
Bonjour, j'ai un smartphoton ...Merlin — 08:37 PM
Lancement du module complémen...
Bonjour, Excellente la mise...j_ofen — 11:03 PM
Launch of the JK-BMS RS485 ad...
Hi my integration stopped wo...Smukc91 — 11:47 AM

[-]
Rechercher








(Advanced Search)

[-]
Who's Online
There are currently no members online.

[-]
goals
75% of the way to our goal of 10,000 posts!
Only 2,502 posts left to go!

[-]
Statistics
» Members: 790
» Latest member: juju28
» Forum threads: 794
» Forum posts: 7,498

Full Statistics

[-]
Latest Threads
Problème CEM?
Last Post: jlm
11-11-2025 01:01 PM
» Replies: 4
» Views: 143
cette borne à ce prix, c'est indécent
Last Post: gag
11-11-2025 12:49 PM
» Replies: 40
» Views: 11074
Lancement du module complémentaire JK-BM...
Last Post: jlm
10-11-2025 03:15 PM
» Replies: 47
» Views: 7189
Launch of the JK-BMS RS485 add-on for Ho...
Last Post: Smukc91
05-11-2025 11:47 AM
» Replies: 14
» Views: 2145
Login node red
Last Post: jlm
31-10-2025 10:23 PM
» Replies: 6
» Views: 367
Mise en service DEYE SUN-8K-SG01LP1-EU
Last Post: Jeanne44
22-10-2025 11:55 PM
» Replies: 15
» Views: 5738
Rapatriement des données de 2 onduleurs ...
Last Post: NOLAK
21-10-2025 11:03 AM
» Replies: 10
» Views: 1792
Mise à la terre du neutre flottant en mo...
Last Post: ghis.dlm
18-10-2025 11:56 PM
» Replies: 69
» Views: 42099
Créer une entité Home Assistant à partir...
Last Post: jlm
18-10-2025 08:36 PM
» Replies: 6
» Views: 3405
Câble de communication tout fait pour Py...
Last Post: PAUL123
18-10-2025 08:59 AM
» Replies: 3
» Views: 1683

>