July 4, 20223 yr Good morning. Firstly, thank-you for the wealth of knowledge shared on this thread, I just thought I would share my experience. I have 2 Narada Batteries, I can confirm the Deye inverter sees one battery at a time if I use a cable pin-out: Inverter 1 - 3 Battery Inverter 2 - 2 Battery I then have a RS485 cable connecting the 2 batteries The pins on each side match in numbers (according to my cable tester), ie. 1 - 1, 2 - 2, etc. The inverter lithium mode is set to 16. I did try multiple dip settings and hope to get the second battery visible to the inverter in the near future, but if the batteries are communicating then I am not so sure there is cause for concern. The batteries are now set to 0000 and 0001. It looks like the inverter SOC displays the BMS SOC value of the connected battery. Seeing as I lost my RS485 port on the Deye for the battery connection, I grab stats from the wifi. I set the Deye wifi dongle up to have a static IP (either on the DHCP server or on the wifi dongle itself). I then use https://github.com/jlopez77/DeyeInverter to grab the stats and publish the stats to MQTT. When I want to modify work modes or inverter setup, I connect using PowerMan, go to apps and then use local mode. Its not a great interface, but it does work.
July 4, 20223 yr Author 12 minutes ago, Parky said: I did try multiple dip settings and hope to get the second battery visible to the inverter in the near future, but if the batteries are communicating then I am not so sure there is cause for concern. The batteries are now set to 0000 and 0001. It looks like the inverter SOC displays the BMS SOC value of the connected battery. Did you try to set the DIP switches (left to right) to: 100000 (master, connected to the inverter) 010000 (slave, second battery)
July 4, 20223 yr 12 hours ago, SolarConvert said: Here you go. BMS-ND_Gyro-V1.1.634-32-13.zip 2.37 MB · 4 downloads Confirmed, that's a Tian Power BMS, their logo in the img folder of the archive
July 4, 20223 yr 7 hours ago, SolarConvert said: Did you try to set the DIP switches (left to right) to: 100000 (master, connected to the inverter) 010000 (slave, second battery) I quickly tried it, it still shows 1 battery, but it moves the battery to the 2nd line on the BMS tab of the inverter. Edit: When I swopped the cable from the inverter and used the opposite batteries with those dip switches, I see 1 battery on line 1. Interestingly, I could change the position of the battery on the fly, so when I changed the dip switch, the battery automatically changed positions without restarting. Edited July 4, 20223 yr by Parky Update of the configuration
July 4, 20223 yr Author 4 hours ago, Parky said: I quickly tried it, it still shows 1 battery, but it moves the battery to the 2nd line on the BMS tab of the inverter. Edit: When I swopped the cable from the inverter and used the opposite batteries with those dip switches, I see 1 battery on line 1. Interestingly, I could change the position of the battery on the fly, so when I changed the dip switch, the battery automatically changed positions without restarting. Just to be absolutely sure, your first battery which is connected to the inverter is configured according to PACK 1 below and your second battery which is connected only to the first battery is configured according to PACK 2, right?
July 5, 20223 yr 11 hours ago, SolarConvert said: Just to be absolutely sure, your first battery which is connected to the inverter is configured according to PACK 1 below and your second battery which is connected only to the first battery is configured according to PACK 2, right? Good morning, yes. Battery A is older than battery B. My scenarios: Battery A : 0001 (Pack 1 Dip: 100000 Inverter connected) Battery B: 0010 (Pack 2 Dip: 010000) The inverter sees Battery A and it sits on line 1 of the BMS screen on the inverter Battery A: 0010 (Pack 2 Dip: 010000) Battery B : 0001 (Pack 1 Dip: 100000 Inverter connected) The inverter sees Battery A and it sits on line 2 of the BMS screen on the inverter Strangely, if I connect each battery separately, the inverter sees each battery. I do not have a terminator on the last battery but have the open RS485 port on the battery connected to a Raspberry PI via RS485 -> USB.
July 5, 20223 yr You do not need a terminator. You have a straight RJ45 cable (yellow cable in the pic below. The blue one is connected to the inverter ...) connecting the 2 batteries right ?
July 5, 20223 yr Yes, I have the same cable. My dip switches the same. I can put the inverter cable into either battery, it still registers the same battery on slot 1.
July 5, 20223 yr Have you tried restarting the BMS of each battery ? 1. Isolate battery supply to inverter 2. Disconnect communication to inverter cable 3. Disconnect communication between batteries cable 4. Turn OFF both battery (long press on the reset button until all led cycle & turn OFF) 5. Reconnect all com cables + isolator switch / fuse / MCB between batteries & inverter Normally no need to turn batteries back ON, they should restart once inverter restarts the communication. You can force a restart (long press on the reset button) on the 1st battery if that's not the case. The 2sd one should not need that ... Edited July 5, 20223 yr by zivva
July 9, 20223 yr Author I have managed to sniff out the protocol used by my Narada battery which uses a Tian Power BMS. It is actually quite easy once you see the pattern. I will be creating a separate thread about this in the batteries section to document the functions and data map. Separately, after being directed back multiple times to the battery manufacturer by Deye support and me being insistent that the BMS is working correctly, it just doesn't work with the Deye inverter, they have finally conceded that they may add support for this given enough demand. So my important question to everyone is, how many of you are out there who have a Narada battery or multiple batteries and a Deye/Sunsynk inverter which does not speak to the BMS? Can you confirm that the battery has a Tian Power BMS by trying out the software on the previous page? Edited July 9, 20223 yr by SolarConvert
July 10, 20223 yr Author Ok I have done some more serial port sniffing. I should have done this long ago - I would have saved myself countless hours and wasted RJ45 cable crimps. On the Deye inverter, if I set lithium mode to 16, it emits the following with a 1 second gap in between each line: 27 04 0f ff 00 09 04 2e 28 04 0f ff 00 09 04 d1 29 04 0f ff 00 09 05 00 2a 04 0f ff 00 09 05 33 2b 04 0f ff 00 09 04 e2 2c 04 0f ff 00 09 05 55 2d 04 0f ff 00 09 04 84 2e 04 0f ff 00 09 04 b7 2f 04 0f ff 00 09 05 66 30 04 0f ff 00 09 07 09 31 04 0f ff 00 09 06 d8 32 04 0f ff 00 09 06 eb 33 04 0f ff 00 09 07 3a 34 04 0f ff 00 09 06 8d And then this is repeated from the start. Knowing this now, I can see how the inverter would have never communicated with my Narada battery with a Tian Power BMS with lithium mode 16. I take it the above commands are Shinwa BMS ones, not Tian Power ones. The inverter appears to be scanning for a Shinwa BMS. I still intend on creating the separate thread about my Narada with the Tian Power BMS, but suffice is to say, the BMS responds to the following totally different commands: 7e 01 01 00 fe 0d 7e 01 06 00 fc 0d 7e 01 33 00 fe 0d 7e 01 42 00 fc 0d 7e 01 45 00 fe 0d 7e 01 dc 03 06 00 00 c2 0d Now if I switch the inverter to lithium mode 9, the scanning commands more closely resemble the ones that my battery's BMS responds to: 7e 01 43 00 fe 0d 7e 32 32 30 32 34 41 34 32 45 30 30 32 30 31 46 44 32 37 0d 7e 02 43 00 fc 0d 7e 32 32 30 33 34 41 34 32 45 30 30 32 30 31 46 44 32 36 0d 7e 03 43 00 fa 0d 7e 32 32 30 34 34 41 34 32 45 30 30 32 30 31 46 44 32 35 0d 7e 04 43 00 fc 0d 7e 32 32 30 35 34 41 34 32 45 30 30 32 30 31 46 44 32 34 0d 7e 05 43 00 fe 0d 7e 32 32 30 36 34 41 34 32 45 30 30 32 30 31 46 44 32 33 0d 7e 06 43 00 fc 0d 7e 32 32 30 37 34 41 34 32 45 30 30 32 30 31 46 44 32 32 0d 7e 07 43 00 f2 0d 7e 32 32 30 38 34 41 34 32 45 30 30 32 30 31 46 44 32 31 0d 7e 08 43 00 fc 0d 7e 32 32 30 39 34 41 34 32 45 30 30 32 30 31 46 44 32 30 0d 7e 09 43 00 fe 0d 7e 32 32 31 30 34 41 34 32 45 30 30 32 30 31 46 44 32 38 0d 7e 0a 43 00 fc 0d 7e 32 32 31 31 34 41 34 32 45 30 30 32 30 31 46 44 32 37 0d 7e 0b 43 00 fa 0d 7e 32 32 31 32 34 41 34 32 45 30 30 32 30 31 46 44 32 36 0d 7e 0c 43 00 fc 0d 7e 32 32 31 33 34 41 34 32 45 30 30 32 30 31 46 44 32 35 0d 7e 0d 43 00 fe 0d 7e 32 32 31 34 34 41 34 32 45 30 30 32 30 31 46 44 32 34 0d 7e 0e 43 00 fc 0d 7e 32 32 31 35 34 41 34 32 45 30 30 32 30 31 46 44 32 33 0d 7e 0f 43 00 e2 0d 7e 32 32 30 31 34 41 34 32 45 30 30 32 30 31 46 44 32 38 0d The above repeat from the start until a battery is found. I will go into more detail around what the Tian Power commands do once I have a solid understanding, but at least I can now prove that Deye/Sunsynk lithium mode 16 is not for Narada batteries with a Tian Power BMS. I don't know if I should be sad or happy at this point. Edited July 10, 20223 yr by SolarConvert
July 10, 20223 yr 58 minutes ago, SolarConvert said: Ok I have done some more serial port sniffing. I should have done this long ago - I would have saved myself countless hours and wasted RJ45 cable crimps. On the Deye inverter, if I set lithium mode to 16, it emits the following with a 1 second gap in between each line: 27 04 0f ff 00 09 04 2e 28 04 0f ff 00 09 04 d1 29 04 0f ff 00 09 05 00 2a 04 0f ff 00 09 05 33 2b 04 0f ff 00 09 04 e2 2c 04 0f ff 00 09 05 55 2d 04 0f ff 00 09 04 84 2e 04 0f ff 00 09 04 b7 2f 04 0f ff 00 09 05 66 30 04 0f ff 00 09 07 09 31 04 0f ff 00 09 06 d8 32 04 0f ff 00 09 06 eb 33 04 0f ff 00 09 07 3a 34 04 0f ff 00 09 06 8d And then this is repeated from the start. Knowing this now, I can see how the inverter would have never communicated with my Narada battery with a Tian Power BMS with lithium mode 16. I take it the above commands are Shinwa BMS ones, not Tian Power ones. The inverter appears to be scanning for a Shinwa BMS. I still intend on creating the separate thread about my Narada with the Tian Power BMS, but suffice is to say, the BMS responds to the following totally different commands: 7e 01 01 00 fe 0d 7e 01 06 00 fc 0d 7e 01 33 00 fe 0d 7e 01 42 00 fc 0d 7e 01 45 00 fe 0d 7e 01 dc 03 06 00 00 c2 0d Now if I switch the inverter to lithium mode 9, the scanning commands more closely resemble the ones that my battery's BMS responds to: 7e 01 43 00 fe 0d 7e 32 32 30 32 34 41 34 32 45 30 30 32 30 31 46 44 32 37 0d 7e 02 43 00 fc 0d 7e 32 32 30 33 34 41 34 32 45 30 30 32 30 31 46 44 32 36 0d 7e 03 43 00 fa 0d 7e 32 32 30 34 34 41 34 32 45 30 30 32 30 31 46 44 32 35 0d 7e 04 43 00 fc 0d 7e 32 32 30 35 34 41 34 32 45 30 30 32 30 31 46 44 32 34 0d 7e 05 43 00 fe 0d 7e 32 32 30 36 34 41 34 32 45 30 30 32 30 31 46 44 32 33 0d 7e 06 43 00 fc 0d 7e 32 32 30 37 34 41 34 32 45 30 30 32 30 31 46 44 32 32 0d 7e 07 43 00 f2 0d 7e 32 32 30 38 34 41 34 32 45 30 30 32 30 31 46 44 32 31 0d 7e 08 43 00 fc 0d 7e 32 32 30 39 34 41 34 32 45 30 30 32 30 31 46 44 32 30 0d 7e 09 43 00 fe 0d 7e 32 32 31 30 34 41 34 32 45 30 30 32 30 31 46 44 32 38 0d 7e 0a 43 00 fc 0d 7e 32 32 31 31 34 41 34 32 45 30 30 32 30 31 46 44 32 37 0d 7e 0b 43 00 fa 0d 7e 32 32 31 32 34 41 34 32 45 30 30 32 30 31 46 44 32 36 0d 7e 0c 43 00 fc 0d 7e 32 32 31 33 34 41 34 32 45 30 30 32 30 31 46 44 32 35 0d 7e 0d 43 00 fe 0d 7e 32 32 31 34 34 41 34 32 45 30 30 32 30 31 46 44 32 34 0d 7e 0e 43 00 fc 0d 7e 32 32 31 35 34 41 34 32 45 30 30 32 30 31 46 44 32 33 0d 7e 0f 43 00 e2 0d 7e 32 32 30 31 34 41 34 32 45 30 30 32 30 31 46 44 32 38 0d The above repeat from the start until a battery is found. I will go into more detail around what the Tian Power commands do once I have a solid understanding, but at least I can now prove that Deye/Sunsynk lithium mode 16 is not for Narada batteries with a Tian Power BMS. I don't know if I should be sad or happy at this point. What are you using to sniff the port? I have my Narada working as you know... It is using pins 1&2... I want to see if I can sniff on pins 7&8 at the same time. ICM and Solar assist dont work on the BMS / RS485 port when it is set to mode 16... I want to convince them to fix this and the above helps a lot but I need to know first, that both the battery and ICM can work on the same port at the same time or alternatively, I want to try using a RS485 splitter or connect them in parallel. Thanks in advance!!
July 11, 20223 yr Author 18 hours ago, Jay-Dee said: What are you using to sniff the port? I have my Narada working as you know... It is using pins 1&2... I want to see if I can sniff on pins 7&8 at the same time. ICM and Solar assist dont work on the BMS / RS485 port when it is set to mode 16... I want to convince them to fix this and the above helps a lot but I need to know first, that both the battery and ICM can work on the same port at the same time or alternatively, I want to try using a RS485 splitter or connect them in parallel. Thanks in advance!! I used a trial of Advanced Serial Port Monitor to monitor: BMS software on a laptop communicating to the battery, and separately Inverter comms to the laptop, the laptop just never responds to the inverter, but I do get the "scanning" requests from the inverter logged with the various lithium modes. However, I do not think your scenario will work for multiple reasons: There is nothing to sniff out on pins 7&8 (or any pins) if the goal is to monitor the inverter. A valid MODBUS request needs to be sent to the inverter from whomever/whatever wants to monitor it, requesting one or more register values. The inverter will then respond with register values. The inverter does not by itself "broadcast" its register values without being asked, at least not via the BMS485 port. The behaviour of the BS485 port changes when set to lithium mode 16 and the response fails CRC checks when requesting register values. This I tried without a battery connected to the BMS485 port some time back, so even if one were able to split that port into two, with pins 2 & 1 for the battery and pins 7 & 8 for monitoring, you'd still need to send a request to read registers via pins 7 & 8 and the response would fail CRC checks. I believe pins 2 & 1 are bonded to pins 7 & 8 on the BMS485 port, so the latter combination are not "separate lines" for putting them to use for a different purpose - the way I understand it is that you would use pins 2 or 7 and pins 1 or 8 for the RS485-A and RS485-B signals respectively. The only exception to this appears to be the Sol-Ark 12k (Outdoor) which appears to have CAN bus and RS485 pins on one RJ45 port and this does indeed require a splitter to use the two different protocols. I stopped evaluating this option of monitoring the inverter at the failed CRC checks. Maybe the invalid response can be examined further, but I doubt that Solar Assistant / ICM would be update to cater for this scenario even if the response were somehow valid. That being said, I'd be very happy to be proven wrong about the above since I'd be in the same boat as you (with a used up BMS485 port, wanting to monitor the inverter, and have the data logger plugged into the RS232 port) once I do get BMS comms working. Edit: You actually don't need a serial port monitor to test the monitoring bits out with lithium mode 16 and the BMS485 port - you just need a tool that can send a MODBUS request to the inverter whilst you are connected to it (via USB, etc) whilst the battery is not connected to the BMS485 port. I typically use modbus-cli to test this out, such as: modbus -s 1 -b 9600 -p 1 -P n -v /dev/tty.usbserial 184 This will read register 184 (battery SOC based on what the inverter thinks the SOC is) from a USB-connected reader with slave 1, baud 9600, stop bits 1, parity none. Edited July 11, 20223 yr by SolarConvert
July 11, 20223 yr 4 hours ago, SolarConvert said: I used a trial of Advanced Serial Port Monitor to monitor: BMS software on a laptop communicating to the battery, and separately Inverter comms to the laptop, the laptop just never responds to the inverter, but I do get the "scanning" requests from the inverter logged with the various lithium modes. However, I do not think your scenario will work for multiple reasons: There is nothing to sniff out on pins 7&8 (or any pins) if the goal is to monitor the inverter. A valid MODBUS request needs to be sent to the inverter from whomever/whatever wants to monitor it, requesting one or more register values. The inverter will then respond with register values. The inverter does not by itself "broadcast" its register values without being asked, at least not via the BMS485 port. The behaviour of the BS485 port changes when set to lithium mode 16 and the response fails CRC checks when requesting register values. This I tried without a battery connected to the BMS485 port some time back, so even if one were able to split that port into two, with pins 2 & 1 for the battery and pins 7 & 8 for monitoring, you'd still need to send a request to read registers via pins 7 & 8 and the response would fail CRC checks. I believe pins 2 & 1 are bonded to pins 7 & 8 on the BMS485 port, so the latter combination are not "separate lines" for putting them to use for a different purpose - the way I understand it is that you would use pins 2 or 7 and pins 1 or 8 for the RS485-A and RS485-B signals respectively. The only exception to this appears to be the Sol-Ark 12k (Outdoor) which appears to have CAN bus and RS485 pins on one RJ45 port and this does indeed require a splitter to use the two different protocols. I stopped evaluating this option of monitoring the inverter at the failed CRC checks. Maybe the invalid response can be examined further, but I doubt that Solar Assistant / ICM would be update to cater for this scenario even if the response were somehow valid. That being said, I'd be very happy to be proven wrong about the above since I'd be in the same boat as you (with a used up BMS485 port, wanting to monitor the inverter, and have the data logger plugged into the RS232 port) once I do get BMS comms working. Edit: You actually don't need a serial port monitor to test the monitoring bits out with lithium mode 16 and the BMS485 port - you just need a tool that can send a MODBUS request to the inverter whilst you are connected to it (via USB, etc) whilst the battery is not connected to the BMS485 port. I typically use modbus-cli to test this out, such as: modbus -s 1 -b 9600 -p 1 -P n -v /dev/tty.usbserial 184 This will read register 184 (battery SOC based on what the inverter thinks the SOC is) from a USB-connected reader with slave 1, baud 9600, stop bits 1, parity none. Thank you... Lot to think about here... I am seeing the CRC error when I was plugging Solar Assistant in.. I am going to split the cable and see if I still get the CRC error.. That will at least confirm that it is "connecting". Then it is about chatting to both teams and seeing if either or both will help
July 11, 20223 yr Author Here is the Tian Power BMS protocol post I wanted to put together: I will update that thread with function 67, which is what the Deye inverter uses to scan for batteries under Lithium mode 9.
July 12, 20223 yr @SolarConvert... So I was putting an install together at my parents house and thought I would order a Narada and hope that I got the same version as my current batteries. I ordered it off Takealot as they were the only ones with stock and the below is what arrived. This version has the Tian Power BMS and generated exactly the same results as you found. Needless to say it is on its way back This is one of my original / current batteries that does talk to the inverter. What does yours with the Tian Power BMS look like?
July 12, 20223 yr 34 minutes ago, zivva said: Weird they use a 5u form factor when most 100ah batteries are 3u nowadays... 4U is also quite common. Leoch.Averge use 4U.
July 12, 20223 yr Author 2 hours ago, Jay-Dee said: What does yours with the Tian Power BMS look like? Mine looks exactly like the one you got from Takealot except that it also has the handles on the sides like in your second photo of your original/current batteries.
July 13, 20223 yr On 2022/07/05 at 9:51 AM, zivva said: Have you tried restarting the BMS of each battery ? 1. Isolate battery supply to inverter 2. Disconnect communication to inverter cable 3. Disconnect communication between batteries cable 4. Turn OFF both battery (long press on the reset button until all led cycle & turn OFF) 5. Reconnect all com cables + isolator switch / fuse / MCB between batteries & inverter Normally no need to turn batteries back ON, they should restart once inverter restarts the communication. You can force a restart (long press on the reset button) on the 1st battery if that's not the case. The 2sd one should not need that ... Thank-you zivva. I finally had a chance to try this. Unfortunately it did not work. I am starting to think that the BMS software is not the same or incompatible between each battery and between the batteries and inverter. The one battery is around a year older than the other, so there might be different software. I make that statement because: If I set the Deye to Lithium 16, I see the older battery, configured as Pack 2 which shows on line 2 of the inverter. If I set the Deye to Lithium 9, I see the newer battery, configured as Pack 1 with a temperature of 331 Celsius. It shows on the first line of the inverter. Once I set Lithium 9, after around 15 seconds I get a fault status 020 on the battery line. I also get a F51 fault on the inverter main screen so that tells me the inverter sees the battery but because of the setting it cannot decode the messages. Edited July 13, 20223 yr by Parky Spelling
July 14, 20223 yr On 2022/07/12 at 9:58 PM, SolarConvert said: Mine looks exactly like the one you got from Takealot except that it also has the handles on the sides like in your second photo of your original/current batteries. So interesting... I wonder why they have the different versions and if all the ones like my original one have the same BMS... If there was somewhere I could test, I would be interested to know. I also wondered but did not think to try before returning... If I connected one of the others to mine as a 3rd battery, would they talk to each other and if so, would the inverter see the 3rd battery via the master? The good news is, Takealot approved the full refund without any questions today. My Hubble is arriving on Monday / Tuesday for that install. It is not that easy to find a proper 1C battery... So many of them are 1C for a limited time or 0.5C
July 25, 20223 yr Hi Guys, Thanks for this useful post. I am no expert and need some advise. I have: - 1 x 8kW Deye Inverter - 2 x Narada 150Ah 48v 7.2kW - with LCD screen 48NPFC150 - 18 x 410w PV What battery settings is best to put on the inveter? ie. Float V, Absorption V, Equalisation, Shutdown, Low etc... I basically want the settings so my battery remains full and only in use once there is loadshedding. then only use 70-80% of the battery(to try and extend the life). Does the battery communicate with the Deye..I am seeing alot of posts on this with mixed answers? What will my best solution be to let them comminicate in Sync... I have noticed that the Inverter shows a lower % SOC vc the Actual Battery LCD screen when running. Input is much appreciated.... Thanks
July 25, 20223 yr hello , was reading the posts im having similar problem but with different battery that is felicity lbpa48170 sincerly neither deye nor felicity could solve my problem its exactly same as to mr solarconvert issues tried as him several pins , changed modbus , changed sw dip , changed mode lithium , im trying all the things without any success do you mr solarconvert got your issue solved or not yet??
July 28, 20223 yr Hi. Has anyone had luck in communication with the Narada bms? I'm sitting withe the same problem with 2 batteries that u purchased from what now appears to be a suspect website and I can get my Sunsynk to see the batteries....
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.