11/*
22 * HelTec Automation(TM) WIFI_LoRa_32 factory test code, witch includ
33 * follow functions:
4- *
4+ *
55 * - Basic OLED function test;
6- *
6+ *
77 * - Basic serial port test(in baud rate 115200);
8- *
8+ *
99 * - Basic LED test;
10- *
10+ *
1111 * - WIFI join and scan test;
12- *
12+ *
1313 * - ArduinoOTA By Wifi;
14- *
14+ *
1515 * - Timer test and some other Arduino basic functions.
1616 *
1717 * by lxyzn from HelTec AutoMation, ChengDu, China
@@ -104,9 +104,15 @@ void setupOTA()
104104 // int pro = progress / (total / 100);
105105
106106 Heltec.display ->clear ();
107- Heltec.display ->drawProgressBar (0 , 32 , 120 , 10 , progressbar); // draw the progress bar
107+ #ifdef Wireless_Stick
108+ Heltec.display ->drawProgressBar (0 , 11 , 64 , 8 , progressbar); // draw the progress bar
109+ Heltec.display ->setTextAlignment (TEXT_ALIGN_CENTER); // draw the percentage as String
110+ Heltec.display ->drawString (10 , 20 , pro);
111+ #elif
112+ Heltec.display ->drawProgressBar (0 , 32 , 120 , 10 , progressbar); // draw the progress bar
108113 Heltec.display ->setTextAlignment (TEXT_ALIGN_CENTER); // draw the percentage as String
109114 Heltec.display ->drawString (64 , 15 , pro);
115+ #endif
110116 Heltec.display ->display ();
111117
112118 Serial.printf (" Progress: %u%%\r " , (progress / (total / 100 )));
@@ -125,53 +131,33 @@ void setupOTA()
125131
126132 case OTA_BEGIN_ERROR:
127133 info += " Begin Failed" ;
128- Serial.println (" Begin Failed" );
134+ Serial.println (" Begin Failed" );
129135 break ;
130136
131137 case OTA_CONNECT_ERROR:
132138 info += " Connect Failed" ;
133- Serial.println (" Connect Failed" );
139+ Serial.println (" Connect Failed" );
134140 break ;
135141
136142 case OTA_RECEIVE_ERROR:
137143 info += " Receive Failed" ;
138- Serial.println (" Receive Failed" );
144+ Serial.println (" Receive Failed" );
139145 break ;
140146
141147 case OTA_END_ERROR:
142148 info += " End Failed" ;
143- Serial.println (" End Failed" );
149+ Serial.println (" End Failed" );
144150 break ;
145151 }
146152
147153 Heltec.display ->clear ();
148- Heltec.display ->drawString (0 , 0 , info);
154+ Heltec.display ->drawString (0 , 0 , info);
149155 ESP.restart ();
150156 });
151157
152158 ArduinoOTA.begin ();
153159}
154160
155- /* *******************************************************************
156- * setup oled
157- */
158- void setupOLED ()
159- {
160- pinMode (RST_OLED, OUTPUT);
161- // 复位OLED电路
162- digitalWrite (RST_OLED, LOW); // turn D16 low to reset OLED
163- delay (50 );
164- digitalWrite (RST_OLED, HIGH); // while OLED is running, must set D16 in high
165-
166- Heltec.display ->init ();
167- Heltec.display ->flipScreenVertically (); // 倒过来显示内容
168- Heltec.display ->setFont (ArialMT_Plain_10); // 设置字体大小
169- Heltec.display ->setTextAlignment (TEXT_ALIGN_LEFT);// 设置字体对齐方式
170-
171- Heltec.display ->clear ();
172- Heltec.display ->drawString (0 , 0 , " Initialize..." );
173- }
174-
175161/* ********************************************************************
176162 * setup wifi
177163 */
@@ -181,14 +167,14 @@ void setupWIFI()
181167 Heltec.display ->drawString (0 , 0 , " Connecting..." );
182168 Heltec.display ->drawString (0 , 10 , String (ssid));
183169 Heltec.display ->display ();
184-
170+
185171 // 连接WiFi,删除旧的配置,关闭WIFI,准备重新配置
186172 WiFi.disconnect (true );
187173 delay (1000 );
188-
189- WiFi.mode (WIFI_STA);
190- // WiFi.onEvent(WiFiEvent);
191- WiFi.setAutoConnect (true );
174+
175+ WiFi.mode (WIFI_STA);
176+ // WiFi.onEvent(WiFiEvent);
177+ WiFi.setAutoConnect (true );
192178 WiFi.setAutoReconnect (true ); // 断开WiFi后自动重新连接,ESP32不可用
193179 // WiFi.setHostname(HOSTNAME);
194180 WiFi.begin (ssid, password);
@@ -208,36 +194,35 @@ void setupWIFI()
208194
209195 Heltec.display ->clear ();
210196 if (WiFi.status () == WL_CONNECTED)
211- Heltec.display ->drawString (0 , 0 , " Connecting...OK. " );
197+ Heltec.display ->drawString (0 , 0 , " Connected " );
212198 else
213- Heltec.display ->drawString (0 , 0 , " Connecting...Failed " );
199+ Heltec.display ->drawString (0 , 0 , " Connect False " );
214200 Heltec.display ->display ();
215201}
216202
217203/* *****************************************************
218204 * arduino setup
219205 */
220- void setup ()
206+ void setup ()
221207{
222208 Heltec.begin (true /* DisplayEnable Enable*/ , false /* LoRa Disable*/ , true /* Serial Enable*/ );
223209 pinMode (25 , OUTPUT);
224210 digitalWrite (25 ,HIGH);
225-
211+
226212 while (!Serial) {
227213 ; // wait for serial port to connect. Needed for native USB port only
228214 }
229215
230216 Serial.println (" Initialize..." );
231-
232- setupOLED ();
217+
233218 setupWIFI ();
234219 setupOTA ();
235220}
236221
237222/* *****************************************************
238223 * arduino loop
239224 */
240- void loop ()
225+ void loop ()
241226{
242227 ArduinoOTA.handle ();
243228 unsigned long ms = millis ();
@@ -250,48 +235,49 @@ void loop()
250235/* ***************************************************
251236 * [通用函数]ESP32 WiFi Kit 32事件处理
252237 */
253- void WiFiEvent (WiFiEvent_t event)
238+ void WiFiEvent (WiFiEvent_t event)
254239{
255240 Serial.printf (" [WiFi-event] event: %d\n " , event);
256- switch (event)
241+ switch (event)
257242 {
258243 case SYSTEM_EVENT_WIFI_READY: /* *< ESP32 WiFi ready */
259244 break ;
260245 case SYSTEM_EVENT_SCAN_DONE: /* *< ESP32 finish scanning AP */
261246 break ;
262-
247+
263248 case SYSTEM_EVENT_STA_START: /* *< ESP32 station start */
264249 break ;
265250 case SYSTEM_EVENT_STA_STOP: /* *< ESP32 station stop */
266251 break ;
267-
252+
268253 case SYSTEM_EVENT_STA_CONNECTED: /* *< ESP32 station connected to AP */
269254 break ;
270-
255+
271256 case SYSTEM_EVENT_STA_DISCONNECTED: /* *< ESP32 station disconnected from AP */
272257 break ;
273-
258+
274259 case SYSTEM_EVENT_STA_AUTHMODE_CHANGE: /* *< the auth mode of AP connected by ESP32 station changed */
275260 break ;
276-
261+
277262 case SYSTEM_EVENT_STA_GOT_IP: /* *< ESP32 station got IP from connected AP */
278263 case SYSTEM_EVENT_STA_LOST_IP: /* *< ESP32 station lost IP and the IP is reset to 0 */
279264 break ;
280-
265+
281266 case SYSTEM_EVENT_STA_WPS_ER_SUCCESS: /* *< ESP32 station wps succeeds in enrollee mode */
282267 case SYSTEM_EVENT_STA_WPS_ER_FAILED: /* *< ESP32 station wps fails in enrollee mode */
283268 case SYSTEM_EVENT_STA_WPS_ER_TIMEOUT: /* *< ESP32 station wps timeout in enrollee mode */
284269 case SYSTEM_EVENT_STA_WPS_ER_PIN: /* *< ESP32 station wps pin code in enrollee mode */
285270 break ;
286-
271+
287272 case SYSTEM_EVENT_AP_START: /* *< ESP32 soft-AP start */
288273 case SYSTEM_EVENT_AP_STOP: /* *< ESP32 soft-AP stop */
289274 case SYSTEM_EVENT_AP_STACONNECTED: /* *< a station connected to ESP32 soft-AP */
290275 case SYSTEM_EVENT_AP_STADISCONNECTED: /* *< a station disconnected from ESP32 soft-AP */
291276 case SYSTEM_EVENT_AP_PROBEREQRECVED: /* *< Receive probe request packet in soft-AP interface */
292277 case SYSTEM_EVENT_AP_STA_GOT_IP6: /* *< ESP32 station or ap interface v6IP addr is preferred */
278+ case SYSTEM_EVENT_AP_STAIPASSIGNED:
293279 break ;
294-
280+
295281 case SYSTEM_EVENT_ETH_START: /* *< ESP32 ethernet start */
296282 case SYSTEM_EVENT_ETH_STOP: /* *< ESP32 ethernet stop */
297283 case SYSTEM_EVENT_ETH_CONNECTED: /* *< ESP32 ethernet phy link up */
@@ -300,4 +286,4 @@ void WiFiEvent(WiFiEvent_t event)
300286 case SYSTEM_EVENT_MAX:
301287 break ;
302288 }
303- }
289+ }
0 commit comments