Note: This documentation is based on reverse-engineered protocol data for the RD6006. While widely applicable to the RD6xxx series (RD6006, RD6012, RD6018, etc.), some registers or features may vary by specific firmware version.
The RD6xxx series uses the standard Modbus RTU protocol over a USB-to-TTL (or RS485) serial interface.
| Parameter | Value |
|---|---|
| Interface | USB / TTL Serial |
| Baud Rate | 115200 (Default) |
| Data Bits | 8 |
| Stop Bits | 1 |
| Parity | None |
| Flow Control | None |
| Slave Address | 1-247 (Default: 1) |
All data is transmitted as 16-bit Integers (Big Endian).
To get the actual physical value, the raw integer must be divided by a Scaling Factor.
| Unit | Decimals | Scaling Divisor | Raw Value | Actual Value |
|---|---|---|---|---|
| Voltage (V) | 2 | / 100 | 1250 | 12.50 V |
| Current (A) | 3 | / 1000 | 3000 | 3.000 A |
| Power (W) | 2 | / 100 | 5000 | 50.00 W |
| Temp (°C) | 0 | / 1 | 45 | 45 °C |
| Capacity (Ah) | 3 | / 1000 | 5000 | 5.000 Ah |
The device supports the following Modbus function codes:
| Code | Name | Description |
|---|---|---|
| 0x03 | Read Holding Registers | Read current values, settings, and status. |
| 0x06 | Write Single Register | Set a single parameter (e.g., Set Voltage). |
| 0x10 | Write Multiple Registers | Set multiple parameters (e.g., Set Volts & Amps). |
These registers control the active state of the power supply.
| Address (Hex) | Address (Dec) | Name | R/W | Unit | Scale | Description |
|---|---|---|---|---|---|---|
| 0x0000 | 0 | ID | R | - | 1 | Product Signature (e.g. 60062) |
| 0x0002 | 2 | SN | R | - | 1 | Serial Number |
| 0x0003 | 3 | FW | R | - | 100 | Firmware Version (e.g. 128 = 1.28) |
| 0x0004 | 4 | T_SYS_C | R | °C | 1 | System Temperature (°C) |
| 0x0005 | 5 | T_SYS_F | R | °F | 1 | System Temperature (°F) |
| 0x0008 | 8 | V-SET | R/W | V | 100 | Target Output Voltage |
| 0x0009 | 9 | I-SET | R/W | A | 1000 | Target Output Current Limit |
| 0x000A | 10 | V-OUT | R | V | 100 | Actual Output Voltage (Readback) |
| 0x000B | 11 | I-OUT | R | A | 1000 | Actual Output Current (Readback) |
| 0x000D | 13 | POWER | R | W | 100 | Actual Output Power |
| 0x000E | 14 | V-IN | R | V | 100 | Input Voltage |
| 0x000F | 15 | LOCK | R/W | - | 1 | Key Lock (0: Unlock, 1: Lock) |
| 0x0010 | 16 | PROTECT | R | - | 1 | Protection Status Code |
| 0x0012 | 18 | ONOFF | R/W | - | 1 | Output Enable (0: OFF, 1: ON) |
| 0x0013 | 19 | LOAD_M | R/W | - | 1 | Trigger Preset Load (Write 0-9 to load M0-M9) |
| 0x0020 | 32 | BAT_MODE | R | - | 1 | Battery Charging Mode (0: Off, 1: Active) |
| 0x0021 | 33 | V-BATT | R | V | 100 | Battery Voltage (if probe connected) |
| 0x0023 | 35 | T_EXT_C | R | °C | 1 | External Probe Temp (°C) |
| 0x0025 | 37 | T_EXT_F | R | °F | 1 | External Probe Temp (°F) |
| 0x0026 | 38 | AH_HI | R | Ah | 1000 | Capacity High Word (Ah * 1000) |
| 0x0027 | 39 | AH_LO | R | Ah | 1000 | Capacity Low Word |
| 0x0028 | 40 | WH_HI | R | Wh | 1000 | Energy High Word (Wh * 1000) |
| 0x0029 | 41 | WH_LO | R | Wh | 1000 | Energy Low Word |
| 0x0030 | 48 | YEAR | R/W | Y | 1 | System Clock: Year |
| 0x0031 | 49 | MONTH | R/W | M | 1 | System Clock: Month |
| 0x0032 | 50 | DAY | R/W | D | 1 | System Clock: Day |
| 0x0033 | 51 | HOUR | R/W | h | 1 | System Clock: Hour |
| 0x0034 | 52 | MIN | R/W | m | 1 | System Clock: Minute |
| 0x0035 | 53 | SEC | R/W | s | 1 | System Clock: Second |
| 0x0048 | 72 | BACKLIGHT | R/W | - | 1 | Brightness Level (0-5) |
The device stores 10 groups of settings (M0-M9).
Note that unlike the SK120X, the RD6xxx series only groups Voltage, Current, OVP, and OCP in these blocks.
The table below shows offsets for Data Group N (where N is 0 to 9).
| Offset | Function | R/W | Unit | Scale | Description |
|---|---|---|---|---|---|
| +0x00 | V-SET | R/W | V | 100 | Preset Voltage |
| +0x01 | I-SET | R/W | A | 1000 | Preset Current |
| +0x02 | S-OVP | R/W | V | 100 | Over Voltage Protection Setting |
| +0x03 | S-OCP | R/W | A | 1000 | Over Current Protection Setting |
Example Addresses:
Read register 0x0010.
| Value | Code | Meaning |
|---|---|---|
| 0 | OK | Normal Operation |
| 1 | OVP | Over Voltage Protection Triggered |
| 2 | OCP | Over Current Protection Triggered |
Various configuration registers use 0/1 logic.
| Register | Name | 0 | 1 |
|---|---|---|---|
| 0x000F | LOCK | Unlocked | Locked |
| 0x0012 | ONOFF | Output OFF | Output ON |
| 0x0020 | BAT_MODE | Normal Mode | Battery Charging Mode |
| 0x0045 | BUZZER | Mute | Sound On |
Write 1 to Address 0x0012.
Write 1200 (0x04B0) to Address 0x0008.
Read 4 registers starting at 0x000A (V-OUT).
This reads 0x000A (V-OUT), 0x000B (I-OUT), 0x000C (Reserved), and 0x000D (POWER).