From 1d0e18298197a905502a94a068e4f27bdb8525f7 Mon Sep 17 00:00:00 2001 From: Paul Kendall Date: Wed, 25 Feb 2026 15:36:54 +1300 Subject: [PATCH] Add DakeFPV 1W 2.4GHz TX module ... and fix error in validator --- .github/hardware.py | 2 +- TX/DAKEFPV MAX.json | 36 ++++++++++++++++++++++++++++++++++++ logo/dakefpv_tft.bin | Bin 0 -> 16960 bytes targets.json | 21 +++++++++++++++++++++ 4 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 TX/DAKEFPV MAX.json create mode 100644 logo/dakefpv_tft.bin diff --git a/.github/hardware.py b/.github/hardware.py index 2f6f32c..02b6fb1 100644 --- a/.github/hardware.py +++ b/.github/hardware.py @@ -331,7 +331,7 @@ def validate_power_config(target, layout, firmware): print(f'ERROR: device "{target}" power_values2 is defined so the power_apc2 pin must also be defined') had_error = True elif 'power_values_dual' in layout: - power_values_dual = layout['power_values'] + power_values_dual = layout['power_values_dual'] if power_values_dual and power_max - power_min + 1 > len(power_values_dual): print(f'ERROR: device "{target}" power_values_dual must have the correct number of entries to match all values from power_min to power_max') had_error = True diff --git a/TX/DAKEFPV MAX.json b/TX/DAKEFPV MAX.json new file mode 100644 index 0000000..d8a574f --- /dev/null +++ b/TX/DAKEFPV MAX.json @@ -0,0 +1,36 @@ +{ + "serial_rx": 13, + "serial_tx": 13, + "radio_busy": 38, + "radio_dio1": 39, + "radio_miso": 19, + "radio_mosi": 23, + "radio_nss": 5, + "radio_rst": 22, + "radio_sck": 18, + "radio_dcdc": true, + "power_min": 0, + "power_high": 7, + "power_max": 7, + "power_default": 5, + "joystick": 35, + "joystick_values": [1977, 3135, 2619, 0, 1322, 4095], + "led_rgb": 21, + "led_rgb_isgrb": true, + "screen_type": 4, + "screen_dc": 14, + "screen_mosi": 12, + "screen_rst": 33, + "screen_sck": 2, + "screen_bl": 32, + "screen_cs": -1, + "screen_reversed": true, + "use_backpack": true, + "debug_backpack_baud": 460800, + "debug_backpack_rx": 16, + "debug_backpack_tx": 17, + "backpack_boot": 15, + "backpack_en": 25, + "passthrough_baud": 230400, + "misc_fan_en": 4 +} diff --git a/logo/dakefpv_tft.bin b/logo/dakefpv_tft.bin new file mode 100644 index 0000000000000000000000000000000000000000..9c481e72463f67f81f80b3cbeb664d7f94601a9d GIT binary patch literal 16960 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