Skip to content

Releases: syssi/esphome-jk-bms

2.2.0

05 Jul 19:59
Compare
Choose a tag to compare

What's Changed

  • Add ESP8266 Modbus example by @syssi in #556
  • Point out the Modbus master vs. slave mode (JK-PB series) by @syssi in #565
  • Add display port protocol details by @syssi in #566
  • Improve error bitmask decoding by @syssi in #521
  • Increase max balancing current of heltec balancers to 15A by @syssi in #571
  • Add display component by @syssi in #572
  • Move start of frame bytes to consts by @syssi in #574
  • Extend central component schema by @syssi in #575
  • Disable active BLE scans to save some power and RF pollution by @syssi in #576
  • Fix max discharge current factor of the setter by @syssi in #578
  • Compute {min,max}_voltage_cell, delta_cell_voltage and average_cell_voltage by @syssi in #582
  • Reduce the verbosity of the BLE client component by @syssi in #583
  • Add JK-B2A8S20P, hw 11.XA, sw 11.48 as supported by @syssi in #590
  • Add JK-B2A24S20P, hw 10.XW, sw 10.09, using JK02_24S as supported by @syssi in #592
  • Add example YAML for two v14 devices connected via BLE by @gyrex in #597
  • Register missing sensors (Fixes: #611) by @syssi in #612
  • Use the BLE scanner to identify the MAC address of your BMS by @syssi in #616
  • Fix sensor names by @syssi in #634
  • Change the sensor.balancing device class to EMPTY by @I-Love-47 in #639
  • Fix typo in README.md by @michalpelka in #643
  • Avoid GPIO1 and GPIO3 because of the picky JK-BMS by @syssi in #644
  • Add JK-B2A20S20P, hw 10.XW, sw 10.10 as supported by @cygeus in #456
  • Extend Modbus example by @syssi in #645
  • Improve start of frame detection by @syssi in #647
  • Add BLE communication details by @syssi in #658
  • Add frame specs by @syssi in #661
  • Improve printf types to fix ESP32C6 compatibility by @SupermotoJerry in #637
  • Unregister BLE notifications on disconnect by @syssi in #666
  • Add settings frame specifications by @syssi in #669
  • Add JK-BD6A24S12P as supported by @syssi in #675
  • Add JK active balancer (DZxx) support by @syssi in #18
  • Don't decode measurement twice by @syssi in #680
  • Verify Neey/EnerKey EK-24S4EB balancer support by @syssi in #677
  • Add DRY contact support (JK-PB series, BLE) by @syssi in #684
  • Use ruff format at the CI by @syssi in #687
  • Migrate to actions/cache@v4 by @syssi in #691
  • Fix total voltage sensor of the Modbus examples by @syssi in #699
  • Adopt structure of the ESPHome CI by @syssi in #730
  • Increase precision of the total voltage by @syssi in #734
  • Update minimum python version to 3.10 by @syssi in #737
  • Fix *.*_SCHEMA deprecations by @syssi in #739
  • Improve esp32-jk-pb-modbus-example.yaml by @gost-serb in #742
  • Add display port faker by @syssi in #744
  • Expose charge status and charge status time elapsed of the v15 firmware by @syssi in #746
  • Add v19 faker by @syssi in #748
  • Use defaults by @syssi in #757
  • Add JK-B2A25SRP support by @syssi in #759
  • Make CI build verbose by @syssi in #760
  • Make entity names unique by @syssi in #761
  • Add additional firmware versions as supported by @syssi in #768
  • Add another supported firmware version by @syssi in #769

New Contributors

Full Changelog: 2.1.0...2.2.0

2.1.0

06 Aug 13:20
Compare
Choose a tag to compare

What's Changed

  • Fixes wrong include in old style faker example by @RFDarter in #445
  • Extend fake data for heating by @RFDarter in #446
  • Add Neey/EnerKey EK-24S4EB balancer support (Closes: #444) by @syssi in #452
  • fix heating frame position by @RFDarter in #457
  • Publish the new value if a number entity gets changed by @RFDarter in #451
  • Add Modbus support of the new range of JK BMS called JK-PB by @syssi in #409
  • Improve the support of the JK-PBs series (BLE) by @syssi in #485
  • Remove v11 old style config because this device doesn't exist by @syssi in #522
  • Use ONOFF define by @syssi in #523
  • Add test traffic of a v14 device by @syssi in #524
  • Add new temperature sensor of the v14 model by @syssi in #525
  • Fix maximum cell soc{0,100} voltage (Closes: #540) by @syssi in #541
  • Add JK-BD6A20S6P as supported by @syssi in #542
  • Add multiple heltec balancer example (Closes #545) by @syssi in #546
  • Add controls for some more protection settings (Closes: #129) by @syssi in #547
  • Make "RCV Time" and "RFV Time" controllable (Closes: #548) by @syssi in #549
  • Improve decoding of the v14 properties by @syssi in #551
  • Fix binary sensor heating (Closes: #552) by @syssi in #553

Full Changelog: 2.0.0...2.1.0

2.0.0

27 Jan 15:12
Compare
Choose a tag to compare

This release ships a breaking change because the (flaky) auto-detection of the protocol version was removed. You have to choose the appropriate in future. The protocol version JK02 was renamed to JK02_24S to force all users to update and double check their YAML configurations. Rule of thumb: If your power_tube_temperature sensor works fine and shows a reasonable measurement you are using the correct protocol version.

Some more improvements since version 1.5.0:

  • UART-TTL: Improved preamble synchronization. This should reduce the amount of CRC errors every now and then (#340)
  • UART-TTL: Command support added. The charging, discharging and balancing switch can be controlled using the UART connection now! Kudos to @jrventer (#343)
  • BLE: During OTA updates the BLE connection gets suspended now. Kudos to @tomatensaus (#417)
  • BLE: BLE discovery improved because the advertised BLE name of a JK-BMS has changed slighty (#423)
  • BLE: Some new feature of the JK-PBs series were added: Switch entities (heating, disable_temperature_sensors, display_always_on, smart_sleep, timed_stored_data, disable_pcl_module, charging_float_mode) (#424)
  • BLE: The implementation of the emergency feature (emergency time countdown sensor and emergency switch) is complete now (#428)
  • BLE: Some new settings (port switch and device address) gets printed to the log (#431) (#432)
  • BLE: The implementation of the heating feature (heating status, heating current and heating switch) is complete now. Kudos to @RFDarter (#436)

1.5.0

30 May 09:08
Compare
Choose a tag to compare

The online status of the BMS is monitored now. If the BMS doesn't respond 10 times in a row the state of the sensors gets changed to unavailable. Furtheremore this release includes a lot of minor improvements.

Please make sure you are using protocol_version: JK02_32S of you own a JK-BMS with hardware version >= 11. The auto-detection of the procotol version will be removed in future because it doesn't work reliable.

1.4.0

18 Mar 06:59
Compare
Choose a tag to compare

The device support of the JK-B2A8S20P hardware version 11+ was improved. Kudos to @riker65 for providing countless btsnoop captures and testing. Please use protocol_version: JK02_32S if you own this model (cp. esp32-ble-b2a8s20p-v11-example.yaml).

1.3.0

23 Sep 07:22
Compare
Choose a tag to compare

Heltec/NEEY 4A balancer support added and minor fixes.

1.2.0

07 Aug 12:45
Compare
Choose a tag to compare

JK-B2A8S20P firmware version 11.17 support added. The format of the cell info frame (BLE) has changed a bit and supports 32 cells now.

1.1.0

26 Jun 14:19
Compare
Choose a tag to compare

The follow settings can be controlled via bluetooth now:

number:
  - platform: jk_bms_ble
    jk_bms_ble_id: bms0
    balance_trigger_voltage:
      name: "${name} balance trigger voltage"
    cell_count:
      name: "${name} cell count"
    total_battery_capacity:
      name: "${name} total battery capacity"
    cell_voltage_overvoltage_protection:
      name: "${name} cell voltage overvoltage protection"
    cell_voltage_overvoltage_recovery:
      name: "${name} cell voltage overvoltage recovery"
    cell_voltage_undervoltage_protection:
      name: "${name} cell voltage undervoltage protection"
    cell_voltage_undervoltage_recovery:
      name: "${name} cell voltage undervoltage recovery"
    balance_starting_voltage:
      name: "${name} balance starting voltage"
    voltage_calibration:
      name: "${name} voltage calibration"
    current_calibration:
      name: "${name} current calibration"
    power_off_voltage:
      name: "${name} power off voltage"
    max_balance_current:
      name: "${name} max balance current"
    max_charge_current:
      name: "${name} max charge current"
    max_discharge_current:
      name: "${name} max discharge current"

1.0.0

14 Jun 08:15
Compare
Choose a tag to compare
Add more hints about known issues