19
19
*/
20
20
21
21
// version and sources location
22
- #define FW_VERSION " 2.1.1.b1 "
22
+ #define FW_VERSION " 2.1.1.b6 "
23
23
#define REPOSITORY " https://github.com/luc-github/ESP3D"
24
24
25
25
// Customize ESP3D ////////////////////////////////////////////////////////////////////////
128
128
#define OLED_DISPLAY_SSD1306 // OLED Display Type: SSD1306(OLED_DISPLAY_SSD1306) / SH1106(OLED_DISPLAY_SH1106), comment this line out to disable oled
129
129
#define OLED_PIN_SDA 4 // 5 //SDA; // i2c SDA Pin
130
130
#define OLED_PIN_SCL 15 // 4 //SCL; // i2c SCL Pin
131
- #define OLED_ADDR 0x3c
131
+ #define OLED_ADDR 0x3c
132
132
#define HELTEC_EMBEDDED_PIN 16 // 0 to disable
133
133
#define OLED_FLIP_VERTICALY 1 // 0 to disable
134
134
#endif
135
135
136
136
137
137
// Supported FW /////////////////////////////////////////////////////////////
138
138
#define UNKNOWN_FW 0
139
- #define REPETIER4DV 1
140
- #define MARLIN 2
141
- #define MARLINKIMBRA 3
142
- #define SMOOTHIEWARE 4
143
- #define REPETIER 5
144
- #define GRBL 6
139
+ #define REPETIER4DV 1
140
+ #define MARLIN 2
141
+ #define MARLINKIMBRA 3
142
+ #define SMOOTHIEWARE 4
143
+ #define REPETIER 5
144
+ #define GRBL 6
145
145
#define MAX_FW_ID 6
146
146
147
+ // For FW which has issue with checksum or not handling M110 properly///////
148
+ // #define DISABLE_SERIAL_CHECKSUM
149
+
147
150
// Do not Edit after this line //////////////////////////////////////////////
148
151
149
152
// DEBUG Flag do not do this when connected to printer !!!
152
155
// #define DEBUG_OUTPUT_SPIFFS
153
156
// #define DEBUG_OUTPUT_SERIAL
154
157
// #define DEBUG_OUTPUT_TCP
158
+ // #define DEBUG_OUTPUT_SOCKET
155
159
156
160
// Sanity check
157
161
#ifndef SDCARD_FEATURE
162
166
163
167
#if defined(ASYNCWEBSERVER)
164
168
#define ESP_USE_ASYNC true
169
+ #error it no more supported
165
170
#else
166
171
#define ESP_USE_ASYNC false
167
172
#endif
@@ -210,6 +215,14 @@ using fs::File;
210
215
// NOT YET IMPLEMENTED!!! Keep it as TODO
211
216
// #define WEBHOST_SDCARD_FEATURE
212
217
218
+ #ifdef DEBUG_OUTPUT_SOCKET
219
+ extern void log_socket (const char *format, ...);
220
+ extern const char * pathToFileName (const char * path);
221
+ #define log_esp3d (format, ...) log_socket(" \n [ESP3D][%s:%u] %s(): " format " \n " , pathToFileName(__FILE__), __LINE__, __FUNCTION__, ##__VA_ARGS__)
222
+ #else
223
+ #define log_esp3d (format, ...)
224
+ #endif
225
+
213
226
#ifdef DEBUG_ESP3D
214
227
#ifdef DEBUG_OUTPUT_SPIFFS
215
228
#ifndef FS_NO_GLOBALS
@@ -290,54 +303,54 @@ typedef enum {
290
303
291
304
292
305
// flags
293
- #define AP_MODE 1
294
- #define CLIENT_MODE 2
295
- #define DHCP_MODE 1
296
- #define STATIC_IP_MODE 2
306
+ #define AP_MODE 1
307
+ #define CLIENT_MODE 2
308
+ #define DHCP_MODE 1
309
+ #define STATIC_IP_MODE 2
297
310
298
311
// position in EEPROM
299
312
// AP mode = 1; Station client mode = 2
300
- #define EP_WIFI_MODE 0 // 1 byte = flag
301
- #define EP_STA_SSID 1 // 33 bytes 32+1 = string ; warning does not support multibyte char like chinese
302
- #define EP_STA_PASSWORD 34 // 65 bytes 64 +1 = string ;warning does not support multibyte char like chinese
303
- #define EP_STA_IP_MODE 99 // 1 byte = flag
304
- #define EP_STA_IP_VALUE 100 // 4 bytes xxx.xxx.xxx.xxx
305
- #define EP_STA_MASK_VALUE 104 // 4 bytes xxx.xxx.xxx.xxx
306
- #define EP_STA_GATEWAY_VALUE 108 // 4 bytes xxx.xxx.xxx.xxx
307
- #define EP_BAUD_RATE 112 // 4 bytes = int
308
- #define EP_STA_PHY_MODE 116 // 1 byte = flag
309
- #define EP_SLEEP_MODE 117 // 1 byte = flag
310
- #define EP_CHANNEL 118 // 1 byte = flag
311
- #define EP_AUTH_TYPE 119 // 1 byte = flag
312
- #define EP_SSID_VISIBLE 120 // 1 byte = flag
313
- #define EP_WEB_PORT 121 // 4 bytes = int
314
- #define EP_DATA_PORT 125 // 4 bytes = int
315
- #define EP_OUTPUT_FLAG 129 // 1 bytes = flag
316
- #define EP_HOSTNAME 130 // 33 bytes 32+1 = string ; warning does not support multibyte char like chinese
317
- #define EP_DHT_INTERVAL 164 // 4 bytes = int
313
+ #define EP_WIFI_MODE 0 // 1 byte = flag
314
+ #define EP_STA_SSID 1 // 33 bytes 32+1 = string ; warning does not support multibyte char like chinese
315
+ #define EP_STA_PASSWORD 34 // 65 bytes 64 +1 = string ;warning does not support multibyte char like chinese
316
+ #define EP_STA_IP_MODE 99 // 1 byte = flag
317
+ #define EP_STA_IP_VALUE 100 // 4 bytes xxx.xxx.xxx.xxx
318
+ #define EP_STA_MASK_VALUE 104 // 4 bytes xxx.xxx.xxx.xxx
319
+ #define EP_STA_GATEWAY_VALUE 108 // 4 bytes xxx.xxx.xxx.xxx
320
+ #define EP_BAUD_RATE 112 // 4 bytes = int
321
+ #define EP_STA_PHY_MODE 116 // 1 byte = flag
322
+ #define EP_SLEEP_MODE 117 // 1 byte = flag
323
+ #define EP_CHANNEL 118 // 1 byte = flag
324
+ #define EP_AUTH_TYPE 119 // 1 byte = flag
325
+ #define EP_SSID_VISIBLE 120 // 1 byte = flag
326
+ #define EP_WEB_PORT 121 // 4 bytes = int
327
+ #define EP_DATA_PORT 125 // 4 bytes = int
328
+ #define EP_OUTPUT_FLAG 129 // 1 bytes = flag
329
+ #define EP_HOSTNAME 130 // 33 bytes 32+1 = string ; warning does not support multibyte char like chinese
330
+ #define EP_DHT_INTERVAL 164 // 4 bytes = int
318
331
#define ESP_NOTIFICATION_TYPE 168 // 1 byte = flag
319
332
#define ESP_AUTO_NOTIFICATION 170 // 1 bytes = flag
320
- #define EP_FREE_BYTE1 171 // 1 bytes = flag
321
- #define EP_FREE_INT3 172 // 4 bytes = int
322
- #define EP_ADMIN_PWD 176 // 21 bytes 20+1 = string ; warning does not support multibyte char like chinese
323
- #define EP_USER_PWD 197 // 21 bytes 20+1 = string ; warning does not support multibyte char like chinese
324
- #define EP_AP_SSID 218 // 33 bytes 32+1 = string ; warning does not support multibyte char like chinese
325
- #define EP_AP_PASSWORD 251 // 65 bytes 64 +1 = string ;warning does not support multibyte char like chinese
326
- #define EP_AP_IP_VALUE 316 // 4 bytes xxx.xxx.xxx.xxx
327
- #define EP_AP_MASK_VALUE 320 // 4 bytes xxx.xxx.xxx.xxx
328
- #define EP_AP_GATEWAY_VALUE 324 // 4 bytes xxx.xxx.xxx.xxx
329
- #define EP_AP_IP_MODE 329 // 1 byte = flag
330
- #define EP_AP_PHY_MODE 330 // 1 byte = flag
331
- #define EP_SD_SPEED_DIV 331 // 1 byte = flag
333
+ #define EP_FREE_BYTE1 171 // 1 bytes = flag
334
+ #define EP_FREE_INT3 172 // 4 bytes = int
335
+ #define EP_ADMIN_PWD 176 // 21 bytes 20+1 = string ; warning does not support multibyte char like chinese
336
+ #define EP_USER_PWD 197 // 21 bytes 20+1 = string ; warning does not support multibyte char like chinese
337
+ #define EP_AP_SSID 218 // 33 bytes 32+1 = string ; warning does not support multibyte char like chinese
338
+ #define EP_AP_PASSWORD 251 // 65 bytes 64 +1 = string ;warning does not support multibyte char like chinese
339
+ #define EP_AP_IP_VALUE 316 // 4 bytes xxx.xxx.xxx.xxx
340
+ #define EP_AP_MASK_VALUE 320 // 4 bytes xxx.xxx.xxx.xxx
341
+ #define EP_AP_GATEWAY_VALUE 324 // 4 bytes xxx.xxx.xxx.xxx
342
+ #define EP_AP_IP_MODE 329 // 1 byte = flag
343
+ #define EP_AP_PHY_MODE 330 // 1 byte = flag
344
+ #define EP_SD_SPEED_DIV 331 // 1 byte = flag
332
345
#define ESP_NOTIFICATION_TOKEN1 332 // 64 bytes 63+1 = string ; warning does not support multibyte char like chinese
333
346
#define ESP_NOTIFICATION_TOKEN2 396 // 64 bytes 63+1 = string ; warning does not support multibyte char like chinese
334
- #define EP_DHT_TYPE 460 // 1 bytes = flag
335
- #define EP_TARGET_FW 461 // 1 bytes = flag
347
+ #define EP_DHT_TYPE 460 // 1 bytes = flag
348
+ #define EP_TARGET_FW 461 // 1 bytes = flag
336
349
#define EP_TIMEZONE 462 // 1 bytes = flag
337
350
#define EP_TIME_ISDST 463 // 1 bytes = flag
338
- #define EP_TIME_SERVER1 464 // 129 bytes 128 +1 = string ; warning does not support multibyte char like chinese
339
- #define EP_TIME_SERVER2 593 // 129 bytes 128 +1 = string ; warning does not support multibyte char like chinese
340
- #define EP_TIME_SERVER3 722 // 129 bytes 128 +1 = string ; warning does not support multibyte char like chinese
351
+ #define EP_TIME_SERVER1 464 // 128 bytes 127 +1 = string ; warning does not support multibyte char like chinese
352
+ #define EP_TIME_SERVER2 593 // 128 bytes 127 +1 = string ; warning does not support multibyte char like chinese
353
+ #define EP_TIME_SERVER3 722 // 128 bytes 127 +1 = string ; warning does not support multibyte char like chinese
341
354
#define EP_IS_DIRECT_SD 850 // 1 bytes = flag
342
355
#define EP_PRIMARY_SD 851 // 1 bytes = flag
343
356
#define EP_SECONDARY_SD 852 // 1 bytes = flag
@@ -350,35 +363,35 @@ typedef enum {
350
363
#define LAST_EEPROM_ADDRESS 983
351
364
352
365
// default values
353
- #define DEFAULT_WIFI_MODE AP_MODE
354
- const char DEFAULT_AP_SSID [] PROGMEM = " ESP3D" ;
355
- const char DEFAULT_AP_PASSWORD [] PROGMEM = " 12345678" ;
356
- const char DEFAULT_STA_SSID [] PROGMEM = " ESP3D" ;
357
- const char DEFAULT_STA_PASSWORD [] PROGMEM = " 12345678" ;
358
- const byte DEFAULT_STA_IP_MODE = DHCP_MODE;
359
- const byte DEFAULT_AP_IP_MODE = STATIC_IP_MODE;
360
- const byte DEFAULT_IP_VALUE[] = {192 , 168 , 0 , 1 };
361
- const byte DEFAULT_MASK_VALUE[] = {255 , 255 , 255 , 0 };
362
- #define DEFAULT_GATEWAY_VALUE DEFAULT_IP_VALUE
363
- const long DEFAULT_BAUD_RATE = 115200 ;
364
- #define DEFAULT_PHY_MODE WIFI_PHY_MODE_11G
365
- #define DEFAULT_SLEEP_MODE WIFI_MODEM_SLEEP
366
- #define DEFAULT_CHANNEL 11
367
- #define DEFAULT_AUTH_TYPE AUTH_WPA_PSK
368
- #define DEFAULT_SSID_VISIBLE 1
369
- #define DEFAULT_MAX_CONNECTIONS 4
370
- #define DEFAULT_BEACON_INTERVAL 100
371
- const int DEFAULT_WEB_PORT = 80 ;
372
- const int DEFAULT_DATA_PORT = 8888 ;
373
- const char DEFAULT_ADMIN_PWD [] PROGMEM = " admin" ;
374
- const char DEFAULT_USER_PWD [] PROGMEM = " user" ;
375
- const char DEFAULT_ADMIN_LOGIN [] PROGMEM = " admin" ;
376
- const char DEFAULT_USER_LOGIN [] PROGMEM = " user" ;
377
- const char DEFAULT_TIME_SERVER1 [] PROGMEM = " 1.pool.ntp.org" ;
378
- const char DEFAULT_TIME_SERVER2 [] PROGMEM = " 2.pool.ntp.org" ;
379
- const char DEFAULT_TIME_SERVER3 [] PROGMEM = " 0.pool.ntp.org" ;
380
- #define DEFAULT_TIME_ZONE 0
381
- #define DEFAULT_TIME_DST 0
366
+ #define DEFAULT_WIFI_MODE AP_MODE
367
+ const char DEFAULT_AP_SSID [] PROGMEM = " ESP3D" ;
368
+ const char DEFAULT_AP_PASSWORD [] PROGMEM = " 12345678" ;
369
+ const char DEFAULT_STA_SSID [] PROGMEM = " ESP3D" ;
370
+ const char DEFAULT_STA_PASSWORD [] PROGMEM = " 12345678" ;
371
+ const byte DEFAULT_STA_IP_MODE = DHCP_MODE;
372
+ const byte DEFAULT_AP_IP_MODE = STATIC_IP_MODE;
373
+ const byte DEFAULT_IP_VALUE[] = {192 , 168 , 0 , 1 };
374
+ const byte DEFAULT_MASK_VALUE[] = {255 , 255 , 255 , 0 };
375
+ #define DEFAULT_GATEWAY_VALUE DEFAULT_IP_VALUE
376
+ const long DEFAULT_BAUD_RATE = 115200 ;
377
+ #define DEFAULT_PHY_MODE WIFI_PHY_MODE_11G
378
+ #define DEFAULT_SLEEP_MODE WIFI_MODEM_SLEEP
379
+ #define DEFAULT_CHANNEL 11
380
+ #define DEFAULT_AUTH_TYPE AUTH_WPA_PSK
381
+ #define DEFAULT_SSID_VISIBLE 1
382
+ #define DEFAULT_MAX_CONNECTIONS 4
383
+ #define DEFAULT_BEACON_INTERVAL 100
384
+ const int DEFAULT_WEB_PORT = 80 ;
385
+ const int DEFAULT_DATA_PORT = 8888 ;
386
+ const char DEFAULT_ADMIN_PWD [] PROGMEM = " admin" ;
387
+ const char DEFAULT_USER_PWD [] PROGMEM = " user" ;
388
+ const char DEFAULT_ADMIN_LOGIN [] PROGMEM = " admin" ;
389
+ const char DEFAULT_USER_LOGIN [] PROGMEM = " user" ;
390
+ const char DEFAULT_TIME_SERVER1 [] PROGMEM = " 1.pool.ntp.org" ;
391
+ const char DEFAULT_TIME_SERVER2 [] PROGMEM = " 2.pool.ntp.org" ;
392
+ const char DEFAULT_TIME_SERVER3 [] PROGMEM = " 0.pool.ntp.org" ;
393
+ #define DEFAULT_TIME_ZONE 0
394
+ #define DEFAULT_TIME_DST 0
382
395
#define DEFAULT_PRIMARY_SD 2
383
396
#define DEFAULT_SECONDARY_SD 1
384
397
#define DEFAULT_DIRECT_SD_CHECK 0
@@ -401,9 +414,9 @@ const int DEFAULT_DHT_INTERVAL = 30;
401
414
#define NOTIFICATION_ESP_ONLINE " Hi, %ESP_NAME% is now online at %ESP_IP%"
402
415
403
416
// Notifications
404
- #define ESP_PUSHOVER_NOTIFICATION 1
405
- #define ESP_EMAIL_NOTIFICATION 2
406
- #define ESP_LINE_NOTIFICATION 3
417
+ #define ESP_PUSHOVER_NOTIFICATION 1
418
+ #define ESP_EMAIL_NOTIFICATION 2
419
+ #define ESP_LINE_NOTIFICATION 3
407
420
408
421
#ifdef SDCARD_FEATURE
409
422
#define DEFAULT_IS_DIRECT_SD 1
@@ -473,29 +486,29 @@ const uint16_t Setting[][2] = {
473
486
#define FLAG_BLOCK_TCP 0x010
474
487
475
488
// values
476
- #define DEFAULT_MAX_WEB_PORT 65001
477
- #define DEFAULT_MIN_WEB_PORT 1
478
- #define DEFAULT_MAX_DATA_PORT 65001
479
- #define DEFAULT_MIN_DATA_PORT 1
489
+ #define DEFAULT_MAX_WEB_PORT 65001
490
+ #define DEFAULT_MIN_WEB_PORT 1
491
+ #define DEFAULT_MAX_DATA_PORT 65001
492
+ #define DEFAULT_MIN_DATA_PORT 1
480
493
481
494
#define MAX_TRY 2000
482
495
483
496
// sizes
484
- #define EEPROM_SIZE 1024 // max is 1024
485
- #define MAX_SSID_LENGTH 32
486
- #define MIN_SSID_LENGTH 1
487
- #define MAX_PASSWORD_LENGTH 64
497
+ #define EEPROM_SIZE 1024 // max is 1024
498
+ #define MAX_SSID_LENGTH 32
499
+ #define MIN_SSID_LENGTH 1
500
+ #define MAX_PASSWORD_LENGTH 64
488
501
// min size of password is 0 or upper than 8 char
489
502
// so let set min is 0
490
- #define MIN_PASSWORD_LENGTH 0
491
- #define MAX_LOCAL_PASSWORD_LENGTH 16
492
- #define MIN_LOCAL_PASSWORD_LENGTH 1
493
- #define MAX_DATA_LENGTH 128
494
- #define MIN_DATA_LENGTH 0
495
- #define IP_LENGTH 4
496
- #define INTEGER_LENGTH 4
497
- #define MAX_HOSTNAME_LENGTH 32
498
- #define MIN_HOSTNAME_LENGTH 1
503
+ #define MIN_PASSWORD_LENGTH 0
504
+ #define MAX_LOCAL_PASSWORD_LENGTH 16
505
+ #define MIN_LOCAL_PASSWORD_LENGTH 1
506
+ #define MAX_DATA_LENGTH 127
507
+ #define MIN_DATA_LENGTH 0
508
+ #define IP_LENGTH 4
509
+ #define INTEGER_LENGTH 4
510
+ #define MAX_HOSTNAME_LENGTH 32
511
+ #define MIN_HOSTNAME_LENGTH 1
499
512
#define WL_MAC_ADDR_LENGTH 6
500
513
501
514
// EEPROM Version
0 commit comments