@@ -65,6 +65,11 @@ static void initialize()
6565 pinMode (GPIO_PIN_LED_RED, OUTPUT);
6666 digitalWrite (GPIO_PIN_LED_RED, LOW ^ GPIO_LED_RED_INVERTED);
6767 #endif // GPIO_PIN_LED_RED
68+ #if defined(TARGET_TX_IFLIGHT)
69+ digitalWrite (GPIO_PIN_LED_GREEN, LOW);
70+ digitalWrite (GPIO_PIN_LED_RED, HIGH);
71+ digitalWrite (GPIO_PIN_LED_BLUE, LOW);
72+ #endif
6873 #if defined(TARGET_TX_FM30)
6974 pinMode (GPIO_PIN_LED_RED_GREEN, OUTPUT); // Green LED on "Red" LED (off)
7075 digitalWrite (GPIO_PIN_LED_RED_GREEN, HIGH);
@@ -90,11 +95,7 @@ static void initialize()
9095
9196static int timeout ()
9297{
93- #if defined(GPIO_PIN_LED_GREEN) || defined(GPIO_PIN_LED)
9498 return updateLED ();
95- #else
96- return DURATION_NEVER;
97- #endif
9899}
99100
100101static void setPowerLEDs ()
@@ -120,48 +121,6 @@ static void setPowerLEDs()
120121 break ;
121122 }
122123 #endif
123-
124- #if defined(TARGET_TX_IFLIGHT)
125- switch (POWERMGNT::currPower ())
126- {
127- case PWR_10mW:
128- digitalWrite (GPIO_PIN_LED_RED, HIGH);
129- digitalWrite (GPIO_PIN_LED_GREEN, LOW);
130- digitalWrite (GPIO_PIN_LED_BLUE, LOW);
131- break ;
132- case PWR_25mW:
133- digitalWrite (GPIO_PIN_LED_RED, LOW);
134- digitalWrite (GPIO_PIN_LED_GREEN, HIGH);
135- digitalWrite (GPIO_PIN_LED_BLUE, LOW);
136- break ;
137- case PWR_50mW:
138- digitalWrite (GPIO_PIN_LED_RED, LOW);
139- digitalWrite (GPIO_PIN_LED_GREEN, LOW);
140- digitalWrite (GPIO_PIN_LED_BLUE, HIGH);
141- break ;
142- case PWR_250mW:
143- digitalWrite (GPIO_PIN_LED_RED, HIGH);
144- digitalWrite (GPIO_PIN_LED_GREEN, LOW);
145- digitalWrite (GPIO_PIN_LED_BLUE, HIGH);
146- break ;
147- case PWR_500mW:
148- digitalWrite (GPIO_PIN_LED_RED, LOW);
149- digitalWrite (GPIO_PIN_LED_GREEN, HIGH);
150- digitalWrite (GPIO_PIN_LED_BLUE, HIGH);
151- break ;
152- case PWR_1000mW:
153- digitalWrite (GPIO_PIN_LED_RED, HIGH);
154- digitalWrite (GPIO_PIN_LED_GREEN, HIGH);
155- digitalWrite (GPIO_PIN_LED_BLUE, HIGH);
156- break ;
157- case PWR_100mW:
158- default :
159- digitalWrite (GPIO_PIN_LED_RED, HIGH);
160- digitalWrite (GPIO_PIN_LED_GREEN, HIGH);
161- digitalWrite (GPIO_PIN_LED_BLUE, LOW);
162- break ;
163- }
164- #endif
165124}
166125
167126static int event ()
@@ -176,8 +135,14 @@ static int event()
176135 switch (connectionState)
177136 {
178137 case connected:
179- #if defined(TARGET_TX) && defined(GPIO_PIN_LED_RED) && (GPIO_PIN_LED_RED != UNDEF_PIN)
180- digitalWrite (GPIO_PIN_LED_RED, HIGH ^ GPIO_LED_RED_INVERTED);
138+ #if defined(TARGET_TX)
139+ #if defined(TARGET_TX_IFLIGHT)
140+ digitalWrite (GPIO_PIN_LED_GREEN, HIGH);
141+ digitalWrite (GPIO_PIN_LED_RED, LOW);
142+ digitalWrite (GPIO_PIN_LED_BLUE, LOW);
143+ #elif defined(GPIO_PIN_LED_RED) && (GPIO_PIN_LED_RED != UNDEF_PIN)
144+ digitalWrite (GPIO_PIN_LED_RED, HIGH ^ GPIO_LED_RED_INVERTED);
145+ #endif
181146 #endif // GPIO_PIN_LED_RED
182147 #if defined(TARGET_RX)
183148 #ifdef GPIO_PIN_LED_GREEN
@@ -202,10 +167,13 @@ static int event()
202167 return DURATION_NEVER;
203168 case disconnected:
204169 #if defined(TARGET_TX)
205- #if defined(GPIO_PIN_LED_RED) && (GPIO_PIN_LED_RED != UNDEF_PIN)
170+ #if defined(TARGET_TX_IFLIGHT)
171+ digitalWrite (GPIO_PIN_LED_GREEN, LOW);
172+ digitalWrite (GPIO_PIN_LED_BLUE, LOW);
173+ return flashLED (GPIO_PIN_LED_RED, GPIO_LED_RED_INVERTED, LEDSEQ_DISCONNECTED, sizeof (LEDSEQ_DISCONNECTED));
174+ #elif defined(GPIO_PIN_LED_RED) && (GPIO_PIN_LED_RED != UNDEF_PIN)
206175 digitalWrite (GPIO_PIN_LED_RED, LOW ^ GPIO_LED_RED_INVERTED);
207176 #endif
208- return DURATION_NEVER;
209177 #endif
210178 #if defined(TARGET_RX)
211179 #ifdef GPIO_PIN_LED_GREEN
@@ -220,8 +188,14 @@ static int event()
220188 return flashLED (GPIO_PIN_LED_GREEN, GPIO_LED_GREEN_INVERTED, LEDSEQ_DISCONNECTED, sizeof (LEDSEQ_DISCONNECTED));
221189 #endif
222190 #endif
191+ return DURATION_NEVER;
223192 case wifiUpdate:
224193 #if defined(TARGET_TX)
194+ #if defined(TARGET_TX_IFLIGHT)
195+ digitalWrite (GPIO_PIN_LED_GREEN, LOW);
196+ digitalWrite (GPIO_PIN_LED_RED, LOW);
197+ return flashLED (GPIO_PIN_LED_BLUE, GPIO_LED_BLUE_INVERTED, LEDSEQ_WIFI_UPDATE, sizeof (LEDSEQ_WIFI_UPDATE));
198+ #endif
225199 return DURATION_NEVER;
226200 #endif
227201 #if defined(TARGET_RX) && defined(GPIO_PIN_LED)
@@ -230,7 +204,11 @@ static int event()
230204 return DURATION_NEVER;
231205 #endif
232206 case radioFailed:
233- #if defined(GPIO_PIN_LED_GREEN) && (GPIO_PIN_LED_GREEN != UNDEF_PIN)
207+ #if defined(TARGET_TX_IFLIGHT)
208+ digitalWrite (GPIO_PIN_LED_GREEN, LOW);
209+ digitalWrite (GPIO_PIN_LED_BLUE, LOW);
210+ return flashLED (GPIO_PIN_LED_RED, GPIO_LED_RED_INVERTED, LEDSEQ_RADIO_FAILED, sizeof (LEDSEQ_RADIO_FAILED));
211+ #elif defined(GPIO_PIN_LED_GREEN) && (GPIO_PIN_LED_GREEN != UNDEF_PIN)
234212 digitalWrite (GPIO_PIN_LED_GREEN, LOW ^ GPIO_LED_GREEN_INVERTED);
235213 #endif // GPIO_PIN_LED_GREEN
236214 #if defined(GPIO_PIN_LED_RED) && (GPIO_PIN_LED_RED != UNDEF_PIN)
0 commit comments