 |
ESP3D
3.0
Firmware for ESP boards connected to 3D Printer
|
Go to the documentation of this file.
20 #include "../../include/esp3d_config.h"
21 #include "../commands.h"
22 #include "../esp3doutput.h"
23 #include "../settings_esp3d.h"
24 #include "../../modules/serial/serial_service.h"
25 #include "../../modules/authentication/authentication_service.h"
30 #ifdef AUTHENTICATION_FEATURE
32 output->
printERROR(
"Wrong authentication!", 401);
37 #endif //AUTHENTICATION_FEATURE
40 output->
printLN (
"{\"Settings\":[");
42 output->print (
"{\"F\":\"printer\",\"P\":\"");
44 output->print (
"\",\"T\":\"I\",\"V\":\"");
46 output->print (
"\",\"H\":\"Baud Rate\",\"O\":[");
49 for (uint8_t i = 0 ; i < count ; i++) {
53 output->printf(
"{\"%ld\":\"%ld\"}", bl[i], bl[i]);
57 #if defined (WIFI_FEATURE) || defined (ETH_FEATURE) || defined(BT_FEATURE)
59 output->print (
",{\"F\":\"network\",\"P\":\"");
61 output->print (
"\",\"T\":\"S\",\"V\":\"");
63 output->print (
"\",\"H\":\"Hostname\" ,\"S\":\"");
65 output->print (
"\", \"M\":\"");
68 #endif //WIFI_FEATURE || ETH_FEATURE || BT_FEATURE
70 output->print (
",{\"F\":\"network\",\"P\":\"");
72 output->print (
"\",\"T\":\"B\",\"V\":\"");
74 output->print (
"\",\"H\":\"Radio mode\",\"O\":[{\"None\":\"0\"}");
76 output->print (
",{\"STA\":\"1\"},{\"AP\":\"2\"}");
78 #ifdef BLUETOOTH_FEATURE
79 output->print (
",{\"BT\":\"3\"}");
80 #endif //BLUETOOTH_FEATURE
82 output->print (
",{\"ETH-STA\":\"4\"}");
87 output->print (
",{\"F\":\"network\",\"P\":\"");
89 output->print (
"\",\"T\":\"S\",\"V\":\"");
91 output->print (
"\",\"S\":\"");
93 output->print (
"\",\"H\":\"Station SSID\",\"M\":\"");
98 output->print (
",{\"F\":\"network\",\"P\":\"");
100 output->print (
"\",\"T\":\"S\",\"V\":\"");
102 output->print (
"\",\"S\":\"");
104 output->print (
"\",\"H\":\"Station Password\",\"M\":\"");
120 #endif //WIFI_FEATURE
121 #if defined(WIFI_FEATURE) || defined(ETH_FEATURE)
123 output->print (
",{\"F\":\"network\",\"P\":\"");
125 output->print (
"\",\"T\":\"B\",\"V\":\"");
127 output->
printLN (
"\",\"H\":\"Station IP Mode\",\"O\":[{\"DHCP\":\"0\"},{\"Static\":\"1\"}]}");
130 output->print (
",{\"F\":\"network\",\"P\":\"");
132 output->print (
"\",\"T\":\"A\",\"V\":\"");
134 output->
printLN (
"\",\"H\":\"Station Static IP\"}");
137 output->print (
",{\"F\":\"network\",\"P\":\"");
139 output->print (
"\",\"T\":\"A\",\"V\":\"");
141 output->
printLN (
"\",\"H\":\"Station Static Gateway\"}");
144 output->print (
",{\"F\":\"network\",\"P\":\"");
146 output->print (
"\",\"T\":\"A\",\"V\":\"");
148 output->
printLN (
"\",\"H\":\"Station Static Mask\"}");
149 #endif //WIFI_FEATURE || ETH_FEATURE
150 #if defined(WIFI_FEATURE)
152 output->print (
",{\"F\":\"network\",\"P\":\"");
154 output->print (
"\",\"T\":\"S\",\"V\":\"");
156 output->print (
"\",\"S\":\"");
158 output->print (
"\",\"H\":\"AP SSID\",\"M\":\"");
163 output->print (
",{\"F\":\"network\",\"P\":\"");
165 output->print (
"\",\"T\":\"S\",\"V\":\"");
167 output->print (
"\",\"S\":\"");
169 output->print (
"\",\"H\":\"AP Password\",\"M\":\"");
174 output->print (
",{\"F\":\"network\",\"P\":\"");
176 output->print (
"\",\"T\":\"A\",\"V\":\"");
178 output->
printLN (
"\",\"H\":\"AP Static IP\"}");
181 output->print (
",{\"F\":\"network\",\"P\":\"");
183 output->print (
"\",\"T\":\"B\",\"V\":\"");
185 output->print (
"\",\"H\":\"AP Channel\",\"O\":[");
190 output->printf(
"{\"%d\":\"%d\"}", i, i);
193 #endif //WIFI_FEATURE
197 output->print (
",{\"F\":\"network\",\"P\":\"");
199 output->print (
"\",\"T\":\"B\",\"V\":\"");
201 output->
printLN (
"\",\"H\":\"Enable HTTP\",\"O\":[{\"No\":\"0\"},{\"Yes\":\"1\"}]}");
204 output->print (
",{\"F\":\"network\",\"P\":\"");
206 output->print (
"\",\"T\":\"I\",\"V\":\"");
208 output->print (
"\",\"H\":\"HTTP Port\",\"S\":\"");
210 output->print (
"\",\"M\":\"");
213 #endif //HTTP_FEATURE
215 #ifdef TELNET_FEATURE
217 output->print (
",{\"F\":\"network\",\"P\":\"");
219 output->print (
"\",\"T\":\"B\",\"V\":\"");
221 output->
printLN (
"\",\"H\":\"Enable Telnet\",\"O\":[{\"No\":\"0\"},{\"Yes\":\"1\"}]}");
224 output->print (
",{\"F\":\"network\",\"P\":\"");
226 output->print (
"\",\"T\":\"I\",\"V\":\"");
228 output->print (
"\",\"H\":\"Telnet Port\",\"S\":\"");
230 output->print (
"\",\"M\":\"");
237 output->print (
",{\"F\":\"network\",\"P\":\"");
239 output->print (
"\",\"T\":\"B\",\"V\":\"");
241 output->
printLN (
"\",\"H\":\"Enable Ftp\",\"O\":[{\"No\":\"0\"},{\"Yes\":\"1\"}]}");
244 output->print (
",{\"F\":\"network\",\"P\":\"");
246 output->print (
"\",\"T\":\"I\",\"V\":\"");
248 output->print (
"\",\"H\":\"Ftp Control Port\",\"S\":\"");
250 output->print (
"\",\"M\":\"");
254 output->print (
",{\"F\":\"network\",\"P\":\"");
256 output->print (
"\",\"T\":\"I\",\"V\":\"");
258 output->print (
"\",\"H\":\"FTP Active Port\",\"S\":\"");
260 output->print (
"\",\"M\":\"");
264 output->print (
",{\"F\":\"network\",\"P\":\"");
266 output->print (
"\",\"T\":\"I\",\"V\":\"");
268 output->print (
"\",\"H\":\"FTP Passive Port\",\"S\":\"");
270 output->print (
"\",\"M\":\"");
277 output->print (
",{\"F\":\"network\",\"P\":\"");
279 output->print (
"\",\"T\":\"I\",\"V\":\"");
281 output->print (
"\",\"H\":\"Camera Port\",\"S\":\"");
283 output->print (
"\",\"M\":\"");
286 #endif //CAMERA_DEVICE
288 #ifdef AUTHENTICATION_FEATURE
290 output->print (
",{\"F\":\"network\",\"P\":\"");
292 output->print (
"\",\"T\":\"S\",\"V\":\"");
294 output->print (
"\",\"S\":\"");
296 output->print (
"\",\"H\":\"Admin Password\",\"M\":\"");
301 output->print (
",{\"F\":\"network\",\"P\":\"");
303 output->print (
"\",\"T\":\"S\",\"V\":\"");
305 output->print (
"\",\"S\":\"");
307 output->print (
"\",\"H\":\"User Password\",\"M\":\"");
310 #endif //AUTHENTICATION_FEATURE
312 #ifdef TIMESTAMP_FEATURE
315 output->print (
",{\"F\":\"network\",\"P\":\"");
317 output->print(
"\",\"T\":\"B\",\"V\":\"");
319 output->
printLN(
"\",\"H\":\"Internet Time\",\"O\":[{\"No\":\"0\"},{\"Yes\":\"1\"}]}");
322 output->print (
",{\"F\":\"network\",\"P\":\"");
324 output->print(
"\",\"T\":\"B\",\"V\":\"");
326 output->print(
"\",\"H\":\"Time Zone\",\"O\":[");
331 output->printf(
"{\"%d\":\"%d\"}", i, i);
336 output->print (
",{\"F\":\"network\",\"P\":\"");
338 output->print(
"\",\"T\":\"B\",\"V\":\"");
340 output->
printLN(
"\",\"H\":\"Day Saving Time\",\"O\":[{\"No\":\"0\"},{\"Yes\":\"1\"}]}");
343 output->print (
",{\"F\":\"network\",\"P\":\"");
345 output->print(
"\",\"T\":\"S\",\"V\":\"");
347 output->print (
"\",\"S\":\"");
349 output->print (
"\",\"H\":\"Time Server 1\",\"M\":\"");
354 output->print (
",{\"F\":\"network\",\"P\":\"");
356 output->print(
"\",\"T\":\"S\",\"V\":\"");
358 output->print (
"\",\"S\":\"");
360 output->print (
"\",\"H\":\"Time Server 2\",\"M\":\"");
365 output->print (
",{\"F\":\"network\",\"P\":\"");
367 output->print(
"\",\"T\":\"S\",\"V\":\"");
369 output->print (
"\",\"S\":\"");
371 output->print (
"\",\"H\":\"Time Server 3\",\"M\":\"");
374 #endif //TIMESTAMP_FEATURE
375 #ifdef NOTIFICATION_FEATURE
377 output->print (
",{\"F\":\"network\",\"P\":\"");
379 output->print(
"\",\"T\":\"B\",\"V\":\"");
381 output->
printLN(
"\",\"H\":\"Auto notification\",\"O\":[{\"No\":\"0\"},{\"Yes\":\"1\"}]}");
383 output->print (
",{\"F\":\"network\",\"P\":\"");
385 output->print (
"\",\"T\":\"B\",\"V\":\"");
387 output->print (
"\",\"H\":\"Notification\",\"O\":[{\"None\":\"0\"},{\"Pushover\":\"");
389 output->print (
"\"},{\"Email\":\"");
391 output->print (
"\"},{\"Line\":\"");
395 output->print (
",{\"F\":\"network\",\"P\":\"");
397 output->print (
"\",\"T\":\"S\",\"V\":\"");
399 output->print (
"\",\"S\":\"");
401 output->print (
"\",\"H\":\"Token 1\",\"M\":\"");
405 output->print (
",{\"F\":\"network\",\"P\":\"");
407 output->print (
"\",\"T\":\"S\",\"V\":\"");
409 output->print (
"\",\"S\":\"");
411 output->print (
"\",\"H\":\"Token 2\",\"M\":\"");
415 output->print (
",{\"F\":\"network\",\"P\":\"");
417 output->print (
"\",\"T\":\"S\",\"V\":\"");
419 output->print (
"\",\"S\":\"");
421 output->print (
"\",\"H\":\"Notifications Settings\",\"M\":\"");
424 #endif //NOTIFICATION_FEATURE
427 output->print (
",{\"F\":\"printer\",\"P\":\"");
429 output->print (
"\",\"T\":\"B\",\"V\":\"");
431 output->
printLN (
"\",\"H\":\"Buzzer\",\"O\":[{\"No\":\"0\"},{\"Yes\":\"1\"}]}");
432 #endif //BUZZER_DEVICE
434 output->print (
",{\"F\":\"printer\",\"P\":\"");
436 output->print (
"\",\"T\":\"B\",\"V\":\"");
438 output->print (
"\",\"H\":\"Target FW\",\"O\":[{\"Repetier\":\"");
440 output->print (
"\"},{\"Repetier for Davinci\":\"");
442 output->print (
"\"},{\"Marlin\":\"");
444 output->print (
"\"},{\"Marlin Kimbra\":\"");
446 output->print (
"\"},{\"Smoothieware\":\"");
448 output->print (
"\"},{\"Grbl\":\"");
449 output->print (
GRBL);
450 output->print (
"\"},{\"Unknown\":\"");
455 output->print (
",{\"F\":\"printer\",\"P\":\"");
457 output->print (
"\",\"T\":\"B\",\"V\":\"");
459 output->print (
"\",\"H\":\"DHT Type\",\"O\":[{\"None\":\"0\"},{\"DHT11\":\"");
461 output->print (
"\"},{\"DHT22\":\"");
466 output->print (
",{\"F\":\"printer\",\"P\":\"");
468 output->print (
"\",\"T\":\"I\",\"V\":\"");
470 output->print (
"\",\"H\":\"DHT interval (millisec)\",\"S\":\"");
472 output->print (
"\",\"M\":\"");
477 output->print (
",{\"F\":\"printer\",\"P\":\"");
479 output->print (
"\",\"T\":\"I\",\"V\":\"");
481 output->print (
"\",\"H\":\"Start delay\",\"S\":\"");
483 output->print (
"\",\"M\":\"");
487 output->print (
",{\"F\":\"printer\",\"P\":\"");
489 output->print (
"\",\"T\":\"F\",\"V\":\"");
492 #ifdef DISPLAY_DEVICE
494 #endif //DISPLAY_DEVICE
496 #ifdef WS_DATA_FEATURE
498 #endif //WS_DATA_FEATURE
499 #ifdef BLUETOOTH_FEATURE
501 #endif //BLUETOOTH_FEATURE
502 #ifdef TELNET_FEATURE
504 #endif //TELNET_FEATURE
508 output->print(
",{\"F\":\"printer\",\"P\":\"");
510 output->print(
"\",\"T\":\"B\",\"V\":\"");
513 output->
printLN(
"\",\"H\":\"SD Device\",\"O\":[{\"None\":\"0\"},{\"Direct\":\"1\"},{\"Shared\":\"2\"}]}");
515 output->print(
",{\"F\":\"printer\",\"P\":\"");
517 output->print(
"\",\"T\":\"B\",\"V\":\"");
519 output->print(
"\",\"H\":\"SD speed divider\",\"O\":[{\"1\":\"1\"},{\"2\":\"2\"},{\"3\":\"3\"},{\"4\":\"4\"},{\"6\":\"6\"},{\"8\":\"8\"},{\"16\":\"16\"},{\"32\":\"32\"}]}");
#define ESP_FTP_DATA_ACTIVE_PORT
bool ESP400(const char *cmd_params, level_authenticate_type auth_level, ESP3DOutput *output)
#define ESP_PRINTER_LCD_CLIENT
#define ESP_EMAIL_NOTIFICATION
static const char * read_string(int pos, bool *haserror=NULL)
#define ESP_LINE_NOTIFICATION
size_t printLN(const char *s)
#define ESP_NOTIFICATION_TYPE
static uint32_t get_max_int32_value(int pos)
const long * get_baudratelist(uint8_t *count)
#define ESP_AUTO_NOTIFICATION
#define ESP_NOTIFICATION_TOKEN1
#define ESP_INTERNET_TIME
#define ESP_WEBSOCKET_CLIENT
#define ESP_NOTIFICATION_SETTINGS
static uint8_t get_min_string_size(int pos)
#define ESP_FTP_CTRL_PORT
SerialService serial_service
#define ESP_SERIAL_CLIENT
size_t printERROR(const char *s, int code_error=200)
static uint32_t get_min_int32_value(int pos)
#define ESP_PUSHOVER_NOTIFICATION
static uint8_t get_max_byte(int pos)
static uint32_t read_uint32(int pos, bool *haserror=NULL)
static uint8_t get_max_string_size(int pos)
#define ESP_SCREEN_CLIENT
#define ESP_STA_GATEWAY_VALUE
static uint8_t read_byte(int pos, bool *haserror=NULL)
#define ESP_STA_MASK_VALUE
static uint8_t get_min_byte(int pos)
#define ESP_SD_DEVICE_TYPE
#define ESP_FTP_DATA_PASSIVE_PORT
#define ESP_NOTIFICATION_TOKEN2
#define ESP_TELNET_CLIENT
static String read_IP_String(int pos, bool *haserror=NULL)