2026-07-21 16:01:06 +02:00
2026-07-21 15:52:28 +02:00
2026-07-21 15:52:28 +02:00
2026-07-21 15:08:11 +02:00
2026-07-21 15:52:28 +02:00
2026-07-21 16:01:06 +02:00

TLE9018 Master BMS - Production-Grade Dual Scope Control

An advanced multi-node desktop monitoring, cell balancing, and telemetry control interface built in Python for the Infineon TLE9018DQK 18-channel Li-ion Battery Monitoring and Balancing IC.

The software connects to daisy-chained Cell Supervision Circuits (CSCs) via high-speed isoUART (2 MBaud) through a TLE9015DQU transceiver bridge. It features an interactive CLI setup stage for dynamic COM port selection and NTC thermistor profiling, real-time 18-cell PCVM voltage acquisition, individual cell balancing control, and live 5-channel temperature tracking using a PyQt5/PyQtGraph dashboard.


📸 Interface Preview & Key Features

  • Dynamic COM Port Detection: Automatically scans available system serial ports during CLI startup, eliminating hardcoded port dependencies (COM9, etc.).
  • Multi-Node Auto-Enumeration: Supports daisy-chained setups of 1 to 8 TLE9018 sensing ICs with automated IF_CFG (0xC0) final-node (FN) assignment.
  • Dynamic NTC Hardware Footprint Configuration: Interactive terminal setup allowing on-the-fly bias current mapping (INTC) for mixed 10 kΩ and 100 kΩ thermistor channels.
  • Synchronous 18-Cell PCVM Monitoring: 16-bit high-resolution cell voltage scanning using official partition masks (PART_CFG_0/1).
  • Interactive Passive Balancing Engine: Instant bitmask translation for registers BAL_CTRL_0 (0xE6) and BAL_CTRL_1 (0xE7) across individual board targets.
  • Hardware-Calculated NTC Telemetry: Direct decoding of EXT_TEMP_0..4 (0x5E0x62) combining 10-bit ADC codes with 3-bit exponential current scaling indices (INTC).
  • Non-Blocking Multi-Threaded GUI: Asynchronous serial I/O running in an independent background worker thread using queues (_PLOT_QUEUE, _COMMAND_QUEUE) to prevent PyQt UI freezes.

📐 System Hardware & Electrical Specifications

Parameter Value / Configuration
Sensing Transceiver Infineon TLE9015DQU (UART to isoUART Bridge)
Sensing IC Infineon TLE9018DQK
Communication Interface Serial Port
Supported Daisy-Chain Nodes 1 to 8 Stacked Boards
NTC Channel 0 Fixed 100 kΩ NTC in 10 µA Bias Mode
NTC Channels 14 User-selected: 10 kΩ or 100 kΩ
Series Reference Resistor (R_{\text{TMP}}) 100\ \Omega
Full-Scale ADC Range (FSR_{\text{TMP}}) 2.0\text{ V}

📁 Project Structure

.
├── tle9018dqk/                 # Official Infineon Driver Package
│   ├── control.py              # Low-level UART frame builder & J1850 CRC calculation
│   └── registers.py            # Complete TLE9018 register address mapping dictionary
├── monitoring_CMBs.py          # Master Application (CLI Setup + Threaded PyQt5 GUI)
└── README.md                   # System Documentation
Description
No description provided
Readme 60 MiB