Category: Uncategorized

  • XT60 Current Meter (ESP01 + INA219 Module)

    • Project Overview:
      • This PCB design implements a compact XT60 inline current meter module powered by an ESP-01 microcontroller and the INA219 bi-directional current/power monitor. The board measures voltage and current from 5–26V DC, with a configurable sensing range up to 40A for high-power applications such as LED strips and RC batteries or even 3D Printers.
      • It features full Home Assistant integration via ESPHome, delivering real-time telemetry of voltage, current, shunt voltage, and power, with OTA firmware update capability.

    Design Details:

    • XT60 In-Line PCB:
      • The board is designed in a panelized layout for multi-channel assembly (up to 4 meters per PCB). Both the input and output are XT60 connectors, providing low-resistance, high-current connections.
      • Wide copper pours and short traces minimize voltage drop and thermal loss even at high currents.
    • Current & Voltage Sensing:
      • INA219 monitors both bus voltage and shunt current using precision 20mΩ resistors (configurable for other shunt values). Up to four parallel channels are supported per board for multi-circuit monitoring.
      • Jumper settings allow for easy configuration of sensing channels and measurement range.
    • Onboard Power Regulation:
      • An integrated buck converter (U8) steps down input voltage (5–26V) to 3.3V for the ESP-01 and sensor ICs, ensuring stable operation across wide input ranges.

    • MCU & Connectivity:
      • The ESP-01S WiFi microcontroller hosts the ESPHome firmware and handles I2C communication with the INA219 sensors.
      • All sensor values are published to Home Assistant, and the device supports OTA firmware upgrades for easy maintenance and updates.

    Module Assembly:

    • The module fits directly between any DC power source and load. The final product shown here features XT60 connectors and heat-shrink insulation for safe, robust inline installation.

    ESPHome & Home Assistant Integration:

    • With default ESPHome YAML, the sensor publishes bus voltage, current, power, and shunt voltage readings. All values are accessible for automations and graphical dashboards in Home Assistant.
  • Nissan Altima instrument cluster hacking

    Recently I replaced the instrument cluster (combination meter) in my 2005 Nissan Altima. After installing the new one, I noticed two things. First, the mileage is incorrect—which was expected—the old cluster had 190k miles and the new one shows just over 260k. That’s not a huge deal; I’ll just write down the difference and keep it in the glove box. But I also noticed the old meter was a “With NAVI” unit, while the new one is “Without NAVI.” What does NAVI mean? I have no idea, BUT I prefer the new cluster since it displays more information on the dashboard.

    The Odometer

    There are services that will reprogram your odometer, typically for around $250. When buying a used instrument cluster, many places offer to match the odometer reading if you send yours in. So, it’s possible to alter the reading. However, aside from the $3,000 Nissan Consult II programmer, I haven’t found a scan tool that supports this function.

    Now for the Hacking

    EEPROM swapping and reprogramming are very common among car modders. However, I couldn’t find any info specific to the Altima combination meter, so let’s crack it open and see what we find.

    The two SOIC chips near the main MCU are the AB2C250 CAN transceiver and the 93C66 serial EEPROM. Taking a closer look at the EEPROM, we can verify the pinout—pins 6, 7, and 8 are all shorted and tied to VCC; pin 5 is tied to ground with a bypass capacitor between them.

    After wiring into the EEPROM and connecting it to my Saleae Logic 4 analyzer, we can see that at power-up there are seven distinct transactions with the EEPROM.

    Verify Our Assumptions

    Currently, we’re assuming the mileage is stored in this EEPROM chi, but we don’t have any real evidence yet, other than “it makes sense.” So… What can we do? Remove the chip and see what happens, right?
    Well, not exactly. Instead of removing the chip, you can break the communication circuit. The CS pin is connected to the main MCU via a 470 ohm resistor, so you can safely short the EEPROM side of that resistor to ground. This prevents the MCU from “talking” to the EEPROM.

    SUCCESS! (Kinda?)

    Now, the odometer reads 0 miles, but the display shows DTE, and I can scroll through MPG and MPH. So… looks like this is a “Without NAVI” dashboard now?

    Summary

    We found the EEPROM chip on the combination meter board, captured the communication between the EEPROM and the MCU, and confirmed that both the odometer value and the “With/Without NAVI” configuration are stored in the EEPROM.

    Next, we’ll need to analyze the communication export and try to reconstruct the memory map of the EEPROM chip itself. Then, we’ll need to decode the bitmap for odometer and configuration data.

  • Balboa WiFi Interface Module

    What Is the Balboa WiFi Interface Module?

    This is a WiFi interface board for Balboa hot tub control systems designed to fit directly between the topside panel and the main control board. It gives external (e.g. WiFi/IoT) control and monitoring, with direct passthrough to the OEM display, while protecting the main electronics and allowing advanced features unsupported by existing solutions.

    Unique Features

    • Proper Logic Separation: All button and display signals are opto-isolated, protecting the main control system from any damage or interference caused by the add-on board. Many other DIY designs omit this, risking system damage.
    • Optional Standalone Topside Transmission: If the main control board is disconnected or not powered, this board can generate and transmit clock and data signals to the topside panel so you can still send display messages or button events.
    • Direct Plug-In: Sits transparently between main board and panel via standard RJ45 connectors for seamless installation and reversion.

    Schematic and PCB Reference

    Below are the latest schematic and board design images for easy debugging and DIY assembly. For full resolution, see:
    Schematic (full PNG)
    PCB (full PNG)

    Balboa WiFi Interface Module Schematic
    Balboa WiFi Interface Module PCB

    Pinout Overview

    • Display, Clock, and Button signals – All passed through via opto-isolators, with control from both the main board and WiFi module (Wemos D1 Mini shown)
    • Optional Standalone Mode Jumper – Lets the module generate display and clock signals independently
    • RJ45 Connectors – Direct connection for panel/control board passthrough
    • Regulated 5V Supply – On-board LDO for stable logic voltage

    Digital Protocol and Button Control

    Button presses are emulated by pulling control lines via opto-isolators, safely injecting signals from the microcontroller (ESP8266/ESP32-based), while display and clock lines are conditionally transmitted with proper timing if enabled. The design guarantees safe coexistence with the original electronics—bring-up and transmission control code is published on GitHub for full integration into automation/remote platforms.

    See the project repository for:

    • Firmware for signal emulation and display protocol
    • Full schematic and PCB production files
    • Assembly instructions and troubleshooting notes

  • GM Battery Current Sensor 13505369 & 10306471: Pinout, Protocol, and Testing

    What Are GM Battery Current Sensors?

    These are non-intrusive Hall effect sensors designed to sit around the main battery cable and report current to the car’s ECU. Their data is crucial for modern “smart charging” systems that dynamically adjust alternator output to reduce load, improve fuel efficiency, and maintain optimal battery condition. Both 13505369 and 10306471 are commonly found in models from Chevrolet, GMC, Buick, Cadillac, Pontiac, Saturn, and Hummer.

    Pinout Reference

    • VCC – +5V Power Input
    • GND – Ground
    • SIGNAL – Digital PWM Output

    Digital Protocol

    The sensor outputs a PWM signal on the SIGNAL pin:

    • Frequency: ~120–128 Hz (can vary slightly by unit)
    • Duty Cycle: 50% at 0A (no current), proportional up/down for charge/discharge
    • Signal type: 5V logic PWM

    The duty cycle directly reflects in/out battery current; a positive (charging) or negative (discharging) current shifts the duty cycle up or down from 50%. Example waveform capture below:

    Typical readings:

    • 50% Duty Cycle ≈ 0A (idle/stable battery)
    • Range: ±60A