Ilya Shinkeyev
Back to Campervan Build
Embedded Systems · Deep Dive

Diesel Heater Controller

Reverse-engineering a 12V diesel heater's wireless remote and rebuilding its control system from scratch — three iterations from a hot-glued servo rig to a clean ESP32 + RF design with a phone Web UI.

3D Models

Parts I modeled for this build.

Drag to rotate · scroll or pinch to zoom. Hit ⤢ Expand on any model for cross-section, explode & isolate tools.

Loading 3D model…
Drag · right-drag pan · scroll zoom
Diesel Heater RF Remote — full assembly
Loading 3D model…
Drag · right-drag pan · scroll zoom
ESP-32 Custom Holder

Code Progression

How the firmware evolved across the three iterations. (Representative snippets — full source coming soon.)

// V1 — Arduino + hobby servos physically pressing the stock remote buttons.
#include <Servo.h>

Servo powerBtn;
Servo tempUp;

void setup() {
  powerBtn.attach(9);
  tempUp.attach(10);
}

void pressPower() {
  powerBtn.write(60);   // push
  delay(400);
  powerBtn.write(0);    // release
}

void loop() {
  // No automation yet — manual trigger only.
  // Problem: servos drift, hot glue mounts fail with vibration.
}

How It Works

The stock remote communicated with the heater over a one-way 433MHz link. Using an RF receiver module and a logic analyzer, I captured and decoded the button packets, then replayed them from an ESP32 — removing the physical remote from the loop entirely.

The ESP32 hosts a small Web UI on the van's local network, so the heater can be controlled from a phone: power, setpoint temperature, and a simple thermostat loop that holds the cabin temperature overnight. More detail, schematics, and the full source will be added here.