Modifications - OpenI6X/opentx GitHub Wiki
- All optional hardware connections
- S.Port - ExpressLRS/Crossfire
- Adjustable backlight level
- DFPlayer - Voice annoucements
- FlySky FS-HZCZ03-ADJ Gimbal
- Stick axis inversion for Hall Gimbal
- External module power

| PCB Pad | Function |
|---|---|
TX2 |
S.Port (CRSF) - required to connect ExpressLRS/Crossfire module |
PA15 |
S.Port (CRSF) RX - only for CRSF_FULLDUPLEX enabled builds |
PA9 |
AUX Serial port TX - Telemetry mirror |
PA10 |
AUX Serial port RX - SBUS Trainer |
PC13 |
External module power control (was PC9 up to OpenI6X 1.5.0) |
PC14 |
DFPlayer BUSY
|
TXD4 |
DFPlayer RX
|
RXD4 |
FS-HZCZ03-ADJ Gimbal TX
|
PC9+BL
|
Wiring those together enables adjustable backlight |
Connection:
TX2 <----> S.Port
GND <----> GND
or for `CRSF_FULLDUPLEX` build:
TX2 <----> Module RX
PA15 <----> Module TX
GND <----> GND
ExpressLRS elrsV3.lua equivalent is build in, no need to copy it to the radio. It can be used to configure both ExpressLRS and Crossfire modules.
To adjust port baudrate go to: Radio Settings -> Hardware -> Baudrate. Test available speeds and see which one works best with your module.
Wire PC9 and BL pads together.
Adjust backlight level in Radio setup menu.

Adds voice announcements capability.
Enables Special Function Volume.
Requires copying soundpack files directly to SDCard root catalog, sorted by filenames order. Numeric index in front of filenames is to maintain proper files order.
You can add 9 custom sounds under names:
0271_custm1.wav
0272_custm2.wav
0273_custm3.wav
0274_custm4.wav
0275_custm5.wav
0276_custm6.wav
0277_custm7.wav
0278_custm8.wav
0279_custm9.wav
Connection:
TXD4 <----> DFPlayer RX
PC14 <----> DFPlayer BUSY
GND <----> GND
Tested DFPlayers:
- AB22A795251 - OK,
- GD3200D - OK,
- GD3200A/B - laggy, too slow to set volume at boot, not recommended,
- MH2024K-24SS - laggy, about 650ms delay, cannot keep up with timer count down, not recommended,
Requires custom firmware build with FLYSKY_GIMBAL=YES.
Connection:
RXD4 <----> FS-HZCZ03-ADJ Gimbal TX
GND <----> GND
See also: https://github.com/EdgeTX/edgetx/wiki/Flysky-Hall-Sticks-Mod
You can invert individual stick axes during build using the following flags:
-
INVERT_GIMBAL_CH1=YES→ invert Aileron -
INVERT_GIMBAL_CH2=YES→ invert Elevator -
INVERT_GIMBAL_CH3=YES→ invert Throttle -
INVERT_GIMBAL_CH4=YES→ invert Rudder
Example inverting channel 1 and 3:
docker run --rm -it -e "BOARD_NAME=i6x" -e "CMAKE_FLAGS=PCB=I6X HELI=NO GVARS=YES PCBI6X_INAV=NO
PCBI6X_ELRS=YES DFPLAYER=YES USB_MSD=YES USB_SERIAL=YES SBUS_TRAINER=YES TRANSLATIONS=EN DEBUG=NO
INVERT_GIMBAL_CH1=YES INVERT_GIMBAL_CH3=YES" -v ${PWD}:/opentx ajjjjjjjj/opentx-docker-i6xExternal module power can be controlled using PC13 pad, so the module is automatically turned on or off.
If your module have power enable pin (like it is with ELRS DIY TX) then you can wire PC13 directly to this pin, if you need this signal to be inverted, you need build with EXTPWR_INVERT=YES, otherwise you need to create power switch circuit.
Diagram below shows example circuit of mosfet switch:
