From 3d424cd2e22b90ae6383ae17c310b7957c7597fc Mon Sep 17 00:00:00 2001 From: snow Date: Tue, 30 Jan 2024 11:54:07 +0800 Subject: [PATCH] ledc intr is ok, can display much line --- build/.bin_timestamp | 2 +- build/.ninja_deps | Bin 676880 -> 734024 bytes build/.ninja_log | 770 +- build/CMakeFiles/git-data/head-ref | 2 +- build/bootloader/.ninja_log | 200 +- build/build.ninja | 2 +- build/compile_commands.json | 2 +- .../CMakeFiles/__idf_driver.dir/ledc.c.obj | Bin 272296 -> 271128 bytes build/esp-idf/driver/libdriver.a | Bin 6458552 -> 6457384 bytes .../esp_app_desc.c.obj | Bin 11360 -> 11360 bytes .../esp_app_format/libesp_app_format.a | Bin 11672 -> 11672 bytes .../src/esp_lcd_panel_io.c.obj | Bin 18840 -> 18252 bytes build/esp-idf/esp_lcd/libesp_lcd.a | Bin 668524 -> 667936 bytes .../__idf_hal.dir/ledc_hal_iram.c.obj | Bin 26804 -> 28180 bytes build/esp-idf/hal/libhal.a | Bin 2113408 -> 2114826 bytes .../esp_lcd_panel_io_i80_hub75.c.obj | Bin 145076 -> 142272 bytes .../i80_controller_example_main.c.obj | Bin 30080 -> 30976 bytes build/esp-idf/main/libmain.a | Bin 175746 -> 173838 bytes build/i80_controller.bin | Bin 228112 -> 227760 bytes build/i80_controller.elf | Bin 3411980 -> 3411340 bytes build/i80_controller.map | 10581 ++++++++-------- build/log/idf_py_stderr_output_10052 | 0 build/log/idf_py_stderr_output_10076 | 0 build/log/idf_py_stderr_output_10088 | 0 build/log/idf_py_stderr_output_10100 | 0 build/log/idf_py_stderr_output_10108 | 0 build/log/idf_py_stderr_output_10132 | 9 + build/log/idf_py_stderr_output_10268 | 9 + build/log/idf_py_stderr_output_10288 | 0 build/log/idf_py_stderr_output_10292 | 0 build/log/idf_py_stderr_output_10412 | 0 build/log/idf_py_stderr_output_10464 | 0 build/log/idf_py_stderr_output_10492 | 0 build/log/idf_py_stderr_output_10528 | 0 build/log/idf_py_stderr_output_10560 | 0 build/log/idf_py_stderr_output_10588 | 0 build/log/idf_py_stderr_output_10620 | 0 build/log/idf_py_stderr_output_10632 | 0 build/log/idf_py_stderr_output_10672 | 9 + build/log/idf_py_stderr_output_10676 | 9 + build/log/idf_py_stderr_output_10688 | 9 + build/log/idf_py_stderr_output_10752 | 0 build/log/idf_py_stderr_output_10896 | 125 + build/log/idf_py_stderr_output_11140 | 0 build/log/idf_py_stderr_output_11152 | 9 + build/log/idf_py_stderr_output_11176 | 0 build/log/idf_py_stderr_output_11220 | 0 build/log/idf_py_stderr_output_11320 | 0 build/log/idf_py_stderr_output_11352 | 0 build/log/idf_py_stderr_output_11384 | 9 + build/log/idf_py_stderr_output_11424 | 10 + build/log/idf_py_stderr_output_11440 | 0 build/log/idf_py_stderr_output_11588 | 9 + build/log/idf_py_stderr_output_11620 | 0 build/log/idf_py_stderr_output_11648 | 0 build/log/idf_py_stderr_output_11852 | 0 build/log/idf_py_stderr_output_11868 | 0 build/log/idf_py_stderr_output_11900 | 0 build/log/idf_py_stderr_output_11976 | 0 build/log/idf_py_stderr_output_12028 | 0 build/log/idf_py_stderr_output_12064 | 0 build/log/idf_py_stderr_output_12184 | 9 + build/log/idf_py_stderr_output_12240 | 9 + build/log/idf_py_stderr_output_12464 | 0 build/log/idf_py_stderr_output_12496 | 53 + build/log/idf_py_stderr_output_12540 | 0 build/log/idf_py_stderr_output_1280 | 0 build/log/idf_py_stderr_output_12968 | 0 build/log/idf_py_stderr_output_13152 | 0 build/log/idf_py_stderr_output_13176 | 9 + build/log/idf_py_stderr_output_13232 | 9 + build/log/idf_py_stderr_output_13368 | 0 build/log/idf_py_stderr_output_13392 | 9 + build/log/idf_py_stderr_output_13396 | 0 build/log/idf_py_stderr_output_13400 | 0 build/log/idf_py_stderr_output_13456 | 0 build/log/idf_py_stderr_output_13460 | 0 build/log/idf_py_stderr_output_13508 | 0 build/log/idf_py_stderr_output_13516 | 0 build/log/idf_py_stderr_output_13528 | 9 + build/log/idf_py_stderr_output_13596 | 365 + build/log/idf_py_stderr_output_1360 | 0 build/log/idf_py_stderr_output_13676 | 9 + build/log/idf_py_stderr_output_13708 | 9 + build/log/idf_py_stderr_output_1376 | 0 build/log/idf_py_stderr_output_13824 | 0 build/log/idf_py_stderr_output_13840 | 0 build/log/idf_py_stderr_output_13872 | 9 + build/log/idf_py_stderr_output_13912 | 0 build/log/idf_py_stderr_output_13920 | 9 + build/log/idf_py_stderr_output_14036 | 9 + build/log/idf_py_stderr_output_14040 | 0 build/log/idf_py_stderr_output_14152 | 9 + build/log/idf_py_stderr_output_14160 | 9 + build/log/idf_py_stderr_output_14316 | 0 build/log/idf_py_stderr_output_14408 | 9 - build/log/idf_py_stderr_output_14512 | 0 build/log/idf_py_stderr_output_14528 | 9 + build/log/idf_py_stderr_output_14600 | 9 + build/log/idf_py_stderr_output_14640 | 0 build/log/idf_py_stderr_output_14700 | 0 build/log/idf_py_stderr_output_14720 | 0 build/log/idf_py_stderr_output_14744 | 0 build/log/idf_py_stderr_output_14800 | 9 + build/log/idf_py_stderr_output_14820 | 0 build/log/idf_py_stderr_output_14884 | 0 build/log/idf_py_stderr_output_14908 | 0 build/log/idf_py_stderr_output_14928 | 10 + build/log/idf_py_stderr_output_14960 | 0 build/log/idf_py_stderr_output_15016 | 0 build/log/idf_py_stderr_output_15056 | 0 build/log/idf_py_stderr_output_15064 | 0 build/log/idf_py_stderr_output_15072 | 0 build/log/idf_py_stderr_output_15080 | 0 build/log/idf_py_stderr_output_15136 | 0 build/log/idf_py_stderr_output_15188 | 4 +- build/log/idf_py_stderr_output_15192 | 0 build/log/idf_py_stderr_output_15204 | 0 build/log/idf_py_stderr_output_15276 | 0 build/log/idf_py_stderr_output_15280 | 0 build/log/idf_py_stderr_output_15312 | 0 build/log/idf_py_stderr_output_1532 | 9 + build/log/idf_py_stderr_output_15320 | 0 build/log/idf_py_stderr_output_15344 | 0 build/log/idf_py_stderr_output_15356 | 0 build/log/idf_py_stderr_output_1608 | 9 + build/log/idf_py_stderr_output_1664 | 0 build/log/idf_py_stderr_output_1748 | 0 build/log/idf_py_stderr_output_1836 | 0 build/log/idf_py_stderr_output_1892 | 0 build/log/idf_py_stderr_output_1912 | 9 + build/log/idf_py_stderr_output_1988 | 0 build/log/idf_py_stderr_output_2024 | 0 build/log/idf_py_stderr_output_2104 | 0 build/log/idf_py_stderr_output_2124 | 0 build/log/idf_py_stderr_output_2204 | 9 + build/log/idf_py_stderr_output_2268 | 0 build/log/idf_py_stderr_output_2392 | 0 build/log/idf_py_stderr_output_244 | 9 + build/log/idf_py_stderr_output_2440 | 0 build/log/idf_py_stderr_output_2484 | 617 + build/log/idf_py_stderr_output_2536 | 9 + build/log/idf_py_stderr_output_2548 | 0 build/log/idf_py_stderr_output_2628 | 0 build/log/idf_py_stderr_output_2728 | 0 build/log/idf_py_stderr_output_2864 | 0 build/log/idf_py_stderr_output_3172 | 0 build/log/idf_py_stderr_output_3192 | 9 + build/log/idf_py_stderr_output_3200 | 9 + build/log/idf_py_stderr_output_3288 | 0 build/log/idf_py_stderr_output_3420 | 9 + build/log/idf_py_stderr_output_3564 | 0 build/log/idf_py_stderr_output_3580 | 0 build/log/idf_py_stderr_output_3648 | 0 build/log/idf_py_stderr_output_3696 | 9 + build/log/idf_py_stderr_output_3780 | 0 build/log/idf_py_stderr_output_3972 | 9 - build/log/idf_py_stderr_output_4004 | 0 build/log/idf_py_stderr_output_4068 | 0 build/log/idf_py_stderr_output_4300 | 0 build/log/idf_py_stderr_output_4340 | 0 build/log/idf_py_stderr_output_4436 | 0 build/log/idf_py_stderr_output_4476 | 0 build/log/idf_py_stderr_output_4604 | 0 build/log/idf_py_stderr_output_4612 | 0 build/log/idf_py_stderr_output_4768 | 0 build/log/idf_py_stderr_output_5076 | 0 build/log/idf_py_stderr_output_5096 | 0 build/log/idf_py_stderr_output_5112 | 0 build/log/idf_py_stderr_output_5280 | 0 build/log/idf_py_stderr_output_5348 | 0 build/log/idf_py_stderr_output_5380 | 9 + build/log/idf_py_stderr_output_5672 | 9 + build/log/idf_py_stderr_output_5684 | 0 build/log/idf_py_stderr_output_5728 | 9 + build/log/idf_py_stderr_output_5812 | 9 + build/log/idf_py_stderr_output_5828 | 9 + build/log/idf_py_stderr_output_584 | 0 build/log/idf_py_stderr_output_5844 | 9 + build/log/idf_py_stderr_output_5868 | 0 build/log/idf_py_stderr_output_6064 | 0 build/log/idf_py_stderr_output_620 | 0 build/log/idf_py_stderr_output_6208 | 0 build/log/idf_py_stderr_output_6256 | 0 build/log/idf_py_stderr_output_6284 | 9 + build/log/idf_py_stderr_output_632 | 0 build/log/idf_py_stderr_output_6324 | 9 + build/log/idf_py_stderr_output_6340 | 0 build/log/idf_py_stderr_output_6428 | 0 build/log/idf_py_stderr_output_648 | 0 build/log/idf_py_stderr_output_6644 | 0 build/log/idf_py_stderr_output_6672 | 9 + build/log/idf_py_stderr_output_6768 | 9 + build/log/idf_py_stderr_output_6920 | 0 build/log/idf_py_stderr_output_6948 | 9 + build/log/idf_py_stderr_output_6976 | 0 build/log/idf_py_stderr_output_7076 | 0 build/log/idf_py_stderr_output_7116 | 0 build/log/idf_py_stderr_output_7144 | 9 + build/log/idf_py_stderr_output_7204 | 0 build/log/idf_py_stderr_output_728 | 0 build/log/idf_py_stderr_output_7280 | 0 build/log/idf_py_stderr_output_7316 | 0 build/log/idf_py_stderr_output_7360 | 57 + build/log/idf_py_stderr_output_7364 | 0 build/log/idf_py_stderr_output_7440 | 0 build/log/idf_py_stderr_output_7480 | 0 build/log/idf_py_stderr_output_7508 | 0 build/log/idf_py_stderr_output_7700 | 0 build/log/idf_py_stderr_output_7772 | 0 build/log/idf_py_stderr_output_7880 | 0 build/log/idf_py_stderr_output_7980 | 0 build/log/idf_py_stderr_output_8008 | 0 build/log/idf_py_stderr_output_8052 | 0 build/log/idf_py_stderr_output_8076 | 0 build/log/idf_py_stderr_output_8080 | 0 build/log/idf_py_stderr_output_8116 | 9 + build/log/idf_py_stderr_output_824 | 0 build/log/idf_py_stderr_output_8252 | 0 build/log/idf_py_stderr_output_8300 | 0 build/log/idf_py_stderr_output_8316 | 0 build/log/idf_py_stderr_output_8380 | 9 + build/log/idf_py_stderr_output_8560 | 9 + build/log/idf_py_stderr_output_8652 | 9 + build/log/idf_py_stderr_output_8780 | 0 build/log/idf_py_stderr_output_8904 | 0 build/log/idf_py_stderr_output_892 | 0 build/log/idf_py_stderr_output_8968 | 0 build/log/idf_py_stderr_output_9096 | 0 build/log/idf_py_stderr_output_9120 | 243 + build/log/idf_py_stderr_output_9132 | 0 build/log/idf_py_stderr_output_9160 | 9 + build/log/idf_py_stderr_output_9304 | 0 build/log/idf_py_stderr_output_9356 | 9 + build/log/idf_py_stderr_output_9424 | 9 + build/log/idf_py_stderr_output_9484 | 0 build/log/idf_py_stderr_output_9568 | 0 build/log/idf_py_stderr_output_9596 | 9 + build/log/idf_py_stderr_output_9636 | 0 build/log/idf_py_stderr_output_9672 | 0 build/log/idf_py_stderr_output_9696 | 0 build/log/idf_py_stderr_output_9784 | 0 build/log/idf_py_stderr_output_9788 | 0 build/log/idf_py_stderr_output_9956 | 9 + build/log/idf_py_stderr_output_996 | 9 + build/log/idf_py_stdout_output_10052 | 61 + build/log/idf_py_stdout_output_10076 | 75 + build/log/idf_py_stdout_output_10088 | 57 + build/log/idf_py_stdout_output_10100 | 35 + build/log/idf_py_stdout_output_10108 | 0 build/log/idf_py_stdout_output_10132 | 66 + build/log/idf_py_stdout_output_10268 | 66 + build/log/idf_py_stdout_output_10288 | 35 + build/log/idf_py_stdout_output_10292 | 45 + build/log/idf_py_stdout_output_10412 | 45 + build/log/idf_py_stdout_output_10464 | 35 + build/log/idf_py_stdout_output_10492 | 45 + build/log/idf_py_stdout_output_10528 | 45 + build/log/idf_py_stdout_output_10560 | 37 + build/log/idf_py_stdout_output_10588 | 45 + build/log/idf_py_stdout_output_10620 | 45 + build/log/idf_py_stdout_output_10632 | 45 + build/log/idf_py_stdout_output_10672 | 66 + build/log/idf_py_stdout_output_10676 | 66 + build/log/idf_py_stdout_output_10688 | 84 + build/log/idf_py_stdout_output_10752 | 75 + build/log/idf_py_stdout_output_10896 | 437 + build/log/idf_py_stdout_output_11140 | 45 + build/log/idf_py_stdout_output_11152 | 66 + build/log/idf_py_stdout_output_11176 | 35 + build/log/idf_py_stdout_output_11220 | 35 + build/log/idf_py_stdout_output_11320 | 35 + build/log/idf_py_stdout_output_11352 | 36 + build/log/idf_py_stdout_output_11384 | 66 + build/log/idf_py_stdout_output_11424 | 66 + build/log/idf_py_stdout_output_11440 | 35 + build/log/idf_py_stdout_output_11588 | 86 + build/log/idf_py_stdout_output_11620 | 75 + build/log/idf_py_stdout_output_11648 | 45 + build/log/idf_py_stdout_output_11852 | 35 + build/log/idf_py_stdout_output_11868 | 37 + build/log/idf_py_stdout_output_11900 | 45 + build/log/idf_py_stdout_output_11976 | 45 + build/log/idf_py_stdout_output_12028 | 45 + build/log/idf_py_stdout_output_12064 | 45 + build/log/idf_py_stdout_output_12184 | 67 + build/log/idf_py_stdout_output_12240 | 84 + build/log/idf_py_stdout_output_12464 | 45 + build/log/idf_py_stdout_output_12496 | 110 + build/log/idf_py_stdout_output_12540 | 45 + build/log/idf_py_stdout_output_1280 | 35 + build/log/idf_py_stdout_output_12968 | 37 + build/log/idf_py_stdout_output_13152 | 45 + build/log/idf_py_stdout_output_13176 | 314 + build/log/idf_py_stdout_output_13232 | 67 + build/log/idf_py_stdout_output_13368 | 35 + build/log/idf_py_stdout_output_13392 | 66 + build/log/idf_py_stdout_output_13396 | 45 + build/log/idf_py_stdout_output_13400 | 45 + build/log/idf_py_stdout_output_13456 | 58 + build/log/idf_py_stdout_output_13460 | 0 build/log/idf_py_stdout_output_13508 | 45 + build/log/idf_py_stdout_output_13516 | 37 + build/log/idf_py_stdout_output_13528 | 66 + build/log/idf_py_stdout_output_13596 | 1270 ++ build/log/idf_py_stdout_output_1360 | 75 + build/log/idf_py_stdout_output_13676 | 66 + build/log/idf_py_stdout_output_13708 | 66 + build/log/idf_py_stdout_output_1376 | 45 + build/log/idf_py_stdout_output_13824 | 45 + build/log/idf_py_stdout_output_13840 | 35 + build/log/idf_py_stdout_output_13872 | 77 + build/log/idf_py_stdout_output_13912 | 45 + build/log/idf_py_stdout_output_13920 | 66 + build/log/idf_py_stdout_output_14036 | 66 + build/log/idf_py_stdout_output_14040 | 45 + build/log/idf_py_stdout_output_14152 | 66 + build/log/idf_py_stdout_output_14160 | 81 + build/log/idf_py_stdout_output_14316 | 37 + build/log/idf_py_stdout_output_14388 | 54 +- build/log/idf_py_stdout_output_14408 | 479 +- build/log/idf_py_stdout_output_14512 | 45 + build/log/idf_py_stdout_output_14528 | 66 + build/log/idf_py_stdout_output_14600 | 66 + build/log/idf_py_stdout_output_14640 | 35 + build/log/idf_py_stdout_output_14700 | 45 + build/log/idf_py_stdout_output_14720 | 45 + build/log/idf_py_stdout_output_14744 | 37 + build/log/idf_py_stdout_output_14800 | 66 + build/log/idf_py_stdout_output_14820 | 45 + build/log/idf_py_stdout_output_14884 | 35 + build/log/idf_py_stdout_output_14908 | 35 + build/log/idf_py_stdout_output_14928 | 67 + build/log/idf_py_stdout_output_14960 | 45 + build/log/idf_py_stdout_output_15016 | 45 + build/log/idf_py_stdout_output_15056 | 35 + build/log/idf_py_stdout_output_15064 | 35 + build/log/idf_py_stdout_output_15072 | 45 + build/log/idf_py_stdout_output_15080 | 35 + build/log/idf_py_stdout_output_15136 | 75 + build/log/idf_py_stdout_output_15188 | 210 +- build/log/idf_py_stdout_output_15192 | 45 + build/log/idf_py_stdout_output_15204 | 35 + build/log/idf_py_stdout_output_15276 | 35 + build/log/idf_py_stdout_output_15280 | 35 + build/log/idf_py_stdout_output_15312 | 45 + build/log/idf_py_stdout_output_1532 | 88 + build/log/idf_py_stdout_output_15320 | 45 + build/log/idf_py_stdout_output_15344 | 45 + build/log/idf_py_stdout_output_15356 | 45 + build/log/idf_py_stdout_output_1608 | 66 + build/log/idf_py_stdout_output_1664 | 26 + build/log/idf_py_stdout_output_1748 | 37 + build/log/idf_py_stdout_output_1836 | 45 + build/log/idf_py_stdout_output_1892 | 45 + build/log/idf_py_stdout_output_1912 | 66 + build/log/idf_py_stdout_output_1988 | 58 + build/log/idf_py_stdout_output_2024 | 58 + build/log/idf_py_stdout_output_2104 | 35 + build/log/idf_py_stdout_output_2124 | 75 + build/log/idf_py_stdout_output_2204 | 66 + build/log/idf_py_stdout_output_2268 | 45 + build/log/idf_py_stdout_output_2304 | 73 +- build/log/idf_py_stdout_output_2392 | 58 + build/log/idf_py_stdout_output_244 | 123 + build/log/idf_py_stdout_output_2440 | 45 + build/log/idf_py_stdout_output_2484 | 1448 +++ build/log/idf_py_stdout_output_2536 | 66 + build/log/idf_py_stdout_output_2548 | 45 + build/log/idf_py_stdout_output_2628 | 45 + build/log/idf_py_stdout_output_2728 | 45 + build/log/idf_py_stdout_output_2864 | 35 + build/log/idf_py_stdout_output_3172 | 37 + build/log/idf_py_stdout_output_3192 | 79 + build/log/idf_py_stdout_output_3200 | 67 + build/log/idf_py_stdout_output_3288 | 45 + build/log/idf_py_stdout_output_3420 | 108 + build/log/idf_py_stdout_output_3564 | 75 + build/log/idf_py_stdout_output_3580 | 0 build/log/idf_py_stdout_output_3648 | 45 + build/log/idf_py_stdout_output_3696 | 66 + build/log/idf_py_stdout_output_3780 | 58 + build/log/idf_py_stdout_output_3972 | 299 +- build/log/idf_py_stdout_output_4004 | 45 + build/log/idf_py_stdout_output_4068 | 39 + build/log/idf_py_stdout_output_4300 | 75 + build/log/idf_py_stdout_output_4340 | 35 + build/log/idf_py_stdout_output_4436 | 37 + build/log/idf_py_stdout_output_4476 | 45 + build/log/idf_py_stdout_output_4604 | 98 + build/log/idf_py_stdout_output_4612 | 35 + build/log/idf_py_stdout_output_4768 | 45 + build/log/idf_py_stdout_output_5076 | 58 + build/log/idf_py_stdout_output_5096 | 35 + build/log/idf_py_stdout_output_5100 | 96 +- build/log/idf_py_stdout_output_5112 | 37 + build/log/idf_py_stdout_output_5280 | 98 + build/log/idf_py_stdout_output_5348 | 35 + build/log/idf_py_stdout_output_5380 | 66 + build/log/idf_py_stdout_output_5672 | 66 + build/log/idf_py_stdout_output_5684 | 35 + build/log/idf_py_stdout_output_5728 | 66 + build/log/idf_py_stdout_output_5812 | 66 + build/log/idf_py_stdout_output_5828 | 66 + build/log/idf_py_stdout_output_584 | 38 + build/log/idf_py_stdout_output_5844 | 76 + build/log/idf_py_stdout_output_5868 | 75 + build/log/idf_py_stdout_output_6064 | 35 + build/log/idf_py_stdout_output_620 | 45 + build/log/idf_py_stdout_output_6208 | 45 + build/log/idf_py_stdout_output_6256 | 45 + build/log/idf_py_stdout_output_6284 | 66 + build/log/idf_py_stdout_output_632 | 35 + build/log/idf_py_stdout_output_6324 | 110 + build/log/idf_py_stdout_output_6340 | 35 + build/log/idf_py_stdout_output_6428 | 45 + build/log/idf_py_stdout_output_648 | 45 + build/log/idf_py_stdout_output_6644 | 45 + build/log/idf_py_stdout_output_6672 | 77 + build/log/idf_py_stdout_output_6768 | 66 + build/log/idf_py_stdout_output_6920 | 35 + build/log/idf_py_stdout_output_6948 | 66 + build/log/idf_py_stdout_output_6976 | 45 + build/log/idf_py_stdout_output_7076 | 35 + build/log/idf_py_stdout_output_7116 | 45 + build/log/idf_py_stdout_output_7144 | 66 + build/log/idf_py_stdout_output_7204 | 45 + build/log/idf_py_stdout_output_728 | 6506 ++++++++++ build/log/idf_py_stdout_output_7280 | 45 + build/log/idf_py_stdout_output_7316 | 35 + build/log/idf_py_stdout_output_7360 | 107 + build/log/idf_py_stdout_output_7364 | 35 + build/log/idf_py_stdout_output_7440 | 75 + build/log/idf_py_stdout_output_7480 | 45 + build/log/idf_py_stdout_output_7508 | 45 + build/log/idf_py_stdout_output_7700 | 37 + build/log/idf_py_stdout_output_7772 | 35 + build/log/idf_py_stdout_output_7880 | 83 + build/log/idf_py_stdout_output_7980 | 45 + build/log/idf_py_stdout_output_8008 | 75 + build/log/idf_py_stdout_output_8052 | 75 + build/log/idf_py_stdout_output_8060 | 83 +- build/log/idf_py_stdout_output_8076 | 0 build/log/idf_py_stdout_output_8080 | 45 + build/log/idf_py_stdout_output_8116 | 67 + build/log/idf_py_stdout_output_824 | 35 + build/log/idf_py_stdout_output_8252 | 58 + build/log/idf_py_stdout_output_8300 | 35 + build/log/idf_py_stdout_output_8316 | 35 + build/log/idf_py_stdout_output_8380 | 66 + build/log/idf_py_stdout_output_8560 | 66 + build/log/idf_py_stdout_output_8652 | 66 + build/log/idf_py_stdout_output_8780 | 75 + build/log/idf_py_stdout_output_8904 | 35 + build/log/idf_py_stdout_output_892 | 45 + build/log/idf_py_stdout_output_8968 | 75 + build/log/idf_py_stdout_output_9096 | 45 + build/log/idf_py_stdout_output_9120 | 586 + build/log/idf_py_stdout_output_9132 | 75 + build/log/idf_py_stdout_output_9160 | 66 + build/log/idf_py_stdout_output_9304 | 45 + build/log/idf_py_stdout_output_9356 | 66 + build/log/idf_py_stdout_output_9424 | 66 + build/log/idf_py_stdout_output_9484 | 37 + build/log/idf_py_stdout_output_9568 | 0 build/log/idf_py_stdout_output_9596 | 109 + build/log/idf_py_stdout_output_9636 | 45 + build/log/idf_py_stdout_output_9672 | 45 + build/log/idf_py_stdout_output_9696 | 35 + build/log/idf_py_stdout_output_9784 | 45 + build/log/idf_py_stdout_output_9788 | 35 + build/log/idf_py_stdout_output_9956 | 107 + build/log/idf_py_stdout_output_996 | 66 + build/project_description.json | 2 +- main/esp_lcd_panel_io_i80_hub75.c | 25 +- main/i80_controller_example_main.c | 64 +- 476 files changed, 30314 insertions(+), 6507 deletions(-) create mode 100644 build/log/idf_py_stderr_output_10052 create mode 100644 build/log/idf_py_stderr_output_10076 create mode 100644 build/log/idf_py_stderr_output_10088 create mode 100644 build/log/idf_py_stderr_output_10100 create mode 100644 build/log/idf_py_stderr_output_10108 create mode 100644 build/log/idf_py_stderr_output_10132 create mode 100644 build/log/idf_py_stderr_output_10268 create mode 100644 build/log/idf_py_stderr_output_10288 create mode 100644 build/log/idf_py_stderr_output_10292 create mode 100644 build/log/idf_py_stderr_output_10412 create mode 100644 build/log/idf_py_stderr_output_10464 create mode 100644 build/log/idf_py_stderr_output_10492 create mode 100644 build/log/idf_py_stderr_output_10528 create mode 100644 build/log/idf_py_stderr_output_10560 create mode 100644 build/log/idf_py_stderr_output_10588 create mode 100644 build/log/idf_py_stderr_output_10620 create mode 100644 build/log/idf_py_stderr_output_10632 create mode 100644 build/log/idf_py_stderr_output_10672 create mode 100644 build/log/idf_py_stderr_output_10676 create mode 100644 build/log/idf_py_stderr_output_10688 create mode 100644 build/log/idf_py_stderr_output_10752 create mode 100644 build/log/idf_py_stderr_output_10896 create mode 100644 build/log/idf_py_stderr_output_11140 create mode 100644 build/log/idf_py_stderr_output_11152 create mode 100644 build/log/idf_py_stderr_output_11176 create mode 100644 build/log/idf_py_stderr_output_11220 create mode 100644 build/log/idf_py_stderr_output_11320 create mode 100644 build/log/idf_py_stderr_output_11352 create mode 100644 build/log/idf_py_stderr_output_11384 create mode 100644 build/log/idf_py_stderr_output_11424 create mode 100644 build/log/idf_py_stderr_output_11440 create mode 100644 build/log/idf_py_stderr_output_11588 create mode 100644 build/log/idf_py_stderr_output_11620 create mode 100644 build/log/idf_py_stderr_output_11648 create mode 100644 build/log/idf_py_stderr_output_11852 create mode 100644 build/log/idf_py_stderr_output_11868 create mode 100644 build/log/idf_py_stderr_output_11900 create mode 100644 build/log/idf_py_stderr_output_11976 create mode 100644 build/log/idf_py_stderr_output_12028 create mode 100644 build/log/idf_py_stderr_output_12064 create mode 100644 build/log/idf_py_stderr_output_12184 create mode 100644 build/log/idf_py_stderr_output_12240 create mode 100644 build/log/idf_py_stderr_output_12464 create mode 100644 build/log/idf_py_stderr_output_12496 create mode 100644 build/log/idf_py_stderr_output_12540 create mode 100644 build/log/idf_py_stderr_output_1280 create mode 100644 build/log/idf_py_stderr_output_12968 create mode 100644 build/log/idf_py_stderr_output_13152 create mode 100644 build/log/idf_py_stderr_output_13176 create mode 100644 build/log/idf_py_stderr_output_13232 create mode 100644 build/log/idf_py_stderr_output_13368 create mode 100644 build/log/idf_py_stderr_output_13392 create mode 100644 build/log/idf_py_stderr_output_13396 create mode 100644 build/log/idf_py_stderr_output_13400 create mode 100644 build/log/idf_py_stderr_output_13456 create mode 100644 build/log/idf_py_stderr_output_13460 create mode 100644 build/log/idf_py_stderr_output_13508 create mode 100644 build/log/idf_py_stderr_output_13516 create mode 100644 build/log/idf_py_stderr_output_13528 create mode 100644 build/log/idf_py_stderr_output_13596 create mode 100644 build/log/idf_py_stderr_output_1360 create mode 100644 build/log/idf_py_stderr_output_13676 create mode 100644 build/log/idf_py_stderr_output_13708 create mode 100644 build/log/idf_py_stderr_output_1376 create mode 100644 build/log/idf_py_stderr_output_13824 create mode 100644 build/log/idf_py_stderr_output_13840 create mode 100644 build/log/idf_py_stderr_output_13872 create mode 100644 build/log/idf_py_stderr_output_13912 create mode 100644 build/log/idf_py_stderr_output_13920 create mode 100644 build/log/idf_py_stderr_output_14036 create mode 100644 build/log/idf_py_stderr_output_14040 create mode 100644 build/log/idf_py_stderr_output_14152 create mode 100644 build/log/idf_py_stderr_output_14160 create mode 100644 build/log/idf_py_stderr_output_14316 create mode 100644 build/log/idf_py_stderr_output_14512 create mode 100644 build/log/idf_py_stderr_output_14528 create mode 100644 build/log/idf_py_stderr_output_14600 create mode 100644 build/log/idf_py_stderr_output_14640 create mode 100644 build/log/idf_py_stderr_output_14700 create mode 100644 build/log/idf_py_stderr_output_14720 create mode 100644 build/log/idf_py_stderr_output_14744 create mode 100644 build/log/idf_py_stderr_output_14800 create mode 100644 build/log/idf_py_stderr_output_14820 create mode 100644 build/log/idf_py_stderr_output_14884 create mode 100644 build/log/idf_py_stderr_output_14908 create mode 100644 build/log/idf_py_stderr_output_14928 create mode 100644 build/log/idf_py_stderr_output_14960 create mode 100644 build/log/idf_py_stderr_output_15016 create mode 100644 build/log/idf_py_stderr_output_15056 create mode 100644 build/log/idf_py_stderr_output_15064 create mode 100644 build/log/idf_py_stderr_output_15072 create mode 100644 build/log/idf_py_stderr_output_15080 create mode 100644 build/log/idf_py_stderr_output_15136 create mode 100644 build/log/idf_py_stderr_output_15192 create mode 100644 build/log/idf_py_stderr_output_15204 create mode 100644 build/log/idf_py_stderr_output_15276 create mode 100644 build/log/idf_py_stderr_output_15280 create mode 100644 build/log/idf_py_stderr_output_15312 create mode 100644 build/log/idf_py_stderr_output_1532 create mode 100644 build/log/idf_py_stderr_output_15320 create mode 100644 build/log/idf_py_stderr_output_15344 create mode 100644 build/log/idf_py_stderr_output_15356 create mode 100644 build/log/idf_py_stderr_output_1608 create mode 100644 build/log/idf_py_stderr_output_1664 create mode 100644 build/log/idf_py_stderr_output_1748 create mode 100644 build/log/idf_py_stderr_output_1836 create mode 100644 build/log/idf_py_stderr_output_1892 create mode 100644 build/log/idf_py_stderr_output_1912 create mode 100644 build/log/idf_py_stderr_output_1988 create mode 100644 build/log/idf_py_stderr_output_2024 create mode 100644 build/log/idf_py_stderr_output_2104 create mode 100644 build/log/idf_py_stderr_output_2124 create mode 100644 build/log/idf_py_stderr_output_2204 create mode 100644 build/log/idf_py_stderr_output_2268 create mode 100644 build/log/idf_py_stderr_output_2392 create mode 100644 build/log/idf_py_stderr_output_244 create mode 100644 build/log/idf_py_stderr_output_2440 create mode 100644 build/log/idf_py_stderr_output_2484 create mode 100644 build/log/idf_py_stderr_output_2536 create mode 100644 build/log/idf_py_stderr_output_2548 create mode 100644 build/log/idf_py_stderr_output_2628 create mode 100644 build/log/idf_py_stderr_output_2728 create mode 100644 build/log/idf_py_stderr_output_2864 create mode 100644 build/log/idf_py_stderr_output_3172 create mode 100644 build/log/idf_py_stderr_output_3192 create mode 100644 build/log/idf_py_stderr_output_3200 create mode 100644 build/log/idf_py_stderr_output_3288 create mode 100644 build/log/idf_py_stderr_output_3420 create mode 100644 build/log/idf_py_stderr_output_3564 create mode 100644 build/log/idf_py_stderr_output_3580 create mode 100644 build/log/idf_py_stderr_output_3648 create mode 100644 build/log/idf_py_stderr_output_3696 create mode 100644 build/log/idf_py_stderr_output_3780 create mode 100644 build/log/idf_py_stderr_output_4004 create mode 100644 build/log/idf_py_stderr_output_4068 create mode 100644 build/log/idf_py_stderr_output_4300 create mode 100644 build/log/idf_py_stderr_output_4340 create mode 100644 build/log/idf_py_stderr_output_4436 create mode 100644 build/log/idf_py_stderr_output_4476 create mode 100644 build/log/idf_py_stderr_output_4604 create mode 100644 build/log/idf_py_stderr_output_4612 create mode 100644 build/log/idf_py_stderr_output_4768 create mode 100644 build/log/idf_py_stderr_output_5076 create mode 100644 build/log/idf_py_stderr_output_5096 create mode 100644 build/log/idf_py_stderr_output_5112 create mode 100644 build/log/idf_py_stderr_output_5280 create mode 100644 build/log/idf_py_stderr_output_5348 create mode 100644 build/log/idf_py_stderr_output_5380 create mode 100644 build/log/idf_py_stderr_output_5672 create mode 100644 build/log/idf_py_stderr_output_5684 create mode 100644 build/log/idf_py_stderr_output_5728 create mode 100644 build/log/idf_py_stderr_output_5812 create mode 100644 build/log/idf_py_stderr_output_5828 create mode 100644 build/log/idf_py_stderr_output_584 create mode 100644 build/log/idf_py_stderr_output_5844 create mode 100644 build/log/idf_py_stderr_output_5868 create mode 100644 build/log/idf_py_stderr_output_6064 create mode 100644 build/log/idf_py_stderr_output_620 create mode 100644 build/log/idf_py_stderr_output_6208 create mode 100644 build/log/idf_py_stderr_output_6256 create mode 100644 build/log/idf_py_stderr_output_6284 create mode 100644 build/log/idf_py_stderr_output_632 create mode 100644 build/log/idf_py_stderr_output_6324 create mode 100644 build/log/idf_py_stderr_output_6340 create mode 100644 build/log/idf_py_stderr_output_6428 create mode 100644 build/log/idf_py_stderr_output_648 create mode 100644 build/log/idf_py_stderr_output_6644 create mode 100644 build/log/idf_py_stderr_output_6672 create mode 100644 build/log/idf_py_stderr_output_6768 create mode 100644 build/log/idf_py_stderr_output_6920 create mode 100644 build/log/idf_py_stderr_output_6948 create mode 100644 build/log/idf_py_stderr_output_6976 create mode 100644 build/log/idf_py_stderr_output_7076 create mode 100644 build/log/idf_py_stderr_output_7116 create mode 100644 build/log/idf_py_stderr_output_7144 create mode 100644 build/log/idf_py_stderr_output_7204 create mode 100644 build/log/idf_py_stderr_output_728 create mode 100644 build/log/idf_py_stderr_output_7280 create mode 100644 build/log/idf_py_stderr_output_7316 create mode 100644 build/log/idf_py_stderr_output_7360 create mode 100644 build/log/idf_py_stderr_output_7364 create mode 100644 build/log/idf_py_stderr_output_7440 create mode 100644 build/log/idf_py_stderr_output_7480 create mode 100644 build/log/idf_py_stderr_output_7508 create mode 100644 build/log/idf_py_stderr_output_7700 create mode 100644 build/log/idf_py_stderr_output_7772 create mode 100644 build/log/idf_py_stderr_output_7880 create mode 100644 build/log/idf_py_stderr_output_7980 create mode 100644 build/log/idf_py_stderr_output_8008 create mode 100644 build/log/idf_py_stderr_output_8052 create mode 100644 build/log/idf_py_stderr_output_8076 create mode 100644 build/log/idf_py_stderr_output_8080 create mode 100644 build/log/idf_py_stderr_output_8116 create mode 100644 build/log/idf_py_stderr_output_824 create mode 100644 build/log/idf_py_stderr_output_8252 create mode 100644 build/log/idf_py_stderr_output_8300 create mode 100644 build/log/idf_py_stderr_output_8316 create mode 100644 build/log/idf_py_stderr_output_8380 create mode 100644 build/log/idf_py_stderr_output_8560 create mode 100644 build/log/idf_py_stderr_output_8652 create mode 100644 build/log/idf_py_stderr_output_8780 create mode 100644 build/log/idf_py_stderr_output_8904 create mode 100644 build/log/idf_py_stderr_output_892 create mode 100644 build/log/idf_py_stderr_output_8968 create mode 100644 build/log/idf_py_stderr_output_9096 create mode 100644 build/log/idf_py_stderr_output_9120 create mode 100644 build/log/idf_py_stderr_output_9132 create mode 100644 build/log/idf_py_stderr_output_9160 create mode 100644 build/log/idf_py_stderr_output_9304 create mode 100644 build/log/idf_py_stderr_output_9356 create mode 100644 build/log/idf_py_stderr_output_9424 create mode 100644 build/log/idf_py_stderr_output_9484 create mode 100644 build/log/idf_py_stderr_output_9568 create mode 100644 build/log/idf_py_stderr_output_9596 create mode 100644 build/log/idf_py_stderr_output_9636 create mode 100644 build/log/idf_py_stderr_output_9672 create mode 100644 build/log/idf_py_stderr_output_9696 create mode 100644 build/log/idf_py_stderr_output_9784 create mode 100644 build/log/idf_py_stderr_output_9788 create mode 100644 build/log/idf_py_stderr_output_9956 create mode 100644 build/log/idf_py_stderr_output_996 create mode 100644 build/log/idf_py_stdout_output_10052 create mode 100644 build/log/idf_py_stdout_output_10076 create mode 100644 build/log/idf_py_stdout_output_10088 create mode 100644 build/log/idf_py_stdout_output_10100 create mode 100644 build/log/idf_py_stdout_output_10108 create mode 100644 build/log/idf_py_stdout_output_10132 create mode 100644 build/log/idf_py_stdout_output_10268 create mode 100644 build/log/idf_py_stdout_output_10288 create mode 100644 build/log/idf_py_stdout_output_10292 create mode 100644 build/log/idf_py_stdout_output_10412 create mode 100644 build/log/idf_py_stdout_output_10464 create mode 100644 build/log/idf_py_stdout_output_10492 create mode 100644 build/log/idf_py_stdout_output_10528 create mode 100644 build/log/idf_py_stdout_output_10560 create mode 100644 build/log/idf_py_stdout_output_10588 create mode 100644 build/log/idf_py_stdout_output_10620 create mode 100644 build/log/idf_py_stdout_output_10632 create mode 100644 build/log/idf_py_stdout_output_10672 create mode 100644 build/log/idf_py_stdout_output_10676 create mode 100644 build/log/idf_py_stdout_output_10688 create mode 100644 build/log/idf_py_stdout_output_10752 create mode 100644 build/log/idf_py_stdout_output_10896 create mode 100644 build/log/idf_py_stdout_output_11140 create mode 100644 build/log/idf_py_stdout_output_11152 create mode 100644 build/log/idf_py_stdout_output_11176 create mode 100644 build/log/idf_py_stdout_output_11220 create mode 100644 build/log/idf_py_stdout_output_11320 create mode 100644 build/log/idf_py_stdout_output_11352 create mode 100644 build/log/idf_py_stdout_output_11384 create mode 100644 build/log/idf_py_stdout_output_11424 create mode 100644 build/log/idf_py_stdout_output_11440 create mode 100644 build/log/idf_py_stdout_output_11588 create mode 100644 build/log/idf_py_stdout_output_11620 create mode 100644 build/log/idf_py_stdout_output_11648 create mode 100644 build/log/idf_py_stdout_output_11852 create mode 100644 build/log/idf_py_stdout_output_11868 create mode 100644 build/log/idf_py_stdout_output_11900 create mode 100644 build/log/idf_py_stdout_output_11976 create mode 100644 build/log/idf_py_stdout_output_12028 create mode 100644 build/log/idf_py_stdout_output_12064 create mode 100644 build/log/idf_py_stdout_output_12184 create mode 100644 build/log/idf_py_stdout_output_12240 create mode 100644 build/log/idf_py_stdout_output_12464 create mode 100644 build/log/idf_py_stdout_output_12496 create mode 100644 build/log/idf_py_stdout_output_12540 create mode 100644 build/log/idf_py_stdout_output_1280 create mode 100644 build/log/idf_py_stdout_output_12968 create mode 100644 build/log/idf_py_stdout_output_13152 create mode 100644 build/log/idf_py_stdout_output_13176 create mode 100644 build/log/idf_py_stdout_output_13232 create mode 100644 build/log/idf_py_stdout_output_13368 create mode 100644 build/log/idf_py_stdout_output_13392 create mode 100644 build/log/idf_py_stdout_output_13396 create mode 100644 build/log/idf_py_stdout_output_13400 create mode 100644 build/log/idf_py_stdout_output_13456 create mode 100644 build/log/idf_py_stdout_output_13460 create mode 100644 build/log/idf_py_stdout_output_13508 create mode 100644 build/log/idf_py_stdout_output_13516 create mode 100644 build/log/idf_py_stdout_output_13528 create mode 100644 build/log/idf_py_stdout_output_13596 create mode 100644 build/log/idf_py_stdout_output_1360 create mode 100644 build/log/idf_py_stdout_output_13676 create mode 100644 build/log/idf_py_stdout_output_13708 create mode 100644 build/log/idf_py_stdout_output_1376 create mode 100644 build/log/idf_py_stdout_output_13824 create mode 100644 build/log/idf_py_stdout_output_13840 create mode 100644 build/log/idf_py_stdout_output_13872 create mode 100644 build/log/idf_py_stdout_output_13912 create mode 100644 build/log/idf_py_stdout_output_13920 create mode 100644 build/log/idf_py_stdout_output_14036 create mode 100644 build/log/idf_py_stdout_output_14040 create mode 100644 build/log/idf_py_stdout_output_14152 create mode 100644 build/log/idf_py_stdout_output_14160 create mode 100644 build/log/idf_py_stdout_output_14316 create mode 100644 build/log/idf_py_stdout_output_14512 create mode 100644 build/log/idf_py_stdout_output_14528 create mode 100644 build/log/idf_py_stdout_output_14600 create mode 100644 build/log/idf_py_stdout_output_14640 create mode 100644 build/log/idf_py_stdout_output_14700 create mode 100644 build/log/idf_py_stdout_output_14720 create mode 100644 build/log/idf_py_stdout_output_14744 create mode 100644 build/log/idf_py_stdout_output_14800 create mode 100644 build/log/idf_py_stdout_output_14820 create mode 100644 build/log/idf_py_stdout_output_14884 create mode 100644 build/log/idf_py_stdout_output_14908 create mode 100644 build/log/idf_py_stdout_output_14928 create mode 100644 build/log/idf_py_stdout_output_14960 create mode 100644 build/log/idf_py_stdout_output_15016 create mode 100644 build/log/idf_py_stdout_output_15056 create mode 100644 build/log/idf_py_stdout_output_15064 create mode 100644 build/log/idf_py_stdout_output_15072 create mode 100644 build/log/idf_py_stdout_output_15080 create mode 100644 build/log/idf_py_stdout_output_15136 create mode 100644 build/log/idf_py_stdout_output_15192 create mode 100644 build/log/idf_py_stdout_output_15204 create mode 100644 build/log/idf_py_stdout_output_15276 create mode 100644 build/log/idf_py_stdout_output_15280 create mode 100644 build/log/idf_py_stdout_output_15312 create mode 100644 build/log/idf_py_stdout_output_1532 create mode 100644 build/log/idf_py_stdout_output_15320 create mode 100644 build/log/idf_py_stdout_output_15344 create mode 100644 build/log/idf_py_stdout_output_15356 create mode 100644 build/log/idf_py_stdout_output_1608 create mode 100644 build/log/idf_py_stdout_output_1664 create mode 100644 build/log/idf_py_stdout_output_1748 create mode 100644 build/log/idf_py_stdout_output_1836 create mode 100644 build/log/idf_py_stdout_output_1892 create mode 100644 build/log/idf_py_stdout_output_1912 create mode 100644 build/log/idf_py_stdout_output_1988 create mode 100644 build/log/idf_py_stdout_output_2024 create mode 100644 build/log/idf_py_stdout_output_2104 create mode 100644 build/log/idf_py_stdout_output_2124 create mode 100644 build/log/idf_py_stdout_output_2204 create mode 100644 build/log/idf_py_stdout_output_2268 create mode 100644 build/log/idf_py_stdout_output_2392 create mode 100644 build/log/idf_py_stdout_output_244 create mode 100644 build/log/idf_py_stdout_output_2440 create mode 100644 build/log/idf_py_stdout_output_2484 create mode 100644 build/log/idf_py_stdout_output_2536 create mode 100644 build/log/idf_py_stdout_output_2548 create mode 100644 build/log/idf_py_stdout_output_2628 create mode 100644 build/log/idf_py_stdout_output_2728 create mode 100644 build/log/idf_py_stdout_output_2864 create mode 100644 build/log/idf_py_stdout_output_3172 create mode 100644 build/log/idf_py_stdout_output_3192 create mode 100644 build/log/idf_py_stdout_output_3200 create mode 100644 build/log/idf_py_stdout_output_3288 create mode 100644 build/log/idf_py_stdout_output_3420 create mode 100644 build/log/idf_py_stdout_output_3564 create mode 100644 build/log/idf_py_stdout_output_3580 create mode 100644 build/log/idf_py_stdout_output_3648 create mode 100644 build/log/idf_py_stdout_output_3696 create mode 100644 build/log/idf_py_stdout_output_3780 create mode 100644 build/log/idf_py_stdout_output_4004 create mode 100644 build/log/idf_py_stdout_output_4068 create mode 100644 build/log/idf_py_stdout_output_4300 create mode 100644 build/log/idf_py_stdout_output_4340 create mode 100644 build/log/idf_py_stdout_output_4436 create mode 100644 build/log/idf_py_stdout_output_4476 create mode 100644 build/log/idf_py_stdout_output_4604 create mode 100644 build/log/idf_py_stdout_output_4612 create mode 100644 build/log/idf_py_stdout_output_4768 create mode 100644 build/log/idf_py_stdout_output_5076 create mode 100644 build/log/idf_py_stdout_output_5096 create mode 100644 build/log/idf_py_stdout_output_5112 create mode 100644 build/log/idf_py_stdout_output_5280 create mode 100644 build/log/idf_py_stdout_output_5348 create mode 100644 build/log/idf_py_stdout_output_5380 create mode 100644 build/log/idf_py_stdout_output_5672 create mode 100644 build/log/idf_py_stdout_output_5684 create mode 100644 build/log/idf_py_stdout_output_5728 create mode 100644 build/log/idf_py_stdout_output_5812 create mode 100644 build/log/idf_py_stdout_output_5828 create mode 100644 build/log/idf_py_stdout_output_584 create mode 100644 build/log/idf_py_stdout_output_5844 create mode 100644 build/log/idf_py_stdout_output_5868 create mode 100644 build/log/idf_py_stdout_output_6064 create mode 100644 build/log/idf_py_stdout_output_620 create mode 100644 build/log/idf_py_stdout_output_6208 create mode 100644 build/log/idf_py_stdout_output_6256 create mode 100644 build/log/idf_py_stdout_output_6284 create mode 100644 build/log/idf_py_stdout_output_632 create mode 100644 build/log/idf_py_stdout_output_6324 create mode 100644 build/log/idf_py_stdout_output_6340 create mode 100644 build/log/idf_py_stdout_output_6428 create mode 100644 build/log/idf_py_stdout_output_648 create mode 100644 build/log/idf_py_stdout_output_6644 create mode 100644 build/log/idf_py_stdout_output_6672 create mode 100644 build/log/idf_py_stdout_output_6768 create mode 100644 build/log/idf_py_stdout_output_6920 create mode 100644 build/log/idf_py_stdout_output_6948 create mode 100644 build/log/idf_py_stdout_output_6976 create mode 100644 build/log/idf_py_stdout_output_7076 create mode 100644 build/log/idf_py_stdout_output_7116 create mode 100644 build/log/idf_py_stdout_output_7144 create mode 100644 build/log/idf_py_stdout_output_7204 create mode 100644 build/log/idf_py_stdout_output_728 create mode 100644 build/log/idf_py_stdout_output_7280 create mode 100644 build/log/idf_py_stdout_output_7316 create mode 100644 build/log/idf_py_stdout_output_7360 create mode 100644 build/log/idf_py_stdout_output_7364 create mode 100644 build/log/idf_py_stdout_output_7440 create mode 100644 build/log/idf_py_stdout_output_7480 create mode 100644 build/log/idf_py_stdout_output_7508 create mode 100644 build/log/idf_py_stdout_output_7700 create mode 100644 build/log/idf_py_stdout_output_7772 create mode 100644 build/log/idf_py_stdout_output_7880 create mode 100644 build/log/idf_py_stdout_output_7980 create mode 100644 build/log/idf_py_stdout_output_8008 create mode 100644 build/log/idf_py_stdout_output_8052 create mode 100644 build/log/idf_py_stdout_output_8076 create mode 100644 build/log/idf_py_stdout_output_8080 create mode 100644 build/log/idf_py_stdout_output_8116 create mode 100644 build/log/idf_py_stdout_output_824 create mode 100644 build/log/idf_py_stdout_output_8252 create mode 100644 build/log/idf_py_stdout_output_8300 create mode 100644 build/log/idf_py_stdout_output_8316 create mode 100644 build/log/idf_py_stdout_output_8380 create mode 100644 build/log/idf_py_stdout_output_8560 create mode 100644 build/log/idf_py_stdout_output_8652 create mode 100644 build/log/idf_py_stdout_output_8780 create mode 100644 build/log/idf_py_stdout_output_8904 create mode 100644 build/log/idf_py_stdout_output_892 create mode 100644 build/log/idf_py_stdout_output_8968 create mode 100644 build/log/idf_py_stdout_output_9096 create mode 100644 build/log/idf_py_stdout_output_9120 create mode 100644 build/log/idf_py_stdout_output_9132 create mode 100644 build/log/idf_py_stdout_output_9160 create mode 100644 build/log/idf_py_stdout_output_9304 create mode 100644 build/log/idf_py_stdout_output_9356 create mode 100644 build/log/idf_py_stdout_output_9424 create mode 100644 build/log/idf_py_stdout_output_9484 create mode 100644 build/log/idf_py_stdout_output_9568 create mode 100644 build/log/idf_py_stdout_output_9596 create mode 100644 build/log/idf_py_stdout_output_9636 create mode 100644 build/log/idf_py_stdout_output_9672 create mode 100644 build/log/idf_py_stdout_output_9696 create mode 100644 build/log/idf_py_stdout_output_9784 create mode 100644 build/log/idf_py_stdout_output_9788 create mode 100644 build/log/idf_py_stdout_output_9956 create mode 100644 build/log/idf_py_stdout_output_996 diff --git a/build/.bin_timestamp b/build/.bin_timestamp index 2765a2a..e0cde20 100644 --- a/build/.bin_timestamp +++ b/build/.bin_timestamp @@ -1 +1 @@ -aa1392208324af24c4953e85011ab62a E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +92fd8f278a4510373767ba0cc47976da E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin diff --git a/build/.ninja_deps b/build/.ninja_deps index 1bee2017260226e7ac03b4678404eb133b7f153b..b761452c64de466ad235166e0e30608f902458db 100644 GIT binary patch delta 2045 zcmZwHeN4<@902gAJD2X~t~ZM7Wk{*W%StsVdO?e0Sj(2QM6oPoNj1f(pDS-kvR|n- zi-=Q~y7Z!VCTfa`Wkq(yFitB|7V+!qvFH0+|9-x&&-485GK%b6{=WU>_+wLFd`{sEp}%EbwY&v zlRmM5Z@$zzo*>h6LnBDS9Zf>3*?_jA5z;}j`xHV|&m4y*hnF!Puk>1&jITn6|I=Le zt1sV~p4PXMau5Wi?<&1Zj>nygWif1EYFBI(rrUb4;r*qmUj~Yq8npXb8Y(yq^qbYz zTpJV#%CO<4-}UyfMqCQs;Kms~y2oi6t3S__YX$95?p%{3Xwtc+iCxo+4G&+gxWL-f zaP1u_+f=BSgs9uXWf-(?hS$56w~`IO2X;MWeB-M}#-LRU$)Gk6xX9s}cffdIwfPu#Y zuCoF7ox~k{QNT5efWXgO3pel*mU3zh^HXiPmPB3g$A(|YB&Y90DR~AL&%r7H?O~2?4NK-JS-Z)wR0>K#S;RD}bvF=e__i z|105_lT%WsR$#*ynrEEststNH3G1It?U8d=xZ|s;ACYRzk;075trEsz(^`cdO&6byM$f`@OV>k zC4hm^BMU0Y5=#Zz4L}q|KLNl;wSp?Lr1f;jF#w`Pv=V?kZ=&YHt5!nS8z>yaw=CA>HWS{i8F^y!kH{baw22h=nl{MbPsWwVzb84Qho=pA+X^G9% delta 29 kcmX@{OlQIh&4w1n7N!>F7M2#)7Pc1l7LFFqEnEU20I3`auK)l5 diff --git a/build/.ninja_log b/build/.ninja_log index e3a3f69..f8d4cd0 100644 --- a/build/.ninja_log +++ b/build/.ninja_log @@ -8,14 +8,14 @@ 26 707 7281918804950201 partition_table/partition-table.bin 6e73aa3d139776e1 3825 4417 7281918846825222 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/hmac_drbg.c.obj d206379a42d58dda 102516 104026 7281919841812384 esp-idf/esp_lcd/CMakeFiles/__idf_esp_lcd.dir/src/esp_lcd_panel_io_spi.c.obj 1cf1a8bf32f3f082 -33630 42843 7281919148543936 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32s3/esp_ds.c.obj 3deed8f0c12c8c6 5502 5988 7281918862606446 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/poly1305.c.obj 53bf4d1e07b869be +33630 42843 7281919148543936 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32s3/esp_ds.c.obj 3deed8f0c12c8c6 34188 36037 7281919161200204 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32s3/esp_memprot.c.obj e30fbc73ed7af811 31 105 7281918804169017 esp-idf/esp_system/ld/memory.ld 8d6468385d786718 1 23409 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/menuconfig 92d1c24db92536e 29472 30310 7281919102606431 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/adc_periph.c.obj 36fba5eee0bd1a08 9707 10723 7281918909637710 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/E_/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/port/esp_ds/esp_rsa_sign_alt.c.obj c7a0b963562bff4a -2 9462 7282241857285976 build.ninja db3b686ef54d40f +12 12084 7282787966843209 build.ninja db3b686ef54d40f 87210 87917 7281919681616298 esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32s3/esp_efuse_utility.c.obj cdf0dc941e41488b 5942 6906 7281918871668963 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/psa_crypto_ecp.c.obj f22c15ceb5674527 21647 22362 7281919026200184 esp-idf/esp_system/CMakeFiles/__idf_esp_system.dir/port/soc/esp32s3/cache_err_int.c.obj 95861be29f36a4e2 @@ -100,7 +100,7 @@ 4671 5502 7281918857762725 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/oid.c.obj 94835f069a93ddbe 88600 90537 7281919701460029 esp-idf/driver/CMakeFiles/__idf_driver.dir/gpio/gpio.c.obj 6f90981c1f0de6ec 3943 7343 7281918875575207 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/md.c.obj 4c7a8d49b5bea11b -46 332 7282142078318803 esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj 6cb276c3fc7e59a1 +53 1801 7282787985905679 esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj 2e873515419de859 91694 93041 7281919732913840 esp-idf/driver/CMakeFiles/__idf_driver.dir/mcpwm/mcpwm_oper.c.obj 66eb54829de2b508 2305 2712 7281918829793970 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/ecjpake.c.obj 161d1a8e6418f6c4 111641 113524 7281919932567228 esp-idf/json/CMakeFiles/__idf_json.dir/cJSON/cJSON.c.obj 656fcb569f067203 @@ -167,7 +167,7 @@ 6907 7804 7281918880731457 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/psa_crypto_rsa.c.obj 323db33cbc3e2047 7137 8000 7281918882762693 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/psa_util.c.obj 8a35357cb4372b0a 23701 25057 7281919043231442 esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_sys.c.obj f496cf011ad8344f -1078 5329 7282187184165537 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +696 4454 7282851937826783 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 13949 15462 7281918957137703 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_utility.c.obj 677ee5da08c4d6ee 25891 26591 7281919068231418 esp-idf/hal/CMakeFiles/__idf_hal.dir/sha_hal.c.obj 12a59fcbff8e8879 7514 8105 7281918883700220 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/psa_its_file.c.obj d09f0a2f632868bd @@ -179,7 +179,7 @@ 7019 8514 7281918877293950 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/psa_crypto_se.c.obj 8f2909f7c435e681 99990 100884 7281919809651761 esp-idf/console/CMakeFiles/__idf_console.dir/argtable3/arg_file.c.obj 1c42909a3a884416 7971 8593 7281918888700217 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/sha1.c.obj 112b4217f126c226 -36 233 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 97407 98463 7281919787011370 esp-idf/mbedtls/CMakeFiles/__idf_mbedtls.dir/esp_crt_bundle/esp_crt_bundle.c.obj ecbe39e3ebc9a89 8105 8665 7281918889325209 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/sha512.c.obj 5e50b1eaff8d46a8 8262 8766 7281918889950187 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedcrypto.dir/timing.c.obj 54861d64d88d9a1 @@ -232,7 +232,7 @@ 10417 11167 7281918914168958 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedx509.dir/x509_crl.c.obj c3003c1e37c47307 30317 30863 7281919110262665 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/ledc_periph.c.obj ab850b7fb9e51f57 10550 11247 7281918915106450 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedx509.dir/x509_create.c.obj 563e228821a437a5 -46 411 7281987857767109 esp-idf/esp_lcd/CMakeFiles/__idf_esp_lcd.dir/src/esp_lcd_panel_io.c.obj ab5f4767228ab50d +43 372 7282791128680888 esp-idf/esp_lcd/CMakeFiles/__idf_esp_lcd.dir/src/esp_lcd_panel_io.c.obj ab5f4767228ab50d 94644 96148 7281919761865211 esp-idf/driver/CMakeFiles/__idf_driver.dir/i2s/i2s_tdm.c.obj 33b3505044b29439 86251 86326 7281919666426502 esp-idf/mbedtls/mbedtls/library/libmbedtls.a cf18c402e59e4096 21882 22289 7281919025418930 esp-idf/esp_system/CMakeFiles/__idf_esp_system.dir/port/soc/esp32s3/highint_hdl.S.obj 8135c52f4e537e64 @@ -245,7 +245,7 @@ 11167 12116 7281918923543986 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedx509.dir/x509write_csr.c.obj 2b83ef58f8de48ff 10963 12229 7281918924793959 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedx509.dir/x509_crt.c.obj 36f8ab2f42435e49 25585 25865 7281919061512681 esp-idf/hal/CMakeFiles/__idf_hal.dir/timer_hal.c.obj 699a3cd4bbe02d95 -6265 6615 7282187197305569 .bin_timestamp e637d2722a392652 +5392 5684 7282851950475169 .bin_timestamp e637d2722a392652 11556 12369 7281918926200195 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedtls.dir/ssl_ciphersuites.c.obj f9eb1923b48444fa 11961 12440 7281918927137700 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedtls.dir/ssl_debug_helpers_generated.c.obj d6a688be4ecd0f7f 25909 26440 7281919067137673 esp-idf/hal/CMakeFiles/__idf_hal.dir/rmt_hal.c.obj 25a921f521dc8eb3 @@ -270,13 +270,13 @@ 42857 46866 7281919270106431 esp-idf/nvs_flash/CMakeFiles/__idf_nvs_flash.dir/src/nvs_page.cpp.obj 2a208dfd94e3f9a3 12705 13170 7281918934637709 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedtls.dir/ssl_tls13_server.c.obj 9822a56fda51cde6 28143 28668 7281919088856427 esp-idf/hal/CMakeFiles/__idf_hal.dir/esp32s3/hmac_hal.c.obj 9aa03bf8c552691f -36 233 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 225 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 58829 59814 7281919400887667 esp-idf/lwip/CMakeFiles/__idf_lwip.dir/lwip/src/netif/ppp/ipv6cp.c.obj f3397d5a2581aff8 64253 66099 7281919459793890 esp-idf/wpa_supplicant/CMakeFiles/__idf_wpa_supplicant.dir/src/common/wpa_common.c.obj 5c3becdc8e25610f 12230 13379 7281918936043952 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedtls.dir/ssl_tls12_client.c.obj c96f1d3015b12772 34517 35685 7281919158856423 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32s3/sar_periph_ctrl.c.obj 4c29d706121d0b7 47034 47894 7281919281356407 esp-idf/esp_phy/CMakeFiles/__idf_esp_phy.dir/src/phy_override.c.obj eb25986b782fc6f3 -36 233 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +39 225 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 113541 115052 7281919952464958 esp-idf/spiffs/CMakeFiles/__idf_spiffs.dir/esp_spiffs.c.obj bcaac16e2d73ece5 12873 13395 7281918936668968 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedtls.dir/ssl_tls13_client.c.obj 3024f83388e6f926 14186 14924 7281918951512695 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_random.c.obj 1edb48859a099fc6 @@ -294,7 +294,7 @@ 13638 14607 7281918948700191 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_common_loader.c.obj 984fa1e703488fa7 58900 59989 7281919401668914 esp-idf/lwip/CMakeFiles/__idf_lwip.dir/lwip/src/netif/ppp/magic.c.obj dffb71c6857fe535 13396 14614 7281918948075189 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_common.c.obj ae617f3830e29506 -44 729 7282182204905751 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +44 626 7282851899701219 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb 13094 14772 7281918950418949 esp-idf/mbedtls/mbedtls/library/CMakeFiles/mbedtls.dir/E_/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/port/net_sockets.c.obj 3e4754313936796b 13762 15011 7281918952450185 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp_image_format.c.obj a0fe487d3446c2cb 18744 19815 7281919000575179 esp-idf/pthread/CMakeFiles/__idf_pthread.dir/pthread.c.obj 1b6636b2a93bbe41 @@ -303,7 +303,7 @@ 14608 15395 7281918956512692 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/bootloader_flash/src/flash_qio_mode.c.obj 7ab524b258fe40fc 29542 29995 7281919102293915 esp-idf/soc/CMakeFiles/__idf_soc.dir/dport_access_common.c.obj b36fffe5b5c2eaac 75219 76166 7281919563286036 esp-idf/esp_wifi/CMakeFiles/__idf_esp_wifi.dir/src/mesh_event.c.obj 6ca5904f377e99a6 -36 233 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +39 225 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 66613 67642 7281919478700141 esp-idf/wpa_supplicant/CMakeFiles/__idf_wpa_supplicant.dir/src/crypto/sha256-tlsprf.c.obj f9986f28765bf528 15160 15411 7281918956981436 bootloader-prefix/src/bootloader-stamp/bootloader-mkdir 9fe90088a84e6f7b 114604 115192 7281919954628758 esp-idf/usb/CMakeFiles/__idf_usb.dir/usb_private.c.obj ea8a9020d6c0f007 @@ -320,7 +320,7 @@ 96149 97611 7281919775190571 esp-idf/driver/CMakeFiles/__idf_driver.dir/spi_slave_hd.c.obj 394c681e0af96b78 15581 15760 7281918960418935 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-update dff9a19cb59f1c79 52468 53534 7281919337450163 esp-idf/lwip/CMakeFiles/__idf_lwip.dir/lwip/src/core/mem.c.obj fb47262907aa16a1 -234 4897 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +225 4973 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 15012 15851 7281918961200190 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/idf/bootloader_sha.c.obj af4376bb1bb4c561 51408 55937 7281919330106411 esp-idf/lwip/CMakeFiles/__idf_lwip.dir/lwip/src/api/if_api.c.obj 408621a09f3fc3a9 58508 60343 7281919398075145 esp-idf/lwip/CMakeFiles/__idf_lwip.dir/lwip/src/netif/ppp/lcp.c.obj 4ca75312a8067040 @@ -335,7 +335,7 @@ 15482 16061 7281918962918961 esp-idf/app_update/CMakeFiles/__idf_app_update.dir/esp_ota_app_desc.c.obj 2d21996444617523 15386 16125 7281918963700196 esp-idf/esp_partition/CMakeFiles/__idf_esp_partition.dir/partition_target.c.obj 96c754d674a6c3f5 15714 16145 7281918963387695 esp-idf/spi_flash/CMakeFiles/__idf_spi_flash.dir/flash_brownout_hook.c.obj 16cc740dc2ea397f -36 233 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +39 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 15396 16168 7281918964325210 esp-idf/esp_partition/CMakeFiles/__idf_esp_partition.dir/partition.c.obj befce2b5db9bda87 35524 36181 7281919164012677 esp-idf/freertos/CMakeFiles/__idf_freertos.dir/FreeRTOS-Kernel/portable/xtensa/xtensa_context.S.obj 1258eaa9247c8a77 15576 16356 7281918966356433 esp-idf/spi_flash/CMakeFiles/__idf_spi_flash.dir/esp32s3/spi_timing_config.c.obj 34a408ae20e8cfb0 @@ -425,7 +425,7 @@ 22363 23329 7281919033543930 esp-idf/esp_system/CMakeFiles/__idf_esp_system.dir/port/arch/xtensa/debug_helpers.c.obj 6e1371387fd5ad38 76272 77869 7281919581036630 esp-idf/esp_wifi/CMakeFiles/__idf_esp_wifi.dir/esp32s3/esp_adapter.c.obj ee13042ee90807fa 22567 23369 7281919035418946 esp-idf/esp_system/CMakeFiles/__idf_esp_system.dir/port/soc/esp32s3/apb_backup_dma.c.obj 890a3b7bd26668dc -36 233 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +39 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 23324 23716 7281919039793934 esp-idf/esp_system/CMakeFiles/__idf_esp_system.dir/port/arch/xtensa/debug_helpers_asm.S.obj 30c9e13711bfa8f4 54335 55410 7281919356825149 esp-idf/lwip/CMakeFiles/__idf_lwip.dir/lwip/src/core/ipv4/igmp.c.obj 12a95ebd7ab4b80c 87181 89436 7281919694428787 esp-idf/xtensa/CMakeFiles/__idf_xtensa.dir/xtensa_intr.c.obj 1c844df6b09ad8e7 @@ -435,7 +435,7 @@ 23158 23848 7281919041356456 esp-idf/esp_system/CMakeFiles/__idf_esp_system.dir/port/arch/xtensa/trax.c.obj f2e3b162b539fd57 69675 70957 7281919511200147 esp-idf/wpa_supplicant/CMakeFiles/__idf_wpa_supplicant.dir/src/rsn_supp/wpa_ie.c.obj 4ce8001a73e5502b 23524 23860 7281919041356456 esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_crc.c.obj 878bba807b64f854 -44 160 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +44 155 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f 23306 24196 7281919044637705 esp-idf/esp_system/CMakeFiles/__idf_esp_system.dir/port/arch/xtensa/esp_ipc_isr.c.obj 29b54994300422c 51473 52489 7281919327606406 esp-idf/lwip/CMakeFiles/__idf_lwip.dir/lwip/src/apps/sntp/sntp.c.obj 4784b815163a6b41 78700 79428 7281919596662793 esp-idf/esp_adc/CMakeFiles/__idf_esp_adc.dir/deprecated/esp32s3/esp_adc_cal_legacy.c.obj 329e6c1d964f8d72 @@ -462,11 +462,11 @@ 112696 113392 7281919936664644 esp-idf/perfmon/CMakeFiles/__idf_perfmon.dir/xtensa_perfmon_access.c.obj 9c07d3ad44251aaa 25263 25584 7281919058700184 esp-idf/hal/CMakeFiles/__idf_hal.dir/timer_hal_iram.c.obj 9e29d40e51579c9b 24996 25625 7281919059012680 esp-idf/hal/CMakeFiles/__idf_hal.dir/rtc_io_hal.c.obj 56c68f0b9a803ba0 -25150 25669 7281919059325170 esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal_iram.c.obj 98291de01ad8b7bc +57 1814 7282787986061948 esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal_iram.c.obj 98291de01ad8b7bc 70958 72329 7281919525262630 esp-idf/wpa_supplicant/CMakeFiles/__idf_wpa_supplicant.dir/src/wps/wps_enrollee.c.obj 8773610049c8e44e 24331 25891 7281919051043936 esp-idf/hal/CMakeFiles/__idf_hal.dir/mpu_hal.c.obj 2d3401e77b37214b 35301 36188 7281919163387690 esp-idf/freertos/CMakeFiles/__idf_freertos.dir/FreeRTOS-Kernel/portable/xtensa/xtensa_vectors.S.obj 560fa960a5f95db -25626 26021 7281919062762695 esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal.c.obj 9bce4f312c3b944b +62 401 7282787972155671 esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal.c.obj 9bce4f312c3b944b 25865 26819 7281919069950176 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/sleep_wake_stub.c.obj 99a22d430136354d 24615 27027 7281919072918939 esp-idf/hal/CMakeFiles/__idf_hal.dir/spi_slave_hal.c.obj fa8e7cc05ab6c6c0 26112 27115 7281919070106450 esp-idf/hal/CMakeFiles/__idf_hal.dir/mcpwm_hal.c.obj 59bbd6edc3aae09d @@ -479,7 +479,7 @@ 31148 32196 7281919121512686 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/cpu.c.obj 6c136484d8351b42 26527 27400 7281919074793926 esp-idf/hal/CMakeFiles/__idf_hal.dir/adc_hal_common.c.obj 928a8c62ab731807 27160 27592 7281919078387666 esp-idf/hal/CMakeFiles/__idf_hal.dir/sdm_hal.c.obj 39c67d77ac91e5ea -36 233 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +39 225 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 46457 50930 7281919299012656 esp-idf/nvs_flash/CMakeFiles/__idf_nvs_flash.dir/src/nvs_types.cpp.obj 24aaace0e42e917 27027 27812 7281919078856418 esp-idf/hal/CMakeFiles/__idf_hal.dir/twai_hal_iram.c.obj 84f43f461b05f56d 26974 28063 7281919082606426 esp-idf/hal/CMakeFiles/__idf_hal.dir/i2s_hal.c.obj 7e29a50aa7a567b5 @@ -539,7 +539,7 @@ 31994 32882 7281919131668920 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/periph_ctrl.c.obj bf98928a0cb1c885 32221 33529 7281919132137666 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/mac_addr.c.obj 90efe420a7179f7f 32321 33547 7281919134168933 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/sar_periph_ctrl_common.c.obj c7da0fbd620ae444 -108199 108546 7281919888126183 esp-idf/driver/libdriver.a 506300eef91ff0ae +3542 3928 7282788007468217 esp-idf/driver/libdriver.a 506300eef91ff0ae 110465 110705 7281919909737131 esp-idf/cmock/libcmock.a 7bceca33a900dfe1 55374 56368 7281919366200159 esp-idf/lwip/CMakeFiles/__idf_lwip.dir/lwip/src/core/ipv6/ethip6.c.obj ec78bfcd1ae11a6a 32479 33621 7281919138387683 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/adc_share_hw_ctrl.c.obj e9af401e6b6e4d0b @@ -564,7 +564,7 @@ 110317 110611 7281919909000604 esp-idf/protobuf-c/libprotobuf-c.a 23695cd56b912cf1 34786 35523 7281919156512681 esp-idf/freertos/CMakeFiles/__idf_freertos.dir/FreeRTOS-Kernel/portable/xtensa/xtensa_init.c.obj e85abd209b66e8bb 35686 37167 7281919171200189 esp-idf/freertos/CMakeFiles/__idf_freertos.dir/port_common.c.obj 829394cc8107991 -333 411 7282142079168820 esp-idf/esp_app_format/libesp_app_format.a f1e6d33a2b85b1f6 +2259 2326 7282787991374420 esp-idf/esp_app_format/libesp_app_format.a f1e6d33a2b85b1f6 110747 111694 7281919919299653 esp-idf/fatfs/CMakeFiles/__idf_fatfs.dir/port/freertos/ffsystem.c.obj 3d82c8d56bf78c10 36189 37666 7281919176512681 esp-idf/freertos/CMakeFiles/__idf_freertos.dir/FreeRTOS-Kernel/list.c.obj 378c37c1d8f4c9c6 54143 55553 7281919358075153 esp-idf/lwip/CMakeFiles/__idf_lwip.dir/lwip/src/core/tcp_in.c.obj 8c4197d5d00fede3 @@ -597,7 +597,7 @@ 34917 41778 7281919219950159 esp-idf/freertos/CMakeFiles/__idf_freertos.dir/FreeRTOS-Kernel/portable/xtensa/xtensa_vector_defaults.S.obj d80895da37231792 67967 69675 7281919498856382 esp-idf/wpa_supplicant/CMakeFiles/__idf_wpa_supplicant.dir/src/eap_peer/eap_mschapv2.c.obj 5f0024507141a930 41116 42109 7281919223387694 esp-idf/cxx/CMakeFiles/__idf_cxx.dir/cxx_exception_stubs.cpp.obj 177dc5673e179492 -85531 85618 7281919659361025 esp-idf/hal/libhal.a 95058da04e4be84b +1814 2259 7282787990749475 esp-idf/hal/libhal.a 95058da04e4be84b 41778 42567 7281919228231415 esp-idf/esp_timer/CMakeFiles/__idf_esp_timer.dir/src/esp_timer_impl_systimer.c.obj a32493adbb231ff4 41258 42849 7281919221825178 esp-idf/esp_timer/CMakeFiles/__idf_esp_timer.dir/src/system_time.c.obj b8d1b7f7cafd927b 42426 43349 7281919234950169 esp-idf/esp_event/CMakeFiles/__idf_esp_event.dir/esp_event_private.c.obj e69143cc3e242518 @@ -615,7 +615,7 @@ 98550 99396 7281919796278619 esp-idf/unity/CMakeFiles/__idf_unity.dir/unity_utils_cache.c.obj 26b28c9de54e6880 43349 50230 7281919274168914 esp-idf/nvs_flash/CMakeFiles/__idf_nvs_flash.dir/src/nvs_storage.cpp.obj 7f047e0f883f506d 48160 49272 7281919294481421 esp-idf/vfs/CMakeFiles/__idf_vfs.dir/vfs_eventfd.c.obj 1fc625aee1713dbf -36 233 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +39 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 83722 83788 7281919640980543 esp-idf/tcp_transport/libtcp_transport.a 1a62b8c07ff6c669 49605 49775 7281919300731398 bootloader-prefix/src/bootloader-stamp/bootloader-done 4dfaff259ed5a2d4 49605 49775 7281919300731398 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/bootloader-complete 4dfaff259ed5a2d4 @@ -759,14 +759,14 @@ 74554 75538 7281919557606383 esp-idf/wpa_supplicant/CMakeFiles/__idf_wpa_supplicant.dir/src/crypto/aes-ccm.c.obj db73b867f1ec69be 74293 75617 7281919558392667 esp-idf/wpa_supplicant/CMakeFiles/__idf_wpa_supplicant.dir/src/crypto/aes-unwrap.c.obj d625a8c06c4f899b 73000 76272 7281919551200132 esp-idf/wpa_supplicant/CMakeFiles/__idf_wpa_supplicant.dir/esp_supplicant/src/crypto/crypto_mbedtls-ec.c.obj d8839bf7e224e3c1 -44 160 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +44 155 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f 75017 76416 7281919564692292 esp-idf/esp_eth/CMakeFiles/__idf_esp_eth.dir/src/esp_eth_phy_802_3.c.obj 278d0361d603703 104189 105952 7281919861228598 esp-idf/protocomm/CMakeFiles/__idf_protocomm.dir/src/transports/protocomm_httpd.c.obj 391166a57cf70886 75136 76504 7281919567348522 esp-idf/esp_wifi/CMakeFiles/__idf_esp_wifi.dir/src/smartconfig_ack.c.obj d6b53affb9439233 76160 76911 7281919571079730 esp-idf/esp_wifi/CMakeFiles/__idf_esp_wifi.dir/src/coexist.c.obj 65777dee7fda871e 101264 102182 7281919822949222 esp-idf/console/CMakeFiles/__idf_console.dir/argtable3/arg_utils.c.obj c31c0e1a22613237 76166 77004 7281919571989585 esp-idf/esp_wifi/CMakeFiles/__idf_esp_wifi.dir/src/wifi_default_ap.c.obj d9cbb5880e043045 -994 1077 7282187141955231 esp-idf/main/libmain.a 23abce1ba9baf5ce +627 696 7282851900482169 esp-idf/main/libmain.a 23abce1ba9baf5ce 76995 77772 7281919580255425 esp-idf/esp_adc/CMakeFiles/__idf_esp_adc.dir/adc_cali.c.obj 4c2ddc8774f4f85c 76417 77807 7281919580724132 esp-idf/http_parser/CMakeFiles/__idf_http_parser.dir/http_parser.c.obj f1aa504227425c8b 100363 101264 7281919814183021 esp-idf/console/CMakeFiles/__idf_console.dir/argtable3/arg_end.c.obj fc91c5ba6cf59175 @@ -829,7 +829,7 @@ 96338 98164 7281919782656752 esp-idf/driver/CMakeFiles/__idf_driver.dir/touch_sensor_common.c.obj e653a8e791a1b7e2 87809 88513 7281919687866283 esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/efuse_controller/keys/with_key_purposes/esp_efuse_api_key.c.obj 10b35987f98750cf 88460 89480 7281919697397546 esp-idf/driver/CMakeFiles/__idf_driver.dir/sdspi_host.c.obj 261cb40c9cc60423 -87954 89744 7281919697866281 esp-idf/driver/CMakeFiles/__idf_driver.dir/ledc.c.obj 1ffc86c7ea89944a +2327 3542 7282788003249492 esp-idf/driver/CMakeFiles/__idf_driver.dir/ledc.c.obj 1ffc86c7ea89944a 88108 90499 7281919699585132 esp-idf/driver/CMakeFiles/__idf_driver.dir/i2c.c.obj fd512f44d5f20f60 116270 117464 7281919976495713 esp-idf/wifi_provisioning/CMakeFiles/__idf_wifi_provisioning.dir/src/wifi_scan.c.obj a5f99f26eddde7bb 89745 90700 7281919709585038 esp-idf/driver/CMakeFiles/__idf_driver.dir/mcpwm/mcpwm_cmpr.c.obj 681aad8588b3a9b4 @@ -855,7 +855,7 @@ 98729 98989 7281919793044656 esp-idf/esp_pm/libesp_pm.a 1921204d2aae1fde 98073 99059 7281919792541904 esp-idf/app_trace/CMakeFiles/__idf_app_trace.dir/host_file_io.c.obj 701fa1a18bef9e35 98289 99378 7281919796015870 esp-idf/unity/CMakeFiles/__idf_unity.dir/unity_utils_freertos.c.obj 59a4e4545734b581 -6265 6615 7282187197305569 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5392 5684 7282851950475169 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 98864 99828 7281919800357955 esp-idf/unity/CMakeFiles/__idf_unity.dir/unity_runner.c.obj 6839219838c05455 99379 100209 7281919803587822 esp-idf/cmock/CMakeFiles/__idf_cmock.dir/CMock/src/cmock.c.obj d4f9dbcd606a5ac4 99961 100804 7281919809964309 esp-idf/console/CMakeFiles/__idf_console.dir/argtable3/arg_cmd.c.obj c6b9c3edbd59e9cb @@ -895,7 +895,7 @@ 108867 110217 7281919904725717 esp-idf/sdmmc/CMakeFiles/__idf_sdmmc.dir/sdmmc_cmd.c.obj a02a8b675c6483e2 109083 110317 7281919904927914 esp-idf/sdmmc/CMakeFiles/__idf_sdmmc.dir/sdmmc_init.c.obj d440f6f263764f5d 110302 110513 7281919907896562 esp-idf/esp_hid/libesp_hid.a d82ce954087a9913 -843 923 7281995274968252 esp-idf/esp_lcd/libesp_lcd.a b038a99e1dda9579 +373 507 7282791130310530 esp-idf/esp_lcd/libesp_lcd.a b038a99e1dda9579 109714 110761 7281919909837239 esp-idf/fatfs/CMakeFiles/__idf_fatfs.dir/diskio/diskio_rawflash.c.obj c48f90a05727ca4e 110611 110940 7281919912414552 esp-idf/protocomm/libprotocomm.a 22f2283d07e651c7 110940 111155 7281919914685106 esp-idf/esp_local_ctrl/libesp_local_ctrl.a 6a35e10cb0db5906 @@ -927,136 +927,397 @@ 118437 118544 7281919988539479 esp-idf/usb/libusb.a 18b50dd9e60d5979 116507 118608 7281919988943802 esp-idf/wifi_provisioning/CMakeFiles/__idf_wifi_provisioning.dir/src/manager.c.obj 9532ed4ce1c4c03 118529 118615 7281919989287062 esp-idf/hub75/libhub75.a dcb53fddc4dcc8d6 -1078 5329 7282187184165537 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +696 4454 7282851937826783 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 5130 5211 7282134571550173 CMakeFiles/i80_controller.elf.dir/project_elf_src_esp32s3.c.obj e11c3aa74a3504e5 -5329 6265 7282187193615523 i80_controller.elf 5a3f148dab1e716a +4454 5391 7282851947276045 i80_controller.elf 5a3f148dab1e716a 52 205 7281969992075448 esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_modify.c.obj c2ad4c5395fd9c3c -234 4897 0 CMakeFiles/flash 3e0aa55590d54d21 -57 994 7282187140835558 esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj 7c2c44d8f34f2da0 -2 9649 7282241857285976 build.ninja db3b686ef54d40f -40 259 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -40 259 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -40 259 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -40 259 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -40 259 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -40 259 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -40 259 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -40 259 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -46 372 7282241862225670 esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj 2d3cde6467f695a1 -52 376 7282241862205669 esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal.c.obj 9bce4f312c3b944b -57 398 7282241862395681 esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal_iram.c.obj 98291de01ad8b7bc -398 778 7282241866405974 esp-idf/hal/libhal.a 95058da04e4be84b -778 852 7282241867145652 esp-idf/esp_app_format/libesp_app_format.a f1e6d33a2b85b1f6 -863 1826 7282241876595677 esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj 7c2c44d8f34f2da0 -852 1915 7282241877615661 esp-idf/driver/CMakeFiles/__idf_driver.dir/ledc.c.obj 1ffc86c7ea89944a -40 248 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -40 248 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -40 248 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -40 248 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -40 248 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -40 248 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -40 248 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -40 248 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -46 518 7282243013685186 esp-idf/driver/libdriver.a 506300eef91ff0ae -40 240 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -40 240 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -40 240 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -40 240 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -40 240 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -40 240 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -40 240 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -40 240 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -41 229 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -41 229 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -41 229 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -41 229 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -41 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -41 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -41 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -41 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -47 683 7282245011923620 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb -683 758 7282245012893364 esp-idf/main/libmain.a 23abce1ba9baf5ce -758 5003 7282245055074820 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 -758 5003 7282245055074820 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 -41 261 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -41 261 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -41 261 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -41 261 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -41 261 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -41 261 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -41 261 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -41 261 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -48 349 7282254109840377 esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal.c.obj 9bce4f312c3b944b -53 365 7282254110000411 esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal_iram.c.obj 98291de01ad8b7bc -366 467 7282254111190406 esp-idf/hal/libhal.a 95058da04e4be84b -468 1413 7282254120470960 esp-idf/driver/CMakeFiles/__idf_driver.dir/ledc.c.obj 1ffc86c7ea89944a -134 423 7282254657924067 esp-idf/driver/libdriver.a 506300eef91ff0ae -114 507 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -114 507 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -114 507 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -114 507 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -114 507 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -114 507 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -114 507 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -114 507 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -42 240 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -42 240 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -42 240 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -42 240 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -42 240 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -42 240 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -42 240 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -42 240 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -48 718 7282254766666730 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb -718 793 7282254767607052 esp-idf/main/libmain.a 23abce1ba9baf5ce -793 5015 7282254809527794 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 -793 5015 7282254809527794 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 -5015 6080 7282254820238046 i80_controller.elf 5a3f148dab1e716a -6080 6401 7282254823678457 .bin_timestamp e637d2722a392652 -6080 6401 7282254823678457 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 -6401 6509 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f -6401 6509 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f -45 165 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f -45 165 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f -39 238 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -39 238 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -39 238 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -39 238 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -39 238 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -39 238 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -39 238 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -39 238 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -50 163 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f -50 163 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f -44 235 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -44 235 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -44 235 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -44 235 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -44 235 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -44 235 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -44 235 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -44 235 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -235 5004 0 CMakeFiles/flash 3e0aa55590d54d21 -235 5004 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 -41 243 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -41 243 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 -41 243 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 -41 243 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 -41 243 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 -41 243 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 -41 243 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 -41 243 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -47 772 7282256637454396 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb -772 851 7282256638494271 esp-idf/main/libmain.a 23abce1ba9baf5ce -851 5273 7282256682415371 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 -851 5273 7282256682415371 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 -5273 6396 7282256693725941 i80_controller.elf 5a3f148dab1e716a -6397 6733 7282256697325717 .bin_timestamp e637d2722a392652 -6397 6733 7282256697325717 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 -6733 6844 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f -6733 6844 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f -45 156 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f -45 156 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +225 4973 0 CMakeFiles/flash 3e0aa55590d54d21 +42 873 7282839374913437 esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj 7c2c44d8f34f2da0 +37 216 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 216 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +37 216 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +37 216 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +37 216 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 216 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +37 216 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +37 216 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +43 667 7282852949437213 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +668 739 7282852950313331 esp-idf/main/libmain.a 23abce1ba9baf5ce +739 4506 7282852987695565 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +739 4506 7282852987695565 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4506 5424 7282852996859640 i80_controller.elf 5a3f148dab1e716a +5424 5729 7282853000206606 .bin_timestamp e637d2722a392652 +5424 5729 7282853000206606 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5729 5834 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5729 5834 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +40 152 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +40 152 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +35 219 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 219 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 219 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 219 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 219 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 219 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 219 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 219 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +220 5002 0 CMakeFiles/flash 3e0aa55590d54d21 +220 5002 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +37 221 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 221 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +37 221 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +37 221 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +37 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +37 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +37 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +37 229 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 229 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +37 229 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +37 229 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +37 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +37 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +37 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +42 686 7282854820341004 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +686 763 7282854821284535 esp-idf/main/libmain.a 23abce1ba9baf5ce +763 4567 7282854859074576 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +763 4567 7282854859074576 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4567 5501 7282854868463818 i80_controller.elf 5a3f148dab1e716a +5501 5792 7282854871615251 .bin_timestamp e637d2722a392652 +5501 5792 7282854871615251 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5792 5895 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5792 5895 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +42 155 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +42 155 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +35 220 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 220 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 220 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 220 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 220 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 220 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 220 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 220 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +221 5154 0 CMakeFiles/flash 3e0aa55590d54d21 +221 5154 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +34 219 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +34 219 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +34 219 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +34 219 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +34 219 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +34 219 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +34 219 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +34 219 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +41 677 7282855880949763 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +677 753 7282855881847234 esp-idf/main/libmain.a 23abce1ba9baf5ce +753 4525 7282855919171080 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +753 4525 7282855919171080 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4525 5458 7282855928673894 i80_controller.elf 5a3f148dab1e716a +5458 5762 7282855931932526 .bin_timestamp e637d2722a392652 +5458 5762 7282855931932526 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5762 5862 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5762 5862 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5863 10658 0 CMakeFiles/flash 3e0aa55590d54d21 +5863 10658 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +42 215 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +42 215 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +42 215 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +42 215 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +42 215 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +42 215 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +42 215 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +42 215 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +48 629 7282857737224650 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +629 700 7282857738162244 esp-idf/main/libmain.a 23abce1ba9baf5ce +701 4470 7282857775506600 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +701 4470 7282857775506600 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4471 5400 7282857784875248 i80_controller.elf 5a3f148dab1e716a +5400 5695 7282857788094175 .bin_timestamp e637d2722a392652 +5400 5695 7282857788094175 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5695 5792 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5695 5792 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +41 150 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +41 150 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +35 222 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 222 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 222 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 222 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 222 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 222 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 222 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 222 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +223 4998 0 CMakeFiles/flash 3e0aa55590d54d21 +223 4998 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +42 226 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +42 226 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +42 226 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +42 226 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +42 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +42 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +42 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +42 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +47 676 7282858729414668 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +676 746 7282858730247084 esp-idf/main/libmain.a 23abce1ba9baf5ce +746 4519 7282858767728270 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +746 4519 7282858767728270 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4519 5437 7282858776894158 i80_controller.elf 5a3f148dab1e716a +5437 5745 7282858780254825 .bin_timestamp e637d2722a392652 +5437 5745 7282858780254825 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5745 5849 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5745 5849 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5850 10606 0 CMakeFiles/flash 3e0aa55590d54d21 +5850 10606 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +38 229 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +38 229 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +38 229 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +38 229 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +38 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +38 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +38 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +38 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +44 688 7282860503637126 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +688 761 7282860504558156 esp-idf/main/libmain.a 23abce1ba9baf5ce +761 4544 7282860542031029 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +761 4544 7282860542031029 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4545 5477 7282860551515746 i80_controller.elf 5a3f148dab1e716a +5478 5780 7282860554775958 .bin_timestamp e637d2722a392652 +5478 5780 7282860554775958 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5780 5875 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5780 5875 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5877 10633 0 CMakeFiles/flash 3e0aa55590d54d21 +5877 10633 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +35 221 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 221 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 221 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 221 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +41 679 7282861069438339 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +679 751 7282861070316511 esp-idf/main/libmain.a 23abce1ba9baf5ce +751 4498 7282861107462347 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +751 4498 7282861107462347 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4498 5411 7282861116663013 i80_controller.elf 5a3f148dab1e716a +5411 5697 7282861119767549 .bin_timestamp e637d2722a392652 +5411 5697 7282861119767549 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5698 5795 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5698 5795 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5796 10600 0 CMakeFiles/flash 3e0aa55590d54d21 +5796 10600 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +37 229 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 229 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +37 229 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +37 229 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +37 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +37 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +37 229 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +43 669 7282861972399096 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +670 743 7282861973383310 esp-idf/main/libmain.a 23abce1ba9baf5ce +743 4524 7282862010847987 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +743 4524 7282862010847987 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4524 5451 7282862020181287 i80_controller.elf 5a3f148dab1e716a +5451 5756 7282862023542961 .bin_timestamp e637d2722a392652 +5451 5756 7282862023542961 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5756 5860 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5756 5860 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +41 151 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +41 151 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +35 218 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 218 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 218 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 218 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 218 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 218 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 218 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 218 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +218 4965 0 CMakeFiles/flash 3e0aa55590d54d21 +218 4965 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +47 111 7282862959315214 esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj 7c2c44d8f34f2da0 +36 234 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +36 234 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +36 234 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +36 234 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +36 234 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +36 234 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +36 234 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +36 234 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +35 214 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 214 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 214 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 214 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 214 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 214 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 214 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 214 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +41 664 7282863092114813 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +664 766 7282863093174857 esp-idf/main/libmain.a 23abce1ba9baf5ce +766 4549 7282863130813072 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +766 4549 7282863130813072 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4549 5473 7282863140158598 i80_controller.elf 5a3f148dab1e716a +5473 5776 7282863143407775 .bin_timestamp e637d2722a392652 +5473 5776 7282863143407775 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5777 5880 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5777 5880 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5881 10670 0 CMakeFiles/flash 3e0aa55590d54d21 +5881 10670 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +35 222 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 222 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 222 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 222 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 222 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 222 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 222 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 222 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +40 693 7282863605217136 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +693 764 7282863606052698 esp-idf/main/libmain.a 23abce1ba9baf5ce +764 4554 7282863643674258 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +764 4554 7282863643674258 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4554 5484 7282863653175780 i80_controller.elf 5a3f148dab1e716a +5484 5796 7282863656490359 .bin_timestamp e637d2722a392652 +5484 5796 7282863656490359 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5796 5901 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5796 5901 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5902 10693 0 CMakeFiles/flash 3e0aa55590d54d21 +5902 10693 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +39 234 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 234 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +39 234 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +39 234 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +39 234 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 234 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +39 234 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +39 234 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +50 733 7282865486928674 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +45 981 7282865489276189 esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj 7c2c44d8f34f2da0 +981 1059 7282865490369696 esp-idf/main/libmain.a 23abce1ba9baf5ce +1059 4913 7282865528651309 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +1059 4913 7282865528651309 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4913 5852 7282865538066841 i80_controller.elf 5a3f148dab1e716a +5853 6159 7282865541374936 .bin_timestamp e637d2722a392652 +5853 6159 7282865541374936 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +6159 6262 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +6159 6262 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +6263 11023 0 CMakeFiles/flash 3e0aa55590d54d21 +6263 11023 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +46 89 7282866639304138 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +35 221 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 221 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 221 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 221 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +41 825 7282866646648472 esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj 7c2c44d8f34f2da0 +826 901 7282866647620244 esp-idf/main/libmain.a 23abce1ba9baf5ce +902 4740 7282866685653002 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +902 4740 7282866685653002 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4740 5687 7282866695250860 i80_controller.elf 5a3f148dab1e716a +5688 5978 7282866698388564 .bin_timestamp e637d2722a392652 +5688 5978 7282866698388564 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5978 6071 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5978 6071 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +6072 10842 0 CMakeFiles/flash 3e0aa55590d54d21 +6072 10842 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +44 231 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +44 231 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +44 231 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +44 231 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +44 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +44 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +44 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +44 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +49 694 7282868717225350 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +695 766 7282868718053522 esp-idf/main/libmain.a 23abce1ba9baf5ce +766 4571 7282868755834668 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +766 4571 7282868755834668 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4571 5522 7282868765494144 i80_controller.elf 5a3f148dab1e716a +5523 5837 7282868768860055 .bin_timestamp e637d2722a392652 +5523 5837 7282868768860055 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5837 6216 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5837 6216 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +6217 11071 0 CMakeFiles/flash 3e0aa55590d54d21 +6217 11071 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +36 226 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +36 226 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +36 226 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +36 226 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +36 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +36 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +36 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +36 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +42 686 7282869901251824 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +687 755 7282869902074200 esp-idf/main/libmain.a 23abce1ba9baf5ce +755 4553 7282869939718307 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +755 4553 7282869939718307 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4554 5478 7282869949060073 i80_controller.elf 5a3f148dab1e716a +5478 5785 7282869952443558 .bin_timestamp e637d2722a392652 +5478 5785 7282869952443558 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5785 5889 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5785 5889 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +41 152 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +41 152 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +35 221 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 221 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 221 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 221 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 221 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +222 4969 0 CMakeFiles/flash 3e0aa55590d54d21 +222 4969 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +44 157 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +44 157 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +39 231 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 231 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +39 231 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +39 231 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +39 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +39 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +39 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +232 4990 0 CMakeFiles/flash 3e0aa55590d54d21 +232 4990 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +40 223 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +40 223 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +40 223 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +40 223 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +40 223 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +40 223 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +40 223 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +40 223 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +46 637 7282876475112788 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +638 712 7282876476050092 esp-idf/main/libmain.a 23abce1ba9baf5ce +712 4503 7282876513706878 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +712 4503 7282876513706878 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4503 5435 7282876523015607 i80_controller.elf 5a3f148dab1e716a +5436 5731 7282876526247551 .bin_timestamp e637d2722a392652 +5436 5731 7282876526247551 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5731 5832 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5731 5832 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5832 10639 0 CMakeFiles/flash 3e0aa55590d54d21 +5832 10639 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +35 218 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 218 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 218 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 218 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 218 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 218 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 218 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 218 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +40 669 7282877203478384 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +669 742 7282877204286463 esp-idf/main/libmain.a 23abce1ba9baf5ce +742 4552 7282877242235211 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +742 4552 7282877242235211 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4552 5478 7282877251443903 i80_controller.elf 5a3f148dab1e716a +5479 5786 7282877254818959 .bin_timestamp e637d2722a392652 +5479 5786 7282877254818959 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5786 5891 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5786 5891 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5892 10645 0 CMakeFiles/flash 3e0aa55590d54d21 +5892 10645 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 39 228 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 39 228 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 39 228 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 @@ -1065,5 +1326,200 @@ 39 228 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 39 228 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 39 228 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 -229 4998 0 CMakeFiles/flash 3e0aa55590d54d21 -229 4998 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +45 695 7282877915830131 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +696 769 7282877916818612 esp-idf/main/libmain.a 23abce1ba9baf5ce +769 4549 7282877954287138 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +769 4549 7282877954287138 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4549 5471 7282877963632422 i80_controller.elf 5a3f148dab1e716a +5472 5759 7282877966746435 .bin_timestamp e637d2722a392652 +5472 5759 7282877966746435 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5759 5853 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5759 5853 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5854 10617 0 CMakeFiles/flash 3e0aa55590d54d21 +5854 10617 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +35 226 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 226 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 226 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 226 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 226 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +41 668 7282878879128302 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +669 742 7282878879952298 esp-idf/main/libmain.a 23abce1ba9baf5ce +742 4513 7282878917429913 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +742 4513 7282878917429913 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4513 5458 7282878926930441 i80_controller.elf 5a3f148dab1e716a +5458 5759 7282878930240362 .bin_timestamp e637d2722a392652 +5458 5759 7282878930240362 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5759 5861 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5759 5861 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5861 10635 0 CMakeFiles/flash 3e0aa55590d54d21 +5861 10635 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +35 225 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 225 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 225 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 225 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +42 669 7282879392991769 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +670 740 7282879393815369 esp-idf/main/libmain.a 23abce1ba9baf5ce +740 4527 7282879431447061 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +740 4527 7282879431447061 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4528 5476 7282879441103018 i80_controller.elf 5a3f148dab1e716a +5477 5763 7282879444175296 .bin_timestamp e637d2722a392652 +5477 5763 7282879444175296 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5763 5856 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5763 5856 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5857 10660 0 CMakeFiles/flash 3e0aa55590d54d21 +5857 10660 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +37 225 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 225 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +37 225 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +37 225 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +37 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +37 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +37 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +37 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +43 696 7282881243005466 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +696 768 7282881243973528 esp-idf/main/libmain.a 23abce1ba9baf5ce +769 4590 7282881281924676 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +769 4590 7282881281924676 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4590 5526 7282881291361181 i80_controller.elf 5a3f148dab1e716a +5527 5837 7282881294691395 .bin_timestamp e637d2722a392652 +5527 5837 7282881294691395 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5837 5930 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5837 5930 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5931 10725 0 CMakeFiles/flash 3e0aa55590d54d21 +5931 10725 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +39 227 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 227 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +39 227 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +39 227 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +39 227 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 227 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +39 227 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +39 227 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +44 710 7282883147761400 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +711 782 7282883148597430 esp-idf/main/libmain.a 23abce1ba9baf5ce +782 4552 7282883186060206 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +782 4552 7282883186060206 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4552 5496 7282883195571765 i80_controller.elf 5a3f148dab1e716a +5496 5796 7282883198816147 .bin_timestamp e637d2722a392652 +5496 5796 7282883198816147 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5796 5898 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5796 5898 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5899 10826 0 CMakeFiles/flash 3e0aa55590d54d21 +5899 10826 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +49 100 7282884282444536 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +44 114 7282884282514463 esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj 7c2c44d8f34f2da0 +114 196 7282884283524497 esp-idf/main/libmain.a 23abce1ba9baf5ce +38 250 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +38 250 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +38 250 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +38 250 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +38 250 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +38 250 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +38 250 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +38 250 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +196 4073 7282884322021270 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +196 4073 7282884322021270 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4073 5060 7282884331986697 i80_controller.elf 5a3f148dab1e716a +5061 5367 7282884335233060 .bin_timestamp e637d2722a392652 +5061 5367 7282884335233060 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +5368 5469 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +5368 5469 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +41 154 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +41 154 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +35 231 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 231 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +35 231 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +35 231 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +35 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +35 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +35 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +35 231 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +231 5304 0 CMakeFiles/flash 3e0aa55590d54d21 +231 5304 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +39 227 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 227 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +39 227 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +39 227 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +39 227 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 227 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +39 227 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +39 227 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +38 224 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +38 224 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +38 224 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +38 224 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +38 224 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +38 224 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +38 224 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +38 224 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +46 693 7282892075142723 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +694 784 7282892076262742 esp-idf/main/libmain.a 23abce1ba9baf5ce +784 4894 7282892117078542 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +784 4894 7282892117078542 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4894 5901 7282892127258365 i80_controller.elf 5a3f148dab1e716a +5902 6212 7282892130527402 .bin_timestamp e637d2722a392652 +5902 6212 7282892130527402 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +6212 6313 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +6212 6313 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +6314 11209 0 CMakeFiles/flash 3e0aa55590d54d21 +6314 11209 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +39 230 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 230 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +39 230 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +39 230 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +39 230 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 230 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +39 230 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +39 230 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +45 704 7282893503398722 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +704 788 7282893504468451 esp-idf/main/libmain.a 23abce1ba9baf5ce +789 5599 7282893552274426 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +789 5599 7282893552274426 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +5600 6607 7282893562454808 i80_controller.elf 5a3f148dab1e716a +6607 6912 7282893565688360 .bin_timestamp e637d2722a392652 +6607 6912 7282893565688360 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +6912 7014 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +6912 7014 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +7015 11886 0 CMakeFiles/flash 3e0aa55590d54d21 +7015 11886 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/CMakeFiles/flash 3e0aa55590d54d21 +42 249 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +42 249 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +42 249 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +42 249 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +42 249 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +42 249 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +42 249 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +42 249 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +52 977 7282898660267139 esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj 7c2c44d8f34f2da0 +41 225 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +41 225 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +41 225 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +41 225 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +41 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +41 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +41 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +41 225 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +39 223 7281919151512672 bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 223 7281919151512672 bootloader/bootloader.elf 8a019de58b3b5445 +39 223 7281919151512672 bootloader/bootloader.bin 8a019de58b3b5445 +39 223 7281919151512672 bootloader/bootloader.map 8a019de58b3b5445 +39 223 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader-prefix/src/bootloader-stamp/bootloader-build 8a019de58b3b5445 +39 223 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.elf 8a019de58b3b5445 +39 223 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin 8a019de58b3b5445 +39 223 7281919151512672 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.map 8a019de58b3b5445 +44 691 7282899603388689 esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj 5884ddd64e85fbcb +691 775 7282899604468392 esp-idf/main/libmain.a 23abce1ba9baf5ce +776 4874 7282899645173746 esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +776 4874 7282899645173746 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/sections.ld bafb5b4ba77634c1 +4874 5874 7282899655242956 i80_controller.elf 5a3f148dab1e716a +5874 6179 7282899658496449 .bin_timestamp e637d2722a392652 +5874 6179 7282899658496449 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/.bin_timestamp e637d2722a392652 +6179 6275 0 esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f +6179 6275 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esptool_py/CMakeFiles/app_check_size aa6e7588794c452f diff --git a/build/CMakeFiles/git-data/head-ref b/build/CMakeFiles/git-data/head-ref index 384c9d0..f400630 100644 --- a/build/CMakeFiles/git-data/head-ref +++ b/build/CMakeFiles/git-data/head-ref @@ -1 +1 @@ -92e5b1f81a98d98bf4387e2a2ffcf23b572385b8 +42d44b0b931de5c8c5f34f1d1b486cbba7ba32c2 diff --git a/build/bootloader/.ninja_log b/build/bootloader/.ninja_log index 37debe3..88d2cb0 100644 --- a/build/bootloader/.ninja_log +++ b/build/bootloader/.ninja_log @@ -1,56 +1,56 @@ # ninja log v5 -1865 2499 7281919178700167 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/flash_encrypt.c.obj 2c8f735b68d0052f -53 497 7281919158387684 esp-idf/soc/CMakeFiles/__idf_soc.dir/lldesc.c.obj ab133841bdf845d4 2172 2693 7281919180575195 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/secure_boot.c.obj 7b3cc392dcffd111 5 308 7281919155575186 project_elf_src_esp32s3.c 8e8f5db7bf29a312 -49 356 7281919157137666 esp-idf/soc/CMakeFiles/__idf_soc.dir/dport_access_common.c.obj 3abfd2fc49bd1260 +1865 2499 7281919178700167 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/flash_encrypt.c.obj 2c8f735b68d0052f +53 497 7281919158387684 esp-idf/soc/CMakeFiles/__idf_soc.dir/lldesc.c.obj ab133841bdf845d4 2500 3148 7281919184637693 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/bootloader_flash/src/flash_qio_mode.c.obj 8246ba60ba726978 -2179 2707 7281919180262665 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_console_loader.c.obj 359b14d700530019 +49 356 7281919157137666 esp-idf/soc/CMakeFiles/__idf_soc.dir/dport_access_common.c.obj 3abfd2fc49bd1260 2346 2794 7281919181200185 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32s3/bootloader_sha.c.obj 629383978975abdc +2179 2707 7281919180262665 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_console_loader.c.obj 359b14d700530019 5 308 7281919155575186 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/project_elf_src_esp32s3.c 8e8f5db7bf29a312 12 321 7281919156825162 esp-idf/xtensa/CMakeFiles/__idf_xtensa.dir/eri.c.obj ab0fcb7963c85a72 1186 1865 7281919171200189 esp-idf/hal/CMakeFiles/__idf_hal.dir/cache_hal.c.obj f9c526bd34983888 -2310 2830 7281919181668957 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_panic.c.obj f503d954c8cd5676 17 464 7281919158387684 esp-idf/xtensa/CMakeFiles/__idf_xtensa.dir/xt_trax.c.obj cf749baf42c5dc9b +2310 2830 7281919181668957 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_panic.c.obj f503d954c8cd5676 91 427 7281919157918948 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/dedic_gpio_periph.c.obj eef1278bfdabf2dd 626 1039 7281919163075160 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/pcnt_periph.c.obj 666116c0bde98cfc 134 547 7281919158387684 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/i2c_periph.c.obj 6b7ae7fae18b1902 -1040 1574 7281919169012678 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/uart_periph.c.obj c733cf5cbc3694b -916 1343 7281919166043915 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/touch_sensor_periph.c.obj 6e5dd73c41de92 129 577 7281919158387684 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/gdma_periph.c.obj 62fb3cd200cd9199 +916 1343 7281919166043915 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/touch_sensor_periph.c.obj 6e5dd73c41de92 +1040 1574 7281919169012678 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/uart_periph.c.obj c733cf5cbc3694b 309 601 7281919158856423 CMakeFiles/bootloader.elf.dir/project_elf_src_esp32s3.c.obj 9ddee9a3f4ea0fe1 -79 625 7281919158856423 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/adc_periph.c.obj c9a7f1411196dbc7 -3122 3899 7281919192450174 esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32s3/esp_efuse_utility.c.obj d1c396a9f8868ac1 6012 6174 7281919215731424 esp-idf/esp_system/libesp_system.a 86869633c5e19100 786 1200 7281919164950190 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/timer_periph.c.obj 736a437f34be6077 +79 625 7281919158856423 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/adc_periph.c.obj c9a7f1411196dbc7 +3122 3899 7281919192450174 esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32s3/esp_efuse_utility.c.obj d1c396a9f8868ac1 199 680 7281919159481418 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/i2s_periph.c.obj 9427d3a4a2bc29c 357 688 7281919159637674 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/sdm_periph.c.obj 735d309cb13a9c8c 322 705 7281919160262677 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/gpio_periph.c.obj 50b78b8d8ad81282 -2447 3232 7281919185575164 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_console.c.obj dedb338dd2cc3052 -577 996 7281919162450172 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/ledc_periph.c.obj a955767996cc7f11 429 785 7281919161043920 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/interrupts.c.obj 34022972e443e80 +577 996 7281919162450172 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/ledc_periph.c.obj a955767996cc7f11 +2447 3232 7281919185575164 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_console.c.obj dedb338dd2cc3052 466 792 7281919161512666 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/lcd_periph.c.obj 541f828d61e2a159 548 915 7281919162450172 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/rtc_io_periph.c.obj dc607da128977d00 -601 1060 7281919163387690 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/rmt_periph.c.obj 210e115ca2b319a2 498 957 7281919161825154 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/mcpwm_periph.c.obj 640769bfd4fe5b25 -2121 3120 7281919184325170 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_utility.c.obj d04e4c8c77ee2294 +601 1060 7281919163387690 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/rmt_periph.c.obj 210e115ca2b319a2 681 1145 7281919163700174 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/sdio_slave_periph.c.obj 93154c202d08a7ed -959 1239 7281919166043915 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/usb_periph.c.obj a30b9833a613cfe6 +2121 3120 7281919184325170 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_utility.c.obj d04e4c8c77ee2294 3984 4602 7281919199481424 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32s3/rtc_clk_init.c.obj 90734658f2bbdc60 706 1160 7281919163700174 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/spi_periph.c.obj a0b13bf50e5651c1 +959 1239 7281919166043915 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/usb_periph.c.obj a30b9833a613cfe6 +689 1174 7281919164168935 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/sdmmc_periph.c.obj 5a7c4f6b7f337f7a +1345 2170 7281919175106424 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_common.c.obj 1bcd16c3eeb440bc 2898 3607 7281919189168915 esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32s3/esp_efuse_table.c.obj fcccc6076c269832 3216 3788 7281919191668929 esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32s3/esp_efuse_rtc_calib.c.obj 78c99b3087e9407d -1345 2170 7281919175106424 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_common.c.obj 1bcd16c3eeb440bc -689 1174 7281919164168935 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/sdmmc_periph.c.obj 5a7c4f6b7f337f7a 793 1185 7281919164168935 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/temperature_sensor_periph.c.obj 25d10f2c18fa408d -2694 3215 7281919185575164 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/flash_partitions.c.obj d6b9be15f453e1c1 997 1389 7281919166356423 esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32s3/usb_otg_periph.c.obj d448b83e981e2092 -2709 3253 7281919186043921 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_efuse.c.obj 51d1c3584d162ebc +2694 3215 7281919185575164 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/flash_partitions.c.obj d6b9be15f453e1c1 1161 1592 7281919169325192 esp-idf/hal/CMakeFiles/__idf_hal.dir/efuse_hal.c.obj b235474f7c9302ef +2709 3253 7281919186043921 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_efuse.c.obj 51d1c3584d162ebc 1147 1675 7281919169637686 esp-idf/hal/CMakeFiles/__idf_hal.dir/mpu_hal.c.obj 455ae3735d201f8c 2802 3395 7281919187293931 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32s3/bootloader_soc.c.obj 5578771ab1366165 -1676 2309 7281919176356412 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_random.c.obj c6fe4dd9ffe5c021 1175 1824 7281919170887687 esp-idf/hal/CMakeFiles/__idf_hal.dir/mmu_hal.c.obj c31e973e750c3875 +1676 2309 7281919176356412 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_random.c.obj c6fe4dd9ffe5c021 1201 1891 7281919171512690 esp-idf/hal/CMakeFiles/__idf_hal.dir/esp32s3/efuse_hal.c.obj 11d3eae38058112 1241 1915 7281919172606520 esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj 1371350ec5c9b705 1575 2119 7281919174950192 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_mem.c.obj 77efdb52a599f17b @@ -61,8 +61,8 @@ 1917 2445 7281919177762678 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_random_esp32s3.c.obj ef60fbd3c0b5ca61 1061 2543 7281919179168930 esp-idf/micro-ecc/CMakeFiles/__idf_micro-ecc.dir/uECC_verify_antifault.c.obj 9165f8576175cceb 1892 2778 7281919180731414 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp_image_format.c.obj 909fac1f8e9f4e21 -2779 3565 7281919188856409 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_init.c.obj e59892f4db6e2d84 2362 2897 7281919181512667 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_clock_loader.c.obj 3a3ae9b3e4e170c1 +2779 3565 7281919188856409 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_init.c.obj e59892f4db6e2d84 2544 3199 7281919185575164 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/bootloader_flash/src/bootloader_flash_config_esp32s3.c.obj 837ef3a7801401f8 3233 3824 7281919192137681 esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/esp_efuse_fields.c.obj d442deecb9e2049c 2863 3944 7281919192606433 esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32s3/bootloader_esp32s3.c.obj 45b1df2b1dba101d @@ -81,8 +81,8 @@ 3960 4801 7281919201668921 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32s3/rtc_clk.c.obj 22877aedeb0d29de 4306 4842 7281919201825164 esp-idf/log/CMakeFiles/__idf_log.dir/log_noos.c.obj 79942b0ca4685976 4002 4866 7281919202137674 esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32s3/rtc_init.c.obj 55c6e59123dd0800 -6175 6392 7281919217606423 esp-idf/efuse/libefuse.a 1773d4b5081e1a18 4364 4888 7281919202293937 esp-idf/log/CMakeFiles/__idf_log.dir/log.c.obj 6fa9e23f8ec91ffb +6175 6392 7281919217606423 esp-idf/efuse/libefuse.a 1773d4b5081e1a18 4435 4921 7281919202606418 esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_crc.c.obj eef793ff4b38398b 4495 4961 7281919203387688 esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_uart.c.obj 2348380484860335 4603 4997 7281919203231425 esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_spiflash.c.obj 5fa38492b48fbdfd @@ -109,31 +109,137 @@ 7881 12913 7281919281981420 bootloader.elf 21b05ec2f3ba91d 12914 13934 7281919293387668 .bin_timestamp be7fcd5b4dfaa0d5 12914 13934 7281919293387668 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/.bin_timestamp be7fcd5b4dfaa0d5 -7 108 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -7 108 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -11 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -11 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -8 119 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -8 119 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -11 126 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -11 126 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -9 117 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -9 117 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -6 119 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -6 119 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -7 108 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -7 108 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -12 131 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -12 131 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -29 228 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -29 228 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -7 115 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -7 115 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -8 114 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -8 114 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -8 113 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -8 113 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -7 116 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d -7 116 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d 7 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d 7 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +9 112 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +9 112 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 106 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 106 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 112 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 112 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 110 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 110 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 111 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 111 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 110 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 110 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 114 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 114 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 111 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 111 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 103 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 103 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 115 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 115 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 101 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 101 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 108 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 108 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 108 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 108 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 113 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 113 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 113 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 113 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 106 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 106 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 105 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 105 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 104 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 104 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 106 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 106 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 114 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 114 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 111 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 111 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 113 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 113 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +9 103 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +9 103 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 104 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 104 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 110 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 110 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 111 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 111 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 108 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 108 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 100 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 100 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +9 113 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +9 113 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 110 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 110 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +9 105 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +9 105 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 113 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 113 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 107 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 107 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 117 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 117 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 104 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 104 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 106 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 106 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 113 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 113 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 109 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 109 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 107 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 107 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 108 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 108 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 115 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 115 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 108 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 108 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 104 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 104 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 111 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 111 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 112 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 110 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 110 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 111 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 111 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 130 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +11 130 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 120 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +8 120 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 107 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 107 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 107 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +6 107 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 114 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 114 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 119 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +10 119 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 105 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 105 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 105 0 esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d +7 105 0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/esp-idf/esptool_py/CMakeFiles/bootloader_check_size c7811d3c9742f76d diff --git a/build/build.ninja b/build/build.ninja index e1a4bb3..72cc530 100644 --- a/build/build.ninja +++ b/build/build.ninja @@ -3158,7 +3158,7 @@ build esp-idf/mbedtls/mbedtls/library/CMakeFiles/lib | ${cmake_ninja_workdir}esp build cmake_object_order_depends_target___idf_esp_app_format: phony || cmake_object_order_depends_target___idf_bootloader_support build esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj: C_COMPILER____idf_esp_app_format_ E$:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/esp_app_desc.c || cmake_object_order_depends_target___idf_esp_app_format - DEFINES = -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -D PROJECT_NAME=\"i80_controller\" -DPROJECT_VER=\"92e5b1f-dirty\" + DEFINES = -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -D PROJECT_NAME=\"i80_controller\" -DPROJECT_VER=\"42d44b0-dirty\" DEP_FILE = esp-idf\esp_app_format\CMakeFiles\__idf_esp_app_format.dir\esp_app_desc.c.obj.d FLAGS = -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\"v5.0.4-dirty\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS INCLUDES = -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch diff --git a/build/compile_commands.json b/build/compile_commands.json index 1ce993b..e78c9fd 100644 --- a/build/compile_commands.json +++ b/build/compile_commands.json @@ -956,7 +956,7 @@ }, { "directory": "E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build", - "command": "E:\\Espressif\\tools\\xtensa-esp32s3-elf\\esp-2022r1-11.2.0\\xtensa-esp32s3-elf\\bin\\xtensa-esp32s3-elf-gcc.exe -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -D PROJECT_NAME=\\\"i80_controller\\\" -DPROJECT_VER=\\\"92e5b1f-dirty\\\" -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\\\"v5.0.4-dirty\\\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -o esp-idf\\esp_app_format\\CMakeFiles\\__idf_esp_app_format.dir\\esp_app_desc.c.obj -c E:\\Espressif\\frameworks\\esp-idf-v5.0.4\\components\\esp_app_format\\esp_app_desc.c", + "command": "E:\\Espressif\\tools\\xtensa-esp32s3-elf\\esp-2022r1-11.2.0\\xtensa-esp32s3-elf\\bin\\xtensa-esp32s3-elf-gcc.exe -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -D PROJECT_NAME=\\\"i80_controller\\\" -DPROJECT_VER=\\\"42d44b0-dirty\\\" -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\\\"v5.0.4-dirty\\\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -o esp-idf\\esp_app_format\\CMakeFiles\\__idf_esp_app_format.dir\\esp_app_desc.c.obj -c E:\\Espressif\\frameworks\\esp-idf-v5.0.4\\components\\esp_app_format\\esp_app_desc.c", "file": "E:\\Espressif\\frameworks\\esp-idf-v5.0.4\\components\\esp_app_format\\esp_app_desc.c" }, { diff --git a/build/esp-idf/driver/CMakeFiles/__idf_driver.dir/ledc.c.obj b/build/esp-idf/driver/CMakeFiles/__idf_driver.dir/ledc.c.obj index 7676c6520d5a5535edd820c5fb28255f8d664ca0..280433fd2116ce7baceb1d8fed772954f3eeb871 100644 GIT binary patch literal 271128 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Π=t#qt1-fbln4f~(&L5% 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 z z-RY%-stf7w_KxVjjQYbNJ`~`+@f_-2>>s4Cal@6d{b5pY9~iSBJROid4a9mN>xdW! z;zc0zYE2lpr-3(-VAag2GW9!$ml*-$IdlM;_eef#n)jAOvglZ1SYFfxnJd7~Y zO?KjttcLeg6&$Kk!8@{oeo$TlkW-R+K)0^dPV8tHKUc| zK{RL{Ky_?yFE#qI6Igou-eGv%9tv66iOnegEFcRZspdX(pLaJdoWYd|`8D5f?@RKV z!Fa1N>VFdovdchy0)$?(%U%g00t*#A_+9)m2-E;yzpi6#a81fztms$|(q2lZ@oEOX zD2FN?N*Vyv417_}z#c>cy4_4~fb$nifaAighR(ih|HIeWDJV1<@DH6mh_+UA7Ml#* zn6VE+d$RukV=-hG0=+<=f3J1WbWCd?(SYJe5U9Hl zNwx7U8k~rVHdmZt_C*n1N|)iv44dWe3*7`I`2b~x&GP4k=Hwr zq#Y4d$p9ez0C=?NOdaT5S`nvdFTqRcB(e|(xQM??o6`Z47lkJRddL%lULhh2#P2|U1z`KP z5k|C~;MrD+A8npXkd)jawOJo63Ax$CxibKl_w_kqFjhC?DlhewpW2D!nPRPtA5!}Eavlg_* zb(rNG^w8v#jXWnC={5U#&cBuC%vMT8=lE>WzzQ4zP_YFn=m8n2VvB!Mw)i(?i`kTw zWWz1|E_w+@b#tqKH@9*1h7But5A(sY4$A5A7O8w4&#mm|I^MCepX>N=*-v^L2r|>o zp>?dFBmB*>6dLGx8>wNbzlNp$8kU+G&W2$DfzT9cA1nB-KBzfRLDwEq#T$3Emt?46eWv63)^a4=O51U%=}3!8O-H&)O;X^%e z400@c!mad*ffU~3C%nfL_L8se@sr+jw=_eayJ(J;!3sXwIScby%lw3wdHtl9$=@hredxh#%iM4)on%SrxqkMWtL!JM zo;z61j6OGGdvBQ%Zl!}7DKI6c(o9p@RhntaASDo=1c8x=7_%_`QetG|N{Nv-RZ5H; zpd=1hAW;%-r5jCBprl!)KuM=cfs$cLpp+(58eW6(38dvoflo+LS`S*Y68?^7{g_4l zwlpiaA6eGsmTW8iCQ|S5Q>PJCOg~b{`q3?F`he`xuXF#jH=9qW`)$P0ZTb&nbr5BJHC4iU7xoXOO>cYd^b4 z*qt6IK5nJmCXAmG4W1@KR|dG_((TL|oUb*v=V>>)E%1~^Imo!#ofBh;7SDcK(s)JI zxhU~_X^JZXB?J9SHpyXGZeiS)lOVFT_j8vg6=>Ob{jE!KtQg-$t1nKxYmE}wSBv7s zigBJe@zJ|ht^E5oS|_Wx^mJVC#0}^fXFcg_AHc@`#e1$J>_f$%ub(RzgoSY_L0@zq zK}irsKPCZH^fkMJ0Rj2p@~6)_iLBT9g^MMfv?wv#ksB|LPtY_`v^y?X{QXi~jPP{O zHq@&Pfkpu6^5BcsaG*%d5ApNF4}82~kxiAG(trs8}2;}sqa z?>$vr4M0No^R-`USC$_7HR>X-$NQv&0}H#cdi z$@KUE`bJ;$yt}doO2`jqhw%NrpDy_im$LGN0a|eRr2$$%fS5fLD8EH}fs4Th;1&Bv zXhQ<~L6WoLe&wknwSipk1JcguPVu@v<;zEDJ8Wub&hPSQ;`Q-bO!?E}w8os$gASfu zKKTx93l|>`NpOmVBbx_`qSJ#MV%^Su;aEMQ#rNUv$Xb|j@{LZ7+`n=1G*-t^*A|P+ z6wzk97LPv`96GE{xCjYyJH+uJ30isLRBfJv=ZJOpXcI%JxAdV$^XPL*@JBjEiKa8O z=+I=7M~_(1=YkkALrV#pZIZW{-^aNqo1q=}&o#zhuTfP<=}YBfXKDR{@Yj#~A~U1K z+4-7_PZt;GYhAcaCmI^h~}WbvJnOB%Qc9UUDm(ta-q7enfEd-;F|G^<5iOE%o)w?Cwna`DTNj&6~- zNNX?7AEijJL<eA5Bg}6TCQENyfl+k zN7(HyhxLFMv`R}UueDN3v4|xDqN8od{DCrGu$;I@>|UVN4hf;NgrGoaWpJMtZG`qS zKPiT_Mc=Qy79AuS&Ta0(UnOcsQ8ne3w|zugY7sNHw+_J*2J74qnTNGFaeR#y;e1_kP`@UIogdOrEKF)2 zBQn=&--y}w+XKaGj|{Yn`s=hr7d0q_S!`qsYk9AA8Y0YS@#K1~ojxLvK!oQPhs@U}vvG+->gJnM#bFK_Y6L&tH6E42L5cgSi4fCajs9&$w@Y*cQ ztYu%tMT%?BXt9>Prlz1Nsw1mK*`>JJqTg<cUGt+15YAzEl08qwbZRsM4O- zt7?1I)b`2q#cuKa=N)^9Q_+r|26bykY=d4)Ey=FTR4 zMNxT2{3mUGVW8N%eqf~VcH^x?*&pZx+{Yy@Z`FbI&-yEMZ%T^ap$_&70`mvBhT zQ56FZ%QA3hr*vn_1$#OFQk%fV(sStVxmUD-)v<}c2UJ?aoJ_Bs)+UJVFKfY;BeO*4 zhjHN|aTey-mED@gw~K4LwN92l?d6}or-gAb@$Tq>e$EBa5#snNyIq8ItREl_?bdY5 zuIrQ>l1jt}-FckY`&I6QiXnE1q08}S&T@z=2fHd(4sMZ^&l6?)wA%bP@!CGb!Bw-c zspxSRhV4r+=5?*FXn8qc2K9BdsHsV1*EQ*!YEnXNG%533+)rX@A-9Xa+yyPghi_?V zB7SI(U~bK;xn~;m&eNM)D}j z3X3>$XOB8!++i%JN5u5QSSq*MeL>0k+w>qtOJ$@uau}{Y&t87&Fjgs+^wMEafIG#Q!#+}t}c44iu zw?as_TD_P~ub*Y2|Ya#xU5oNbgh*cxX2UcC6Jc9vhORJ!VyxcQ=}b|Cf>G*v5_O(s1lmPQnY zs~J^3z528~C|>$P>%bT8`ci9RwUjzVb9$s@#4=>h4JO#PW{>7^73dM|G>I%hC5LtJesD9D>3?B@!Slz zUjBS7eF_(^Z5yDAA#r-RDC-|;6Xyqo>g6DZIz-}_ykt?+16@qO3!_jz7)bHYhYoJXTN76vtz734Jh#ppmlvey6ID6kY1>E_ z>8<0VMcmBpdQb=KQ0o9}Vp~}6Y>|?xpQ@~@f_qAAYZre@`HnPwD;J0EF3?@AO}WSM z&BcsH`iC*i%q+SdqYs_=5?)^{8WmcXw4xhms(38}T^~0#Psg8>bnnwXiZ>DC=eeVT zYN0T-<$|nDq-3HkzrqgODA%*}?p)*#3)EvW%u;*sjf)6b%|3iL5yz4mL?tyh+4Sp; zw7;iT&;@cgGk>;7Y85|Gc3ymytw)!4$<`Bj`Owbs$z1Fmm$zCReaM|yep^$$$SP8M z#D|I9d3tTppRh}LdPXQ+mQ{YNY@JBU*AuYw=|W$Ri?Q^zQ9Oh%@yz@J$mc`;<&;j4 zC(PM1K7?-(vCWD9U5_x)wK;OXU4uV_o&hZMg-YeXtZbKfmWrlcM$t1=^tM!}(pvy~ zbS;Eh0K*<|Knqm6U)+N)vE7*!CZ3}bsaHsfu>OSUErH#1M_`!iPBI-n^gy~r+`Wz` z@pr}8mJp6yJ~V`XARZ(9T@)3ENyst<*dHzR4AH+yOk**y6)L?T?rDWezZ8$r*Vp0| ze3gIOO8+q+^mQ`3`JtOM-Nknu^p0LSP6%UyEp#XzJ%SL1Uo?2kq$!t*?=a~vfQPYl z>>ZOnFX{E{v`HVA^yBPe6?!B4)1>KYHH>Xy29AvI!7&&(wb613O0#Go%DF`Hg?b~Nl!(Gv0dz4lcv{w z!tj>Ld6TB=+%UGA{ch59y&J|}W5Lxd9dFX7P)Qh$mC{Ulqont$f|^8-s)6%5#hKb(ZqjUiw;_c%Ve@D_SZ9SSOOK_cSGjW1O9 z5%gMtF4_#OW+ea8u)|Q{8m4D9@E<>FEIu^5IGtMI6AqBLShk^acs(;Wk#e^n!6zBO zO)U*1UcPpi?&euFXqMUrl9alE?$aS{kt>dN&5aVj4cGU^3{hpIR~0H;wklT)4o-~{ zA9c;u`4I8*EqdKx(}dE{FyY0CdQWlp2)$EF^AWlQ5a;G7EhO9=rKNj^Qtbq1O305!_cFg7f;zx9Vg0L{YoI z7UiO&PJE&PJYCEhqc5pab&11{dVU9Te! zP0)*Zq`2G%0V`WHoe00UQ6J}s;L&=N&-0a6`_*aIpHB79QTcSN&F6>%6ZOw;XgO0% zj?+Lfcq~F}4MzKG61EUGY}qu~GG7%pYMGqNlgU?liNaf8h_jRRp%~cOCkIA}-goH9 z|3<%$eZ79sYIa@}pDMZ??1BZNKU5zXhFy4%DSByeu`-36s41-6JypNkC1!jvG@7S~ z^;XO83#J)tz4nFC`Qg9%;k3V_@-!^u282fgcPZQ}hlPSaF%rR`*MxnAXdxh+hN6Xu(-6_`M^b(R z-~$LpZ*Il+P(Pf0M1{&w`A5xs>M^|-NBK77KgYW(A{_+oyixfavFr&wydE%&JEMJyMk9#NK!9u}zG)o|KO!>b=}|FIK<0bE zWG}`y`3u;C!M+)68rJ7zmKsLFwOAzhNFPRR{$_p%zQ>t3$xbx!Xnfyo;`m~-O`O8i62eVA?N^!%vYm{H zsEm}-Y@>=3@x9-~E9?v53j3l=vRpCv3DIh?9u)#6wJzHff?vQx3Q&whx&eG4;}$A` z(q!#XgriK3iNl%YXP%kgOs*!V;wY*JM8N_u4v3eQ=s7vC5lv819}agSQ+4sfrAMGl z2J)m&qfCg{wp5SmMb@YT@U=*`8Emp1;lAnH7C5OU0}!r7aipp@l%Htgn6kpNT+i^L zeu^Un$Pb5i(#Xh>1WunK0OeCthY)U-pKs<<`Q;`ag6}fI%`%(Kd@8fc#Hk-|5N?)f zf5>D|N2pG!j2eI5#3^3}KvO{42zZ5!P(D%gSb>n5jH3QF$|V&jI{g2!btmvTRqy-w zA9FZI;s}wB5HinljF}@*gpfm~gp{d}ZAug+(?ewnNr;r86dy^YL79t?WGbOl(!l?^ z*1FeuuHWnX->=uP-|JrYT6^ui*WS;4)-R$D=1utUfkop^n zhb*;;Ik&xXJHt3~_$%GdSq{%5jjw^=UweGPW?Gwb<95y^E2`O+^B@Jo)a@fV0AbEC(z1n+=$s0#9Jv`gxwV{5fW<{MC&( z&;3fqEgx@Y`39UI@0wGwcDGnGC<*VkIM4JEGtcfXW}eYY=IU7UKQwa?JV9=9VPh3x zcL5^KlS1R9#1BtS%GDCFhA8VyV?GC&jx}%B^dziVX5TzpbU3jiT|E9KXDw2>Ta#VL zpBy@*zG`uv5IW2sT+41VXRyv}yU^a8+g^*iCkWVlC&cO8Jb74>@RNe$#PbxN-ss+& zqjvr_>hA4U(a4gp@^=Kp*{~zymhbizai08vj9c5mW}ZN|uZVLQhacvoVD0Yh)=vR< zm7szrc9kU+jc?1*CouA|-_*HJ$kb$zYgKdwipuZ{@M zN;rfsSq9HM9qys8S)6B{&YcJUU|EA7j=rHeJnhNO_yPQbg-3$sq2+9(ufw`#Lo4tQ zHa0W4rJ0AMvzZNeBvKB<+swf;Q}n@NY5asSy1hRTAA{8eugpyt`=L75;h4~?53aK;3Ixwr`er@(H4boBkqLOBI-9)|g59=+Vy2IHwP zCwIufS6om)V-DP%A0*j>|3UxYkIIZ`gi8P5pXp$H%haTT$*AO`nma@X;|uUeo)tO% zp}ihd7nO1Rgww&hFt^meL z2gjWNn2S3BFn4wWeo`#o9T3ZZg>lPYYUTlaTk=1$I1m08W~^e-J}VT$`UGto_|xKS zz|Yvi2KZk9X`Tr_HiUe>o5*-7;$_WjTi(psSJMo-?~5Y8zPn0VvBEa&UPYoKPRpmP z0qxExax%^+a&T?W#}j@$VaH4Pc+MeJlCmON+dYpf1@ScD{+e;ccZIo~$ymE*GvCCo zzJx0XsZ9_XDXGs{>L#q8r;*db9PZ6;SiCjXbhxp&$8Bup3}XBck!{>q9H#Wk;zs1E3q{8l9v2>sBZf@2;zXA|;thRUL zZfMO}um<;9QW|=Day*=3F^xZV3NkZUX<8sj(js=Rp=6 zR*sJ6p1)F&ZVT6?)BWCLL7A?IwVUtAY42Vn*MoTCZpBZSmd#;iKaMruQe%%@&0$)) zOZrf};$qxak@^a%hgxbcb4Y#O;{C9u!)DlqoB0B3zCNOV$C_nsa)3GXbIRg_v8F>m zx3du&r{WM@rqP&#p+n<*?(oIW+j#Fn(cMOoIvQzoNUiTuaaTl~4%=yM@rj7j;l<(u zjHmnmI`NR@OhyhJUbsDGISp}AqT!Y_6-jh>viPNxo<-d zOEHVDGKW_s)h)gjaXRs;BtB?aQt7Nc@n&g!-ZH$K=CpHJQj;na(ih?<<*)#+=4SC>|Dpk@_M!omydS$;Hlp^T0kRhjsLy!9hbW#{yoQIl^eIUNA{2S~#qksF zs;|NvM_sJxa2z*VydlaRc>}5FRyZA1gl$0ZWsMj+DbJq&TliS`~(0y?$1<%>nB2>q!vtnH@zU{B{{M=9X z0L@lBfL-tt(tFT|bN?PQv*}PX4~TowgB&hT<0tgv9-wWr?s&je;y0{FDsnpy9@A2> zro;YJVH|1PY<2ob{QPo!$bi%`DBg#kkoqvIkva$KM`+}fH-{V3vli!JqjUcmKeZyM zQnvn_R`HwONGfN%>y4zwWn2`$zl4pB`Z?f+jW|2VZt*s7Uz+q!^d3bE#4YyI^5xYXB^v4 z!Opptl<2c9Vsx0j@zhmG*&31AGoSq4v&5`+6tUZ6U>|^i)b`vgAEpE&IjhaSbsqyCx)Ew zY5c>S(`NSL_TF;-VccBN=R|HYv5-46dcnf0fE{u2(Yed}cte`>s{DWl(ewecq>*4hG{(eM<#Pr|gWK?#6nx`3lx+ z>F?v`S0@#0^1Yw4A0iaGJIHD@yNWfQV7acVo5NVnS)BWPF1~whQvO_Z!R*-k+-2j% z-b$*J6}yD@{NKXcClo3$Nn$C-{T*VM87ub;j`6(kbBtTQdwqp?3Sx^Hx3+G#U>?Ia zEsj-ey}1z9+iB~ko!bd(e8iGcv36%3aW1?bxB)hHXWklTVH~cEwY#v9WA9NN_wP}m z@&QyJGrTXVCbm(Fp<7mqp zFK@~z$KwyK#dCOc(FDc!@Dox$bJhNKO6RVMf3WPq54+&m-AAJ>XDA&uf63x)v8F?x zob=3Zj~E@EYDMl=h>A|ApmPrfu-pW*L09wt^W5nNd9Z-F@RX*&ye{2SC(Qpz=)*l& zSbihR!OA~Y{D5!tCZXV-J6VH%mXsB1j)k3ac>+IlUaX&?Eq|`XnZL-46}~j=^En4M z(w6_F#hJgK-zW|n_|7T{VeKA7tii7q=N`K64cOke2Nbv@;=Fr>e)t&?or*YL-h>Ui z?{!#P_w@j{OkE_kl*VnPG2c82jooC%fGQ*3O=dJM@1H?HmHqQU)Mw0RMDg&14_xto z(yp$9Do?U8?_r1Rc8QWAOpVr^7`t+~S;mbhs;zwfIoP>2OU%?u?v3 z6bq+M3d{?kh?#S?l$rCcyqR-9jegP}20rG5w(ZQ!?_}m&=FKML<7UA8$Zc$tC9%PH zGY2!Bwhhd-IOp;*GY9G}77RKSUT1Ok^RAf#b?4Ihajy>GhKT3mwa-zPbOjuiKL9Me zZKa%u?^=&Dgj_s-^&ib3l?R|PenRSlF4a$OI-DW4;n+ED_aKC})y<*pGt5D}Hr8}# zJD+j1-xliYAj}Q8L+*^^)Z{Ek0 zxP$dS`rBh8Ggkg~hd2+UyW3elpH(uSGsNwnwdK@foF{Ok87u$P7;(-7cWGKbkvoId zc%?NcinV)aMV!m~_+h7P%%hTGjlZ^dD%QAsTuw=>PnyeM?e2(Z%QJVy;+3&>Z@>MB zDag~(0Y`uvU<3C-gEbh$I5svBYxkjpnPuj)qeW((#wBL$9TR(BBG?#6w$+4G?YOUm8O#{7Ylh^KRxYCPZ8NZzn-*-Si z>xUvgHxF+Ux%be}#Q?WCYA3*p;b@TpY~n3 zyB5slG5j!|7wd?&{HHCRg0;IVTidx7$H((qlTstg{@S7(=w5Rw*6um6ZRtmg^Oo@& zZEgRycuA~d7%4|n223)uPriO+oEMpU&H`74Bljqa0(aj{E0|ZPdjbR3h26)Ca6|Y$ z>xl6IvVo!ICWuckw}9R0#z46-cSWP0)@IzJ-B&`gBG%Sl*2sJSweGS;w7q|Zb2>ie z16+ux;4}>|p9TZ-mbm+%D4@du_5!a_b z5j$Yxu~=6$^A-J_<`!7rZ|3JBe1a76-BoXG-IE|}U@SJ^o&<5Pu#99r;uFnb2a-@u zITMS&{bACrSy4GU{_Tf&rAVQLdkj0{FN0w|6aV_*qm{c1o@3ndr_+e@GI+(D73-yD zto%1tki&_+nQ?2ojYhmE*3oV&u<<@~Nvw~WvGR{+XpjnD!cXYPT?vS@?e*MkxD4z* zbceaP!wsjx?r_^6+=Xxk?>_R zcAdrBVois(I~hmYKe3KJX911dV@-#~ZptIx2{E1W|5$!ktm*K8>ZU(Bt%^g=DbGIB zQBQ|HZ?kwW#AytOcTu|;p+P@$c<^!4AMpW*)8Vs&PS(+2#Od%@`H;njB2I^IBe|Ow z`r-9RhX=snnM(MPjz-0BR+Iv;B;hCJte-?F@#K$_ie{aJD=J>$V|>)&)Gb5PKE_v= zU2OlyNwr&3=*j(00qeoNh=jQmMIC!C3A_8T<+~XMXUs6<*gKbyy>p3r9(Q-gJnP=M zEQ8AG2Cks*B=C{Di6SBCC8&yYR!_TgSJdNgYnK^Y{t9U$tt^Ejo8D{DUPcj{&;irI*7U zkNAT-aH*gtj{R1ILKmD)DQDx)qq-%kIdkf=`eycn4^~~ZpEz`Q!^7PxkcN7)0b6^Bxce;lAC8PTAPKlVqbV#DfNxM7%U@8>?+`<~KBhF+Nx^zYN?_@&`-) z6Yl@8*apU0MR_!MK^kO3nH%FZk%LBlaJZ-3YH_; zAs%nP6W@kGftN~mCglRK^kot{nt^qHYcLpbI&?J2;+)rX7{nZl^L|U`E)HN>Wbx7F za2YpVYZYTrL5DYK-naNf#OZJye{6A#FGlCa|MhG2S<=z0@%1xWl#Ji~75-D;*|UX9 z#-~sfW+JwO+PVAglJQJmClxB(2raR6&5So~%srgrRliOu5x@Cx{#)WhzfQWja8sW+ zm6hffo#SsHv2Y7ty_6yI3g`GKR=4ui?=xiH<{ZCuH#T!}T$PgXhj(LS#m7U-sDYQS zD;Ymd&13B5Js9l+zMJZJlt?q*;T&(X2V3E*V=S#1GPiS%Ka1*kyT*<1UOD^e=@Un@ z(mc*No_R0&;Y7hQiy`wo=XiZq^GOPpRScQma*mH=b$?&|5kuyk&hZVb=8X``cMO@2 zJI8-xHRl$V-x)GragJBqhkYoVD|5;CuzlEv;XbisRwSCsI>%o_V&Nx!bzO$cjhy2@ zu$og3OM8aQot@*w_9t~OJl565CNgB6;vAo|AFapx>Q@*tFLsXaVf92`{SHIscb(&T z4qzYlH^X`8Z~*(jd5h&oR+`T`Z=7@>>AgbHN!-{oZSYB##kmS6;>E>xio1#Xh^L8H zig$|7c}H%`{1q@^5d6ae!L7v)izkVfi2o=4PJCHhs7Rv!YDEer3TaZ&Jl^smev!f$ z2`!AjcoEMW4oc{(xNv+Ms-reV6CFMv9wmNW{1R>FWdR({(F(~~PxH2q$@$XT zAI@(j>4^9TY4EF1X|hi_tdF(qjH??o51UgQc1Kiw(7W;U1~zL|aF_ zrSTx~M9H5<^I;9k9EmTat)Er24QPEZ_y2Qgu#e_r1C}EaKSf(dmuTzgUva)-h})hO zp>4(ANK^grnFl z7Oc~Q^f2Gxdx@W=t*$)ez%7Y>iqY0jX^B^+t)F`Iu(2BM@TSpqN1Gsca#bsvh1BaZ)X}ipZi$_V$v*LN; z*UeE3%SNf#Mn8ujmXA{tgZN5(lD4CAp0;^#S>mzciGGr4+kqR!<%{E~cIc=EE9?@g zPum8X(>9>?(zu&=h~$r^?FxEY;?L98&&#wM5cYp*Mgi}QNrUaQ?b#O+-%nddrzGbb zZF`yh)`YJYm!fUQ_y;I5MYe%jQqhpM4YZ?e(siV51CNPEil@`IfqAsGeO2NsY3o1Q z#DaCYM|@74uS6oJs<6Sf0AG3J)eaCngKB{_p>o3KN@-TaF^DM^#Xaq(;7we(cK zv3F_P@D}lhFb7dD6W&T@+%|kr{9OrbKQuneij}_8KWXdqnz%qo#O?4FqwVySmUv~_ z23L=s==*ekU)9`|arVRg@6CeE{6V1t@e#CjG?AX@J6a%KF8+YF!SN4Khjagx#J{1f z&y#QzIz7*diGBn8Yt*5mWV)-5-zf20XzQpvZEb6aTSE*&20oQI|I&2m{|DNxh%@v=KmTHxZ)3slWqolc@x!#uk4Gi`GHqAE za(cY)XC)k-32%^`4{4i>A4gL7T#^n-{IK|f>4oUn3ZT(!N?MPe^UtcElgZ(eW!Z?5Eif2^dEe6^;szqBz4aN6M zes|g?U_XgJMq5AQC1*0tk5{<7%7S^NcpGhd{26T<*emhxXxqRqw9W8KwDtL~IA2-B ztX z$+dn<;_Jol(bnm9@gdp|;P`B*B^s~lrB zY1`PH^k^S%28Y+u?Ifog&26#Y9-#pDk)&bbh~}quSSCt*I&FiVC7vfa%Ot)+{3aZQ zQNJe@Tg2OG+p{m}=lvk|Nc^be{~-REwj*&-{5#B}a+&*|tz2Rca*FfN*0>10(r>to z#H)y#(>ANy(sreEmUvIvj^d;AXgjY@xPsrn^U@$r+f8PX#Q9f-Lq{8E8|YT?e#t*d z+kj3>{9?p{jVM$3L{bjgIxQ}~UEGkiJ#I-=uWlm*rBij1EkGB51R^a{LHqcWV453%D8~joiiO&=- zrLEHqv~{|bzR$PaA^E@3Hj)3MpJWd9KT}1_MpwY66>vx@MBAlRR9swgDvKM4Thjal z2}>K=`tK+nNJn=5hO=PjFQP3znYNDR(e}z_A#I($F5W_0+fQhlykATFTiW`JPO)Ge zT@Yuhl;|iAZ5u8q@l@J6sz6&mHN~wZzXNSM`Jj*c>#r{h*3lD^G={cL=ZZh0?OYz9 zhx#bY+|Aidx^F|ETJFwovxDjdfGbukhV@g z7ay1WpJ+Smmn8l#J;TqxSaQ`wQhwSxtst%`ZcW=jJJ4ZPOS~^V!|%Wo^yA)RXzPD& zB!!Q}7wHYY!N2qnZ+?82X3hIo-{ zOVHM~JpH)O$DcsUh}WlGpVth5Zd;Vf8sT4;Az@*6pPJ~oL6Y;bAx!R zct0KP|3_J{4Vxq3`p98&DJHKaB1vR@eq6&^GG%;*H{6^akJ2A$qX)Q8;`|cUE%# zplv6w1oQg4DoOkmy`j^hV*Uc@(73#qzXUhr*OPc7aWl!eU)&SU6FTkV8pOxvN`4?( z?CkeunfMKQgO6{J_l00#b3ZYD*4g;h~ys^|K#oNNwM=%aasJ2IBV_1QMpc> zhqghK5#K2uAm*Rh4f)U2=A0g8d`|NJpsk;)63==E;x^Fa zVD5hj7HnhXX=_|V;%T7)@;lLXYI@OlmCL0coMs*(IT3A>ae{aJ=Szw279U9D#5*P@mx^-KNsKVJIEA)7DlEPk=ALH3URRX-s^VIb--Ncy zy@SLb@b;7NK@`~OyXf>$R@fmMB7VX*;L(oF6wejE0<)hp$XU&}_4Af^gXDi%hm+9u z^0ZX&7v6_>KHB!6ki_p3_Z7b;-bmYg*-lq=*6 zae=ys+hi_Ag8qfE+?1R(H$0X-x+IH+h z!cpvZNs84=BxM!nq^;9@;v(Wwv<;{NjTfI>s=#UH7L3~Uq+aeeWf;#T5&#GPpy=!4>(Ft&wHcd(;Fq`?UBXlXEowtLx25??4@0&@rM zz)^gMaod4S;twSMvj$P3)5B8nz4%9%oqmE&|6trYy&}%sFcHr#zFwSPTr@a}#bT+U z0N+O2;i@BUMVCVYmTnDUyLkH079T)c+oxzdS`#EbU;HK|}f-xon~XiggA$Hn&m;=5ne@PzTjFr|s@toQ^CoSlV4ZlQeSeimPpoPQ-AyE8GMY_#oh0daB3DJ8x=zWB!E5>aD@Y`BBp9>gY=N`%N0h2HAaKu)M*N8WX-xu!??-cK) zZO6V5e+P3AA7fj;+!^0cF!{l#SmQ))X>mQ;o*Oiy@${a{JreIk&-U@&v~6>cc%tM_ zqaXJ9b9~&-goP|vN2_S-XubGz-@vurN85moNc`=c%Q|3wtSw@+V@q}OS?=2nT{lAQmE zzY>2-&+&shD)IB;zu_os;3_L@V>z1I=+Hh%%-^Wafv!fpIOCRIN?cJ~Rm?9Uhx`T! zN3j-(Laep;UYdspOBeBDw4H*Hw9SJF5}!)j-p`}0pI613T)y3jwy|I{^D|fBH@ug& zj=ra@qqE{`l7C$@A2t6`x5`u8nEUI@qXF{cSw8`=0IOU{sqauB>uM<=6@J< zta)M&a*C71H;Qi(r_z1>pv#II&~^%1&~|FtWyG=n53pc+{0QC0ck~$D*L$RRI&GcK zqpj0dCBBjlN0GKZKcxHmK0l`;D;#0LIz2^Orxzst7j2#9Y>~*xOWRy2O84>`NQJ|9 z;>$@+E!yTv#Qy;h3JoRc9&u-SuJ80gi4US}Vl?jsb0v&F{;<=KuT)csQ_#tdyhxjX+_f9O|(6-?t;^Qy}u@gDJF>V|FQ~ZzQ zU)LHrD_xhd0yNsj-znTCZ&aNnJK^Pp*)dW%O%{zTeN_%w;np{<`K zbT_*Rtnvjnz7M6r=X6&;?0phHLR&{a(Ket<;+%IQZabEbwjC=X@sfA*CSV=akfb!) zI_)5yC0<6`FO~8 z#XZFX=$HL~hQU!7-AGp0NXNh&Y3EG%AC8QNX)T^B`O9cK66++sS-hLJ({YIQrz47; zkcxA(jqVC<1Im0)!i8w-s5osC?RJS*qphEYwDr?c+}-8dO`snOo&8~X%vE@gq^+Z8 zXzOUY_%+F2Lt8(aB)*Ndesr*)=@EWbvj(qwDr?W z;`h)PklX*RELcaq#iOLbMA|N)X%e49+nz0#oYl1T`HA?tc8Pf5c6<_O6XzDGs7c$* zzmx9hPe(I2&D>6My3saCdx-l;&M@(~j2!I$(-{T)nlee6MZe-VJfF4=zbbwW=744( zZ6o70h|S{vN&c6#?eI~We@=tT2}wE)v(pub|HZg<`mZ?Ky@_~EaX#^l;#L(wNv^|kmEZL{$LUCZro>@SJ)!{2bI z^U$`rg5nCa^;46^q~g-R$Nh!ef(1Kg9cb(5LGe)Ez%_n~wgF9&_zSf4vq*AYqpi>X ziNCxL+Ycx9EGumG{z2osak&DgnX}@P?2wa}UgvXC#DyiNjJPU2-{##2POXz+Ggex5+5gy({>6L(RSokz)`4J#|j(WR@(OXQ}I#SIyz0; zxx6UxE41~Ky+fj(>&2yL-%k{)$byZiR-z)-khYH6Nlr)F2KShF3~fi^Y1&TZG&+wz z>@UJ;=2u*fpMSBH(qM};*e?DAX5;+m>l?=H)O;sCDLyOyP5h_$+6_|3az8tb&ncgL zTc(=v56a`}?8J}__)*$+Y80LBcZz?fG|l|15-%+-FFCa( zURT^ma_$as?ti;bfP0Gjh##fX{XmC`pMZI4_$vvfNd7eO49Q4m=kdbH~w`+sLf0sqMy=7!%zUPs1lV_n3(#QnsBXdCnh@if{_@f_Ob%0fDP zr|@+aY;@~s>u8I3A8j2Sp{=7+62CxOKmXF!Pd2<*4lY7lKT$~*Y|>Sbikh@_)R?x8 zx{9aLcG&0At^DDA1rEO^WVz(LP1_OO=#Ar#<$X!|n10oF^tr?j`UbAzu=sn)IVbUp z;y)yZuinETvUS7uLm?L{Y;SIqq?^R$#FfO=Y1{jH;`?Yj)Lm)3*~F!Hh;#o3v0!^V zinfj>ieCy1kiUesQ?^Rt>uKxfL)!Y;FFq>%9nN@m_8%*3blD$-ZPbNn>*!W-ZOLgw zTid%Ne!t`o6HiGvimgc$V#jGa1;5Z~JXrX(&2XCeU&*@nbS6imEyJHcVKR~4xTCP zVB9vmQ@l&^57R4SZaF9MUuphPcrJgW`%c@T)9gJGo#qnf7Z((#ic5-br>*}^;vV8? z1PgYpkEQFl@x-P`dFeTm>2f~jb9#~YKHB;`B>6x4d>nr)|4D=FJrfO* zXxrHBVt%?24rwEa_Z1HokEd-XpQCL+v-n?yJ>t#7x8=WG0b1z!)3SR9HH&p z9~YmJoZlq=r}!V5ea2s`lbn)V$aNko@DR3CD88;v@_msFq%%TcQ2oRcXxsQR;;FQC zHyuuclhONZ#;woAlD|y+CT(q_btr_!yCi9k_^|kx_zZ0wor6O^e@M<1ab|py7V@*h z$dBBpuV;nrWqxr{X;55T3g*V@VUKG{ejRaRadUB7ar<7J7q;QftgyX#NIXFN6wSBg zu*{+DP`@r-FaA*co%qjSUKiPWCps!5E+wuiZYXX|1DxgoBXIebecjbw;$$;a2zwm0vJ zw@A)s65l1>D>+B#rM}No5ev5ApT!qo4q^uL`X)AUU3(3cX4mp1~EuHk+xGdjkYJUb0og7FP|6Kp;#r2*NZ=w2K#91 z=!nEm(bmr;+6MHmIA1@+Z9qk6*AMo;q*PR(t)u!GNq94rwocp8cBnhib~*K;8}k^( zV*TJW^AO32Xq!V5=*S9_C25u<%@xm=oaOW~zp=HnZEU^xU6_O59QurL+tw~|v{xE@ zPurgTD)B$Xf5YsQlPLGYiB7K<7ZMj0mlBut_Sat}7Hkh{i`&q4&N|X|?$agyFl|R- zIBoqz;@OhFfVO^?KaA~%4XkB_b@YKW{#g7SZ38+(O+}}AO9ClGv^qP$jMLJaW5z?DmhU(Db$jr zG;u@8xr<)zH+&y$8}20T3Uff5Q3DybK|CfN?(-wp(*zc5FK77*7oR7d53^HDso0y0 zTc_*9o5fqjpNhW_?;n8ehmO9Lieof3#^sFoDs59O$3WQ5YhK#og=srNx6#&5C2`Y` zkL}0WuwWf^3>Ao{)7H^I+BzC8o+|mXY3pZ!#Fx|7&nC&)0!N|KZ&+a)I7!>-I7f#` zN0;C+!5_bb)66*rC35o9VbY0J?kwvZHl5TAO1f_EW`m z#2v(g#m~@o=4Q~f-LA&wz-i{ilCz4oGq={;AD#7*v|YSQ8tf4tl$;+VeoFkaH;wLUa$SE3PQ{{2$O^KDU;5J8=h?ee(9wn{oEZ z{eL(V;K#+o#gTY|c&d21_$AtQW}$cq%t7qIw%&n@hdtZGB-_hv;vMmJtuRgYNa(Qm znD``Z+dMDM`WWJN>q@5W4sxT!Z=vn1l&7tq8s2`Iw2}txY3rz)#QV_J(Gc1?8ZDk7 z`7hJf&r*r6rmdeXk8zq<(nqYYPLGOzrtOyY8*LZHe{?P!ZY=yQ4{7EkIOG(h?cf&? zr-qz#G%hC=dF^g0)g?GS$^Ip2s+NX}{TIodXseMn*u$#ikw{|!U1 z{WL2Sm88=2I-gWdTv>AJi}@#3L;l_3dui+cA<6GgmqP#C|3N6Ev4G`CNt#I8ASR2a zNzTjS*Cgi+@fzCt-zoWD!%?Q2{f76UkY+w6Nxz8y5oaHo7+fxKe%kseBrXcG|C_M6 z@`?N?Ryk3K)sO~v(sps(Bk_mC$HgY7MPtDLZ_7&w@#~x>xvtS zTZ-=%ccyJyeP|5A?f*a)Hu$}Kg0A5`8cs7m!?@+lplv{N#4k(EYZ8A$yhd`i4a4@s z#y)064Zq>fU~ZU)^bq5=v7_P>G;+9Hr0tOM_c4Wdc5yD4ee#Ij#JKAd`(G@hfTv#K za^mXZ+Tupyrs6i@d&LjZHt0v_$VUA*3me?d#GazB^BxDMnWsuloVKI#vUri?td#f~ z@jH?eeawPw;B)a;FgKhR<2c5+ZR~{jocN;niugZq_7RDGa(VmfFTYe26sL+yiYwAK z=xX9xFb7=|gKjMO&BblS?MGnyVb8irMGtX*@gVUC@hI^`@nrD}^ag)gU!r+vx&I4L zNMixZ3Q2m0w!^+j{DI_rD)BGGyJ_q5koZU125|w7GUfLhzJx-W`Kl!4d?GQ3WN|*) zI=Wfn#l^SL)@LR09kg#7#hS2iqaQ>IIL&;Y#Jh@niwB9v(gl1!Q^YgG^Jp9NB09;> zzt~a~(vp1RHInomZKq(1c)R56rmgJ{5atR+rC5c>xrA0-TvPt759ldiXWtHKm){2ik}fL7QZRpEZ+Gf@Bh~6 z38}a!{!g51WMU8n#ihgz#I41h#RD^p{eLE-fS2sz#o{&Mo#F%H6XJ{F|HQdRC3c_` z-PQKKs#G)(-!1Md9x5IuenGq6Jzr@)_C&rjxTtQq%++5s2JkUEH zbxyt^`Dv+mG5%ubl^A7RaSL$=@j&sD;-|$k z#BYcttHf)??}@jFcZhe2_j>!2e^4rpihmHF6JHcx7XKr@Ia6Yf zi;K&M%kwvwhr?1`D)^TQL!5u(HMp^ufA~1W?-BFQM~3(V;-2C@!QB6Wp#VQ7o=;Cg z5X)lm>*7`74dVC2+r&G>U%^q>z+S01Bt9xWBR(g-B)%-plsT~j*~I*%O}5=AmN!v| z-6Sq1E+sB2t|qP}t}nh*JeZ#7kLXZmKmTH*q#_be5l<7(63-RCDt=A8TKtxHvu;-wkJ{=c44h{e{3-xhx$-X{K3{Dt^{ z_>h=?zc38?Bpv?J#XnMUO`JVzqCqZkG4ZY9YT{bryXdk06todX9i+g&YZ#LHiwB9v z(RS55EuJc#F5W=nIR}^b#M``mPdlXIEAd|OA@Nc18Sy#sCGll3pXP@FWy^-`heDE6 z;&E&39 z(MQ~0{Fr!{I1*0~KP!G-{6BiQ-{Fs3V=H_v6<>+J6(14*C_W?pP5h_$KXIlUeh_Z| zb6bI9x?X&v_$F~laT#$XaW!#0aU*ey9K8SA-nW*D`^684dx(3B9~BP~j}(s)zfSXM zGv72?l~IVr-WG2ZZxinjeu}e~MS$tKT8E?mh-)^2H&MPh` zE+Q@^E-Q{IOQE{B1>K&92!AG6+)dm=+>f@$`*HMO-}Y(oRPl6gfBn5A6$`}6#4E&a zi#Lk5h(8p6BmPc&;yP?UjP$fr{3E_5E|fEoUsPN|Tv}XFTvdEWF!#S+D8Nm`EyO*< zy~P8>gT*7nqr~IIli(=q{WPg~QM^|Cj(D?ptN57sg!m`%`Glib9(;fr29Zx(Q(Q;f zNZeHXuy~+&lK5Hi3}-+8VsoTozId^CrFe~aqjvJC;TgZz}F2?i#=Osmvt`kCIR%o)o|Psmuj8UVJ2Z zeXa;!I^uFIA2wmmoBWM!Z4%p7=}gZt=I`BjWSX34#LtRf6wekf7q5h)u=nd&VWZn7Njt;`#D~P^ z#23YR@rg+IWsxc3A_+&aTM~s>S#bq%b#ZO+o#JNVyT$FqUBum;)BQQ?BNhF{W5pB2 zQ^nK8uZiDqj*l6MH;nuH&3q))2gQfQKZs9>f2H5_{bac@abR9VCoZG}v1u0Y! z^YgCIpnLM=)d_ zBOWiFDxNNmi(eKm6R!}j6-Vz#;Q-y!59pBixcH>_g7}j7Z}C;}b%hfBCwcoRlV2(d zii?X&iOY*Ci<^jBi0`58zCD=k=67;vAx;@9jFO5-JViWBJWD)R{Hpjh@oMo~!QB7N zp#X0ce=Pn?yifd%_?Y;F__FvPapuB&V6ekd35D=G(W;5-i0g}6h+B*A6L%E%5cf_v ziVa8HWZisRx1;#bA1oc;WZt(A(6;?3e6;+^8J#rwoZ#XpG8ihqfu zkm;txDaa;HqU|)5r91lBTR~i1Tw8pnxS9BFv)li6Qqe`+UED|9Up!R&gg6pU5YH3O zzX^YzF6_-xsd!!dzW9I6@vGx-Pn%p zxViWN@q^;Q;-TVa#LtOmi063wiMv`V-V$#Tzc2nuyjOfud{+FgI94=qv~m<}oham% ziW_NrjJ#dq6~#5gcR0t7PQV#$=cjcahRg%SkBLW#Bk?5hv*KCex#ET5HcOuxGm^;UsZh zaUpS0aS3s0aV2pzah>1@r@wwEz|F*WiTjBAi${ycif4%Dh+h}4f_sL&-y#(siuZ}X z5&tg!OPnh;aTN17$Inm3#hZ?u!%`+SQC&w|U)+su6LU)saX;|@@o@1-@i=kxv=m+t z&lJBTULby5yh{AGc%%4p@mJnajLY%V#GaiLClyD$6%w%I6&Dm25tkB|6;~El7uPS2 z?S~EADHScncZ)lUyNG*=`-lgNhl)o9bN{1IfTxJ3iD!xDidTu(inob(h!2Pl!BN=z zpQYl0ICg8|2xS%DLZ|V>;IAl(Zx>e-*A~}JIEpn+6k^TA?Zh3#UB&6*G2-#!DdK73 zxU-*sv6rRdRq<=$wc>Zgo5fqj--?fje-xjIr0|>gPw{_Z{@=uK*h`7aimQlgi0g_Q zn%(}lkc!sg`@|i^-Ng@y`-=yOhl!sQk1fHE>ueHDl!}ew&EgNmAB%U3_lv(1e=q(y z!`S}|8HHHvAMrJDu9Atvo=03jTv%LETt-}7T$>KRM5?J&v=p}&cM^9OKO}xsJVZQ3 zJYF0tYs7Dh-xF^Uf9mb$_!m;K zSA0->Tzpb|PJB_Ey=-C!a*1yc7bwd)ZhKi)Dk_Mp({@yvO1!1Gt+>5-fOxQYL@@V% zR4Bj`#LtLl()Jp7nZ#F!KcyS{Q}%^;ulS(&I2?rrC#B+?_@el4@l|oQ+Y=kkDb6o0 zC@z*T{`h*L5UVY&D{d@qF76`kF789yDH|d2QR4B=e*VQKNyP&3tKt>n)#CNycf~ts zJ7otYepvi>#6lx~&aR5Hl}p5Pit~#Lii?SF6_*!R7S}TO=BCr6qN%v0xUIOoxW9Oi zc$oOfc$Gr+3PvwVXfD0d@AnFcuNJ=}-X#87yia^sd`x`W+n?&6rQ$MeXDDa+!~sth zm!})}fmRmR5~qoqid%}?mT#WusJ&D?DDEkKSUgZXBEIcP{({kX2~85eB3>k3E?z0# zD&8*sj9%&Y`>@21dHaKTN-BO5UlnJ@Cs^SC77!N}r;1C8E75j>8cV!+1->0-XQho) z-0Qq?&dbU1Oi^t=`Zp^g*Suc*u6Von6Y(zb9`SeL@5QIZ(a%!&LwrRX!+&83gUc$u zNnA`^N?calK-}2dpQ5{@qK&wxxQ}=sZRdTA#K()Lh^L7cil;r)f4^X6c-hzic1GK#L+7k3hg@z;^H-U7VV&wm5K`D`r1-=@RcH9wvTL{A_SuoUrFZ0bUeu^cv2}dlK3r-XY#8-XlIBJ}>@F{I~e3_?jOT1qE zzW9IQ&%FH%+$9zJ#ovlAi~kX4sg>A)9O69UeBztL#cDm0Xk1Dv%8ILqYlz#^`TddW zBr}DoArjb0@|J`*`-QtQZ`>ZB^zH^@jV{0EWzinfs)V z4`tl^1mmN9d^F>u;~U;gE>Ul+4^3srJe{fIeS8+<=DCbd^zm01pBO)N;?5GulYM9v zLzCmhN_QxjVsC)*kuSV4n-qWQSgRuO>1S`Mw{hp1=zQ|5IPj>h&SQ*;BAy-~pnND{-#5faz-Aw4|)S4Ama8tpi1*bxoE^aE=wBSq#(aj~?O&G(ha8iA@ah_x{yLn=BhVvxMrA4&OpQYm0=}EpHPNLwo zv`wye#O{A%+1)VS@15kc;iXDee)$2n6E1h9!ZxLvm4X|%aIAG{xRG}sd1uhQBV_Yu zIA5FFoVm9m+{))KtpeM`xyt9*_C1~GBR<7x?~@i_T8D3S6}khqX?3+OY*T4C1{0>t z?@eHvGQTy0ZJKPt0K#ne@GjV9!eheWe4+rt6}MXA1drr=er-a)B9#;*v{zD zF0h@&Ufp5eG`4^q>$-`xNQdq8eTu<^Q&zPfY^TZnl4UzJTXSsOwIR7*xlskp7Ui<#5Bw|Of3C>*g<7KTa1DDw=&CyAdI&lWE<&qw|n;&tW~ zh;J5eOE`*sVue*m`qI1+-fR80r9os4Q5`(Tg@flPt6hT=CR#YpbwhM!^g!xn=2yzhxnQ}C$_@9XHJT^ zn7KOQWz2QpYQ=FEW&_-*WA&_}E!UO;xT62z+=yvyTWtK-Qk7i z-h32z-3qu<$KDigH1i?kf93)3PVpY|V8p)@|7aeD_%Gr=#Q)L!)O!??vfb+UY#f|y zeg@8OejYAto(uDPM?4ZQ!R5u(#r4d*ESs5MgYOYXoviQ%D)^luc1k~NUI#yJeg_^U zo@nMJI#oPdJYT%bydC+gy`$Jp6xLhCS1`X*#6cW@cbIvJ?h+pme`h|0oRj8r@Okm? z;(yKOk(0Ru&ObNC>;5`i7xX1KkNHoyp!qMjgt&s4_l8>HM&efDPU0TH*nVt)6|TWU z%vm$VVq?rV!c)ve;F;zM@O<%d@mu2e#r*0Jcd`=N@~cA;3)N9LW)*c{en*IL`cHAT zl0M!P@f2~YxgFxSi))D+iuo-c_TN4euD^Q|g;*E!{pg5a?O_uAu(>n*n7Io)!u%lo zl$lTJCz<)Hp6aT28q-rGK2y9vyuzFh`EQ%~^o!r@;UMTw#JkOW#&x(9@Bc_*;iObtF!QO^6*0fl z!+ge*#f8Kr%t(t>F!SkGEpej^N3mEdD|ACr2XS}t!)8AH8X|s5{ET>pc)poWzm}V) z!f(+LhRMQ4srbM=1MyGAUyBclkDGa)KPUd(yaMt6#92!FqsVxa(+X=)xZcdCUj@ut z;o{~m;nLy?=5G+MX+93u7vE__?UQ_+RYvyF!F8;DKw$Bl<;-FP>}c($KM-#>b7Jli9}piA zpEh%1o)`aZUV`n%GUHh%2f^8xTg)$Vg?K^pD&*X3<|Mt%{2pA%{2^RJ+{nBa@#bQF zr>jmQ9RKf7(a9?4uI8ig<8)&H3%|z|JkHDs`a`qLy-T8nG<%mnBT=>pNt8=xW_8!PUbJ*ba5~9F2qODO#v(u#8b>!5T7ZYZ{`GCE{@)k!e;Tu;@xIWOnwWC z8|K73DZU`SV&(+QQr_p&{Nfec(gnREH_?h)1t(oOaSd@paVs+?W(PATW_K~aV8x9w zKE(V0{FL~a@;LuYV#SMA(FcB6yiB}C{GND+`Ej)U$~+bRR?M$faa)X^G|#~HV;4gK z{!4sKoD=V^vN0!SUU5*h01I(P5WDWL-&2YAe>A9tiq2L+KV+^0^BZf-p+|_viKmL==4Qy}H`dse@Bge6ug@^f|5hvX zMAA<2Uhxs}Y4Pvo{%Fg?!Hv;LW6*@wL(I})@#W=XB_#Sa*@k8Q) zX5Je{h$o7l7st(ukRL6w!cr7gi#M8=Bfd@ixp=?$nE0%D8`@qH$Ex@v#CR_6D8@p5 ztM~{mYTgN#6jw0sM!cqZFI->T-26S_ZOv!k&f*^CpAhd~h4+7)g5OXWViojgGv9`J zTKv2@JK}T91>l#=h2XVx8+3x@UGY{kFYlefy#MdD0e-Avy%nu|c^7%I_Sa?=E-Fyb|x#9)lrQ$clYt2{D zcB6Qk_!D!)q_3@T9cJ%0;$!B#h@UYRgD;AIH>V<=3pe;W?a(2X{Nlo9&ioSM3e|c4 zM+46MT2?_f61NiHFYaN^hx|v(W#D1rNIb=i`%!FWhH?JqXB6<%*o>Wuy(Q*%AvsXS zcZk0hA2v5Y&Pj87_=5O~I7)yQ$wACU(pd3i@eAU4=0(U~C|+jflgu~G>){Pzewh;6irkaWuUX)+!t$;7 z2Qw$m&*I!A2J9I+!-{45oJiuuPTnZwI0x0#n&0r4$jenpb`yv(YJ>xrA2aWzG; zc8Nl)i@3LVuy~Z2m)X;1PMsIT^ThlTBnQN+Y_)i!Gmbwiwpj%)v(Lr*#mB@yiTPzm zZh)8BH8U@>ocLs&ar%030rL#RQ~AGGn8ZREF~8s#;&+(&{H}?(wVAK?I*9oNN490W zhj|U$*SrxPXpXj`z^^^B0UxRORmb3|=KYAz7QZZBY(9*f<>nLc+veZkE#i;Oeb+A#~ zUwlmbllTuaub}9f6?h5d#A_@b7COK9W;0(#l@?bKrXcJac6Na?kQBi6dtm|29aPViojUGe2xzDqbW0z}yQtpNMyxpF;ewc@liaJRQC$ z{@srP_kUF6s)s|wM~zIeHrH>J14o5efCU)SUPzngzreb_1*pz%pFZ$uZwSHxNB`=f>V8%q`!6c;zA zBd46WMuu_z8)OvlMI>4TlqjHB#}e z_#^RG=7q@r*328u3GpxD%jPY};Wv4Cr0Kk7zQYm~l|pH84f8%EH4wKn|AP2^=0D+d za|{!?pLl>dGvedvbR=VW&O7@5%DNl)n#=wV;JRBt&D}Wjl!p}4auGr(g>bh*RCXh}o2ODJF;7uZ+$rSg|M{NZ_iUfn`Tt(8 z>vi7O^}Vj^_k5k-`JLa+{F!_W$PvDTyhbfY_(t+J@-FfL@^Q5s;AhoxfL|tGPxaYL zBmqa7?Iy6BT$7xjmb0KGxt+QN${#0ZtCLVZg8ZUdK7Ux#0vUL|8W%LyGV=Rsj2%`X zxk!y&Z5>dj!^gp@tg+-t>T&33COMzHg!~S9v-)3XyIoxX?;#)b8{1z3$2G7NK1=?M zd{ey+bwb+NYf}tYB1eaWo@-KUvL$aE$5CJ$C$L!A-ivE)hW>!>r6oKIdt zen;(-2Aef=2i~rhJDGdP2g%3Pa=Cq$e3^V*EpO%W=O(i6#TCg>?PdJeKr96sspT5J zr8)ynC3hxgs=J`hK=Ls46DS`?&MP(c|7^|lN2LYoZ1_#`D)k7IuUE@+V;_+}RgXjY zE_E*arFss0P+b6jFZN;WS0Hmn1LB{_zpGcF{HA&Xe2?tHi7i`k8_FxH<^L2`CP$NN zk$nl2X{P=XjoXsb$(_|lQKzT+6x?5Z2F_8RhyOtyNgiX{XWc-he`!FRM}C<+m%Kpj zcH)y0c@_CR@sfbvP?x$0#oUqoI--mG4WI@`&6)I}&isFsg% zCw!VYg3LMcMfGVPY$<$#JN$EnMqyb-x2IaMwHGtKHkf!=C4pa!eu zfEqy_OP-{bV`wHhpS(mZ$I}|}#*Q-nW6dP6jRL#L2i0;w9aqZ%b(VaYd|fTako-NG z^e+x4N2{O0{H-|63`3tn5e5xgqxDvlH04B zqt0XGzT_dceO3}GJ*xrnc(RW?hx~>*4fU6+`@!##KO}#u9)dc1$zONI{+G=tfgd#> zTlIokZb)4v-y*wksVr@!P6WBSdOphQkQudDwG2u# z)hpn9^;&p|dIP*py$LRaeX<6U*-C)};%88Z=_vU}wH#a*$XC^J+}t9&y4w9nc?7ve znSEAW&B(#kRGk2~CATL(rj`MxFL?<0S+$HS0g{+vA&-NSJUor(0SguY*`Fm;^ za6Tk|O5UrMLFO>|2l9Ef99zGWZw8h~0wLY(r4zf!)zxEBUPnC_ZcJ`XPFKsg(w#hj z{IuF91I`PY5l>dj;4?=p2aX}HB(GD;F|=L19o|R&n*6<5ZbY2yCgVT$#{p!nN#HpE z(;afiV|KY5bd|`_YB{*#$c@M?$!X-S>MAn+_tuOYbc4ww$Ya%V&`l!GBR?9(moh*N8En88_E2`yqiXzu0`x;OtiJYpI zgRZlBE}Tj3M;@$}gYFsf81h8&G}}J^6OFSqAfwnk@*?s|@>;bVq=o8t;T`G?@E-D4 zFgv?nDd;$MP{)>E%?0Vd8EA=a@55UpnSoLv~*CRJo|A6^hZ8UQl zPA7L%|BCV+>TB>o@-X#ZC?8FJi9CZmkGvT6$=XZfRT_|c_#4Qdkav-b)n3#;LO!9c zf$}rz82A^pJU{Y3b-euj*A2}yL%`}`Z_?Iqm^vBusO5gXSB*a&vl@y=p&h0N$!*m# zX0#)BCHL_g+rK<24bng)JdFGtd91oR>P%F}!86ni;8(~6YPqOcMt(;vx9mRfQD&<; z4T1lt+rtOdxc0D4s4+lV=gGgRaeP|W$bYM!K)HoSJ7jBRffdwp|G}!F8TpJ+gIq@~ z14yD8?X4E%RJDJcP``*endE`wVdT;B{D&-&G{~jEOm!~G^VP4xOUP@<|0Zu&uR#4G z^=kOPR|4P25ejj!ICYQ%{l@*Wyr?PqzT$5av+?3o_>_cN|kU@dR z)gPn0pL!qs6nPXmmpnuLU(|m^eHbnvFC+Wj(aaH4`jGso`g@e`B_AgLKt4~tLcXOg zK|iicdu#mnrsv_*?QR^3Upg)cJ#ahg`n5y|tF0PGxdUzp?!#P?rMD$PcS!Y(d{ym} zXFhLfMjopP?PG5)xwjuizF+(zdcjnm+*mDVN^5euTF#WNI|E`uZ<)#|Pm=%HtjbsJH zmB`U*IaA`ujmRygn(#@=S8RdJgI=A^X-)W}|um zDs3b0BJU?3BcD~jg|?T~h46K<16LlhwWPeFZJ+fCGEo{3*Csbm??w58

s8@)P8N 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 ZNCS|vkp?0SLK=*ev*o+RL!S8U{{XbkOBnzF diff --git a/build/esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj b/build/esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj index a25904a7327e175f46531dcb438cfe6aa16eab17..eec34e7c4e7ef48f910a68a6d8083d1c42349645 100644 GIT binary patch delta 57 zcmaD5@gQP@4kNFLQHqI4l7VhYW>HDyHDydD`Rs8DDX3c762?^3)%nx delta 47 xcmbOcJtKNU3KP4fQL1T@VcO(uCQC6xb1P#rD3c763FF3>g3b diff --git a/build/esp-idf/esp_lcd/CMakeFiles/__idf_esp_lcd.dir/src/esp_lcd_panel_io.c.obj b/build/esp-idf/esp_lcd/CMakeFiles/__idf_esp_lcd.dir/src/esp_lcd_panel_io.c.obj index 3bfde190e8f98e40e3039ea47602e68afd958f20..102d141f0a2ab2c649848813959d3dc3e3cd2bb1 100644 GIT binary patch literal 18252 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 F{|9wA%DVsn diff --git a/build/esp-idf/esp_lcd/libesp_lcd.a b/build/esp-idf/esp_lcd/libesp_lcd.a index ad226a6e8ae2257d64b6a2048b23c05af958a376..12b7dcc541b72e2bd060151c4824d1e6225a94c4 100644 GIT binary patch delta 6107 zcma)=2~3q&7RT@R7QnLj9=ykUs4RjAC>4ad0u@lfY7x|GtyZO4agBAGx{S^fwSd-z zdTl>j#afe5JMBarnrLFj)XAjIr0S?KU8ap&9MkEvE|byGPEzOmzjr=3d8SEExZK}8 z_uO;ux!ZT)`)CU@!#dj*)&SI(r)~+)EK8+oT3i2s-HEE-UxYqsSiee<+Z%Bj>-lqr>~2C4zNeMFh|jLfCv(|6pi_R^7shIimgYSMT| zqf%F6)KR5+T+~KYvc6K4XB1hKUOmm&VUe!(8v89eQTQMXLQ6)|zM?d*&Fe|5awV_lT`X>p_nz>9FIV@+(oghy3P!EPbmIiJ~ zxcMHPP-{0g*6PKzAK1P|Mw72%y|6CPu?6UFf3xnGLmwWWq7P2U<9we{rbj(j&bwZ}tZ&1~-t`Fsg>SkWq;ZE0Mv&daTxtV;<@EBQU z^rV;>`sBBDdhE9zePB+8(O-Wt=b0SLSE5Q%XW0ejEm8T^buMH65>?PNGM!0!%G^hW z-`rd4%F=7+#r4k(+xRFm^1>Vhv%ZJWqt@_QP0iT}t|W6~rPFJ^U+W55MZINyo&`~s zq1Q4DC7_^`hm!5{m-L0r>r2B@D+(;kl&Nmav(kB-bgq~2UgfuwCKH_|C<;(aP52Ww(K*l82RP_{7MGUc~inwE{$Z#O( zt-gq#B<_PD`p5`Q9vd#{J3G^t7Z!xNDpgOGxZ8Z0;VvbNDk72U~ID`?p4#s%V#zJR^*r7d+j(7V8LvmI>8L!5and5WHLP z9|WHfd{OY1f-eic5#|tON_`hDSbSG-tkD^uS8zaZs^Bcad4dZB4-i~pQ2+J}R)~sf z!8L+s3Z5(Y6~Vt2yjAc!f)Cn^_&>4>#ODNmC-{!w`+^;g&Hxewmk6#EJWcQ-;*cGE z0-Z{m`wAW;xDrf<4^l;3!aNmvY+jNXf|r7MPp%WZ8H_`K+k86;>}Z$8djHabP`Fxs zE^4m`z6Yk42jnL(e_5hkoq7+L{iK4qmoZ=-)+8{_Cdm}y66VTRP{A=R6TA}4jn{({ z!;PE4+_=?Zy<=HHh-=S@+B;zO@INr!^pHoyCCokw&F(!YI2Fuo`wAW+xLR=9I27>7 zB$))}4rW-ar!NnLh#<|-Ft>uaRU4RFT>x|U-+=KoA-PIi!h8>Up16mCe*$ycIJy~a z4s{cST){3LXMxM^#{MTPt|BuwNv2 zh2V8y_!&oOD+=rgd)PiH_(<9u5R7k>th;co+AjEgFmLGJ3;sy(alwBQ{Hb8PuWdgU1pf;hqZ3!& zHUj3!-t!Rky7Qn%)Lip}8sDk)$82N=@O>VB^`LTWi?0z2E9# z4m=AX(NsN@Ii8uWJ{1t$lbJHrSMUJA!vv2OJdqh!CJqz&!s>?RiNZ3$Ynk)OXtUtA z1n*_W`)ofm9*M`myv&~n#=(Lfft?R?$SVAuD=1Sp1m6<;K(LecG#tS`ff8CQ|MYb5s8+(=D5Hlj%Bv>?+%&-Q(ZA)59 zWn1EPZe-9el3tXIo))S?aHgKWZnu3nt%oe1z8k20!faaX%1VJZ5+5FA%o!G&m#Z9E z@w^f0pz3NSR6DB8lvU2SY-mcJk8!1+FX9JrOc8C=Cv_K zz*`!j?xpW;3V0_(XiIg)=74v8gm$u}ZH&+^x3q1n<=#}Qeq(bWw2QQIu=Tn0{}LJ% zCLYJf9_-KYpiE#h+u9I-}nhp5#9l z(N$}_QX5fI_SXpK$LU;_lMc>%3Fnt1Jm6mh<+}f{q_VFfJUl2O-_#NwXv1_2@81y~ zo+A&1@DTbT!owPBx{^K6+;w@X?iT=5_B*WwP3s1NDv z3G;^i63;C3{>WxI5dyAi97rVYO0+MR+()9xl-cG1vX|so~w@<1*+3 z(|kTfnjEw7P*ivK_nCCi(Oloz>Tz$Ow?U2B*y8kUNZHn$vdy66pyZ_FqU5F&MJbw6 M%(0YhT_*hY|F6oBGynhq delta 6851 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 YR6JC?RD4tts3cNJdb+zaxpCir0amBbv;Y7A diff --git a/build/esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal_iram.c.obj b/build/esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal_iram.c.obj index 0ed98a65124fbbc92b1928acc8fdf01754dae8a5..2d38e998eec84961af24c1f0d709ec396541b510 100644 GIT binary patch literal 28180 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 literal 26804 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 delta 12907 zcmc(l2Y6N0mdE$G<=mTa)62c-Aqh1KDfEZ|X)#pkA_7WLX(EINigI9l2m}R`vQhIM zMNo=T6p4ak!U!V+DELG~Kwz-I6BNcW`Vh(d*ExHK1@e5(H#6Uy?^`#&|JrM>z4kse z_uTUGnZ}Ho8OFjkR`Y^Pdm9!mgwa!oh9yFD$h&H*+6nO+W)w6O*Vwcb!nl#`epDFB zTzBje+AIz9*L};88=9wUyr{LWI||Qr=3SX1y!(#})7{IlcFTnMk8Ir>VXm8F(Z~Or z`8HXngm2T|H-F=Rux->F;s3ud>+d8Dn{`C|%FZnoVamdfzbyVY%nCddEpBLQI*Pyz zEJB5LdVF_&qiW{1x8WN|r6aNznUbrl-x1@xDBI&sQ zhL-%*=Yq_lkCc}d|F(U%N2DlAm94~Y+Gk}V_4ixfYl729Z5F?>w=zZgf6o?eE=+!H zl{eY@+P{alOL;u2{_L#!2FwL>!#pr=WmbLjgJf5WR?^rIXcYIydxQ{fA)4V2uEL^; zxVbXFy*bm6uAZJ$`Q>fqeyci82#?+FG4c@`_`oMbBbV)|{css(6Tc8H!yiJc%jGTe z(jQ+Na(cYeq1^S+;_jK$7oA)lUzv$Ne(zYMcKLm=$mj8R9~fUoZA}eCp23GFFTO5r z4Z`d5OrSq8k$=V?a~_(6*&baD;f|7{JDM3*5F;684jNp-oq{HBwtGGGQC){crlOa* z0>cV(6Fv>|Z7RWh51(%HI6gh*IedD}OZYU+FqG>vuOQqn+)q%$Sog=2-tWnx$r=7S zSPh@YOo=&Y2ut{@;Wbm!ry$1TN*DemlqSv5Mw;+P(fH{~rwV^}RBUD_og)0LQM8%q z=#Fu>;a^HROX(=#Uqw1wX>X+PA92ekJDG(s9@J$vb{ZmMg}=T$*vV`b zyMgM^? zipNBvg>Qu!@;*&RUa9Qa#jIcV5n8D3&PX0Cq=y!|hofV|g@1@#+QrPM`xX^+hpN-3 z*1NaTrtse_4|g$}#mu7JaHr#TRx72%Y#(}*dfy#23}bnOFVno;yA2qaD$7dD`UOp> zzB&k5aP0Pz$8I;9IrTrP{JQ?fl-Bi6 zSK6t+eW|X0j`HjJ=PIr1FIQUEKTm00|C37V`kzu-*FRrrUH<~5o%(xq)%7n`eqFy* zTGzi!X{Y{eU3LAdlwa5Xg3`MF)k^F7*C?&)e^F^&|4T~i`qwJ0>tCm|Q~&O6y8g|| zuj}8Uw66bErJee7yX*SjQhr_kKP#>4e_Lr?f0fd@{%WOl{X3P`_5X{~y8d^RcIt1_ z!)#Xfemeg5I)1v=9U;BX(P_9QJR}$NFmtVFoVB>n29wU#!MU@Sf=YZ}gGFE^oy0?Z zzd)=Ayg@Aw<17=RIxwBiokhMSICOUfF4KwiiZ47&h&_RP>hrG8!ha3>1Kp9uJm5P7 zaWG&~*uh9T9}flSoHajyu!J}gSVHPAcGK~|P7)v5;#A;05{GQ@dEgTgAKBt;;9C-h zZE-$ug~Z3UxEKhhN{`s$`#>UzPi*m1;2XN?9<{|~5pw}$MaVaLnwdt5{G_K@*XoU6 zUvdoHz&s+(6A{2|XE`p4z7%&7IDR(TjkZ_;A%ZZYVjsK-_un%X-dl-{-ia3Cjkdk% zPKKiFEjT>}wPe_!fFZD?S0Ruo&eMTPI87zA zvP+0Xt5MN6LYL6$7N>;dZ>gbGS86f(1gp`%c5vFSMjLPF44jj}lVG8v5aj@C4ypH{ zRsm=gQoe_H2e1>CWMD+Q655CHs74rtb|p6xR{V(ZQtibkETBq`!h0CzEJCr# zyaPjZLHseA*wx{mR#dk*Qdif+uI_IL_yOir*MzFGL^`TUh9%Ms)@Wjv*8x}z3*Lbd zYO8BNN%Op+S#aKu))BDKREVblb4iSW*b3N4VkpE}z-bt&yGYeFV%6nGp*qW6yheGn zcp)6BbZ>RaYt)ezuPtn&PMCwu+VmhmjP=@ zyaMqd;5`y6sjmm~H?Vs#?ssq+Ijp?*sXV*7oEB7FOT-nzoa%B)sk*_?1IbrJhiJ~Y zeaJKu`Y~AWBN~Bn(}%rw^}V4mJhr}w)>W|3N46?pirOy~(pB#OIL6lHimz9p< zjJn=XS9t%7;0jpiR*2UDTS(+X90wdGQ4b;-b%fis#J_@Cjbxjh6T*d)$Ehp13DwmO zZMVRjx{`0Bx<*3ZL%uRP{*2^-v{TFBpvT$Zofx6Eyd0`7)f<`%Cp{f+fQ24|I0QII z;vtBi0Y8u!1<@3p8`%lsU!{2`paE-1i7M!#lE)`P$YOkGI?S;HFgnDP=5Y9zVnLULZy41Oj z#k=jE$J$)&d92jwS=nx&S?rQ;osO(iSu@B?^BaTZ$^vhk%o}c&$m%M;U(QkFF}hTK zI@~NZ<*d=>x0MxR%rZk3r<;kDrQ^&jzg#%k^viF~h56-*5p_KB%0^GeMJHxVmlG~{ zvlfk?nJzcKU8k2^Sm^5|^9p= zIG)y6etFV8EU5)K67YeoElhJqd7xfGP>w$34n>S){z-DdDR;2nGt9M&@p8s*GOl90 zoAG|eUrOslY|#3axqf1Ng|P>FRaY9$IGS-HV?0*Y#^*9FVBF4O`$Q4FSi>;J6By56 zypZt<#+w;eGo~B7o`4s}qvkfQE>}em`>8`AEcV^s&@i4~Y zWX8bsptXUyb}-(@_#ES(8P}n^jXI**G49297UO3auXDHub~Ucqtl<>ni;U?3QV$l* znC{5hpC>bh2ZH^2G1oB06By56ypZt<#+w;e%b!1U7g=<#)uVM{+>bHcPj$>>#x_3Z{>WkHko|%+{J_|YE4CgufpI;?%^7!M+>h}{#*-P(qT90`U^{D|`>pmL zW&9Q6ON_&DTh{T(j2kni?*w&Bsb-r0AT7Y789&0fobhvv*E8PEcrW9ljK5-h34DjH zs44!_)LhKCC*z@vA7pGXULd2qM$p>CTvdz@Fh0rn0^=ISQTTsSmzBY|DdS?sJsrM{ zPC_x1H9W|8HRG*}cQL*w570d7;Ga7^eu!~B#s!Rv8FyoRC*x6!Co!JE_$h~-)8jeT z@Dk&#jCV4ApYbuqk$BM1lgVS;k#R4^0|G_pK#wih?m|P6;xZOw5#tGzw#OMiDVLXo zrC8JjR~@mEHLYR1k@2gHcQCGE{1;+%iT;EbM%$W>L{0zpkh!eypyTd}( zu$b|)PLLh5n)%l<-a@Pf+s1f1n2NyFOZ=;>y5AeLK4jfKW_*hA=ZwE*{2z>eB3ARR zA;$Scn;TDXMT(Qadi~NIb`J6^5~}mfEGVCG3l`I!`8zT0L97Pr!*~FgilBK9XYuz% z(mg=!{0Xd~jPYZPXEH8lJfHCrVl|lxVqDT_TLCUoyiLc`{I_cXt|C^Q_cH(cj6Y;C zCz$^<<8#Dnu#1ep2U8KW5&~aBSbFvz2+a|UV;CnhPG{VJaW3NmVl|o8#JK6u))rjk zuqFDi4g(kuCRUyAWBxIWC$N}l%x^KCL#zgVit*FnB0tujmf}yW!%D{M8E<4<$#@6j zU5xiIK0vG{bC}p(e|)7!l@=*+k#+c<@!yD5XAi!b(YwjdID%NkWDu*IIgA^EX)J1L zMt&Ul_W9RJ3EDU98FymbgK=-hcQGEycoeZJXdE#f?P$ZV5JZvU+0pbBjXM42vCa!w z=jWM!IpftVW)t(j#`rB_HP}wZyTMe1kLLdY>+lid6O2zYKF9b1&Y7|R+SX8Z)> z#f&#H-obbeGnR}uXr`-tr7fgC z*+`GY)uQ&n4Q{Y(Hz_``KtIeCvi6pYOBwfY`b8(jC(6iAWBqL>lS4gXJ7lql|20g)Hu$9yDH-#gmMneCBC0B#&-40>%;9 zbW&K*`kZyA_b2+<4CAGY=?#*O z-^{p@vHe|^dYYq`Oo*4A7Mn3iCs@#F#$U;rST_#1#b&5+EPd~!IwvwtXPjlT+}}Mh z{r204)dN#!#`Hc)`-d^UkMS7BGv$GAB7)YF%(aj)y{OXZ)-&G1_;tqgDoe*7V0@VI zQO5MP3-NOI5;LaWFRX!Xl{!%v;|S?nYGyaiXRhXq+cIu%vut=KI=$^Z#B__rHj**D zAk%)j%WHmuak*@e;>oT@Z^Lx+n~bX&?~?n@L}y!PnCl$l?->8c*#3%7RTq!rR}YiI zm|p#9e*?z3jOkSyo}@9Poz7ar*pv&FnZbxytc-3>lvT^j?0)oXCGEPEac9P* zjE53q!D$=Lcr@ej^1xrCgX88f*8;|i7}MK7o$eLJTN%H>m|hU-_(P13$xY8a$|)#wzB@8%z<9n<5tf~ zIqij%9J%8K^GBIn-$<1kze({|URrIQFr>Sg`-FV1WoE<5@U`YtBWzD|`~(K8lq=`0 zGrNQxs+Gq`o~o6(>mkqA%4sBjs+IfJo3j(>r!Tlg)^1xN&dTBqW>9`r;tAaC!Rw)h zh{;6+y?eshZx0>1t{>fwcF{AE+H}r1_^D4j<-e&F-rVA$kMbqS1;q&|O@`t9RxZNy zrn|O;Pcya63ki|umj_$Bvl?&4Bi1S0nkY>wOqXTfjwx7eJ2GW;W@Ms#!W$87E$k=6 z=V+i#=`h{tuImO$sVhV;m4N=}BKjka&!wzCej$W*%9jb#`Nm(DZw&I`8-PW`89)iMSi(nC!aVAXZCeBUvIGZ~-l#ybS=YsNLI;GZO%C2=gvZWD3=ZYm zZET*b?&V61U7`BwhShnp*Evt($mikbla9U{zZ5_a)kwMZq+hwN|9*@;gNjm{#xO(YWX8_)?67VHKs4VZPnLQzy!-LH;!BH~uFCfAAA&j0uGwh9d@w&O3>FTn0}H?+ rV3DvWSTrmK77L4m#lsR{iLf9n1WSS?!%|?WuryeDWzEKnI!pfxeJdih diff --git a/build/esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj b/build/esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj index ad618e6ffd29e8bc990f230e92f6e6bc76237ea5..b23479c5204243eab0cb9f3eb0a566ce9953557f 100644 GIT binary patch literal 142272 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 SFV_gkcVG~IA0h~r@BagXHtV$j literal 30080 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 diff --git a/build/esp-idf/main/libmain.a b/build/esp-idf/main/libmain.a index a80afebdaeed223c7d677f3ac7cbcc0332051d00..00634e56a6876561b7d59f13bcad7426f09b1849 100644 GIT binary patch literal 173838 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 literal 175746 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 z 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

sB(HyvxV55>KM@*=lwBkxnsJA7*!SwZhr^S|1N zmi}1HwU^0e@(nM#OmxZ$sdix>QNSNvh8^Cc2q`z4ZPPm~ASI(LF#dWch%Q2CU`CmI z+nW$7#86q3_eTWEU6O ziDSQXk-T1nZRdt|GR0+0_2f*mKnFO`(XED0^FWOPidgp!*L09&WFAlJAmjQSsVa`F zHg&0-H+PUzM8S7mA#12-7Vm$R3?QZ4^D4Y6?YZS)vZEsXs|zKW7BG?~&rqOS0I?Cr zv4^G+1mZf(gTGZtwYX=~!wg47ytNJclyAFAyv=*k0dd!28mT&S0iI-Y8@J_Tg^jGt zzUYsl;%_ee@5K2NB{s5S_QmBF_=?5UksRX_I>}bbFYwv{bSO=`z<(YUw8@`v5T-)wJ{ZZChPhqQwW zHk#}9c^kLMH48WYYYSM@?kinQ!MNSLfH zh0K_J;Ni6eXMc%2S7Y1J9}r+u8CZA4l-`XgV}sA}ep>2EUg8mV$yHmovqsmmh45f9 z3U}laekFtY+n+VsKZaSH;}d+SC*SfbJiC!s`si0O)fyUO_+R8E{p}2Yu9u9WKN?Eo zdP%vwpVgVDn6I%G%VaU;rO(Rg5i^M7-&@cqvXuu}Qg8Z0d1dCZIMS)m#D+LgKXB#~;Y43kCY=Ip$|>B0VMlqH z6P=|>KJ|2K*>LLb*0TPT)LOE*ZUEg%X7ic>R7Kw8w+GN^bnYpstzT96ecxPHAtG`Hb5p9ChK@!LULE136Og)CXxzf=vvPHPk z0AkNSbfpuCj90nRvHiSHbQ$dYh3=4;P~9-DbfZ`3y_5W=8-1P}E7iJFoz)xJrKXm) z=D6S5<4?D=b;qSLc(SFfHo>r^eNbjxUuJ4)D@^czYiS9*&XW!r{q}KFGs|Jij{kcz zo9*|;V5aeS~BeSg>(UXvvT~X>U zL-a8*4#%M7#U*7%&ps-BSF5c9(#^kK5gEQvAH5&;yQw z_vm=JHytqUZmIEZ>65MS2Soe375-TI%jIML)(XGmN-cGxO~-iTU9yB{YUw*;a!ZZ- zO8c7Pr^pDZyz>@Wteymiorbi8sCP}BW%#7j_{n3mbUxmP?xy}n`Cq@1Nu_SX>7Q2g zzeo9?(ex*n?wOCF&ydxnqsLH#+`9M(G|n(0izzJa4TP3SR`Vkh=nOjWYd+4BdXaZa z{a&EU3AOy1U$laj@^dh?;Po%kU+L+?k0CKI&5YF1tij8QjmwJvZlVhhOZs9HU3r)X z_oD;2O9-@49j^$X5pr|ao=#r&cJ_28A^^c2~_Kbk_9k`R7(3Y`Ei^7u}r z1Br@$mPGKI-+ zQLK7c$_gKay5|s_uLNsU)ee<|<&|pK-&W5o%20dxSV15qX7>t1$U&p-V4-EXRdS47 zMvOfhi|Vx>$WRZ19WpER)FOYtPOo;X93WRuEAo+7I?5~5cJ*reX}{b8C#E<_O(gkD zwJ5jXIo)@MqSW^O{Km_4dg26RwA2Y!7D|`np_((j$uR>AP6v%XMKF3YCB_=Oi;Uhy z%tHM3Dl&Q%vD!lbpAP4$^KIBl{5EKcj9_N|7k)oJi8(7_6}_rrZ;D8N6&n94%-4ah z7~E313$O{Yrac7S-HH(j%{t84FZi`>>TaD)cD7FG6s>b#7!u<&Ct$drO;L^-TnQCb z$y*#t)b_0FQ0XtPP%EN5dkCCa3I~L;Lu?mUL{d%Su|o+um1?xFrYM|7J1iKjR%$lK z4^|(6YGPNRv8>lv0Rvy((d^Mdkd_~FY=zQ4=HQ`C7I5#!xk^#*MLITRcbFnYnPqAK&20U!

dlF3rVT*ZNBvm^k6dE@jDzr>Hrb><(lo8_s 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

FUJnaW`(&=DxNVY_M0QWtG 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�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%0A40AC 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≪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

ypwJbB43uDt z{d-Tkybi&x&sUF+4V=c`4^Lmf*RAO*Bh5#WWsH<=AYChTIe{Mkp&RJENxX*<=NddHXPnT6ZNkRk?fr1m8eBeQq1QO^t5>G+?zT=z>0zWY@RvpCGn;}C|bM0=g$A(Pw zCD30iV>c3<=~+ zlCi?Z$=RwrCenO3&Xce^r!S!rqU)R5NHq{fxdv+gPy=DCYoIn!4TMQanTWPV?kK3& zJA4Kh#^Fhy6AyJV*ch88G6rZT6ulX1Vp8sct*(JSU0n#*Lo{1zi_}24#Whe%s)2B~ zYoNA54TSrgY==eaUmm&&%nS(YCo(+Ja%v&%R0GJq~{79CxFJ-$;qA^q;Jw8)tmHG@vbDyf^c*ZZ-V^&Kw?39 zSbKU!+FB)33Yum2orf=xLeLb#zh9!dn@>45?VpNo+e^t9Axi^hXX3=>0SKB(*guu^L6Fc+L&YgG)K_L0{K*F%^*dL{T(Z8~`Y#ZcA5+ggX*cwbAviz~_K8|S z$dX`{gnUSvsR{Y2dmj`UeZ`Lj&FeO8h*V|t?f4L8*C6OvXZYhiz8BDq$6bhkxP|O1rt6F(4#H4v_=GQ52)l6PwPbi9cVf_4!$Li7+q?HM%?UUUuA-cti%7sR?^NF=9lJhU1J zTSdGBf_>XvfL+sNOX_qr^tnP0BPAY z&1C*HT|WQY?ON!69g%SYrv!Ape>y%}70JU?`0>`b;gLT2jLPnng^lVS-4>Y}I%OI* z)T~vqu@dqi+BMYj)j%k44b+O%K!~n#5BV9V%=rHx8cs3uk6MI4x5_>wejngZRS99# z$t`B*_qfl6NfxZ)w+@;ocER|A_*MM|XecRGdD*(tmK8s>6JpGY**@B{u*1{7bEv?J%#*e|1Tj9yYjf?Qh z?!R6sY|4iU@N?}%JhxLa9}o3-Un1l4JeE9hhllMNSxcrz8kA`*Utl-aL{@){kPX3Y z3))3oXa&)=>SSe1j_|TuI{usgQl7rS@*%@AIXb%fteS~!2ZHU3a3Z!ob*FX;1O~zg z*Wl$*hXNz6vljhPkbCYH=zAp2u#W-1t4hezAOyw?jB{hY4|)`(deB~Uooor15y($) zbMAJnq($fssc$ChPM8Y`wGpm`Xj`alnIVM;ze3bN?SL8x`KU|{)LKK(dP3AO^i5K2 zrxwByjwMO0lNtz}T?4hQY9Mr*$!`=F#o3bGQg@v21tim??K~Ct0=3KJ5|ay?e`XRx zQa(;_l8h&*Y2dgW7^gV-gBf_HbVE78@yCZJT>o_DHMVpCSs|Mt9=BA#f*Xa~BOxjmYBs zVbu=PyKiC65QaH`wlR#~-)SLvZ=B-jX!iq7#JsiPPA`Yd4PxhRI`G_hEG3tE}h#7zhpLd;E&#Ct-LR!oyO6%63R5ZUac$$zScc z#BvQCrdvT>GP+x)bvVW-S~LY0#U-7P8hW3HcCNyTBr) z32SVcSSNH9VJ}2}SU;v6v|eHuPUsC`8~Xq+SDG-p~JPZm7dZaqwQ=6 z_FIHoAi6`NW~qUGV$s)4Xl_D-#iW1t~I#|gtAI4hezZEBLL6E~iuwgQ5Un1JHh zrL#3WkT;Yr54Uro-cAPxt`n(bQE zBX9+9k?T?J#qf>BOJSca5h|^%Z$+{?6`&VOAP7k~7Q&v3C#jvP2Ey5k-;T5#d?OB_ z76dDeuu9a*hXIeOO887v-%L*(h}}ZES8^FfNNdd7k=BU?u>Ex?I{5~OF?1#A-}1s4 zWKvu`((f8F@51#%h%ah=o3$3aA~&}kmWbl)X$S;shA<4G!--n88VDm@1GUL&AWU@) z)UH(nVWDfFwphmx(S!tG;yxdEV*{GtdC7WoZr`Fe#$);YT(?H8XAIo29{A8wl)d@ZO=TX9FWS)ZeQfBf@L(jghQTt#qr&L|9tAy*A)bft_8ntt zX7y}R_V#S)W5Uka*76Inw(iJin<1JbwJmBOY;z6N{-p-OD>}}PSqXie&{Zr-uVAI7 z1~akqbyAkFP$y**q~{48CoELe8H)Jso@;k6W@#)3eTn$S2$LY1xL0x%xQoQaEyqG0pVCFeB=`R@Q#H*uKSSu9}klZ^tTCJ1M)60#0U?FTJ4d>|)SkpW6l45}Ll3!c{F0vsl8r{ma=d{&^*ONQsu31))&XN+}>xUyFh&-bd0cH+THO}s9!7VWJdf2RCul= zOh}*0t8_d}ytSZ%HS(H*c6>X`*z9zenyD8dXRZ#T9Ozw@CUl!CyZ`JKhtP7s>kj%< z^(OSQy?Y))BZDE?GxJKzZik>J2`}VX%UecUB}gw6I!?G7!nG4mQhQJhgvTK=?@#3g zhFcc1z?2zHf(Z4lg+ z_ys0(xZ{vNz4_iL$b?zwO(_&(MK?(T?k0oxF*YkL`vwx&DSrmyS0R0##_UJopELj= zjDFEoR^-%=-AelRFd3M_=9nbW~Qb($wxz1L0nL-W0bx+-$RK z1ZfI3eZ0Wbsmz$hXjqXn&bM9Wf#{?y_B`=cYozs(CQo=9;va9aOHAJi_Dx9GG(ILt zMHjkR%hwjPP7Fi}=RmNf5JpNy+*44yPz{7DA^0WJnzlS6NxcT5by2$tf(V3Zu7TPN zh*OOEjjmPOVJ$cqsh0>30(}F79Yds~c8m#+1Iya5UT51*fmLiwEt>Z@1i274Lk{hb z$G|=V;mRaF6V55M7QGT_9*rVuC#fJtI1Ym37qiXO2XHOsl!n_u?+0PFM9QJr_5j-p zf)x9T)2*ALxy6ISrDfF+WJsui*xd;2HZ>4dgstgm(VXn<^|8TZia%juruBMybE;X)(pHfth0W~nn_jyPMPwCLg4 z1#mlAOArQYiK9D1?W=nX%%1)2wo=$d^u;qjoAYA+YQ+>K@ z78kew*wm4rZW201xJBZfLAFNNastby#+zsJDf#sWeHH{=K^RdV_j=&ryV_RK^fS)@ zQ3>H{CQ{%>I0wQH_H=KPq&h+^&blCO1NExXgzb`O)(UJ&$7vT6PGA@39243J`ghsb zs`5ei6puhZZUptZ&@sZBx_Zl@j#HK}o^11skyO*TdGpz&Q??z%d_4rI6ZS#aIk6@*!Vg#I#YvdKOTLDv)d*S8{>(Uz5uL9Yidd`ikR__IrrdLE=c z>m|X3ZaxRK#z(iCbyn53;z@iXtZ8!|u$;q;<#0aNDbktHCs0PB|Fi*1O zi?l3KES5N-7lcLPNoraoZWmeIAlj;XQ_x31*m7bI2=*JLfWE4p3h1XQ0fl+Q&b3B< zT$GL%3AY4yxR{3%SgF14o%&^H;GR@wzzDXP>gkXy(`^b?YDt%lA(PjfUu`3+sSejv z?eUXxU+a>L(k5lAq(5VXM>6c=cBr)MM+kNTgoZerAB;5bVcxKLHdPJcx*n-*Q3GL{wH)rnbU$3!IKgp`Cq4JLxF3|M$5Q$~ApYfqZL0d)MUQ)gt{|vK z1>ZE7pZMLbjqPG}9mQ|RKLD4iO1MJQs+oY<$`TeSyBNUSaF>jeBBMDOgiOBc;9iu_ zI1qH#VN$S~@PMd+)08My+N-)U3ES~@*_P4#j-)#Z9Ve`WU?VLju2Gr*@7>X8PJ-Uc zg)S$k#}M`4O7#8EVho)h5$6iRc2&K$sCESC9uT&Z*h}21t^+Jpl{IPMqQK#;3wV~m z4vv5v_cV<*Pe46K*eU{Z3;qIS4EYJ_La2dc;%@In(-IkYTH5`)7`(PH(2;xVVe8Y8 zNf-dpF{lNt1!>WYY&u26DNY!WA=jhLNVgHXoPe@c=ybdqpk#YN`oN!HY%0boLIEV* zOvbj*9afxSi>B;mZ@JZ0mBubK0UWVXY`ZItQ2z2KJ&{M^ul0XlvFW*$O zF`K~e5tk~$C!)F^Ut)8%fqF^kAp~ZRAiV>*zXij);!{bmecWGq8KxX-;A04OFND4I z^c;gPS1*ejIhNDWk++ZX_pmb zp4T7C1H}|4RESzt1(={LVJbu`NJ3kyhD`t_?H^z0(Oo#LJXYu!0mB`2os45L7Fr8m z)gI7I)$RahmomEFM38qOSS^J2^%?^Srx&lqKKDHcOoaUq-59BTuLi=8f5?PgVmd0p#Swk#|e%Vxe6Q!%(3JW78b-0`I1>9dzzz+9RuRr< zAgyY=6HyOBKp)Js9zG)4wG-yVKpYUVG6%jbq?m8z(RNq^oK;OK$|){@wOBl2gzgaS z7ivA#KK8^ z1_Hwd#XHd54Tnip+R{L2B{_NGw??cFHUI;errO@@2E_%{?fPH_C= zNot+dK!88*l26d7rP2g?;Usg~rcjbzUA;yBDx|&%iTxXbb`$nPw0YFNR|DZk*Wg8X z-sVH5$anpPmxiIbr4Ym&>mzt)lhLyc5KO5N>Nk3j7GGA@*f9)irAIs>9D| zSvV*`P=N5N6>6H&QdO}Qb!g>e}Bz=h+l_tDs)5KRH*5(;S`4`*(jfL=SbDaqK z^Upu09hr3EG~vx;GC`!g6Enr#iJ$5&by<`0qmiurO-sv;Mn%Y<(A}3mO@(5L6QU62 zPi(6+p{q?3yF)bp@9nZF2|0066LMmvxI6Jv-K8$ge=I6`41)X#k6X)HMq3|4cB!!C zgyj&XPP|8HLaj{`AGf|i!3!>j$`Xxn4(ID%CrD}{PQVm*CwQv6Ry4L1`aK;}pbcd< zG)5?t32~YBIjcUF^B^3LL<*WmXbrK)Bh^B+_{ZaRtb%B^6d<(CwlBXxHxoKe0FAkm z{Qe(;{u+YA!#9ARRs9WcP}L@I&XRJ0(`Bycnc@*6TrZ<0o9rZE=%Bpbrwd zDh3#?>bZdPRUHqQsH(py>#!cahM?_)e>c^pkp4jEH~}e9X&O zcw6|YcLATN>aV9g+V_>TF-F*zZMEqT%}qdkQP?&-Ip1Z;En+AqY!`J1LEQuA zjC6igJSqt4k#fG<0fvDPtoocJmD?aV-+dIo0#=*z@e^`aXx+t7N$3l~V?-|-Dgz)G zA?X?I22y1qjC}XN#@~clytnWrNh19M&jlGX57fg#R}of=>YOE)N+;X`Zn5w~2y8Se z3bc4RxO>H=l7K15qGv1Aiw3!3ZlM8jRX1H4q+m4c4&g!mMJJTPo%_!6_F{Qma)1;qe2O z{>Fcs>($8onWX74NV?&YGlY0*DdA2v!j z7N@8&FT(JK_&943Hj*rim)l2u)p@?|Y$XG&aYLNz)p)K~g)t@Awt7GsAVp$N-D1xu zXz4@m*M(PdQKB1$u51DM^^uM9%0sklqWy1p?thm^k)`mx_0sFwgo3 zv&JXV`5a-(3F zu@mzONna*(oG=xFiu)7cBKuUjOo!kak+8Cn?o+eKj}pFuu+m!8HrjIF@lYoSTSZ_X zy|lXp+TCin7l1JAJ%2wfX;@m;PUslna63iPUqaA*gr6Zuu`dxWoc$mAAoMy20&W0& zqbh-3T7MQo7HOqzB>ExsXTjH!qA|kl4Yi9%pCfdfa0!I<6X7ED7ePM~g8I7v&R3N{ zFRgzjw42m$E8uoj{q3KLtAs{E#|Vw3{#HY80ezcZM-Y~aT6G`bRb>ggAX?8a&>Bk= zZ(atqaC>`RMr@4mUSoUe^&Xq&s8$1;5%^JW?_oH}(4vGA6vbT78Kl32aJ>MyeRG5M zF7J#vT-*=sXt-BP$rxeJVbalw<_( zsDUuuHF#}0o4mE>h-h9h_cM1u5QeYF zTmm_?DgOXVVN-~gSPMHuTXZUg+7E&h2o(@5ORZ83g!6d9-ZDY=(}j%_9QSyVTD2Mo z=Rp|98)}?M=nGbh@BmA{5#pD6xb^%Rnvp&~%p~9i1-`#>9Ib~zkUe3}0lAT@jPyl9 z#|dL0a(fSz3Ca^DJ3N(X$`j^Ti}Iqmmods{Vao|~RQ1(vSmy|#V}xrV_0Z^8yY`M3 z?zji3MFSgq7U*0EGAG3C%t^NuI!@>ak<6)dRi4np;i>deo)DMJ6O7Vc*m6Q#RVODR zJq8Fpgg_6juHZxMOsusy#Rz9X4r!hy&vtmtvyy)l)N9ih?)|hhfz@Q-CjLpLD5+Ii zR~JWHWDf*?wz?6}5%(5HkILTld(X1NlqNKh{wb3Cl6iAI-tT)&K~CYi-+Gq)3_

    =dXpt#KSV2}_PrVi2jmvc{7&@$Lg+Zb@y8wKSo%>7gacN$F45+VH$mM7 z!Oef|qgL-}MY)$uz#Yr;Al#c07eR33A>3or#5$$d0XC@W$|LhSmXQ0TCN37So z;Afp`=oJ4=lcC8VD1Oq^Ak(`czAZ9r&TvV$TTSR}kd%Pu#URE*q_OVDbX#cNgKP0B zE(q2R;lf&d*rOEs8A=n*td(22PuYmn8m<;^LJdS$3$?4%K$zwlsLfCV;kwoOCL;#w zCUl%o3JK%RE20xLo}{K_<62g0^Nv8qyn{Hqq`!P;wI6}#fU>xJcUF!u{|5QH9_$!&gfW4ei49{CY&=3N9QyaouPUnBdd4$MCgamv| zGUi8+9VDtd0MZQq8S^ttVVLmt`ST9o{jBw%XY2AMT&CVim#^e0qVKqF%Gv@#oHdmX9*$jCFH`S{YC9U2n>X|k8yvJpP>KS;vXk; zw*BKtYDbHIoG{llc=f)H0wcu5H;4A29mTgN#VcpvH9N&K#NzGwU!Xs6LI!Gz&@sZ+ zN9A=L*z*)&X)uKMjS@#du-#ns4MnYy z^hb=)*fro8RrwYclh`CBiIsXrhGq!{5H zQQb{g&kpYexfa5;N_$W5a)_h>_&k42U1D(zFoY1sZ30OSuCtO(QeE>5L~5!lPK-}j_Yt>f?$0R zVi0?{L90*$VW?|xR$Is%X}d6YhqeBECz9ETmj5ZLbw!_OOS}`Pmww)&X`kp>nIY2% z#XGFy;W@X@E*yk^mjiK(V7xq_r9qH6p`K^3a|xM`P#|p`ADhlArvAUh(YFXKdn<}B zD}EpC%+J1@X^kt3R$2?!6{KfZBhY&g)Jxb^r#oEIGlh;5W~5B2yBlUoGuHQ z5w?rJBWX>bP0Jw}CU$fB@SD?DK)=to>_h-IH+VR;&q?~MDq*HRs~Sm=FBd*eI0vHj zQyZZM!f4k(?P4_$Cb|Y{lhi;!6)8Iwv~zQEh670E;JWhbizHZo zfF!}X10;!S(MWvsyntWo>1C~&Q`E#t^o=e}JLUYw)}og9l>Okn(H2(L*rGO8S%bp# z?6o_3mTiXMAVzp`hg{?KULT~lVllXijG+s8zR%EUg2(c`g)OaRr$(dvB4;|a2eN0v zeFX$r6V~j|hwDhs7dlP=&F90jNG}(W7h?4extcE^y$FKM zoWM$%E^#$J#2(Erq{rB0kmXIdVtX7 zglf(Dm>^rFS(EjJsIs#reH;W?6Idy;CRSVqAd#OvIl~+3AT$77i-agXpS}i*`ls|gG3vv_G@fh_*PUWYvg^n z;d{&((NnXRpwLDsA0xbIw~6$9LdOZ9rA?&Q3tdilQQLG+klm_nBI^sW)ov5%l@PRv zz)IOBB3z_RbXfyIn+Udx5f^Dwb~V;ejjXH~;aYq6kiJOhH~}=X&b}Z>PqW7a=`rG6 zNnjvmLY$^!f*z9~NQ7W}81axX(V{qiJwAgC!I&Tngm71c?=?X?OAUkx>#a3o3v&}t ztA&jdCO}g6T!r9{Q5SE=Wen+#LJuR*1KIjK`ha1j$i!nkQco|AwoOCec)mDS60U$` zm~J>@Z10{K7(=Hk*2`hNcr6ZNn;?iz*bdQlQrn>hLf(2FUh@+4|3&CH;UEOF#-ox{ z@(?$*)h~c&s6h4}={q?x<~{g*CceW6KSJ;=j|uqLiQDk{;`HM>Ucom{(Btot$vGsM zu%SPB-vyCJrg8PU6+zkbBwn%rLF$AzA=)*LQy*h?*oHv!j9CSGEd(@yk%C2W8>aAF z2`x{VxdE>kS9iiP*PYruY9QR_8mK*>2Ev0+>d6lS%@;aOa011X)K~@wT*8Bp;F{vi zE5D$0b9E{Nv{Th-EwL#m^(gl|+>6stg69~n6VIaPoKhfoa&Ag@IdD}%v^p*)lz-m>#_M1>|(98m<(P}5-1QQGmfuUM_ zDhW&h*JxfQ{%tEX+4YDyiQu82z<8gCE#qIZb;JlwP$G5EP6q#~xVV?zypki$BJ66X zXdw8ddwZ5$1Hlg0YeS*}%tb*qY|=i#dsZO+)fP6ZKgLfh5I@UE>%ct^L14lTaq(`I z2pbmqLs;+HC~Pb+4<>~6J{1-=r+~ROg=H-R!3~3;7Q#j1;;)5;776PQ*A>jk5MNh> zOfL{8iECm4W4nJH(G#W88!^I}kksx!%H{*zcp}I%Abg27pUQFrn*Of4I}~uS2$FF^ zroX%P!-fn4`67o6iPM54gYVyilPhf&q4URj?>p&qq2q+kkl-%HnBU;iR$P1u{Q{B( zUoY`$pOi0L^pJ32aUqXW4osNTJXdg7VK0>GufYg02!5m*O#Eh#p4QQ21q8c70%$pz zAbpL{r zIcHDLDgihTt~yGfGdZY;9vy(EK9((c{XnhHG5#G>@~RUR_8gV-*lJ5TB- zecQh0>9!p|8@R>YpE;NSY4#zvVIph5KFHU+hrzr8@pT%z>CN4EC5q5-!ts#Qk@YTI zdWws0WW58D24A?aA<+b$x(>Jx#-B&aSW*%X6e?RG z8N>-YAi>O0{}_<3iH}<}Wc~qyhCu2hmO_HV$6*7Rv$mB|-j}&Yx;2dn8@g>0SC=)W zH;55Jx;yNUIT-{Efuu;B9rR?&$9~ka>~jcw3CHc$jgNGuc*hB#<-q{bv&Flda4!U3 zQA#Hs2RHVa|3UmKY(6k(F9%6OAUhJ%gmlMe*pRqRNPFxZ%MswQu4_FX=?+tm3NB|>{G&A0NmrTgK0vA^6H3(t$gZL4GH-D$y5(*wv9a~_><&kc8rnynn z^DIfv&$_NWh58NEF;(X%PMzsuIgmg|JdgU&+A|cleIEmlatN{~424Mhs-RRWuf4+m z>3q46Zq3F_1o4QF?l|(3z9Hjzy2YhUSE2MYi4Y?&7!SElz1;IVE*w^lPoV$ipwP+> z^|h^Qp}z$|n+Q80(xzQdK2+X`Z48~i71B*AY=lT1M!6s^6w=pFk95a4_Q)RV2E{dr zTi)#xHjQ*CgiRxA74GI|%!we+fdmE^K4 z62$af+(57NcB<;q479Ig*pN6H!Yzey_~)?!SGo;4#MNOv*E11-ew%^=nA;_3-vCw* zcNMYjd|YIv%hgSckh@o2u9s+?N^6(;-wRj>ms~07+s?;=v>+K~YTz;~Y#5P6d}A$a zNOTg?7sHq%6W~r0emEfpNi$dZJNHOXBgDfk88#%wi0}9;U++4!?`DCJ`MXTTk|?`7 z7@J*nFQ`qB3~ZP@8dBe;%YlQFdcFlqpu&S7vd~}tH6Jn#8*t4(8-5+6Z+%y%tw9t9 zNlcuAXe(r3wN8AaXW3K;dYdrg4L$KBJw@m^0W=@WX=eTz;Ai$sR+wMgF;X;=a9RG6hzfui^gtmn__`=7rD4j#)B5g|+eJUXs|AY&y z^TyzCW(?ExWpF7Lr7V@J?XvV44?$VN)lxR`Ce%-ajT3%^=-BYq;Je_yhw#oJk2Qw8 zuP9yqu4v%)5_}BvQ#>{f_mHU{BbG@I=VX)bE_|E-nzJ`!NvB~s!<65gUU73eb#^Y^ zX_WS3`r*E$nt&}3OV!QkaQ4!rr7Og@L!yy%w$K%XVjUbsOv;x?Pb{K8$0n(qWcMe1 zj)R~-2`5Q^j#>+KtFUpx4oGUJtOvIplG>l-eMRZ=*G1*k(|o~k2foob-}>rO{3KsH zt*C|d^(E0GvPPo2K7b%G!sk|-vC$TVWM39GPIwI>O``I-_4>t_F1irvOo)G1Zj8eQ zdd?%=DFk-sLX^G_g7v);uwGSK^pEzfLb``HE%XRT>yx2H+1A>NqrHwE@;a8^h6H~t z+X?1VVf`afSZP5A$03j_PR(#68G>@?5yD9A5wiV+jT26XNRLn%sXcNKE`?YO_K3p< zYVk<#o;VXh*{+ZbgYk%aOPqc%V(9}*AcoSNgsujJ%TBbC7e{jo`-1wrR0m0_C3G1i zC4Fn;Y!K%{fCP+fC20N@2>Oli&0f9OC;g?+al$u{ z;6UYJ>}9Z@h*K4TP6*?50PRZpejC~4lD2npqD$Z7T>!b+GvPf4f{F+?Xhqpmp-)$uFvF%R-^I^CN)yKT=u)BM1kgMTBY9fAn5HIlejMm1ib^rS#%Kuv)OKW_5^uf zI!P?1rb8FOmh$y3hAEH`AK(x`boDqCPGm3crEYtflQEq=PKgp!Q6fNJK0Db|HDPE_OLuL#pR_hxp_?Qle$Aolyge6Enq`m}tpni9I@|W}F zzYK0?@9cRVs&KD&IH#~4Jd?}7>q&TRMx6;_IdE+j5>K-;rCV^02Io&9NS*MLwR{Q= z^cisMAkHzu(U8E*sWJ2@6AxdOr-GO+q;F_=q^}=5(pMZmwW2VZnP56V36?sYX#2>J za(sMOSjJSL;8e-NcQi3(7N`f5COig7X%js*(<9*xov+J2KklLMFqw_C%snMPP!^ zsl+!y=u{K%b1L%r*;UCz;xnj*jr6UKdWQ9f-_nW1zsTh+@gGKjmpzfFWf;h}d1s4FoiXuD%ho(=O>9a>L?6 z-dB=2awLV{CS8#rHiV>1B+{j=xVW9dlD~s)EOd;J55Yd7KTZ4#hgjxlVSRIrF6+x9 zEkw6Ii4vP5A=h-+Bxe5~Ktjj@M5hRTvF-b_bADC;_e9Q|&5P;BPzMQdS@4m5T z*`E;5gsk~i?X}Ssd7q@x+~L(&O=sfK#AW*;O{|4;aK7GZMzmSeuW{4bPY^sP+dcZ? z$=0+x3v%lQ&xj7Fmv*okZ>e~(FsH6|cJ#P{#BERGHq2+_zA-{RBrwpB1?DecBns~~@d1bPU+BA~^0 zXsZE`B4HPKN{Yk@o21Bunj{qiSN0q(BA{vc zxR!SfGSE4v&y#Nah5m_xOCjtq;(F1$C5cbkJP{$Ykmyh+H2tmK$Kv+ozYKvc{fh_) zP~i{2)Du|ATJX`oNxsM6Jt}8Q=nX}yz~;2vU`k0#zNSB;*^*ybaTtlz_MDQ@09mAkbNP( zLCoNp=!0bt3+)afuPsC79!J;CqQnC4uW9 zH40sNi%X0U7ne!dZjNC?3M(0p3be7tO^gh+rVWp@vXVzc8rJn&8=aC~T)P#k3W9-2 z_z_=d&$X!8N|{@C^=UMw!YiRW)XW`o2Om6MGi`EMb( zW1N7O%07*0BeFjU8zX4JtK3dyN#?`mBVdSlJcLuq@pkr+)p2SK1G-jfv;Sk+ETgP5x!o<-KKHKB&;TVffr$Z2*Kp*)wct*QGu5>#`+=da*Y5%t&T2vi< z0WXPxpfuqOh^}~Qqt!r|=^Cirs|La**Ff!I?J&aXt@@f9)=&VEAwPub0YEx|sQLCnf+IrhU)VgWWy5(!uJs9~++lx2?f^Cq6m#9kbJjt~3IKUhT zKe3scV9`MkCPmbuRbJ657R`~ORV+G7RjvpAr5i>l1L?m?Gihgo)vocK!N5O_J@O(1 zodZbpc^SHnpmeHQ#$DZPh1FuVa_lEh-kVHnf7T~%?D|8~Ltqxg37oeSY>1K>V_ z;HLqCy42vD+xJJGuf(UCpgvQ4F290pmfBVXAb&s#4kxHfjjy1()R$zd3FLwKp!x}2O&A5i{Vjnk=rT}T&LNCSh>yRCxY+>QCE`;} zxK3PxVdyeWT+Sh=i$4kn*deQimf#nz96q5D69{96oli4_y`2&Ve0|EJa6quYtuYI zmx~~DA>IqYQJgM6sp_l~?&#=ot%sk)W;C_9H$meiejGHqA2qA*`A>1cEh3sI=)J4I%69gG+Vxk1sS(y! zKglUV`nK@dAZ{1Z*C>+g0^h@5_=*9DS|NSalYCrAZIgA?bJ52x+xaZ^c@V5~LI#r7 z!9cC4G$BUFb`8!jm-8B&*}RWp23D>kqK4ox$_YUWV>ErvTGXVd4Zk9o;GD{{GC>d{ z?1gB()LLzlgb2q&)IjZAH4v_G4b<*e17VA6ptem7gkLs0p?=xi6pue+5v?Zde3mD9 z(IHIg9taLj1g3(y=}KaW#2G?hBBY5El_oF^(!_;I6A=6P=c7j_mLtg960jsm)E2Xw zsCALTB}t+-nePmvHr}=nwav6p+h|*e+Gs|jw$HW@e}LeXZWq8rbs(C{^+Ak5U_v-* zGi?j;M%O~E_p@4t*bky_h@PNv~F^dI~fk`b3LiUad|0ZJj?j}0I%-pJ>N-p?PVfiaijW4rx5oG zAmix1B;pri0siAn=~1Gxe`B9GwmdCX968vymeqKl=VY9A;j20#{tdi;ddm7_SNzEHSU{(C!8Ca{`E+lNak9q#qBHtmnK{&W~W00Mq z#u%?5FtCp=CTPG{E+vWb*YQrB%8lt>tKz>NJuV^VL)<$7*jrN955of=U;WdbZz1uC zs@;u~xZG2xOYs4mDFBj^&I5MC$U~$!mLP0TI7y8<;F5@-CiX^1%{~mb!+=z{)5F32 zJs`jBl%;`jGUXv_mvD)_NPPg+G08#h2mHMP4hKFU7Y-N3E_~8m`F6jf&=Jmpa|-MQ zP<@g=5=_pqgGtRJ!Pjb`OhglYjdK2G4x}O;pN}gX1>lronwH@-ceDl_x1IU25KIwO zz+2a6DNOD0qU0+hCu(LPm>;0U9HYjE4Uhp$Dxv!msbay0}JS805hqMd8ATVaR z+_1wTga6TQ99)A4zoT+^WGiSExe@ykkk1WG3>V&uR0h}sJzX2@2+|fi0`I7!YuA2z zC5=sTdpJ>_ZlE5vQ&#>T)!B)}krrU$$ev!`3(m3kBBDB6O88^jUa2sTPiLbt9F-3k6~@Gk=2iULyAiVdQ*+qgqrvq3!T zHa4lw3UPas(KzEcQuvXwQ!m(#ft~dog_l@T14m&z=oG?df=k4_C?j3jCf0)*#v^tK zLf3-Zv2`N9Gq4UusnMMp;zEV6t|B2Cxh9HSP{PqWU=ohdbBN^_+))fcaHFC-A$Wi{ z?LDQiIavN?A-n*U_bHdf4kYX_CKWfIh@Ayq2X32&I|}e3F!h`l!KYB02Ve%58|SGf37BoSlyMq9WULkE1XMe&q(<(6g*`A1hkywx7jB1qL z2Enld@Khe`2k!u%0zZagi^VTUrj(0>Si^K}X5nb}ELY{-(3rthPn5+P@wrv-n#gtr z30i^=6S9XWVJbs)oT3z2Mg1^I#7+5wDb@zev1-TnVEx@iHNJ`()uw zHsDzC1q<7}R|y}TD52Cb(qsDVR|3rk8%zF{AUqGAi@#w*tV-!oq~IV?iG#x`Y>QN- z8YyShXpDh~4`_z|X7pVfc9(muyxF z*$pefJRZlvejYHKsy*u&>1_|?*rWGk97$eC%E9>hq+=VH?Jj>8k&dTYR4$&kfG>mR z=PG_tT@UAVY;$|G83+y__5gCX0#Aj19QY!56nIz*doTPVA<;0CVk0{jH4J9Vh@K1{ z#$(WG@D29vA4kYLh$)HqEAGSVS>T@z|4*2aOw7k41^COs^>J+0i02cH^o$Lyu$+bH z{I^^~gS%i?*3N~kH2l-c@d>YR$IPGCvS2Af)5hKN3k z?BnE9Hj9J?MzdV!+e-KXFtAX+8ka??@Vm25O~o!hAtW+J?cIGk+6 zmrlPKtFp+R*b&PX;8kFD>1r^~iNj!a&=Iq(+v*WQ8$Z#5Px@xt-K4hZiE9tvIq zX1RG?>`uJ~yb}JdU2*tvK40vCr6SeQ+JVK!!b(I`f-i&D_QpIEt>EvAJ6rhWub>!u z5QLu`iIW&S8Q&U0tHg_gDY%H{46QE;a?9={0ci>hL0L$ zcaD67cSYe-#n^^MgWB;g+Q&Ez+>X5}y8L7N@;6YdZ-_Q676(D9<0bKHL*qtey2wa1 z?o23K-Ll|M6g~N6`vM*k^HPoUyVoKw`|d6<2h~-G=8$**{499z8ra8yFM~Np^t=Lr zBzPD2b#Te6_7PqHW{Y)v%^uE!Y zHZnDM0sP0nC7W6ni~t`6`%$oCGjyn+PT=>!@o%>**aY4Kt~r}K41W>ALt9!FbVR;U z;)zB^16Rjwu$E*!#JNU>vo=rL!w3rZPjRr3k)G?=ZdV8~;a@)dOHsh#cd$p` zXQI+?B;PPNvYF}NMM&-W*Wa&W1@N<)1<2ME)gE&%*1(XxP11C@xW|jY{lVwKF^IWY zln0FX+Kyp(rib9cEHJ#is({fcr3_vk0Qp-3KgY-_fqRJb+QrDlneS%sCge&L}`9p}MJS3JfMp8A)7?`1rgEmJVop0W=EPlG@5o8LuAah*X}6k5y2 z!AlosGmMzhf{FHY?>yoh3d$b`!#!jw9&g{17M0lTB@0>whw3;yUbgE%)W12x%E1G{ zW03wiaMT3*q{svFj;rEfdz!Nb+gk&F@FI$m|+rj91&@cV)71-eGJR{ z2)_)j0H47I*bqw|w-4kt@ElC6cSpGqjnCHSJ()l!&Z`cV1P9wd4mycyZMU(6kNM`JagzPE9z&w-WkG(^6e0fOb zD^AW2UlU|}VmSWFAyJWK)UPw+7nyDY${B(UXSwn=DTSQqv{8~pZnlxs@{l7s(wzq) zilfA2FbBvAFlRj5z)ivOcLsj@8sVRg^<`c~v(xYve2xGUpTQGma5Z=fc-9PzIM`f^ zaQD#4lcK{d!HqXD0;R!px$$jCI2jr8XWG00%vomfEUcq~Per(RHa=(t|H%jso@4uu zM!4Txdk%gIJO}9}mfQZQc{VQsv!a#Y@J&v;!O!AT6$rTqeh0jHKAtsz`z)~e9JmQO zk7psCyC8fUcq}+aVC=!J)k{iTgzqCTCwMbbj#=y|oPd~_DW~9?jhKlq;0^#W)0fz_ zN*2E~HIlT~{$)2uqcuzI5#RurGcox)3jZvWG(}W3GxX9)AIjz`US=?THd4Vb6aQSc;izY2TEDFL&y%3m4E;i+DUaE}a}-&yemsu9u? zA^sJxI>Ihxue5ji)QDS>KVBnL$6wdtqaMf9 z3R&$gUgv=|GNXsPf`}|$OZC!iYh^@7OszO>4+L|5Q4IEgd0 zBJ2TkGADmW;jcNn$%a1@k^R7}!3)66O5r#ONBF`3)@5$6Jpf;POKvccyM%BL_*QUn z#9spDtYrZ>4V;HP41xzn4%!$nCwi5LSJCPlN?R6i;O0-n<{7ckUCZpL-#}sHh41}3 z_$?m(gfi5j0wMA@ zSnR+iMr0n7o7nu6y>l`_SM(gV-mZUyd)DGfkxT^Ut&ZwA@r^8}5AyM9I}yyIS&jU+ zvI>C^`X-xU6-wYbK=L%Z(iPzQnG)gQ0W>N0>A&ypMED1DKplsNo3Q4>v`M=ygbzEr zjAk8ABAXYLh+5|;OhqyBXCJ*Q<+c8CiX5J9@90S|k7D*S;oGUiR&C*6zv~2M%?E>f zfj5A80XPI^k3S0L73EySe^LB$qmh1tAKT}S%b$IU{;*PR-#Npc?k9qI5z7PDL&Kzs z!7Z^r7uSaOr$M7V_3hqx2EDNm>2l!j4W0@vWctzt@Trc>N?Ed}Zhm;Jure_}eAm(y z{tig93;w#`!(i@EIl_~`=OW=wY@s3iYY@&I+7^jF1a1buv!2a)VD4Ez@EwXn%pa1Q zB8u{H^4_vl)&bGspWPkyeIUa({AJ&X9@6Z+Itm_$l==9S@+|N!a5=b-%jT2d`{2Kb zeAVEtdVcuMbP1UIQVCuJ-g5;92X9tzbaLm1hxWnXJVY!2hffWM?Jojzr;EXx!5$?) zyu?ur<|q)W<`;16DgyTbuL2A39+VRvNl{_u?*nEpD2e!Ifx9tcRV1Jq8QABx!Ozx~ zKUPY0tocc{NJ*4^w5q`zbt=GY{S9J8D_p)4+Di?IQMX(NN8;&mF{dLGn`4t58t0SalDyv6uyPr8N3;M z1Na=68S~=v!zaRYFwdCkh~JO=d*GKpKOCxKT60IQXS=9{i&sw+))4cYj$EeqNeY<`=E6RT=&gKy}M$66 zBIw}P&3MBhfBe><1bDQZ1;^b(_}h+24XS7KNV>fW&Q&+q*anJQ{w!-hDX3PuPYQ{Ez@E#SbEItl*afcuQFT=H+n# zn8WVch~M!o{n#bG(ep1v6d@xM6h|1&@UJ8ORmZweurXl1SncT=;d}!euP}UT z9Z%##@UtR(W8F>QGO!nX5qz!xagXd{8r@G;gx{p$47*-NI1ccnz0+mSyz{rC@M`cv4Ufr#w54flcEv8WQ%5(n+z!a}3i z)d#@|2==*(;i?7Km*Lgfmh;Bdi5%1tL_CWUs19W}UIm^3&UwdP%b~io41Nl?r?RMa zwAgKneo8ZDUPa|E@jWb-VC&A^xJ3lZpXYr?;avDB=i0_Px+vJf3I|sHQ|u!&HjBN8sb-W}hMr45u#YdY=}P3PjkH0hfKJ`ZjKrZr$1Hkic?s!=0FXYHZ`d z?`wGG{#3&gf8O?Rtyyny^$)pAvf}aB2$#oa)=r}f!J$Y<>Rowo=`tbMzQi<3N{Aen zwulea=v;Puy9P3T*vELDUL)Q?QK=ojq`izkhxlBX861u;b!2st3H*m(0f5s;{_FxizEj4p`5Zd5|EWOp zVKSayv3y8o2HW{(JSgLb9f74{jh0}1sp=U1h)huYCFU0YQ-EiRj6aU}%l{MKaJGy; zdKBy5|JZ=)_)N%n&)1H^FaDmt6diW=3Yp+C61?;G1c-ONF5|ZygHD1yF!HnaaLA`J zeodkhUe5k|{HKG7HH`1AkyVynn*Ap=QC%op^84fyt_^)Lo z*sj3jMlybFSEXOl1hCO!tl_4^I4B~URFcbL|+X;%wWP*y~|EmSEpOo>=kxF3=l>?EEL^}j20mpnLY;`N20R;+nk`0DXl(fWSWWO zBB!TOoJ>R0C4fvtcl{*94(?@)(HEhdr5nVuo5WitiU5#096V94%J7G2F?IK12X(L%5uWby8Zyr{TJgK zV0{cYg|P9xVS)r~?R&jE#?d~N_%ZoL(9r&UWAj4^{+Wk&6 z5aO^#RM-)q395`w$CK%sfm?yDfDETSD{WV4&)OZ34aBemfbAEXij0P(moe*SL&&@= z{~3TLuC3EBmjIpvXySSSpo#18#x_oaY2s=DavLoF0wBwyt!v$WEemMtnvsrWZeW@R zpE3s4dC&-zaQp?(*fj{y*tIp_Fks^e$bx9~Iu^)77)@T~24y_M99|oBz%rg@uqy$Y z!F~e7Bd#UWg?~8bX%IW`E*tavU#~eWV`&vjd<^6xQ|D_L9gg4Oz6AUQr2A!oSPg)m zX0ya;fTpu1;%Pd2mFWUlvBH>CI-xCA5xuWyw$w?6>1xlKp7 z2Y3XK`Dt@|u!jE-+=-?*+u!h(((twvpyBOIfQGlL0UF+J1Za3mqg%ogvM~dE3fof$ zU9Y3u)-1%0%)DMV8SX^d#(>xyZI5& zVpn*I3{N~=n_;d(%8HgQ`BxII8i<9h*G8vg*$(s&^@MoVK_70XJ~(wG*k45M|i45xcIwkiFRX?MIF zpxyCmY*&WU?ie=53H&Rd(J?`j)o|O!(fIgV;3V){mT27H=wC1~8}lz<60i@DyOq!c z-McBCv;zhp!|#H78ZZZ#2ZVb}ecCab$W1%uJ`tR48a_FSXv|D&V_8WWGt(|v`X$q} znP$v1ZO%h_nl^6*81@Zt5};kP@JujL8o<#Wku2zafCkQQ0o>7?QfB97Wu=du!PifK zz)vvC1AYPi3&{9y{t++3|F1kN&tA`0Gk)~-@-iHcz;g;vk=R)y!)%1TRULE~TTj5PKB4WOyF1<=&{J%D*=-YwJ7O*3!ejT+%J^`@CO@zS|#8+O?Fu#QMu zZziIxH!C4qATI|7(ZFb6HZTuZ04xQT12P@Wz_n)Z<0PWBG|j+i0#1Ae90m>|eYm&g z(;A$X;KZi@t-%>aYjCc4&>DOlKx^=00Ik7kx*I-=hL|g|*0b~I(Jq^`iq@K&a!Y2S)s=J1v z5V$V@v{a{+I^jpfh`~45*IrL44*|{CXs}LWb%G}9a+f7D$9RBo%TVAb~A_Our58 z!ke!*sSKx?J51c;_*ZZ;f&$TGh|#9>4wj9_YOY+B;w~VCM_Z)T8J>42XE#*5vcN z8xGK9-Ul;zn#|K&o_HDN@-&$@VJ=UTdGB__13&M?xysx+%bC7dG#z5J?lgCC%Yr4q zO5hDZHYUyLw=9u$z^W_UPb@`O2VMl^KGCfH01zGplIi*$kfn6Qp`HeCgh`H~seMD- zk%)66jZUR6cXSlK2fPpL2V|asx5G{mCo}mN*F99zDuL825i9KL91-u1p24wiQBFsvF13)z(!|DDSI1Zew z5l;87z z1%(s@g%rex0L2t8Dk%;NWjJ0p^Xe_QPX?}bzCKcf1r#{^6i}=ND4?Ktf>;euKyf<` zF$EMC&^Q!OTw$Gh;kGmaY9|PPUmNkLo9wvMPf$An)GC<#0ES~=)F?6fK_jaX(ls4) zJ+0gyswy5HWM72Tm3UwV+zNCBWE#4A0KI^IHNuq_anb-f5C_QgZQ&-`1HEg6Q?k(< zpk$*zAnQ%ZM(q_XhZn@Jz|N3kK%q}aH*lv<8QUq)*IF9M-)`1&9qcjxsrxL^QhfnNX_e(xKYk^%>S zZvh!Tv=ZYVumku4km1ue;FCDOQQ$`)5gbh+P@&`cG2o)p5 zPJpVBv9IE43d{$n8lhr@pkjnj*G2}i!Bmb=H9`yps2rIDP&u*?pmKz&5rV1_;xwvH z<;b0H;>ZKPzJ+jrY7yD^bpHWxxb)~$k9anUvm=e$1Ez(C@DbbsmJM!Jh3C!Cy!YP4Su?L+T=&~0B4R8sN=_!Gs{DruCzrD3k zDOE6!9k`xKrlut3xfk(AcR3cDrknW9uEQrz?%4uXg-5&vz)=*YMd=F4sa|xidhO!!h zq8gb`GQ&D(_!DCW? zK&4Iq;29L^l!uU3HMT(2&hWvQB?8lc>A+?{ZiQRC@nM|b03|iyxFM0!Zgav#*^aCW z-C2OlO$kqLfD)cZ0ZMpY1}Nc)8H&6BbUUI>FQZjbTU4t zATSvagUgLp=}5W`kcCs;vwAq%1faGjT<5`beGgFOQyW=jYN~vw@F9j4;}#h>2vFtI zVI-z`z;+`_Y`80dZNNJXI>5`pd|xV-`>^pU%?9o2gm*a4gbWH`k^a{!8isNZ28*96>;04;z#VA;diRe*vZ zZWHpF(gJ$gJ%XwN?n%f1q&y1i4Iuh494z1ufZ`wuf>=1!GIVbNC=R;)$?N@x;-E*K zx?bT~aBl(L0gl!Pr#og^CJZsAVObZDdqVY4Cj3+n%>}3)QlCcKg>QVFaCM-MXIdu; zgoXpMi+4oK5MUVaCLqf!K!v*k-GMs*8BPIE(scW{grc}x{ekf5=SfDm7m#UpBZk-u ze9u&TOnWQUL6ZQggQyH5wg6NIod#shs19=AIk)sn_G1eZpAqdJF`724k9aDDJ_4u| znlS_C60l{4m@~;37nO|obRfL%r9$A1U%>0YLEtms6mS}dTXenNln_xqL{L6N+&2q7 z44{07pnQn<7NCUao;i*}N{GG$jskbig`NhWe293s9A_gnMAQ!v)DIEs0BVS+9+JB# znPC?IDvCDE$Dj%HT!6C<_z9q*sL?_Um%tW)ilQdi87hkEVuxfoHp9}60;7!p1x8~Q z+xQO5C*0FL6d6r;0j&!>wFCniP=6_UKR{toxIcO5+6z!(^aUU{LWvR8M51zvQC9lN zN?fE~gc=U;0J2Xo1+_*5wM8;F^+u%t!>BbP9tNm4S`DlLjsVmf-BE$I1xg~Q1j}-$ zH_{(%8C}4@YJgoc)Q>J>1#ZNF3{;I`BMOa(y{oV@0A)t97|9G%S7Vt4X!!E=cuJ2B z0^ut{Jmp7}9udlG2t{+2p@{dA85!qrGFfr}y{xj_n!s2vKQcTtR~3xsEfQ4DVmEPTKSl~PAU4G}Q{ zppJ-k*s>t%hW-suH}oYy-B2bVt3ln+i5hV$>^)Cr9Ps1uqGP$xt!5OqTR0qTTC1Jnsor^C26G4-ZSsB_u%_K_8&T4(?; z5Gekic=1k=5tGmGNr2qxyeIJ`Tfj3Fw_|_|{}o~9fy=;-DQHhVpe=p)DNI~}Nx&vR zrlt;w+9O#Lx*I-$1rVSoKphe_NJK8SLLJg80Chv0^Luq^4l1k){AtBfSrZ@;i)_QV2*|0&RiY0J($3 zaE}Kj0yArbQ?S$-pkQeSK*7>%fP$sZ01B2UQlen#C4g=f6`)|LF+jl*#Y)6Mz(d87 z26Yk@ODzB@mhJ$kSXzh7_7(F>D0F@X&I5k{vYON={RU8@^d&%z67@+0^+^QvNd)yt zL}%!bs8OO0i5ey9lZbTyHA<8vF|MJ*cHiU9FD;-(iTWhseIN~y)F%=50n{i_pF~if zM8rUkM2!;lNd)ytL>p9+8YRk(+QQuvphjsNK#kHf05wW007{hJ)=KTf)E`l!#J!a* zz_6tNHA$ZX)Ff?)fMGHnB}p9sN|I8*lq7WlWIQEE>j6rTegh~$%7vd2q=}{c0~P`@ z10_f*4jv^)jQ~oJHUg9&{RB{gMEMah4WI<+BY+YlFY;1?#4==glpJjYC^>o;xE2m2 zQR#a8QDXE2K#9>-fD)so*a#&?wIM5_#OQf|5~BcQM3fl40#IVq5}?HBYk(4?ILL}9 zF**TIVnlfnL3I&v1UL%J!ZuJ5J|=+h4TTH=s4#i}2nXViiXy6sh$8?MMRC{zDvEjo zR1`e}@Jbf*2h2o(06<02LjV;;R1*;tR6IBc2KEH{ z0Pg@*0Chz&p6>1zDhTuk!ixl@6c$lZBvVOdm}@gecfbT>IAun60&+Jf8=}BR`Y98d z908As4Ce)jR?pJUJW%PBUMpBeP!#keKvB?MKyH|#APRzrY{U~xOHt5zK&F#SiO^m^ zmWz!Q)_)sULts2$hokpi+=7?EZN(%V@BuOdwLx)+iwB+nrUI`bp4uSlf(U9-WO_=0 zOn_3L-Cto01x6mjiZ;;dIIexbP=HdPPXJ1RT9=+c1aKCh7Kr*EYJs`|bl(I}3p5{~ z7Kl0^;wli<0)2}`Lm&z1DFvboh@fgmR_p*;;U|F7ANRj;4gr+?5T!%#NA1sepahr# z$c!vxF(8|i(x3GJr9bw!>g}FK=?`T;#1DW>PwCGm0Hr^a`%wDx8$fp{0O?O@!Adx& z{h@u6+%TK!>RP)S1YOXp~{Eghj^*<;m5J5^x=2Vsq~q`biho2N*{jBU6v!u zJwDryp=gec24I1VA)t; z0>ICi$)fnKaK6_2GSFz}^>BXPhu`#R3qWsrEj_=)bRRGR7zc#semPY7=qQy+AAVeo zN*{jAj7lG>dY#s>D;*69A~|X#zMjimjc=>ARn-M1C`ATFNPgM^UJp>g!1Qk8R zaDb{FDtd@!A3CB7DeIwR2lrVyQ53kO0O8y1c#2#C07Wjj3`M&p>lC`Q{>Zv

    emW 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%0A(ozMe_ocSaHrw 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 Q*dt!>7U8A;ISI=D1L&9$(f|Me delta 822258 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�xmcoFcu~xJ5Qop_)lm-PQ*iUOCf{qzSu=_MY?Abc8(&^^fo|R9g z*LG`LP}b}S8yhTOmr z%sNi+|Ea6|^=7^K7#BuiyqFsgPMh-<3Og7%c0>AwhrSS5iH5kCY zfj*VxBmw(ox;)5XC$T2T&1n=Rx6hBnjq;a%=TYCWSh4pNJG=eG(n-^yAv2C(J321t zz~23x9^^2KDFH7H@`>Vfwd0hAoz4=c>}0T5?Ayr;Vkh^qSf^8RD>CB;_6oC3%rH{9 z--=m*@w=18KFjwl)vDnw!wj(l%&gSkroX1!6s`lm;#Pm=>|;>d2r! zIy3pgUSQ4%I^z#duQ@9(-&VV4m&IYlS<=Rpw{FvW01_bJO3D4^Z%yF!ZTecx#MW=x zqnPusi#9mR(SzNwkd#D7Nv{V$S1qve>tQ zX<~_ze0pXQgaJTOsfO zu>%hZI%eXQX)qobj1+s1Jz0#5z}E)jDVZ^b{rGcd)~}QPU1C4}G-!S}39lLGG!LpS zP&eFJdtiBOm|U<|$-jol1$#LDPwYx;6MH@QEa>mZOro$S>`vkS*6FBf68pE-?pf{| zR=q)ihldrgC9Hs>gHES^RkuC_g9oUGRIf$s-jB#S^xlj<+?#zF2G<6qDVbBL#SJ=- z&fK5_`;PupkT1@REzH{~Y=10voOAzwryvzZF`H^Vw33T ztgpD`wg$$W@E&x0Fuq27Xf}SVFfJ|3j4jM=j%qE-Ot95~H;BD2`bb=__aG^wf2!f- z^Rr;kA&fojOKz{q_z^Rn9ut%n16h zpGDT6T=?G{c!Pe!pf4S(|JQ)+`Fmc1!M^`=yt^17_=p_%1TiB-5@!URF`4lL^Ja}? zFBBi2^%n;Hg?E>WiM}M97#_Y5hfm6m?h)gV9^WhWRC*!nBex%tfW4}}68x{oocfU_KNI^3{*Rb{Ys3(A)=wlyWWGq;J@X8)FjZ@Lt`Jp$Pmo-dESJ7e;|4Ww zbluY8=WSEO4tA5+WuGqg9KKa7vlL)vW&*%y#?r>+F$HB?TpsGJ2Gr?f%ToiORhT+%}cxxD%?Sn(3bYd}1b%8qu?i#qEGVz;w zQfbl1u^uvVBgFoSe_|NX*8>KaINBw%f(5M9Ay+D0C)-e#6>CRBwMb zs(~`jri%Tp`}QE8DfYDKhLG%MZnlwe(s2V%AH+tHBs{u-Ahe zcCcRu`MS&mgMC~4i`c=oh<#h!p7rav{kVZK>|cWH`CQRUSW9)9do5zm?NLDo_Dy1X z(77$>z+POJh|6~LoEp9XJTK-dWZte5ryI5S4`T1V{~GkSihbv4|Dz&l*j3y$$m=t! z!}=fSsNswTiv2S4A~E0gHR@9lyNvV1J+k~IF{?B>Z-{kBb7ECyDheMZIi2}JOrq%T zxeWb$1=H|-vAfv88pL(kpieTW27ntR$7ze$6*^t)4onw2xmjYVrsP^PlU!>#8{p_i zVh3I(=5lJ(XRVmk8~%SmXQS9#pMQ&WIt75;nfm7opB=>h{&ZNDSO3L?8aS`f=Tfm9 z!N@o_QLKa$&k;M(`^EjTe5Kgq{nMcHrg&fJ;A^AUL$K|6{hK&n5~UZ4z-CGW`>UhF zf)4ER4i@{e92s;*XT}d)my;OVrlawvaj{O&%a_|u=$%kzjA0U`2dl-sv;N0oWH{a` z_T{(#i$!PPL0SLoAcqg)`X}%VHCQy@irD3yC&oGQg<>62FxZt_669u*hF!ToihX&% zFaB!wS#DTfEGE6h4ghmsBJeTd8XZaGSg}{kQ-c18%mjuR8f?xEI<4O=W{Vf>aauXx!&%jqHgUo%T_-&RKwe!9%77f)-xD16$T~vAe~2VRM3GP z?93o<4*mCbiKO8ntZg`28TL`#!rgdGc7y>uA_ra=0>G}&q9AVy`*oO#5UX#N)9&jH zJ^?skB|jX{_P=dF2lj2GYxp-0uy0fQ2RY16fxrg_IgC905sd-i1Z;z^iajTWi2c+x zI_Nj4THYJE_aq8?HCP&|vUF7S*%H6YM(JMz*m!w3QU9yzwiZV)O9?$VEX%3Nh+h^u z@F7`eT9%_TJ?OyAS!YR`j>g{&g27hW(59sQdS-NB>o`$@4G2lYPUxbLbe}M{QdL;n za7x2JVE?(;WnUvcF=xHk%f%(sDKob4;aTS-v29z#2W0uzvp$Lbf4a^G-s|!F|DSVK zpOrOgisImuq!Eh435_E~S#4$6LZ%3@kS!MC6N`mdS-cP5;;>jO7D9++i^VrvS=-{9 zEtV}7%NEPl?Du@VKlkgrueE+2j~@5)zV7R~uj{)1z3 zSPhesfgFgvCb3wigK0fJxYH2al zZD2cS52KRzBi4wj|87Ap*7Gj^BT6HwXr81r1@^tQ;_XFO*ju+Q@S;By+fu9tYAydBgZ(i6 zNz$RuN@>9Bg@O3?Wbi61LpfdppG*3xAGNNK4}d)q1A}}J+!Ng%{F?w%gvpC9B;2Kf@WDLL2*gSlhz$Rr>7Mj;_}(mH z8~~q$Tt2UdDe^96Bvu#VeUK}*AHvRW0qjpP%agtaYFXGw;{B?&$ClnMc2CI$av=5x z__e7c$;FyoIX>{MY+egL9^}`5gWf8FHOoe9n=I%wCzg)b{VWPPX6cCkH~GGjxKq-V z(o`xsVl-m2LPBEQ1|@$e$Tucdr(!!UZ732jOGj*-u0dxhw~ThW^(m6&RQ$YKlQ&f5 z>%vuJe0ZvhyJM%3ye>S|X9OLw-)!6+bXtN=ONELbife+BSs93Zc>Wgdf>VvkCfFY? zJ`T3q63bTXcbT90RWU*x5_gl5DpuOlO4+u#ZTD>3n*+T=)^Q%c0^`r5hlW8M@W*PG z>P4(@G$uonydB(-^ra*A3!CAvKg5lPm6HBlpY&xrBQds>yfO))9Bd6rW;qb|Pda_y zE>6+o;A4=>K?SDB_vNsVfLLz`)c*w`foZuuD@6`esZUBRu$-yWwV~6Ap;NI}%FUru z>#I+(Z`yx=wIY@M23Vu6{y&LPe?o(Yare+^*Wg$zLuGSR(3ur<#JVGgMViR`B-@0B>zs3Plt7xmHrd39V`j@{}=Sv!Aes4zlZn4e_r_q6)?|oTViD( z_I==Uzb%3|9QG6(0Y8@dc?Whs;%P~K{@UUR_84s2%3>;hEI$((mco84zX!Y1&50G9 z*yqPiuN6AtF3Iseurh9^I($}=Plu29=YyY9aYQR%2lUGzUj;j$ny@B1CssgW+wK{3 z>Vl5gI{Us}DWdKfl*B&ek4|!BFn?C@_GZHDf;-<@aM!>aZ!hGtZm#-LpyK=nuKAyz zDq0jv;C!gyWywHwvy8>g;O9YSJX_b>Y(v_L(ibz-`A*sY*<$PVhVz?(95+#+$mhu{ zW3kWw;X!9Wccek!H$K}qaG=Hf!B)aS8c7^emY(*jS2 zeXz`e+u=-Wsu|XCE?yP%*W~)y&v%J)TqOTzkZ*&1VAejD4|@7h%4(&07{Y!iPEK+qB;J=&L1eIfPYOll)6Cn2(m&_nYhCPwBcWgBz&m9hD-T59=%uFM<8?<5?I{t}pfot$?Mg zfA7NnGU#uxM{W!JW!h``cl^(aevYqD>7Il(IgnBrtcP`&NU84U zMV4j-A-4XBK}Xz}Y_EpZpZcE$dn9HB{fa8;NY0*ty<(TbUir@l1F`q?iXazT|CJyY zPe}bAzM@D*e3>pmittCFVPRrrDfUpm9(2UxQm041R0KT$?t@%?PJk)$?9J*^Op)u% zdZ|)8k!}wLVt-bD4ECrjhV}A5qxI>R3kTveQ>W(!x!7BAQjkynpY&AMpBkR#3Opz9 zqQJ`nuL`^&aA|Jplz!?0_YFKC+*g|Cg+C>tiZ3Y-z$B9o-NMBAbOfDegU+Dfz+X2> zU)&{)%CE!MP-_#TQz@ykYf}1iQ0mBKM9*>!y@yVnin}KL8L(d%+!lsc?8SIzkc%z9 z8*Y6`+7cS>3kG6eC>{v%&IG3*6x_lj&qoOMLG)|5JMCI4AHgd1uj~I7+j5Tz74ORf zQiGKGz!douEC|CpDBL~!gb}j7f)MMduH|1N?8Vz3_Vw$S)PMCuaB$FJ$ z@nl$mNa{l{$z#c1$x!DKyo0KD9?DCNi z`)V~P$i-q0r&8&jl&*l)i5jQEzTG|nBg*As@9AYhE_M(v z1i4tdKta3?tAFu2>G=H5D+o1=;$vYc?)ggbG}{}taXqYOzdGszQ{=&ky- z>(N(Vl@Y;UR4_2hK&)Yx!C66Pd}8T{y)CE0di|#0Zi2lIX2K4-8K${<|5wHP_`bl8 z!d@RMVL4Ez8(@k&W3fBk9OPyNCq4xITK?_xiz1- z+>>^N{a%oZeIM?zd+|#RJz>JGep5Ms3U>LRik)*)Fc=8?Xc?YZ&PK!DLzlyOKO`^} z)_q3_+-*7B+4-Z>vU~b{Hf7v`l4t6d!C+Nl>4>fK@1Qd?97`T}>5H{t%dEqb(}Z+L ztku;^|NqK~VW!M77Ar#;-x72-gdh5xmE_VF>yxAO?+^N$gZ_vx-E#=K_3!;J2px&( zFYjm-tYPm(r~e02l$61`ApcX4Z-hUWZ2tj+x&DZUYX@krw83^`5m2SHEh#Ajv39#M z*y)$Wp4d_tltzaPIwT$0iuL(N^W8Pb#g_LBa&dbdf->kE8pL{5N#49m@#yJq9iFn{ zQ)pM9Hz&D9MSMJRjn*nyCyV%vpd;3Yamhcfgock{Z51^fys8*Fv9_G#17T0c@Sr2M zd^FrH>5mOM<~AfCo`6oJOs6Y?l30@_XFIJfGT0r~h$zc$uroLuMx4vVPT+zd7dwHg zVF!A{Y97KirjpN-0=gA;26w{NS+GlSF`Jv@ntQQ^S^++g#Hds^u?Ap1i83x(jN~iFpcQBL1zNIvmV0g z^s>+}MGZ-QeUQ%x^4o*FImqu1@&!TuM366mHCpmpdBF`-#HXc(eSTGBSr6;W92pz~ zYlM`|m*7vqS`#DTVM#s@26MSs`(CyWzj|x0F@cOWZN^5us(|<{eqO_*^4n)qn!II~z9UcWM>I;KhtQR-Zp8+3~ zbRLJhBz_rI_OksA43@Oc*23BmWu5<<+z?m+Nv@9MpytU&0_k)JaYFMIS-MC&6CT!(n|hCHV~40ky!+@?jX2>OzJONcwAo{^p<~J~-*@UHNVGM3aLa zuruoiyHoLrRLbZ~fi*SKzXEPZ{4lKBj^wLhC-WAJI1f(j>H8Q)wN%j@|AUIBVCS_( z_MKn{R1dq;ez1&Xdnl~W&~iK&*40fs6n1b|!5*!fU{vy5Fmo;Ezi%w}x&h;@VI|K` za;;>sIx3^{D6ElC5Q|}5v*h?W*n$2MMwIKUf^{*G&RZ~uocUM9&*{Iw?(_rLi)bs1 z|J=CyYc}Th2Vn0rAehtg9__x*}xV5ks>>pvRzucKB zKIyuzD~4U%m^vB_JJ4~k9h@EX$0ycEi1jH)30w_(?&n(n^US|0J(ALML1~?pFgB}G zu`d)G6D!Lt)<;LIcc^mQ>5U>8v8T9eE+>C27F864IywrL17&wYVzr$d`0If$fHkDj znF8x95nl&ut%&CY`8}`}rsR)TsK}Wr&%=7&i+=;xCSD7J`KRL!9g7>VShx)I{ zHXoH_t4qfgSUXFj()M@NZC{a6M=Ellkr4Yl*b_#S%j;l2zZ-+RKkVDiaM=BbeTYqh zeSTaWbl^(snLLXIcXS_Y$M?hDa*xBO;z2?0{QJV0*e6|ASR*H$Jp$JSeRG@7GykgS zxvpVp2uflfM1x`7=hf+@aQnnp!+zpj3nR{-Y}4WHu=>2u^2F}*3FL?R{NG5$oqhnj z(+`93*2J1`agXF+kM-4zHGOrk51Br&0}^ZHE1<)IywX6$m&xJqJ}4>6i9t!+D;eKv zIXYrLQs-MvaALm$c*1h@JFt@D3A6@2B9ihXiDALL>O^cL(9+5mqh1^O4*jyJ=8`n7qh=wIyJv@6_t z|L;u23vjPsApTTxP!Ib7(>v&ho#oL%F4mUTu#X6GaT={k=@cryR$myD#D0w45aePH z^({%K7Y-f_I$}Hi3G7i>2HW-pxGT?}e6hSig+TKu5X)Gd{uTC6Z-H(6G3=l_{h_cG z+i@@0w!LB79t7KVaD|E;4~CubxF8qX_}rwU;I0iiVxRwWVP`xKw(Y&J9X}1rZ+`z* z#l~x3AEm!bO4^EIzXR9?d%kzsP$VGMO-b|J3vSIGb`S@_UYN&i2=9NWwBB}x!X6c| zFOz2mx!6y$NkJ}FG8&;9VSh-y9da;^ryjKIqVExf*sKBVcUvr zyE(|kw*3&c?PuO*n(&`5x(-wvX;;{tifz0X>{IU$*mK+$_L<)V+g9x9_*&2(4g1Wf zoE;j*hlY!Td{U5K3EP2K9cjL=4|1^`%nov~<#Vg@>iZv6oY})R;JL5}9-AC={9}=E zC-_UqHOFTL`B>PaI1xrAA6>CO;$04(m~5B*k@Mdt+6o#DNDY65b?Ry5f0$U#w!*bZ z=O3^iNW1;1SX^CU4ZHLY3G#k$6LO8#B`{dZ@BgZJ;auwml*F2Q8GJX$#Xe-_!cFMN z*}9-3?w91B-B^r-*vI^Cu-0Fmr7HWva&}}e5PJb01N#m?Cg_Mg>=S}qY}*Ur{Zl}5 z3Y|(x6@MbRw`eGdwN(_*k{}oB6q9@vJRo)2;hkcAd=~DL56tD{uQ^u5 z*`E^(#LnOX*f-$of{xg?+wa44m-jgbw(T8o_Y~06aBb3ATA`w=mFDlQ(69m4mk`SG zT^P(e70X!iP4MBcY`ec(=!oT5I=zBi?DOCYNuHnosyNbt!9Z+-Q-fUWjL!>lv8VFV zAQ!uznL!R$T3?$!6&l1|z3;*vu1&B5{Q&l2+~v>3uy=&L80%mLA|E-iZM(zOTM+Z# zmx}lOX|SD*f%P$4!*~Pij>HF3(Xc-WQ{)bo!2OeabI=#t@rUp}NvHEB`qci@0#wCO z*Q+7P#Wvm#_T8-k_9xk+VFxh)_TzN~?0&?))SMIK6;&G1QZ{o#gV>JmfxYsV1|6{< zwZDOVV!j4*dgp!CzE_NB8`#r&IE+g5{8z=!j)Fa}qpM2!2#GyHL|=FxCSYFG(dE_T%a3UaX>*S=o_T@TwO#CYj_pJb4f|V zDE2N~4f`J1bxV=GxFOjNgS`$$!rp8XgZz>$;X@FWR>#-EicXHjdTx~AdxBi-1^7^q zi~THm8@A)phsC%11L11_JcLx~Nlh7_3p?s>z=-l7Cc++}>)_r={~_4Zu>`iWU%|Fr z1MipgKZe1)PjNRr1m*a19~JY|8TPZ~VAuv?kHqjG7kea54RW!A8xQ-_*A;MW3ZgQV zia#08f$dD}k+>ts#ddZd>`z~h!+v)CD(H*r=~UDAH`tCpgxL|*FG2SGdof%+VISY8 zzz#_4fKG!w)RzVwv4guN$i=q39`=@=^LHMCe*XM`2G7}i*dK6~1^M%^_wiqXd^7Bz zyKgOm7Ta+z*g+p>9X$k9an!@zfLv_jlVL|a7WR9J3t$iFMA$*kfSt?@u!DXw$d|ws zNBs^J54G5i--jJ_`;QA9v4ids<`={DGR&5r*l6E!H#-%P!c=pc|k6=?Y*#rUIhCi|FiI?@TMe}!M@eM2P=sDLy#(t zde46r+0?;4N=LztT5QLs!a9_6h)oGPVh24v$i=q3;h&uU-hRzA_*#EA?4fRfJ=BX~ z2O;*g{-q!n`&M7tR_KfExGh{AY39E^D2aXa9tC^oz5x4Le=b~06dKYAu;=v-*ujbI z>@L_R@t^lq?&?g<}~*3(ylzSu#ZALQcvkI8E9-WD3fj`~H| z*{^`@_!Zder;ik*p7R^ z4!SAmh^s+!{tgQbVjGWy9raka^~x3WFMxdmz5@18Uj_R!!hJzs?4W-G*XsP&gJdlg zJAMQ9yl#a(5@HW^n>K}9Y}@v*gYFvSdj);5UbN^+Ug<@}QGXs*)M^+R48%U&DzI1Y zG}v2fNzfNNpl4z4taU+0OfuE;e`9D6+xR`$*=&QowLaCh2%-(_t<@FwXol}{1B84#?xTO=fj?Y>A_g+t#uddk-G=>)_NJPrBhAoO4#%LFWA1sxi6jnwdG=! z*27j3d%pVwx!8gBgFQk`u(#F;u!9%^JLt1u2Yn7)an!d2gITbnejau}Vmp2j_SV`E zbi@vNbC8Q|`yrfy=7%6YT|~VTY-eJ>aM&xz#a@hGguNJt!4CSWpf9%LYhh38yj+L< zr+HGvQ9qD3ROMnDKMZ@QpM?)3Qaw30!uuuuY`dD)cM1JqFU-O4@T7Aq>?CikQ1LJ> z3Jqd^UVjnxT&{qJrH(qcuW9`XXaw9N$-fDEjxUA%0cINPpnn7_i2VFl#Y49)HE2}C zzFfQud+6HkRAeA-NRE$$Jsn5EUW`q!-=3Tb`z6<;ojCvNlkqGXzHlpH?}d)R9}Tj+~VPdZ~@ zf0KI=d~}jO0Q=+E6L2kZjqVcoAf5kOL~m0Wn)u+I3#GpB7n1x!ctGL@U@-4U+$YI@ z9pvJRlYG!F#dhrQ)yz&9s(m(LXo>R{MI+85T{P$PNdJ(5^KD&r19~*aov;zcy`#QOSp0Y-caP`zPB?K}YPB-?npM zD?VQOI{$}I@mBc~?3Fwr7>GM12bTxA*mHj$ta(-T3t&Ixeh)jD^{}6cAHrIHc{ZxZ zv4&-rE=8nbonn&j3%jG9uwL6p-W2r3UPB{b@AdOw+fIN}GL_QhROlxULhLMWggvh_ zgM41l7wdRd5cdZ89DeC#5pw;4)Xa{>kB!bxI{LvoasES4GF}>tXJMdQjiR+&2I8*C z*&5iv{U&iQ4A#PanY9J>c~IW1NK)KHKhi&;LPd^rAe;z0n_?s%<@n zi{0sqL4O781YUt1&>vviify|EZax21vGK>Sjd$6jSePAQ2U-WaQ?YHk!#?#6gUKlm zx&iicVGx{b`4XIp=i~HXFb4LaabA#52=Z?Q`Q#w4zz$BVel!I)2D$h%e*be@Xb{_R zOOT75*`t>8Tv!b2iY5mizGWyf!MdzQ(+k^h!)t# z>H_$HB!3llK)+5b{k3py(s>>BQ}LrDR{~q>IRAY?*k!L`xH`d27%S?LFqj7?_Ub(= z$i-TK(myZA#Xjk#!cFKXxTP=!eX{x*S8`AYb3SlQRq7dkcdm8xSYl|zHrhtgg_E_R?j zf?RCT*K{wgVjW@c`=em%ixr$k@jTcLCcp@#33tkY9F;-Av@`LBv^w_Wxtf)M*MQXk}Ep9jN(Tx`cD!v`j3R|Orh@0FF? zLxcFRWbjgui#sLx>#*0yI@sqyxmO`?2Rn$*!VaQ8OgH%%BWC2P@Basd2CK|7mC+{T&&U3L9_w(6@F{b5i1$#wBMie-Pf6c)9(_U-6p7;*I>1h>w8kgtXF#jErG&CnorNACo=*sFK<-bHZT;2|l9aj>2pT3l1$ zOB25bAD_7I=Zp1pG%WvlqywnbC#5m4&x5mIkHmP`!A*ow&uztCP}jj8(c6QL*xT{} zINd7`C~Xc(;)WDN&jX5e@OgO8Y{sX``&QidX^8A!tVe~W^ztAVdv{(JltwG)X{aYcknFO&VB@Y@E5}SCH>W~ z`xJX%--T;+Ug$EkiHe^m})2%b~Y9E$G(}ckNyW?XDN2jF9o^SYyR)B`p@52ZKcvL4cF%nDmoH7po3u#_0XUr zc5tTzx!AU+!QQnKU_WxceGtzpXE}uipFwkA%Ws1n_0M2uDR$6Xf?RCJAHxp1^TCC! zxEeI`UmqI8Hr@|*qz$lNkQ@Wo5{1@H6YQYJzz+Hh*g@YE8xDi9OWs1i9F@@53JIZLk;Prw=KDYX>{%N>3_wAoe}vE5TqC?5M8``eHl25q8k` z1s$=2ek91n*jArcPf&5x%V9_TOV~rY3ik77Ly*4>d#HEqTj+O&9rR$>Ns1lxNqu=< zIqGwQlGssS669hVUj{qq>99ZL&kp)x-{hZzy>6DldC+=ZydN4i!#+xT_bZ|n+wnoL z_P37JVL?aiphpL}*tTcDUepueim&qDqT->R411_&z#clWZ}RhkT zJLpNUgT5^2i+yFdA<6UeUlnhmCt(lu64+6{lMIxl*pAip<0gx=WCYZM#PU z=fAg5ZyLO~z5siukA?j<<`meAQS6|<13T#Hu!DX)=!@<6X}B6R^Z)ChBzDwq2D#YA ze}oKjK`!o-w(dES<3C?GsyOP~VQ1eA+wnZu>*E>N883w$^a|J` zB)07rPmRKv)*uz)Nm4P2VaDJicNv-K9fMqK<1VnX=?VJ~I}mozePADAO|XL&d!3!q$ocPvQ)uuhHZvHA?RYlq z)xI$3hU#E3HEvLSGX2u+Cf|3e7bf1@7KQwLTqOTz@G0RK}YNn8WrSX+nx%0 zgeJf~4=#co#3Z=l_YpT!@kofhs+R`2*o*YNAQ#*5UttH`@yMc2v4gHFtHtr5P z>b|hATt^iKC9!Y7C&3=-;jlj=TpIMn4*LEe7nimF^cY=8#q;`e*o$Zd?5Nkk9wD)V zehqfe8-x5k*uiav_4!nvs6K|>&&L%iidqfbk186(KHa_yJD?G;x7LiHFLppT!)&c; zVnJsi>|~ZCd4B$@V&i9FXR{La*7_CfAlAU%S{q?!Blgz%SCEUnvl@;r^x;aY<0EPC z6pRW=VsEXBU=Qgfu(#Hoa4k`2Yt4l{-><+9PV6LKg{zB{`QIFr#2%t;K`yp&&46Nr zI>O#syTJ~kE9{^Tg&p+au!H_O+_kvvP#kl7eis0&C2R$6NW3e5d40~EH3_4wK5{z$AEM&u#Ljpr?4kQDY~!_XLkglpQxWLS zu;;Zi>^B_;!G4c52(C}I<6+i+b=#g*eiSnj7q-!#O~)= z*!|QFEN)F5;iO+FsbYh{uzy7G2H3;?>%yQUK0O80_xR!~tc7+Q?D@V5c1PkqN#}te7hjy@T?ZHI>0sFFqaUn5b>vU1 zQ1R1jD(pGF3icd70)H)a+U|rR2(gdnU0~aGgl8xHdtfi>CxgxsSPL-!zTzD!{t?09 zCl(8E419Cy=pEP#s&+^iEm(I$jaEPSgv8&59nch5w#s-mJSpka4CVYkD^<=OT4W|} zm*n4o-O)tY&hCKsPddwBFkgUT2l`r&i;qwGbtieJu>N~c@k$;5yCZR@WH3C)#h&}i zVa=$D{A1z<;n5jVMV83g?+4!gHg!?YI9HVvx(!ATt8kY);X{KuZ6t}nr(|t^RPLHU;_LgM2IO2hVQ9(}?Q)?@GlB}&glu;1m~0Ard5A=a>~pIcyOKOfdqN`61wdj7BAr!;j2ATKSTfg=BV zisB4b#>alCdf@B^p8!ioYeMW!hrkZ>E3o>L&M4Rmc1+SoUMYQ@%6TX$q8Ea}i%CiH z6|g(~RnS=jyVG^B0}?x+-@zWyx2(fdZh-sh{8wh3zg!rLwZA2Ag8ef}CkGv|526Yz zXUg&#*yq7?*ul+&9h}%#_~kNo!*bY9uz$mTVAPJN8MqQ9jl?hDeu@7LBg!3@Mi$TY zdf4mfaM(IWz`c^~7`P{#pa0XSzf;K^c#ReXIF8Y<;m$x+(CUN&ow>gPsE)n&dCS9?_TJ>ds>R z-=N}%Ho>PPgX6wZbTkm2ndHBKYhlgzD)_@Be_>Ri|04WMl3#O5(f=$Mac(Q#Rr^m_ z{(y?3o)7zz@5Ar`NoOtm*~D+dVBV3K1)cY^^H&SG_HM!fwb;{#!Opk=_H-N(xIgS+JQ1d!d>x2=<`07%#Mq!C z_O`qXZhimreJXZ52iA0y5j+ClrbyuvPAjq;3TqKb=T!Kpr1O2awIA3g;M~CTVI`KI z|M#bg94vr6qz}XB!#-PLS74dTKmE7N9-MR46OfiU!K{yK}qbP zyCTTN-j>s0uaDbV zurDT$!ai_*3Oku!kKz1x)USnxO|Z}Q@)-r!!`AN!6I=c_vc;MXjl>a_!+knce|cU( z^-pq*g!sT*pZPzVilZJ6JL+l4K-r6({Q}tA?4h6|_JQ*Z>^_&m8Z8C48r~Py=x%|# z`~2_n_3GAALs!_tdl2l$aRZEPJ{@A8ddI?c)&y&R%h^|92YPzY83Wg&BVU!NRN%Z* zu{-^4kc&0!>hvbd8OE8g_P6A7U^~0RI>^OZAJSO>yZ^^vMAh?uacKAn>_zuHd=SQp z^nKV5qz-2mZ@jv~sO0NFtm9VB4uRcIKiG@3$@=Il)Bm(V##$81mQ;UGR>p6_l56h8 z?O_G+F6>S>!S3{*FwMFCHrQEy`l&+R4t77C;JkmG|El<4*)tf_!9A1XCL5sNpH;2t zkV9vq1jOn`37q6Ckq?7C1*Zr37`WnwZ@2;D0XWb>AqNwaTn@x~?8-q4?A88ouoe3O zvmExCcq!gAYpvoyHa0rXP$rpKr0}dq9wjyC>T-EGL<< zu%0jSHMv5?4~A<3-vWDh=LY!$aBb@JM=+Qtun?|?)#*yh6MJp_CfRCHuZ26HpP&C5 zQbohEIqE~e2>+UdS`ABqy9o!y)>tIy!K*jsR3iSB1eE(-y2GQUb4yV9J zprn9qg6&`?d}NZp0E4+>FP@52saGpu!^ehxmndbiM;Xn?iO@;};r8WkIifwhQa zFe@0`4twF;346ZpgHg|e5c>_t6R;-rL?A!2Q z*iXeXVLKK(xU((C*?8Ee;gv8x^FXJ<{!~`^cR63qh-QOC< zUa&`^A8ZGQCLQSyf!)tZuusfWVHSS%{r|aC@@$BD0<1@{hG;tM>+}D>>PV}19;^|P zgO(&0-wV5+`EZZa&x@9$BW|DMzdWZ>bh?^`Q&Xo0oLfZQ2lnUn@vu%eWq$?i?5~3n z=fQ~^Q$I^#@090*jyS&&>HJ^q2C`oR>+`*`Z+l+Rsn~adJz$N5GOi1}xAp0#9@Yt{ ze#XPTtX^gvHO+8Q)YX>=;sFFeP9K8B6!W|T~G}|{fKp+Q1)G6C9K5uxPbHD+1JtFt9O6cEA}K9 z{oFv@1S{hkVFj#?Zi2PV`&J1zkyumzcNsz8WF!m3wwzAz&>OeVLR>*D>FG52HSzyYvuHy zKL+-~JSXT^RPj+d0d~}rf|A%-ekaJq{$$e};kLvDl6;f;~->U^~7P zw&R;&I~M!F_JHL&|5dT^!%0cQ^|F-`>)Bt1Hz23T*Uj6(_FdSHYcDJui)~v6`##tU z*80mkQbqe)4hF%V@2|nu5&J@M5!{+R>;x`_y)bWpZ7bH=Qvb6Hc_pv--2P$FP!jt- zxFpEMz6HGs>qOIN{SJ0O>)~!m{xR$z#O`yai=@HV=Gi_d=BhW@7u7Ar@(%6&VX$!_H^7G^jlz`89xg0g+cyg zl2?EJCp7#Fwga&`(wzMw$i;T>T9At^-w@^AdkI=*)n9Z}>rw&xidiSOQo3Vg8?{(kFHFM;OfKOzew8&7>qJ>NfCT zbTleMEl+$>>gW5&5#{~Nft}1fu&#GX;8nQR=l>cidQz(4UqR{MONxNRKC1h{9*M(X zul8X=iyM=!pH!;4awCT43AW2iK>7UVvNAe^uP@HjGX_Ph#Eml;xj;Tr3BYzX$uyzt7~t zR_yJ4M39S9Km$uhQ=yOC*#OvkbVM)^JF~9`xp?QS?@{I5D>j=Jn#H~8x)=Q~2y(GL zyGZ^U*aNi|_CUP>dx`xMMm-Nv>?QW;OIt&)l-g0T@n>P*!s=knsGJ=OyCbo7yasSW zkc)j1%nov~m)MK2gI)o*{@vAAsO*!RZG!Dg?5MW}x!6Jf3wF>QE-OCY>rT&FToD_Pq1yp)u7qOf1~1Tw!k+27GKp>?=n1AQ$Ux zofhwqAQwC6%iz}M*c2*ud=>0-su{L3v4?tokc(~m0PLWb!1XDJwLxF(3w32nXb?N< zJufdtr4DwMeP9P9_7?qe&>sOipi^KcGYPh>m}IKYv8ka!Y~yQSe@}TAT#L2VN(=0j z{}k*_#ZF*-kc*wb<{;mEInOa?u9fa5k{3__LfgQwauoKt<+g9BAcQ;B`77bz>w}m~_ zd&3U2KFE)R-Kp3Kj16+J6PQ%UD_w=nsP(#7Ni)OoVMau|mZeObHEQ z8(#(cWXyt&*iXV`K`!=_@SPwR`$@R>Rn>&^^S_>oo$UwvNjM00q+$m;BFM$IJq7mR zGamjl#v0vkz@D;+u%Cp}uJZR7v{Gq(65a}XI_AKB60U$9kl2o2fj!56gl)SK_Q=&< zUC7(O)h8kIe*hJCD)#w2I>^O#b_VQ+%9XG)n+kh`X29-KY}=b*kI-DWjQ@Oy?xo_W z=fjTrxgcK#`}zIHAm0c(=-tA_yen+Sd%+I+XxKql22gR-LtsZOw()S-QICQB{5~t_ zi@iJa>A?Mny_@a`axp5YvplYK*j*inBCc5tI%5B2qMEw*|f&4BIrX4pY5fbC4|pch-N^IsJkKLtDL z6|nd52R1-o?4a9RQ#cSi=mTK~-3NBir@;<-3|z6}aa0`jRM=6A9rcVL7u)t`*g?;Q z{Ym|mpfA??&`7@lrywe&-&64^*6!NEvDn%73v#hfv2$T(GXZu$7s5WoX2MQJ>|~mA zIr~rZr;3f|!OmtO>{IM9*h9J)_9?akwga)R^RL4WZXN7HtmAhI{f-qXcH9N_DRwYy z&Iqa?VXV{K6!47(l>k9ok*p9oy-dO`+2Pba*|LzP44PqM) zhaL5pARh-ixU=E*^s22j5w-)dzE+ZaR*;Lmvno%82C=u+`>-8sh8@s{u(wv{>kDUM zPeFZ|`2XcGd~`)9+|19?}7@x7G;Q*@(Th&I)pIL)P(&yvwkkd5FA`o`9Xl z64-0<)gWI3drkf$$hX0s-2=W`^wS5nuYPb^l9kezsW^`jum@xe>^#Ia9tV3sCc)lF zm%$Et3hbb74e~j#gMK=fr?YG+6-WIpY{z0d*bI9k?L4D!))98lb+B#44!S$+p!>q^ z^N30?I0E)YIstYzLtt;Di(!w}B-laU74%zRJH8M0Mp_0tII)7x&$5-FL2TpIu%liN zdjqt;p}4*Gfwf_J5!DD-Z!g8;;Nug|hr#@*A$CANxq-9H*(?jjtAl~~u+&kT8;hT@ z83_A3+^@qPt+DWaN&h<7j>R6ug>W@7=KmQg4q_>6<2PY{GqnZw9G7k?I@%w$ZEyJc z9m>2_w@MBhwCsZ?x+E_(kR%A?whc)oDAF9KVW}g{@l%lPG|Vq z)c@`9fr+1o!F)O@s`!)G23YS`vQCk@07v?uH!dL`B<_J+Mk2f;p!zX}t7se|sasx(oN!R;_b zJ~tVxt*GGU+90t`d&w6Cxww1kXLXQ^y`_H>bbtyKWWfqRv{NVpd(<9P=7dmcULJLPsNT0!G4a7hV4M?gXp}VKLOTLTqAc$&=-Fy z$tS}OdTP)S@9K9M-wO?5tym53{2&*57$1PW<(>~ZV!tMQBgn z8Jytbi0of%)u&-E`riZ{v7X8r*v&9SzI;A_ZTk`I7ban&N>7n_CmWf z$i+uv+Y6mVu%C6$!M%KC*g(aL=o456o_2H1ZN>ehH+)Fy=xZ>|xz1?#cv!*xPms@r z{qqA4zzxav4H(RAE2KnPW$+wq2S0&*#;t)5PXV>h3TI;9aSw$Rv_`Z6_G9J?8CM46 zdBYcI*cX!mM^^?_v?%2GB{wAY zsJxEc8LWeKtV(|i?Cd|^TsRi*mz;eGw(SVm*`Eq){pH!K;_RowmW!RiHL$PybAyi9 ztNKCM&KAP9eFUzjQ)RyzPW@N%iW@#C8cJe)vQn0R4|1^_Nd7T=D6CEoyrZ?#oP7`t z405ppIuX{dk>}YDp`yL3PR9fTu`|0M$i<$rDM2oFKQn_|?C)?F2l?U(m4j0TZ^0hA z4X`792lk@-^qs|`YX^JLb%yCCPeyFpZm=&~ySw|KRGpMtBAdY z<^{Rfi|$p}L9c=B_%(Q+_besPPUw=?(HEs_(>aH;FN%E-ofr%^cs2=ul z+W^~v*bl7}U=7CTYp1B6(_jZZ26oVw1^E=%L04L+*n!wl z{~{Qyg6;U%uovUsUuz#T7LAc`KT1dq!{{`5cik-ox zAQyX@wgtJ^3G8!sk#RljAohb(0{j_oDt0Dz2E&3}Y~zuzKUAC_bi_{JTG)wAhn>KW zg1)%*>+ff%cy5-$&fxb!z8-cEZ^NE~QcID5*a>t9aXb$=@^c4`Y~wAkA1XWlppbWjeY-s($os=S zp3e>P2{68@=l_LN{7|_Gb_Qb4Wd=LrX4rwwgFQkEVGsMGu!CL@4TPc6<-)sF%XdOzfan1i9F@ufPs^9qet~_I~xl{@0dJ z#Zh<78>(`#qdqps#SZ$yAQ#*5H(>{TbI=hx=sPN*;SSiwcfpSOA-HcE>NkSESnESW z{T}R*`wQ$ttm_Yp(GolR@wILO@STIRj^O7xv-}|>}(bUx!AT3!A@o= z>_hBlKMePODy^s3Z{f5+N^4=CV(-EZZWHWNtbRcekl2p*gMEk{1KYLZ!1QqM#+{i@mj83UaY`)+ez0Dg7w<)%n|&inmrz*x87kP2V6FJLtn< zXEO-)*7_ps5gi8melQkx|Kf_b);Fm*y2-G&)`DOlw&RCjZ><-Dj@Xad^+7K7&MGf# z^~JA0Q1N^pQ8bkL!*=!s*o*XZ*qM!iJwg*;XC}7og|J6xD(szgE!_HReAB5o>bvrW zbX9^K^@~Bi0(Q_J1^HIkj{gNa=sh1Qg06!dbnglkN8KB?@j-wf(V7Z7=m(R2e*Q0{V#klb-dZbR2PbyaYlB>D+c#hby$SY?=<;xJo$n9( zM-0Y1T+^%dRr-ZA9FI3$C>FtXEZ#F4dm-Od`K|jKh@8~#;6syH#~&9zQSc?$-&|^0C zL1!~upL9AtQoQXy7H)l4*+j)kV_~nct6^t34YsrLqs0g2y=dgob z0ryBc?^dYjt*U0I=CNYv#J&pd27d}2U8=gl{%T_kpxV&3s-NNFp zGi*x=`Y{Hv-$QkMJOzea+%7q)hdm8`M~@yd8nd8Q&aIx z*rPKU)+ngc%VFZq`6?L9=XYziVp926H7lQ-drA4cno83b8=Dm05K5^JOXY}Ej-u32 zH$Ij9PpIn6{ZeC-PNfBuvS0hD>K~FAklGjRTK$Vxiz#*LtfiFRnlD%F*H+8g(zqf{D`C}lS_l`~TNEK2n| zC&^oqd_j^gq?G+CO8Hx#Vmr4Umn*cf3ni@KMt{Pw+rPfXZWi#alI_N{$ zk$I`7>`N)T0onA+%HONZq^h{*P%5rwO8H-!>cdW~%9l}ZK)!`i=A~iPvO_AnQp$b= z`hzIzsLSmf>gs<8b%iySQh7|S)=wzS1k_=3YFJ1qgT<8Ua7k)kp2}58z9yAxDcfbM zzRkl&<5e2o*raK$qg1_5DhE)??+8kDJ1UikBud3Ig;IK}m`2&H zq3lVyHI;Q~dCx>o{j6shOMeTc#=U+-HP5+e{#s6Kd~)y0%jehRzfCo%U3HT*Q_6Y) zWnap*l=8kll^avJnNp+Cu6@<6_mJvp=$q=JDb>$}R8FC6puUh&{jQ@_7VF!WDg&E< z`khMoFXj)URKo~L4Z|2pbuusDXBhQOoytC`?3>C4 zO3mg7O6iYI@-dVOXF{q^Oywj>&EE7>ADhyjk?J!)!?>xVIS5qFP33$_bvPaa$rn+V z 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
    pD@kP{lh6hwI%0$KGmgoTLlGz7+Y8Ulf* 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

    RELAH@DhiI1R53{GTjC46hvvrYxkuC>m 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 z

      N_Z=@d+liY_MQ@g(pM&u!G1n3E4asC_x^f@PO0{X^>|@ad!=$eYeSekZ#Xu+w zkiY0BB;J?IGBDZ!D)lS`)1^j)!S0A%`S{>?3#=zdBMpPZAV7r^9>*nO!WA+`ni@`R zOxS$@`6^2ye-*VYOAVs%y9oIfr0KlRdLt|jAFSMrtc~+v%;%8sG@x-c5J!O==A)l6 z+So4wy^zL_K4Yw~-va(q8t=6pXCMD`oQVNKz6y}aeC2whiLC@^(T>aOjUwjt6Z2js zopdntDic1pmSu@<>6A$`*SRcC>pYCyv_G(|BqchdKPw>T?(&a$VwZ~PW5t9LjVgVO zT%!{+t&YYdF&=O9h7_vQ0i9SCs;&zZ>%g}@XPCCffKKEmpEKgT7v-$TkBK%?xZ zeChb-L!UQ-ZP6K+%JAvW8{?{G1FZ^By4Jv1oqk$9RD&hch{mPhG(=hhO2@A>k|(`j zWM*^+-5JoWqUbi1r4IAlg6@q=P~lW0KgP$tU<^|~=*KU=VC03Rl5+>MFi{i^tUPB1 z&wkM`a`urg`?F%YeqimC9zPKMM?8_fA1l99t|&c2sRRE`rj%8v;c-6wMc8yF(CvVh z`m>0KK#l_xrB^bYTfV9Ppp4#?DcW4jeZcAS7uGz~BliB7)r%F3@^on5w=?BDl1%;p zh5FS6={ganwRZwx(JYP`O*!ArOUqnd8A}!Y>nd(MW~<^FBlYM}vj; zS(UQ#&B!-Eh#wW=TOhuc&v?m*4-(uVB~%EjjQKHt{UxJHO~DNp+$Gt%@^&>8-MK$} z-Bw)>)9T1qr}>G}Igiq4`F$a! zHG@Ngsw>h47GQMPs#)WxlSxz}Bs;Z(f7wES4Vn)_+8Tywmyvn!YC+Vdyj_OSYQ3$A zjhY-ZgjVZ82zONm#qqaaHe$U(qN2&s`HphauJ3+GDcunsvi6vTMc)!cw-c3fSw>ODpT5Qxd zeFEr87LD4BS)eOhG-_Ks8FZFKqqZB5g05oGcui;tl~>iG@p@wfjNqJ|g9nCiT2vrn)37Tc#+jz#sGv`?=>i}vYN zWYHCR6z>VbMOlT3WPEuT~cA)2p>b`}AsK(G_~N zwHQLLzbo|WVzGUCb+u@pUfnF(r&o82_UYBbqM_FU>c^fI?bEB5Mf>#XZP68a^|2U2 zuQRX1UR%eboFNt)dfg*`8EVncYagW#vuNn$AU7Ru(a`HdN*`g-&?}PCM_M%W+D`uX zh@|m(|DZ!ekCL>XM`<7Q5iv$fh7B(pA14PKV-pGSF1Xr}1@WCg^FF9LCo%-g28!t1aCMby+qHmXuLw1oB?{iMdM@SJ!j))&jO2v`rY|Q+l8ff_AQYn1YBcl}e%)ntFV%$!A9@xD!P;p@H z=pKf-lbZ()0FmPEP4QrjLD49~{SM~;?zMu*a`z>}tP@1GyEEzYq#$a!`w&qshHLScjQ+ucNVDS>8(p!E_uURxTtu#O#$uzktEA>xi$-nJDE(uLMr~)w zisvjEwS`iTe`3+7?IqIgyhXzmlPLXDi^dRni_$MxbcDiFcNle~5?3syPl+!r+NZ=- zi}oq;l|}oMxMtBlC9YevPl>NB+NZ=f77ZmXR4DP2#q=q0)1rM!+_Gq&5jCb}OW!sMyo<=aT|S9;#aKm7;Px@%6yr&f@c0lU;7-b18lGz;`%Js={wGPNU_1zrFZ6D=Z7RTelHi~9-DBJ|W{foDObME9rq z@U=t{e4>A)Qt+unqOzhz^uc!$iOP-^;RoMHB&t@lh(Gv1B2o3C?|Lapl(InjXnbDu z_oQS)nOGDvYRnMD-GT*9Mp|j~60&)F7I+X;ljt%E&1F)uMf4X`N(V``iC#=;_--Io zQ5GGBmvr2nB-J_k3Z-?HRCmR-k7w*Ls;DPt@J@S-1QyFD?J>G0KSrT%kQCAxoMtyg z4}2tqO4J#grY*m-2fda@<{IVW!$VC9OQU@Zc<5`q&tBs#_6|4q8IL4irh*q+$#}Kf z=uPS@u^2iE9>X{6Gn%s3_-*-@zh6-E9|jeo6YkM;3{G*X*Hku(VmDWw73ki)&dqlt@%ZZ8%^H5g86-F(91+| zuaceDGQVV8vHz*Xl~WVfGrtia6+Lc0rM}Gkc7W9NxLH*4X6A<-Xz*p9xD#t(>n*Zm zHy(zL13RHMKYzf8XG8hj14d@gR;bNmY9Wz$Ho{NGT_GhPBw#V9fG&6>LqhuI0BwngI9;J63D#= zjmQoW`1HRLP=!juLKC)I2uRn~pbD3NV5s9N5cgnoXkeI$2Z2D;K_ddg1%Ufy??&V4c7S%>>Iv{J>J2 z#sZ@fn*mpC&*O_nkqLu<`{^TaOs;`TK0F-de-(uL7vyDKLzcv$Aa}-T=-w^VgLdd{ z$5{~FL%M;e~`^2uc(s=sa2$W>uud!B@1+`sp-))b&_NKxX%K$S z+DR+9Cm>R=_7Ts=;ektk_X1q#v9gE_q_KNGE^=81Ar~ZD*-ihU7_j;&tm=k4Jv9ko>F52!bnnae~)tn8|Zo&c#4~xfDIBoTrUG-gIZl9 zDG8a93D06f{mGWHgkcYtFx)EP?`b^$J;TdF_`B~J`_)S``SfE(1NI_6bj(=lt%QNc zinNfgP@C_^%J(PX*?rOSBCQZjSKhCUJx~BO#|#*U{?h_U-oFl(PXV>WkZhodFwt%-fUMywkK<;;7NDE>?&C&I)*+w=NaO}YE&w@C z#3c~7f&4_oX%I$T+)(04CybQ%xC#f~gK-2PEtMfH^#d5+5>r?zQ(7vpp00QR(o&TlvQ*=f zMyV|YNlE^FYql<7+=KlH>0I|BVu! zMnXt^?0^a=SOKCYkm~%i4~*9Ad0zQLoF;^ixiuPIN)x0u0!Slyq>*}n(T$kGNCDDF zW55_i%pY*FV}Y88PYb}9L(HRiG>`>rA{uN0V*{YRueBvLqD3OcsOqdhsaB~Q#Lqi#qgpc#OIh>o}c10c=U3omEA&S+!RwnGTb%@&T1FhK5p{J*(E)12Z}DV0D1B$T?||EHEk&Q&{8^ zX_3-ma0-blg7$e;M3#QA@P5>I^b<8{S3DAxeKN7= zL1Li;ywgZ5vv_#)AvX}bYgkOD0>+|Qe)=h#!K!~r=g*z8m&5ic-jdnW|* zipYYA%+KKb2xwqd#wAj(UXv8IM@=HXlMyii4Z$=OM<=PeSG9G7pooa!1$a*dkXs3< z!(aeutvu_2QxQ;`Ac-k-6xolcj@7>Gl?q`049ef`zw;kNpeRF^tS;@KcTt^VX( zT!ua`7~_d4CLn911APF-0b+hfQGTr&QcCs37vU8}K)pxCV*>N0%KnA|qVwhfQ4~6g z&U;F=wSq>X?+cM3ACSBJU0(SUBQo^_q?kfSI&-j1nC1Iq%OKZ|WIyFwJ~hI%!s+kw z8K2;y@_k5?G50}|j5z@Y{@&u9wRjjjxp%=M84wI3ne>gx6lbK>fbW-MlGlRG}6k=yd)4c=6Hb7n4$}JS-;vvg& zHBVTiHY!9I!O=z4&QWb^s#+GgjV!kSxkVJ(!g~}BhSXJP{XQh1xu5nPSM!n+Fg!Hp zd{s>3sN6i(!=~Ltl2SMmImjNDWDbfvg-gJrw*PGL$bVMs<=4;S46}wN%{^3uTtnZZ zl&lk`n34^z5d*)6T8kXSS&SD_0kvk*RKAyNWooC;Z-l-S(t@L zBzp~$i8d_{&$}zRtHAz;yVRxmX=By19tjIc(ek~x+AbC?Z>-iP^TAz&$(qVoSq(~5 z21v(fCQa4>jFtf57^jnz8t{y-p0qsUC6uiybQGp&q1vKQhcLxb+%0Hi6VYc04ddCWzl&~_N;LEihK5g&R1 z=y^cFG8p6*ke?dxy_bwg{^~`nf!a%PeFZ3ZtrHfofJAcp=SE81Y@k(%Kd?+u8Ukqm zP#QKw8T3(9G;!sPw63pkS@q`UMkO|afAP5y)kZWn zR;@yfoe1#}0NL1h+1Mjs>;cHeCdkIx8sae_VhT4)lx?jICia}aWE9%_0PWR~_qk}q zg-ifG4j>x41jr)3=aSJczMZfM$OeFt9}en!Q3M@nX^#EH9CxXRsz^Eop%avg-rBtl~76B;m1Ca})E)l;YS5F{a0ZRTsP_;!FbcFlTikxFK6>$kk zGaxjTa-9b80+98TO9X}1kXMx^MaZFgRog+zLQ&x`Bn|>{IzT`es}B%5*KC6bMM%s; za;dk7XVFT|6g0dHjNHe8d;=RJ1>yBUT(P1v^?4rasX2dz?=>o<#j=x(|NIr+coC!U zBrBm&_!Trb4`|x2?^u!;v_2nYH-`-X#bPn+BpXAkVXRDg5+TD z*hx&`k*B3c{s_i*0O63^^A+Cs8^aU%1A|_;Di+s+A2V?+9^L}WFZ|VOMz*az(ANC& zHKXQ(r52J$lOC)|{q>FE;HB4%VEb5zk8Z(ZzcteThy3twv5>Xry5Y9Xhx}ar;dLxn zJrDFrfVcp>0pwdE=mOBMCBiEabOBfhBA?g(+DLg&fwX#sLZN*6*SJmd_M?2u*H|zW zX5Jvp+!MLm0i>BXut9x`u!aN1R)93~hJTv*RcYogk$w&!&5T{#Y2epug_r@5X5J*t zJQR%nfQQW-9xN`zwlcBAQ;yVCe8e|Kw*3OobFKLE-xxI>H0QtU8)g3;qIX;U|1fQW zEwDB9-|}x^)k;8<0OHDN43JSo(3R6tAajYJE2kqs4)Nc<{r|G6hqwODaCt{Qhq$_0 z#?{x}Q%ZJ2WmX=Hku9eSt66Pw>MJPqQ$P)R2o~}^NFuonu0a6Oi@7v!KQMX#qVWtg$nO9pXD3=v zmVh{L7D!znh%u~s9!uy(W6zqwJmmbu=|$$?zuhp>y;JbcF6%6NDdwnBf+s`JOEVk# zdZ{zZrCzGiPFG?9HI_>G{v`1f7;6Etm%7ScIswKWfb6Ai)*xt)c^E+UQg_))Gr{mq zBJLM7A@9M&BHbY{4gf^gVOEW&2k8QY&r>P+bQRlIGH-+N z12LP^y_P{tEOw=p;Yh@Nj!UI6Al;gxUZK=+jC=fea+# z59C?`WB~w+A)xMvGVUDZeSR=Py_>;*jRfiI3`c+*AmT8HZ-HC`DEUdCLWIxJQTW^p z=J=K>ZiXah2VL<86y$@52NFv}Hi%k4Y5A>vUG_ksKcP;$~?FY?vGVj$$J-y*x^ zum9U!$p!M%(F$FOj~1u8u=-YpvpP z-?EDP4~=TcGxYx`X)GW0li_6j`C~s}?j+794OtP5ov4nOvH*(dnO4@2mA%#o#%nJJ zNMkubIwQRdAO}bjIY6d@F%ck!!U1HGuXom(MULKF-V@)1^bG*99Dz=eKOT0|2(g_4 z{{vq6rjhgDyzx*ZpnFB)H0a@LZyE_+Y!HXhU z6(IG`koq_2geTzvQvXb;|0FQR0EGTuq8yv{I_y}>kH%y*IVN91`g4H%9bU|{hND_} z6e~TvSc#V9GJ^y?=e5Xfbqa!YE6@1ysu?^V@ZX@YElzj+L zKp()l0px3dwAMQ!7ac`qe8(-r<2?lOKWeFoOOUUGJRPyVps)hwh)0_WS|Q2Z86Oq^ z6cmF<1QHKWa@>#={+iw)eL|LwSYO3c zAIx)&Wa;~ROCh%yAl3q&2l6aH$;TVK%1x1rj^cVFka=o1L#{eV+6kfUlq(a&Ng&6G zhyigG$Q2?2LEHuMYZo1hltSg$!=y4D#kyc9^NgbcNo7x0JP`uO%{a{4{sNUd3t2jf z%43*kBgyVWn=!n>-uvq5#opLQlQVR$*qg=B=^a0X~ zh>0L302xQbP!NlNEa-|gcO@qQEf;>82c#}Mq!@kuKmF9_rqp#6Zra9I%qXjv`Tt!^ z*u!q>71NQ2%PD*l*~w4KWp=R++yX5n-s=``BGf(&9;uys69}pOA1Zf#xUPR!MW+D% z^&KOocN zcg*|%vLQ1>L(CqSZiCmVE#3Q=DK3J-dSay-&}t$Dhgssf^HI~6-Cr6=#fApm6 z$k}VrZSv}y5S&k_nN~-V*Q=QL6mCKxG^S?DLg@ZN?so7VzEN2i2S!9SMcD`;jMc8% z^6qveClg$uNE0BW$i4qoq{aW2BBHq5Z%_)|ry%c|0NV(2{j#6TMMq(-Cml_^u)VO? z64+`H+3Rnl`s_8X!d^K$aYs$4_Yn|MZy9p_hn@bf!#`vvrO<}bP2}EUVS=7s+*X5YVx!6%>|Zhp>5Upe3G=g28Yg8%4}-T&_%;~j&YQY_!4;Yl|?rpZzsx|^o@??nIDG#atu-iMA; zfKs>(8R#z1N|`}hj-8|n_gKuAB~#pCdk;Js0lO^TSd5B~z?+iI-}uuoSr|Y5rxDeT zo|4rP)i%2n{L04T;V>;i4bw_78R$SCiUXCO8L228gmnuGxC5xIMp2zHm6AoR zW@4@Hq(S$CnHpS~F4oy$J*@)`Gy$WoEmj)^YqNEd5bJJwe=B$1lc5Ea-v z`YLG1@*Xt5A!{bI+{7`V`I~Ha4PU#-nQF+Im9kZ< zTbog3LYqwXkl$pohx{g!Nx$h*4R?LD`w>)!b_^wV72bEhDJj=Y6mq|lP@wy%sjJ^L z&8~uXUHVP;BAk`A&%-oYt(Q4J&wh~ebLmLk17~*Rw<+|v+6(4WtJ#W z={}J9`q40r)j8@2u5`@P0-O^e zxrTdnGrYhvJ9(IxP$nh?8oQIvcIv)KE0gp*Ug{s^}DS$bD6h11z#P@PS}Kt zL_eLrt`b<1pejXdn|}|L9=Gj{sm{UJsTzuQN6yFG>QK@`5W0KS91w?-%8|w2y`P99 zf^YiX&k#8U+Ptj6Sp?r-Lyp*iiNL@c2H@TI-x03M^0z2nV zmAdQBMvhM+7eG%u=1;`=$d^P5sCV7$Q&E_|qTQRvoB5eZLDNyWb3b!X?RX@r9iQT7 zM#s`)@y;VGfNI8rBtw%R^d8fGL=|DL^Eds><_T0STb4{J*m|P|jV#HQ$CFic-LF57 z_cs&OuV(WSf3uZZTE1h2znRI{i+s1kY{^=4r_)S}`V+l)7mz9}pRb7u{$P9~W3bZjGb5|1Xp8@F(z%Tg`UhXub+Abn1R@PdOO~)f?G$8c`MDUG; za5BNuU_3!gQCC%2*99=n5%YV>UQIIp2IFoY?&mTS?KS%1qlbM-gInO}l0qKrp%qM~T+?StonQ_sMe)z^VApIiRp8zBVK)>X49_TjHoF$+O09EGkLbn;^ z*B5y2et4l9x`(7|W~e_N?O%_~6Ok~!A2lgtG0=qo(WGaAJi}jen+ff=1AP;a-YWrL zp8|4>h;|^p1ab+GIT=Jif2aV+oC{(okby+31hEvzd?MC^*b8I_kN237_Ip6@^ydX0 zGqGvm04$mSl#IO)^8GURfhYsJ9U${0h!H@Bkerfn5v1>z`8kMX;4k8@c+4dG$3V{v z;HNxhc%Scqe*?(83z^)3xUK=v&rhe3lU#?!UyK%o8w3?URz4PU_mt!0#xYtG@}rK( z)e4YWMlYnqX-<+~0mkFJQGgj&e-qFb0hyD~i8p|JO~f1!u0gm51ISzfA_GVq5zm0& zK$i2TkUjnk&<_FW8R(Tif&320ECCTbSXTo11qe0D0Ga|2{oWQxYXJR{!znuGTKJz8 zO@RBAKjZc_Lf4v7W2ZnK77sMzBjbkXN)(_P-NN4jLAgkqy^~J}G~;UQEJgvrT5S5} zI7KOfTpl3(SrGk!^aNy)NaikZR)Kna2)`9+hV#!*w(U(Yw(X)b}r-2;fTY}9DfrdD5Rn9UH)U5m1NvKrA+(V?y}0 z5HqdXaqy1<>Q1CDyWUfqk@wsL<9k5L5bC{qYPS&dX5?^P3FdyGW?W7;pzQ(aI(%g< zkkv%|28-_o@(v&~4k>4Vd`LuP5WfQXc{uMCY9XK2)h>nEg+IYY9}D=`NdE(A!H)Z@qqL{(89$)7V>~F(^TJ|#nZ#gRNKp7J;U3E znQ_@)1HA%B+X7MgN#6v*?5ZvOU2wxk;=BUDFWH|z6K1BlvOs1KD|sP56=p`Ii9vT+ zEurr0fP|I+8N9EmB6zO`V;K($H>=k_1au!D)0KedP=H(`A_BzUKz=786-44AIEw%> zYk(*QQpg_-H6Z3_y&Looqq!PeJnq3nkly6aTJqSgxS$n8E7W&9${9t6#*^a zizCc>whlns^J5X_Aoet`9%)7ei*7xlmQuHlL+W7OJ<_ad9s_z5kh8lt{Nz(rob|KU z^JgQ?xa#YR!8@f!iXe0uQWpUt2&v<--vEd#5)nZt1)KzaGtz8gD+OA@^P|if@m+v+ z0%TT!_l*KFoQNC{D}XHJOQX!BI@^H04oK^czNa5lls|e9DSaZiCy@L;K)Arv*QkiUTcK?!t@4w-=Ef8HzFOtz&1P37~V&33k8poRQWw3%h^2()Yh4LI8{phI|O zj5)dS+xVCQ+o1;i^9(d7!WY|isQDDUXClWmK&qHAzO9NWqWJgdQ&NMQ2bhNr7xg#am#SMT0=}4^A*fi z*)kO;8u?@8k6>B2%5h#4XGRv+fey6*a*(f-gSP;Z!DX#vf?5A6*gHF)8OeyeiV=@8azeXd=nTO02R7bLSa(3S*n9{JBife zl&ud&+I&;&EpnFUq~ zph_rT3)(vr_&`8IpSe=^<8ly>J{x<%S&WqV|41D}di7I-N!d+Ec@>cQDs?lMRObOO z_5twAnvXG7jHTlts`#Y-d9cp`9;%DyCz`I}pTNBFj|5T82w6?gqj*mYAgckBs!0VS z89=}M0=^*8Y+kDnbbUaDc}L=ge@;7^ly{QmO}$O(gP&*#z}zm!iLfdgC8Ty?@YqEA`NH?{~`&e z&|IMP0hyDN@G>EgR@|O!W`ur0b<|U5TRpRpt|N&I7<#5Y9k!sNCnK`8%piW!-? zkyP2kM6{759qVGXa-{V?Xif&}Wo$_+(2tRq1RevB0Lds&s zPc|=XL)8tjjN1fyqM!Dqn(2Y(D4`Wg(N;?4uc>BUoQR2yU=*6x6bWNDV)f`MQfY($ z*(S}5YT-wg$c4<;BqL%)E^9yp>KqQyM%&3Oby$XGz-OdH9oCA}DH5~4I;?*P4THjX zzCF#1i?x${Dr-*xG-ud4^l*l+m(I-Qw@_({2!@HwHXkMCh(H6P9^|P~`Y-%#4zHGO z#>EMn#4xvz6!rrlB@2I<&4;C%u|cB3aMndc?80+%_?mQc8dhw~3^O6FU}MFK&9(({ zRb{?4Jk>WGyf88#o8Rp2=f@Xkn6C^!vrxtTrk7~V#Q6n|s&m*PtROi%A*=3Ojib%k z6@0rhACi8~d%*pj`*CzQa~ETI!8rwd7rwWKZ1x207qrC{VNY^wVOYt?yo?VYBnP}h z?R1ah>od*Bj=6WiOA|b|`}U*QeIi{DLGE#Q2*92ph%iOl_cN$W4WA6BuicXc?3Dws zQ-R`q_jfu@#FhihnSKS&-74BC9$3i?ub+1fd4{l9s$2<3`w7%g=J^UlL_nKAKn-J_ z=Rid(fwd`dIMcp?XwVzHMHn z7c>t-akSR zer`^tj7*=3;vDWUDj+Ij6$p>p4~F%R76k+=8Xn%SY$mV(KD4qqwedIz+S@Waeb_&g z+7c?P8+jlYossDzBJxrY@EQV-noIpMGnx$d2W4qariq%)t7e%gY%Xt~WfsKECQ}zM zA%sbX5=sZfu9F$#8uBe!W;mP14`-RPD;ZFY9S@TZ2_gJg`8FHQ4xum``%v`WK*ZVp zd~6kSwD|+PgB=Nyk|g^pWaFptKdP8j(k5piaevVHMRkipML{{3cEnFZC$jxHR0V67 z{Ouy%s;U`hcB6uJKU9!c$nsfL&8o47&`7r9p~Qm~1?{NM8S?Y*tC|j$!hfx5c8j@I z8RDBnBle;0a8Y+>KU~+GUc^UKGh^{dl||Le`fL(ET+OVf9$d)pS2H7eQ;)Gp^mPnn z2AVh-kWL-PCO4#x+Y5RZ@u>gUqm`(4z5;z2AXl%Z2=ln6;HnmoN*^6$Pb5*7)B#9Y zxmzOhoqBi2>orU#i)r{JJSfcb0ocsBk=!X<5UTT!D|}1C(1;S+ciA2hMlR*=JdY7< zj|_MVgxg7rmiDNC8^{~vqbO;T)o< z{c#V<-cUP=%nse&%+?oWc?P2_d-D*|i8f#MOrXHh0yGxmbpIg5vxc9lWy;-`?M;R5 zNDc{%u55HZePjX=EW-j8P= zu>HtTs%WeGGbE)rKS12F?{?`Je;Lj*pJROQ56%FQ5>x!n0rR)LS6@o!t@8{rb2l4!WHidm~T3NOF%LXU{i5 z^cQ^<=A07&OZg2DRD|alc&y(*LErS-uMt1)p4W(5NP7o?|O2JvZR&Wjow=)Hv<5$GN#(C@)5KRLQf=F-%@UivHJ8U%{l4HiO1U@&%Oo-Zu2&1?UP@GZJ zS<7*{NYb3}O|=W(mt#hTZ^A%T+^cb9?kF7ZE9$Ao`Hwkfg!jw}O1ilO--K~DT1Ll# zI0n1t;uzw73CB?P5gfzZRUi}YZh+DachKXiV!HbQk8o!Lk96+=9_2oS!lT_^0FQAi zC^^=hh+~|)1jl&yMwF1?eg>%t?nS`yoyOrpr}-#Cbx+tu@!O4Io$wrT8Iv&;;gg}gg2@ujZRKU4Hxkn`!4AZ7_7%-Q-05VM_BOoa0kqJsY%C+b!*@$oE_wjX>GZ!F?5 z4E4?m-ZsySO+S8%qD(ku3b4HYWqigdUHb@fs*W(@$PytV;`tZH^W}`vx!gbgoJE=MfF9g*`23CI2g|ju?3}uIEq=KVO#nVoR^6}JucBqhe ztbGDL{EaiRXeLX<0_XcN!KisGgdYJUO+k4!FqGH}i}~;ZGa|Vzx{tk;LsHK|VmTmw z0rlcrJ&DKKW8w7W0&@*(%Zm!(dy8RV_IfU*1y92ZAb|J~KC;k^V=wb1g=VczocwmV zXf-MlKdj3bwp4slOfcX5xt^E$>LYyP$6Z;=_1Eky)?# zZdipqBOcqYh3Ca<05Y$Uy3Yz;Q_zixcZB4g6TH5ly8{x(^i$aLfz%sMf?Ug=EHd%v zJdZ6lBa?+{mMR@2zCz5(P)2NtIl1|GvQX!LS%@Y$(n6i54;KmF8B5s0b3#E_R!F> z&lE(EhoYr@mLS4B6fNzuohOhd!b8#0KF4_xM5f}$+cz;|y?5Z=_PJUac($uJSZ4RD z9#9FBAlD1)z;iWPMXmo0WvQ+ljuU|E0*-o6)*6I({1ojYIEr6A?H5S96a4ZVg|1p}|hEue{9I=koz&r;6aKRhrCJQN^0f?ZEctb&g z?m3R;I1=JWD#r68%5@~VUj$L^$tEI6|WrZg;H>+oCr<^HT9$1#4 z9BBdHgL3UfPQ`Va0=1&8<&QQu`(dZEOU=#cY$@;6!W^j{T+2UfVMf*-^b}-j#_YgM zLHBH+z*|dniNB{C%3!rctK6QqU{O}bvkKY=8Sy-}rCBAn7V+w9MU*vS9qQ6quKzVq zo((vW0Dl!Y&QxnijofH~>I@H>1$eMCz8?!ae2VL8k31%Bo z^)sQW27|?t&PvKMzPybY58?3$AZ-fuQ8&#o z139mP@fk6*NV2tJjq zW;ptnH7e1BV;=+OAfW1dIE&0j+3C2dZJ-5^3I7294ggOQ%b&DRspg^7^f|aJ=D)Qw z+p|R8yuBGUROl4>kWM2>=Qvq?5yW!8sngwB1M=NZkmC#>Rj7mSsgVTU zdP%E7BQZp3@;e0X&f)XQ%uZ}D|Dw!HiH@9$$rhk8l}#fd(|V3RWf+g^U{+H9Sk0St zz{5PHd|U@Jt!Or6hXZ8aoK+t<>sC_qV^uh73a&Df0Mc16sKQxu!KlkGbTDK6x&iGn zPv`r4nW215M>BxOcQm7Iqre`yqp+hH#MDb`c-u}mM+hixjnfuvHzPGa(l_v@qua;834MJ)+Kvp4x1CLjGZNU=N0WjVH$f4s^#n4d} z=*pk-d3YDIigycjQA1Tk1z*jq{2f%Cl}ZDsq1u)TPeYbCK-$+7gd0nh`-0Jxn8j2` z6IJ;8dN9@iYSL>0@1q&Fi*)~Z{CPi&pDYk!1Tkip@ zs)}7)5pNgbK@5Pb4O-j*$`I!??aYlD;d-R zDli=lMdkk}u=Ya*QhDW6UZqM|u^-W~bn{i~Z|F5r#X>@n#+S_8eK}J(fbL?;vG6Z`so< z^G48USj@zQHIx-U>m$+ zYQz-h;|)xNxc*@D1n`7jW>l4xz?K8(Y=e(3(5zx3$d>?Vt!QAs&O}T(4#qJ)sFzs~ zEZA>J_GPdy5j%mO>tz;I=|f>?CUdN^+CzV=JREnJrDC&Lz>8r0iEO_t<_&tA$uw{W z_cmL1*h009`L{WKM^EfNVCQQV@c3>0% z>U=pG)eL7ey;D*n*I_ZD4~sgCNv*d0)YQ~z{C*$oclzEsKCZ8s8hH#k_ES+5JMgV_ zD&B7yrt5rLUo%PlcqKmvv4l*pQUO9NTZ**;-3*|l{K0v2KQlFcGN=)NEK#e2HKW<# zSujojs`TW&`kApg`SoEv7YnP8+qA~xxXBHW4RKoy0iz8uNhOc0YY^xGe0x8$8}&kH zfAa&jh=1ANO!3Y|%AXA# zj|O8HprVxnQC9sYsIKSD`KW6>64&t$2bl{a22q?C8%vjzz8@>k|9T}KJ=lz>DRk~% zj|%-1c|Hc@2K)*A`gfsgE7m?z^wq!$r;MD&cMmqRydRPoTEWYexHozONW@Zu;o*ip?H8{I1+pF=|fE;cK#a`3n-tV(@!ABsZz>^m9Jm;EoM~W z)oO*+X>QZ?(BQwowbO1-dRQDic#p+w#ZJ3D>ERX~r`Tz?Cu~VC(_?Xu6)%S9rbWjn z_UCxdVW!;eNl%b$>_%g!-JbMBODq)IU-2`;Ou5^Wo@udB8}0U_SF&i-M!P-fl`R^z z(QZ$AmPMns8;^pnV$soxopyWDt6FpvZW&DnUCp8+6+7+rq-R?+b_uelkwA5eVdAbO ze`UB&ulg3-r&o?e`}E4SXrEqr7VXn3-=ckb6D9ubeR{RDXrErKEZV16Ym4^j)yASL^lED{gkJ4N`t<5zv3+`V zwP>GS-7MOtS9go{>D9xcp%?A;r1!LFpI*Hz+NW1}bCkHrvrr9T3_XtyVQh{c9p zwA+(D)S{sm?e?S(vuNl=yFKZ{EgE{!Zcq9Mi-umb+mk-hqM;Y<_M|@|Y3%l7r`?|P zQIe+Jp6s;SlRjE9u-lWJc6-vtSOxegcG~SpA8XNeC^!-HIE%I^cG~SpA8*lkb{e}q z<&QGuZcqAD$*1u}yFKaCEIEv?WBl1sX07V9ps&x7Z0xXNr`?|Pxt5p<3wlJ)vuG!t zw&3>BSitDc(?*+eQzw17OvMA(_DufRXp=T|x=g9nCL!-DG8LPv*az_1W6YzhEB|YZ z899XZQPGzMzJ=Rd2`+l9MdyK0h>j^P+QCU*V^9RiaM2D<`dUF`xo8g+eVrh(U9^RY z{-hvkxo8I!y<8CWT(pCe{zBj*C@s&mo_oidw1Lywv8LR>Nq^UB5Bi%naMJf!H2Rx1 zaMJf$H2Rx1aMJf#G}=HLIO+Q>8vQ+;7mqXL22T2Miw*0py+qobw`h15Z5O0}YSHj|+AT=GVA0sN zX!3YdZs4R}v6wz3zO-nc5?3wSr^Htl?Nj2KMf;SvZqYs^zP4ze65m)fl&Ctvr^HVd z)2GBui}opT%c6Zs{A|%aC2m`^Pl;bF+NZ=Fi}oq;t3^YJs})N8Wifq9{B6-bCGJ~v ztl|;ffh8MxE{jn-qCc>KlVn6I9?>DHj}fJKM2}ztCn*uBctn@zg2C5JH01_PIyP{U z67h)^jAsDf z{HS><_7G``9h_=m6)hr!c5u?MgVQolF(FR=DZTP67H!r z388(NbnMGSIa-9!zDzpyWg@Cg2<^+HV_zns%0g&gCLQ}S5!E^5$`n3wikVA0F}*qk z&uGQ+6H`pN6O)dem`F&+PD~!!iAl#!Op<}#Z_Arbh52bGCLKF5Nj_YSc4E@86O&}X z)n4OoO*LsJreV{}N5oD{I(A|b$=Hd>Lpw3)*ojFnuoIJK4F7AINjot$_KLsd^6xYG zmpa|_?Zl)9My|$6KnT73sbeRmbs&`R4~W7}Og%!dB&>zc=8sRueI43~Nyko18zFN- z3#Xl!bnL`LmHwiI(@sn}c4AtJ<*2(_IPJuwV<)EbApg|DX(uLqJ@ZS#@(O&Fc4E@8 z6Vq^zx*k4@O2$r1+d=y4;j|MIo;njHyYXG-GhmzF@vIqUeBe+D&95_!w2nHrj(445 zW)#xCOg2+H3!dt)(>j34{Ewohm`iXM=Co&FH3n_L)pdc1MVP^ThJ%|yIBOS&mrQ4v zQQ-se9Fld9GUiD+#culBj+-;gX<7hnxuk}f@6g4De;qz$j+qolTP&#|@pNNR@y8ZR zo939QBff#Ns-~Y)2UBtGg?toHR|W|wwolM(HA1@$ww?HHdWcMoN=yUpsf>f>z?Tu; zqXndQcag~uN1b-&F*mHFW{|ks$FBM_4(C0rc2d$g- z0wtCAv1UA+4iu;K$?^2l-vOeNPmZU5{PScp>Ex5+flm(ZmTfxuTKR_sf~ z$kC~jS)JI^U{z!%v$_eJ!R50$meunc=tNx~A<`c=()!VzuzN}*EX-h9cezY!lWE;k zWm;XQJ7M=U+1y^)P3}h|;?wC)*gah$0XcNsGu%%@8rKhr=N`vB16*Z3e%#2APJ!M) z7>z!rlT)BKS|X|rr$FBm=pk|n^zuMoj0IgMr$Db6J{Sl_;k!U$gE^8@pf@qR0D=NK zIR$!?q@WmmJ}To)mTVl2Qv)0hn;h=sC+JPl-bKNDmY<-vVK@yszw{IIlb_%a=9i9w ze(5OamyUvd=_u%zj)H#aDCn=|DCljijfaddo436^92?^ZauoD-h?MgVj)D>7DCq4N z#C=M{65*b0)F?lT+`R2%IhDxwA%Xk^;iKp+(@2ab7hle+rHsX)?o@)-2K?Rg1EwoV>{-d+9! zK=O3*81#N9*$Q>?81#N3*@|`Y81x?XeGRtyI(ZCwzwmopIBjdJlgps@v@B|Kom>XJ z-}-ZK_|Zx)5oL1>Q#uQJFG+?neW7?@j&v4$aSogXlgT&G6O}R;{GKv=#SkGZ+XFW| zV0xOEJum2n=YboZ)H>vb=Ybm@5U);dcpkXn0rBbNhUbAB9*}@eZg?KJ;Q`?~x#4-> zh6f~GCpSC~-0*-T>*0dUH!gQw1otmbnRX|Y;|oMMZ2bT_Y~KMkk^`j8STxP8;Ghdj z4^Q%7&`Gy3e>JzUuq@4n2-PM^7Z~m1mab5hUJ;#q>p%;?dXG z*eJez(kPRDZDFGwxwwZ7W|CBl7;a5Y9}fd8ky?NW#X%a zMnj;nPZ@Qh-hwIbw0wEQ~=De~-XJ&PcI*CLz35K`$-^%WN13UzA_yp?b*G7{Q6 z0B}5ll1_pjMRvK6ltFLNE=B#7Od?Yavk0KVR>h%lwbp3kmDOIOUpm5U&`eW?!Cw z+uP(mG>W>gmLz01Qof5IGtWn?T|2h|*O;x4?;8##SUcj8eOckd0sQB$NZmBgYoJJ=M|uK=8jgmX8EETjt+^HKqJn*Q`N^rGbU4 z)Nx3jw3bFeQ>*B}<%ccL#YWm13r$%Y8VkRn*xw^qW1$&Kp|Oy^6h4gzYIbL_Z>eF% zmI3L6kUDM{F6&yecxsSgAPfZX=@?6e8H$q3Ms{p@5_a7AG*J>*8;Y5X z1QQWtGu1>S`e-E@WeHN`AjQ)tTqKLmLyOK|W|)B! zi258M^9n>XhRKm`92DD^8Hwfb7&O#PO2KFvVpnR^MQkCsNT;yngw>R@`AR3s=Whu4 z6QNM%^M~v|)~!&E`#4ERuH)-$^al0Rmbeq@M>1wcs=`R5exRHIOMyrVW`)LVP+uAYNT= z1e#rfRU*g!J#y^h4RaP{AazJq4Y2={QY^@!MrbJugva%4D~xRWJY+pb6s<4X=AN%vw;NMW`h;&}~vR9|wMzXhTR!ncN)mWw@$CsMU_rc9FFH!22Tb-7ADxflj!e z;(A$otm3~2>1`oXt#%kF+hGcl+=EbjffmZa(*IZS)j5s!T!wL4YXRjt+N3S%*I+w| zP?sK`TCN%@0CVU`rEKR zUqFZ52gx+c^}qTF{0E#`$Wt$Mt+0Ah?2cI0YHCr>i}qM z6a~*&(rc_M`&Oymw@Uis`^DsEj97K?ezD{kBhj-mBxciovFjNl(5o_G{aX@degQ_4 zic-HJ8d8l7tiw{MqqGt zAzoT-q}485r7EL93#0&8#li?y0+B#gvj|*=`F11H_5;NsEHGm+Bod>$58tH}2VZucVK77}jo8PUu1 zrpU_dxms18x{R_n0GHYPSyg$gO~t4ej2wms$`-w7{K--)=B>puaIBtK`jXMD{4XT% z6h_t}p&qb%>R50A>gs6{xfOKp6zm|HIc>z_DPcDda|{&sVI)=Dr}53)Ly=T8w*pvK^uI`QM{OQN=)2gnV)Qy(p>G67vZqf6Yyq^xfIa=< zC|5;G+5x10@>$~6R#5@(@R5u!oA*M`i$^dKcAyc(Q z)Hi??Z5br1B`Fty*t7|Rw251f2G`5ApHV8cZR{3cUhPhbY9F`?KA%>HBy@68g9fy( z(X?uBiEu5NV*2o#V2jsE2S6e)Y9Wr}FO-Y8@7V%d6l5-t`WtcQ`dSX{kJBcwBI{60F1pXDf6o2CCDVtxjvU*2HYxXv|Dfa-ehH6-wxaY7F)8$AFYa6=}h&58f+6TynwMJ@KCnuRI)<_NOEfH&^ zhV|i-z-Eoqu)Y#0w}xt1zleXJ1lCXu>+jkF+1V{=sD=%WP9oWbN(v3tuw^x=q%=;$ zR>)kfaT>PL*A%&8n`w>HXTTL2r>WLBB~oadavGfMA$DIm)(B36mfgedqxGWI;5$Yt z{*7u}Hw-wPlv8+NB#D;FDZGvalX41g5=p15-i46c+G!)6a7#J;0*Xf}Cy!K49;uu> zQaO2~a`H&!sc}REhD{HDyQ&1)G<;yh4+i2TrK4k z-anb1<+7Ah_#M87fIvBkBX1cc<>Q{i94<5-L&`QR$4`~YScposGO5RdhE6}Kf1hYf z7;OmnS-RfXHO zg3n8Q86RVP9TQ8qT`LnCwi=D2p2ssBo;w_q5Y4E|mB@H;W2@0SF&QG~V>645Aoi^b zvFe81j^0@a628RvZAO-p5C&v*2vLE2ybZ6eTShU<4vO>JjF`MNKnkgx^vO)coEQyC zDiF4uWJL2qN{G3lU~{I*e}?IR$zg&4mylKix3DWyb8I~%TU zCQ%alqDzD|Z;p%KM`L)RyKb03#|3 zixh#*sP_?-%J2-#uZVeQ-y>=^b#uhs5^j`CiYibGk`JoX7u!O72Q5A&P=UBTQpV?@ zxIJo?94dh}5YqZx8Tof8@?AAs!llUjU9~Q062(UB-I5?l&0~zpqbd7oNGQy<>wTuA z#fjDL7yc$MdVuhdfF`Gc|_Z_&NCoTm*hrZw< z>?Uy$pl~1Pt-k^*Cp}xAHa|+C&9Me?73<$K%1Ghf`~dF`O|AH4x8Wp(d-+2nshm`Y zyGdkcl+8oun||6jcyc|oAjh>uKD(3F1@n&E0m&aGKZb8AS-hp%$p1K`+TtzMMx>Bx z3xp#ztoLC^^#{>qr5bz+l;yGO>;>`E9y~ElOK~L1&=}b=0+c3)p04<0kFk_Fe%%8< zwF%Z9{AGbRyC2uibEe6P2(5r#s8u< zdkJgbPdE*x&sFP3$&9PW*=H213Hu>M9Ul28=)OAO+>5sJ*D1qwRvUAZc<2E9`HMkT zTP_#R95CX_h(~RB45{7)r{j!+1nNTo`_4U!gGe-vOs;jXp9Jd)#Hv2^AmXne+@Lgq z(nMxJgx0)JxDOg}X_QoJ)(fP32yiU7q*AJsJygK45u+qUk3_cHDHt&Hz3Rv5YoiN)B}d%V8cd?Gxj?kFu31JpIwvdtMULJ~a{} zDhpHl2~fS_l~0YB_-FPrC1v)@=ofk_nLcFU)92xMar#rdw1plkIHi!BL&U$zX^BA*{hGXs?x#^wtNb!VHAgq(Yy)7eruMbW4ew<1^ls1;{me$xTu?qC>* zV8!QCJ*nG=^T(SEPK7RdCxz(d2W(F#V{6{TfT8 zmeN_BZK${XCbM7ID8_tl#20L(9*Sp2(adZLI+J~euL}tB=|W8o;CeEVO|`cb6`#Xb z!6}X*sXhaRV7ZR*;>PDj3s*Zd5KB(_Wu0hq%qY^SxU9V+Ta+I&K8a`oY&EJ)FKYaW0Oh{76zkHc4eYd?dGK9Esfv!Y%|~Q?y#4jQ<1Z&j_wdPy(z- zvZ)Icm%IxQL%%S#Gzk@=1tic*EnHLxmXboHVBK7@*r{nGpLKVUWR_NFWeuUC_X*>6 zxr3nO;k1Jw(@;q|3nj5Ye0aiWtKN7?_)Z$_q9~(j;Od3Y9l`bYD`NCXJW7}?-Z^RP ztos@|>^}5X@)rOOAt+J7#rWzWXp2d&L0fzm)E2$a9`vb~Oxhw^e00i)s#F=#)m27x zb(N9jCoRzei9MtxG-wG?`X%N+X#OR$0$WOT9wfdQ)-hs$roc!8}Xfp&%Tn`f2HvrfteeNVDY9BZyiz=nBv2r*>HLX z5w!R=3o%*UZ(jbj6Y-K zT3VouW4d_ZjL|}uTA*Q4y7=vkQ6lw{Iw9)=)KqU6E1G?6Y>Zfp)FV+Yc^M8>aPw;; zNyTsCH#ik&CrZCD8V#a3K#9(P?-W9mHOuTY%UNkGH88{6Ago|pT~6zcG7i()-cEe;jd6R;P%c-I!=-AuNJ)*;q@?aqLGhTxBhDJ>1))R{ zSo1vyRw)XyBwIJD6g8u3Lmcbgyq(y3)_9_OC{3jQ4U{+~u_0n3*HPD|28c5Io# zvPYEwb>DB$3s@$x08`p1@Pt(=jl?sEd`&F<)@aL`h%?_Bjj8#PzQa4kj=wJIeFp`d zD|&s0Hx*LaW=PusG9C@ZU^Ei{NU{PV=(J_wFL;M2wv1bU#p`lX#irkk zDSdLb(59vyM6e=#9lFAk@g|zUvtcW;^VCBujFg$6kL|S`lsXB-qo&*gCL0^?T7_n_ zb*7jHjf0Vpl1edbvi;i%G3z|Mq>2#tDfaCNLs|$eD`Q19EPa7LeWZO*C!CO%>6zRmV-L8cV$%5qa^bM zt|8GyWWTgBM$z9!ol-Vn)Y{ltS39gT_jKI`=I^5^g4rIe0P<7RRVs8Uv9WXZV)5_= z+}pdw@(V_sE{W&Edy9827~Hv@ST2qcUtTaw^IK$FO8xLVACq*Y> ziElGDu$1vK7~WP1h*Se14iq|$R2NaM&&XUUZVuY79_aMXc~;z-%D8pNup8*TWt_PA zyWwU1h5MqBV2?o3St1W$f`T@KpRIN`8nU$wN$xy_LbhIj*1w~fxbq_3mQqh#y9lND z=@t=p$uNz%sHs0&{~0x3jbjzo9)RL9MTbj9EPG7cdCBN%(y3QuVI&RLFb|BR$T}8W zAPz%BCpv$hhI5U7@rdi6Pq@P9{5`UxR-X=EaKcspvXNd#o^VC>(JzB&qx1L3esNiV z6&szuNA^#i14Osc`FrFYz6c;*+d8q}vSIe1C2I-J941(cKb1N_mP2P8m3ZXh?~#kY zM=t&zx%hkJ;_s1*zeg_qp5Wq7Yt99hF8;o3)N<0M^m{g4)W2f1@Y1?!gf`AIuNe8^ zwAkNA3t~X-o_Ag`66MaCHr?M|F|ysX@&!I(cBn|>52L1a*c#nbZ;K-%8=baBw}|RS z?ggUT2S$L+XQO+8=uS@R!GMkK z1)_UPgxly|Ai5791Gab@-3vtbB?Rwcv(d#sbiar=v|zf8E(W6eyS{;h>>@gCjUF8R zI${cyjBOZ4WzqNO7pSNmF;Jt&OFp=h6Ed-SQ72a~>ciEGI<%8h^onO7I z3nUUO>XX%ry0CgtMX;!)*0D%!lsj}RQfeKG5Giylk_NLQT=~-v>z2CMufn!CeAOtD zee6-k3)i1U3)y=yYPRU|r;+a_YbL-{`_WBe)}KaFVKgRL4;Fz&WruN*s7&01X=ZEA zB-ZX4V(YMcilz2c9-J;d|I-*?+zr*d9aLM>@pysR3YVO4wj9y%nh_g$4R?hwvalU$Ag7_;%g_ivBj(Dj zv9_AfEVg@NNlz=b8DhhA!_4eO#hDmI#qpL80m6zQPRb1G#i{JWZQ|T@T+H+m@i&Za z^1$R%Fr7kh(|%$*0L8Z&BIv;6S72AID6#a0kzD>7b}|WYj>tlg{7wLhFC3HoQ7oMG zftB16WvBkNQ;qBfAiX1EeV+kZfJr(W$h{%;;6{kEL21cH)2t<%#IdL6ROy#Ach$0U&C0vV`E(KZfrO+Q7lG;d0iC zT+Xad$N6ZXwUE>mI9pByFQ%`T4~ijw8wKSrBZ@Hq|tkFApwC`AF`P}Gv9=G$Tf!`mR=st}tPZ!8V`$+xl5eeGT8YXxwZ2VcW?2wgBOtea}NFu{T_Dm<83IPvrvQ8@}bdw0(v$B zqlSi46peHxi8i@3kV+6_K9me6H$WGO^E%IzXQ0%6if;gj_lOKvkVtK>_!fegEc&>3 z4a$9{i)YEBp;r+3Gt}Jor0N>{f(q&yY3y1UT(Pv1R&_0pHnvKGkYX=mYf&m1#6nt;jFbHLLclK5r!sw{_9F8x)7UXm!YoR)@T3b;yfWhrDQY$ct8o^a63n zdsauadscTxjsC1ndVzfG<3TSFcb^8Zd{o+ny8FdZu8K;#Pxi~Y??8;JD6bW=e2Pk*Bic$I^^{FXw)STesU3rEBFWbN zj7XvVS$(>YDi52eYE-CM5XlHo8qiIB*f3Swh$=OtO;*@wRa;vbA4eBk+Rm`+7*{)p zO3kG-+KBxO8^RhZbOzgjeI4Rw)ar~{TM4|5y0Q8ZWPB14*@@pGc~}8CoZx-$>?R~} zijhO0>2`?JzG1{)Kva5&N@>#_gcQ(3h@tLbDQ&4-t(J*h(cE->k20$z+8^61zKQ1bP|dS=@APz$Y@n=j z>WI1q@7ZqhJ2<|KC`M(R4*{GOL*3@g-ie#1h!O&`0M3lb1ZcC_>H)FoT21+5tBWSG z`LwpcBFBlN25--zD^fVm*4Qx7K8|lMFF{nM%{CLMwI6Ma0Fi8%<3A`FYqC*jV#mab|(1c`^RV!TxCK(}^N*97jLJ`~R|8}oL zjS~wJWv`q}o_bidwB#)M~w=-O?*=3{#a_G}y>eatJ2L zA-H<4NYSB)zM@4A=Osf!f`Uyg1%+S|6oRXDjg%9j_Z6|}w|0#b5o~r@%Me_xYov$} zy{|~j<=8Hz^AblFyk$8e*gvIhMN~#*|NM_Rj42S z?fwzp*9Z>nP`i?d5PVBVRHIj$9jfeyTV}`qLl-Q|`QPY*K919PYBQv>u5=Pler!RK;BBi=2%Egsc$ z?Qs2$-HBJ9A@(-nnT(6`^z&qe(U?zTY@Jxzgulc}D_S`~(}}!9IZXj97?1lSiVgR~S8IWzzX2d%}VbW2en#TQKca*&GWV zjhV&fhW`cYCrv(^W%eS@d6H6}UPtR~=g6N8T7z|BN*i9N?t52kYQt;fb=n2KBsb;c zg-K3F0Bkv(3pebp5V27-s6OCIgBOLpEiVjvg7SJj`5^Kt{8*H<35nBe?EyB?Vvu;furoud*NsY$3)AKEg%(C&vJ4NeKUg(O( z=wOTe=^u+Jr93VwKUA4!+bE9(e*UpokBE9Hp@`;fC}L*xIQ*1S>4P7(d^61QCL?5Q zfy}RKlNZHbrI^Za({0DI)SWv;vvxd&Jt=N)$J?nFc8S&Pctdu(IN6RD;d(H*9ljW9Y@oBbKQR)0a=#(^DEkrgOOa0RjXG+$GEuRQ#lf8?@ z=JvdR4Oa0jJ@8Tn@!)Qv~>nsjnm`<$$PiNddMtgw>JBQny|2%jA$GWP!3%? z@HGApN|jqJc62ayP6uvg$sBTT$szau&cQ7Xbl~}{SX}SG>#Ik0i8>uI0^i*whT}K> zW&HnL*^?*c!+ zEWMD}v=QQ18Bd6>fd`8tC98@tHV$DqatH%Uzv05)g=a!-i!Yb);)*d{_yE$~`@8Yn zY|`CO-Q%z<*%+zrM_7Omoss5#ge4N?!oh=_O|VC z4Mj#?b%xMaaU7P3f>ly`Z|cDxAnko%HE%42_T&TbXy=G$dHss(J-N4#(%9I2|(q z>y8XsXYudCs9y=A+j@tu9mzQg9_Dy}@^J*DoKt{pj-7z*j{EWLa16t@({UKzy5s(C zh;})WAkOW0a0CuT9BxE-6+R7JWY;F(5lcQ-g53#RCc$EWzK6g!flYiFnX4~P)fo4&Frl-~;jZ9eg00j8|#$SokGQ8p6}nuiqD|hVV4?v-iaZ_+?AQk3-PR zHjyxt&nfQ#nIqW`pDHCdd&heEA+{0D3qT`adAqLxIDzc8gK8(wZvKfz*B{=6i4()PdB=!Kj-QER0#E{!>@{$d*nbYSf$Bih)qpOD zqgw2be+&AWb!{L}K6cP`hMM3S_~tL~0cG z{Q&6sf4sGdIsu{-_nV;g0-hpieboD8%>7{68BFHcA50cZqIl+m(9xrap~HEM=OoHD zh3-{~KM^yB^M>kepNL(C$byj=@C51 zX-5Ys_D{sl5j@5p2=ynP`9?$VPsI0NZI?nk^o2|?>LUDz`!NHj+X&7=(B%MAno`ql z0Xke3so8r#S=Z)7{eUEV@QLU&k|(9z0K(`CV;m1}K7s)e;e+TK5O)p1WB*jlAIZ7X zj`mZ5Y#hmBQ^JA7gA1+8>f2dAdBc+M1=@>Z)bLNmPhczO)!0hFMqYF7uaOxII1lM? zYe>0&4bqaT(XIt)wX0~(1PE-1Dk#n!h^0A&NA_ukV=edyf0C3S*MdISQqo%BhNE)H zIk4OqE9Q*inVyP0&~*ctk&joSMm*0A{Bw3}pyJ0-)}mKBrb^>KfU#jygBqU@T@7k{ zLcHoMv1`5=C0-fBldKff==jpywRnxD=!a9mQ95fob&QxXq9iciP$oB_wsCbZ>d%fCTf6phB` z1H0`w$Hkb;LZ~7CI`9QaW8J)Gz#k4tz8?Tk5}Hxt@ZFEzsIKI+$8z9U&veR7IU@Q_ z;0XZ|dSB8$2<-xaw;@EmC}vOKb;@ZXut`o(ltuVjh!7YL36sK!gm>BI*F#}H!>kFA z{+KQ~G3WiQkUM!oy<{mORur7r-u8%~Ht_ZWa0P|%4gl~Qm3TxjO-Kh6j41$xCPZ_L znZPjQJ3FMGyyJt+-dO;?LURA+BjWD+cxwDdAjFZpBSDssJiqUVSbrZ+j7dR6SCnA_ z4Ml56`|2DKr|;wG@zejrqZ4vieiR&*=fGWrLcB0eB;U_7?KCPiab_7Ws+fGgH53oM z&P_3KJNGVrkUReEjo2LzR&B)UP2%~HWJcR7H)3d4yYQ~UN!Z*;+=U(4l1XxKzB8%X zj%@tosvVj8VX(1jA~1#5QEi`z4pVqOpM=&M?4@2~-7{~XdBQ$}S_%71%%8$bvP~c{ zAiCvXam&Ht#-9dE0Dl&7x)7;kcN5p9@S;eP)lxxm{sgwi z$+8I>!g8gVoeT+&V3)LTyx3UIYsn^5#pK>Rt->{xU$S<4_Rwz6F%o%s9~b`V!QGxc zxZ7hhM2G2ee%?F1YVJ?MKC^P}6H+<%38|d>pHG)_|LSzBv1bIgd}wF6lZ0&7OewqO zOxe7*&$OEN;G=TOH}W6Y@}<(2?_>5msuE2bzC#um4(eeE+BNa|EM%}ojCzcJ$`*>I zk3)mh65Ae!TG+o^oOv8J@w>Z)`w8AZ{5X=i8I#ZH%|0gXdxFNs>Pk-#x)wG^8X$WQtK)cz*{%#G4=u3!}~Me4tZ_bQjFI zJ3T%qp1nXnB+@ft@N8at_!D5hTTa|3vf)UGP;)y-tRrJze~t(D+GB?Izyc8Q0;uCO za+ZGqOwS@j6{BPKViswbMOe?3q8=cSJ8~_Wt!zSYx|Y^fKNr_$^TaxdkVtQW3nkD8 zAp!l%5dAp}i1?ov+BB3Z;rAgzAVQ!0ndmf!^SYZrm<+-tixc?~E0kK`0AjQSWsYzx zXqI3NWA{F!jXx@uBW=RqqZqO7IrMM!3yZ-K%?>|NgB0JsJ!|y zv0*MZ8YQE9W%4`#l)Oi^b{Mo-5n|w69_@KJC?M*wVc z)A2$ltfG%SDQD8UC*@2Uyf8SEU^*7l#Dz_^ZK0e=XBNttq(5cNq^XPKOp05KBcIL} zFg|oA@1kQFal*uKn&C-+6*Ys9Sl4L4HpN>9nAaIkez~fTViNoWD{5mx5*>6kZd1SC zEnX75h-TJF!9Nb;h-8I~BG()fTbA%mfvd=`fs-gVbK$3h;8(=tr94*cctR{$%9FBB zgJZgjIL74RNfZQsKIA+hNppeDMsPlLTzs{ZbL08rc%=*0kdx>R8~&teL3fAZ+y37;P)|Jjc7L8@7n}HN2+h1FWP;6koPQ+`b0!?Zg9X5I=5<*tdpf#XB`T z5iILT$C^~nK_{SCpfc@`i}2_9Lo{!mc%C1nI^MCis*YYK8aA~1B&2c$B7|0;&1>a( z!;foa9ap_nwfM*>gT?3COLEF2uai@z?K*49yz{c0GJV!#@nM>nzCo@n4PW6u;s`Z; zBX1Kno`!lSM#^{43Gu*2UaP?%kjmVV7#6I1%m^S|oCYC1GNux9_b_^J5QlN}=a2&; z$db?&Of5HNoe*Dd?QWv&hG24hgsk1xJTTgvR7&cD7R2$IC1g&Lbh@Uo99eIgHB_^*J@G8HTIsyBx%5$%0p`t347a^6(ix5&?ytPT^UOnHC zoe;h`xcjf#X^DPqOgi$KvzaQA3hngW_Rxf^A$ITJskfL)n3Y#{$PsIu57Mm6s2K4M z?;1QLOcG!0N_^|2Rb{Ex>CL5Mnlgl1h~B zz&asBq@Kcyj?ikMgN%s!|3t{ViR#laqq9vgW^Wa{vulucsv2!TkXC-78gW!eEDc6$ zq&g=CX=XLr%pfhl8tthdtwlB3>L9I0HQMGNZKOpjrvc#H6(l}f#hA4pG>n<~Riucc zAg!*#mF(xxRB%6`&c`@_X&6nX9w~`rII^xa*o9cT$K9jDhUz4Hw3Y& zX~{ssFvS4`<|a+YQk>6Q+lVmSY|wN(hBCB5=QLPI+la2D34ec|-)ZgKZIi8a82{b@ zA)d!YvrcBNHC&#p+!IXfBRw(enyjU&y$5u>?HyOK_-&lY<#NweF8Y?4bOX6@uccKtOfZv#*%e!v z-uw6n9Aq!*YStE)_wmc7wZTvAk1cGtwZpgIaG@RGO%t}D<()4?&?eywilePXi)*_8 zDL$Nu4miN`X_r6e09H@zMYbK_xnT=Qoo30s$fZ-_;sIW3)E{U}YAHIXjH6w3o)q*U z2K_dKNc)#cNgu>HgWHGLogiTIq0kG0;@(3UMupM3aShB@Xr>%NJe4OB@lHBDrS4K9 z&wVN89pur&`XRb03i2o}oj7EB5yz z$B1cu({z3XJ0@LyvZC;abuIncXHvu8c9i#K>X{G4+Ru5hI^!$x<>%Nb3=n^R&IfxI zqr`WhcCn|w5_cWr@!_AL1@u#v29N(rEII}c&;jCuW4u%y^OcA=&J*L~BSO213&DC{ zg_Iqr_nXT^yW^GCFvFj%RlIuK+Lgzjtg8Rx)$314W&H`E`j0&+>;K$IS^qw#s*bfn z^?&`8)YZpN(ZcrTm)10x_!WOz51wi*7Gs~~W<~AOxP|vj#zyMlOq6iVY4Ot;-Yn&{ z(@IHg)H|e!Z7DR^YGLG#TmrVyr$zg(ajQE?%>0@c*{6d0UUA!5Zg?ZVhN$)=s`#|{ z@@qaqz3ns}3FYzj5n#GaGQ~#zidJkvOnD$eokOE-#Nf*qE1v#_Hwyau;cTyvXq^Pm90JuPSxriZ~dK*`%npK*Ud&9PX9kv9s{yhN3!rmVZWr>c#J?8uhdT zy9Imjz>pB#9y~B4#A}}=u6-{XwcrQYsNen&+_E`#xMrXrWaTvbQ8wzZALW*9_K(&$ z3jdkLk?5ab=8L00^AGC&@)5?!8=eB}v+?fTgFrTWh66dRwkD*)^AwP?YRX<9Z@Eb? z{GeXmD-NH7-CBz{wtJR>Bby~Xh?6IMhvy|=IV@?UaQwpWiQNV9-VVGw73ws>onz#l z^4q;){x7^yQ+WyHl$TIWc?so|mrzc536&x*p`7v($|*0QobnRNXOP<&+mtPI&?4lowD=c>(1d2L0=F$_psx{pdHBQ{F#0<^7Y>x_^qg`jL3> zSDx5lDC(m)Yop@KIUe7tQ_$I(vp>FV&bs)vJO9Mka5#tWBeA9V!Vp82 zr7yuxuw_~L5*^eL(z3k!0*`f&&t>y|V(tZAvwS)V!;00&pZ*}fpkSibqR6bC8abbMpCH~Bh_}8P`7BW=lc+RG&_IoRgD5n(T092|E>%_M ztZ*plHjvRubrNsH$&b`>rM2pcM~xy%AgYb3lh}wefZM9>Y@#PC$40#b~DHEa>llfctajd+pZHAs7#8a|!id7yVv!|x}!9F^{@hW89p zvXqDpNL;3dkEDoAfV-$}YKMq#khrTV&!Qq;7hnI*^H`XOxCrB{r)YH%Djsivo_LWr zWpSe7BJYE0Q*k4ZBg1&YT@pllO23XO58uKgFme zcK^YXGN|WPs*cf+4=Z%Co{LI8W3e^ti2GRtUzTuRJWPsIwp+LC{-?rdN4A z_39q+z*XKbItT5F{{p5d{!}NNej?y??YpmH*3O0CO=`~g03MnF`E3Nl0Q+m9GQB@V ze-ilX7GB&L%MpU{9m@TN>Ku-1Ep0)?6nz+YHd{QS5Z@g^?~O`qv1rGDzfH8+;M-== zhL@o?Zo`*;4#c-D;#a`;67A$3G4D^_wn@Px; zO`xQv;dzzc9jtjYD@kQsRn9wDI^f#TXu8+6+BK;qwA61pFeS#pt~u`EJS#v5X=(~Nei z_opk`-UxBxI&R;heT#4KBz1;Qq}<>M>IXj2{02{R+x=FWR8DDPwfK&H@R?$#)3oC` z&b@xIp4h`8#XhjBw?&Hc^t&h$T(P3&O>TEj_E{n>hD7YLM4We-_Hd>B0~ji4zvG@3 z-{K!P`PTBmz)poL%6U|X(P82HQxwk_5P!>pz4S1Es|36mqU;2~vO(Dcz)iqW08s>Z zFXAeffMNg{1e5`wW5c12gRz0?1hMlko@_R`6ihi303}d5>L}^% zOXAPJ_}J2enClzRmN9WMH5sVdanJ;4c^1vKU`x3J`GEQmsHGvQ%m@FJ++5K%e~4;^OlVFj<(n1;pBijM+M$881}?G8VWvb4 zcCnJKMA(GcP4jO?D$S)hTmb&;Fw@mikMKLqRQG(36@5WQM~ABqV0s=25@SS)ZpP5G zbEqj^F~w=7x%zpn1cR#LTx)~08ALN2B;t}+oCCWjHH=v!zk8U7)y-6Ob(mrRid z#3W@%L9U)zEkQ!rneAeJiEA~UGK%A&z9(fnV9rZG+t^W&9DbCiO(afK_TgE>cMMnC1BkUgoV5o zTZEaD$R2w;!mK>Ko#(*zFXXjINTrcW2pPE%K6!fE(r1#_;x(UXx$IRtz3uLoCrp$4 z@~~&M-;@rEW|UcJr0DVyqRQ#RGo*kDtIOjn4#7%Rn^ak8nJ$C=VI|J``}3z#%re=iSOt^2$vn-;WM zZP-nWArtd=$t3=aYkWY+aqGJmy^-oia4BXW|6&oEgAiuR*{loo~*Q&A4dCY zbQ24E`3uxo(dZ_&(q1-$_VTO57POZM#(M>cEod)mxQXqUW?J@g%YI^XnptHpGpICa zF9)jI%Yl%+Ov5G+vX}FTmkirL$X;$nlzgIu?By;*A$z%1rM;X1z4#y6%XHE7AKAve04T9$foF919K`~ zJW|7)THQ3hd=Fm6fdJFk$T4p*jT=0O>&=P(Y#JXT(|B->ndA?e#;-!YWg3eGIc5~g z63-*Hx;0!l8H*DFtl{H1rnH75bIn_<;nUDuClO!`56(4fvbkbGt{K(;76W+CEe7z^ zDR{jOLdXDq4)RM>O~Wb)?ZnYWm{4^P7* z9|+Y=-W|ZV5UrZYt2~0sD59+tujFBwQ^ePKW~IqX9X|^y;U0vL$$J6qXV(g!t1@{l zN-`)}L6bMB11rf2n!H!rvy!@&$y?Vld9#8h@4hDB3YxsT0e1+QynnZEfS91k8)(i- zvX8;I&BF#rr|X?EP4&Wj{S}4!34ve0*g4`0?(Jw#r(}Nv{z)jPF-)AwH#rYl%2XdE z+d$$6Nf<2UumZC{wbvC*3e5PlqSlt7yag6t$WW#vb!Xzh9U-TvwU}IBCa6POi)97a zVXkN`-YGEC)E`@mW`(9%lXm1vPOmns%4Uj*1ia)-vOp&H&*-A}j&01%NGqy0ou0;eDIp z-V=&F9*j*5#**!?UWgO>YQa)k6fZ8+GE?&t5?IL%ha#Uj7*Ei)i2$mHMVG{>zf|eTNxH@BGIJvnp`p~la+i=4Y(Y@c>>-5@FxL>f>G*B zbYndfcuP{%;6{s(;jEs^6NBrZEL-x$O8T8zAWq=dU0T!1YkjhqR&3T*^+M63uGvsM zQz#bH1z%Auagcs5)e@e1;9p+`_!@UQVUm$>xv8Y%z%4o zU5maf$ak)ug&zy@ZK^M()kjYEG!Q%L!%!}1D1IUQsYW8F0a~wDV~hW~C~5#h*#`|k z4W5%O3lgTdH#fzZeI7=HtC=|20ETi=Ggjgu!VKsHnnE+uttoW4xyWw_`!K$RML&=( z{Ef_5_s}4I!NS$GEyUB{Q!lp=@8H)}SYq)H5~~}U@vg~1bOxa@Vr)axuI?!j`Hf&4 zUqPH4=h-bq-$t1G_q7z|h;XlMX~{^=w90a+B_7m8e1lfv7y4b$O86UtZ%-?W@3kOb zSZmR@G2%CuigNtAua;WzNm-&xP2|3+iD~n?)7x3IN$u569Bzz>|5!Wm8;J`*tx^-r zuVS~WW7>-bO;EoL?Ztp5ka;S|^j9?|*Y6;H1$BVA(!>mSRJhcP zWGv(Rnws$?^t$Lrt&5kjkHIYv!Mz2t>BVOJ0{}~K;Yj0q9KJ38`mQgLjrbmu$LISy zh#Jkz0dOUn)yzyX;ybdEJ*Y=C1`P@!ADmGOI*J|5%tW<$NAYDdOxb}Q#h=a4Y;Q*k zqq%w0eT1_T+SSg^m4>{NUy}rhlq)eIt3D=V)yIUa`k0Va9}}|bV?tJaOvtK_30d_q zA*(({TJ^BwVtVvo3Wb;z1$YTJf-)DIFS^NJ9*;knB0D#b@N2wv>pB!wqidzx`+7vm z{kXvh+4^wTdW>xS|0hqaj;*Bu``>zMRlrkAKBrOTr3L5Zd3d=eES9isnjUC}S; zC`Pq68^&xxai{5c&;%jqi^kvWD7LmYlhvUe#mV+&lcWjYS%`S!ks$LVR6pp@#h>aZ z>UV(2e>E}W8aW6$n(m+Xfcs0d#GZcQ-VP=?$_TjHrdE94!EE(U-ZC2PBi;X{x6Dd7 z(uAHT_}9E;;JB61SvDIyWD>=-&Sw63CY#l?oMWo_ z#z@feekaiNEPP5FCBBu|f<(g)=3FP^USrH{;=}IffrJzsP{~7=!{`Be zu68ZB@4=q_yMc>)m~E;*YjAfDa|R8@i#@Aa^<|W`@-&5z%F`4==rpBGFL|0Wsh4ck zqTW>pPuR;zM}Q}K%hQxsd&|?5W4*0|r?S5CH09^MrgfU)e8WS3qohb50Ow{;FCeF- z4}i16GZTpA1K@niO?Ua^1Awc%tsZ(T=bTEXDb8(?U!WDv2k11#x!v-W=B2iE{(ZmgA+P8U|}FtdQwc z-Lsv9CeqlaV2UAln-ZyjNJ)!eG9q|eiCuS?y#j|3bIMLJM}>kvxkXIA$RA?% ziM|Xqa;gT!j9IEEgAu&n;SU>!m~GYb`^C3I%+@ePa)+8z2Bbg+SM6(huoC~@NOfGb zckBBl|)YJGzL0NhPuhx!8k6g*Awa;@93cN#YgKDiww_#>-dEGKrvJ(VbcK~|{7zE%G0!9NkLBK=+ zX9<`Qih42>wF1B|6!j{AD+Ig^Kr-(J@HbJ;hoZWoUOG$~+c*F+i}~dt($)~^ix3dj zEhw=VfaLB4K#Cp_qTCNa7I6sxS^BjA{FKKY0J1CBb@Qm#+ff)BmVPwPSms`$+zs61LjPAc&pt6R5F|L302D1;4TDC@}O}K~?Ot&~JtQmXr0q1@rMr zGWKOyuGw>kl5dR0CH-KPJTw|F2-j4}I#-y%jyrIHP0mK8WU4%)e0~lc^9$9| zO-6o4s^s7+;4i*f-gt%SuPVgw!K!&z+u~Z)5vzzD2My2aN4LhxXCSL%3JjP{J-nqy zyF?XXYqdOj1y1YZYMFhd*&zKJ*p|UI_Jk$O&XVJBetF3l%6J|Rp2A6s0dnS*sEdmS z$j7fV^F5UVUKhGlMubde6h+T3hu&WqCUyk8q217pmbGd{E|oOG(#xC`>m z(&0-Cwnm}Bar}`!a>y977++FZHpXmd#LJh*m}@vT&TqFMrhZ9%tU^M3RkhB0k|A1cn`xSaw zvl5M-eO2ze#+>dc93)3xYvwmSa}Yj50-JiRAuL6x7^|Ml5F_~zZN@Ivj{rFXfI;n6K#wKsUF*hx67Tt24{H}#< za$#Rv*e;E!wbhBo0J6RkV{yjJIxz*pY9g5s9%W?|Kwx2XL7LzcKeKwW+sTKcqW96Dx zb4+Ze88G#~>2ug%7`@=X(6!({Pu5KP%g31%?2xX#;J?d_Iuy4bWrFhZ*VR60JkPY3 zbEca|{=1Y!1yt*Us8Q^ii1FSw*eDSh?ErJt zdrBt=o3xHkDdLPR?0WYZF@te%+hF;@46}Ra9;7M4ad)(33)R%pQRplm zpcLECozjwVHO+`)q5gpG1SlxE#1lxL=Juk5 zhpqm-`B?JKW-KD~}Qd$xLJTs>QNRD4}Y?Mz9Qzbwy5mBZ&^_DF3{Ia3~)YyO%%kk8HaRnu&K zR{ngOSwE8xNk)V0J8^egjY@nBl%FkI-fs5FZ`8uRpJW%{*SSE&XzVjk1K-V0#B|!` zEWasN-EKDIEX5yL{@yhO^UOZ1iE;BIHE|c7gPq-tJaBe5^1#|(&y97*=d1Hyxghd{ zJPmmzVRvIuuAdw0#-{jrqnMWK|46pH%UohSw#esiEq}ku;su~Ivg2a2;Bqcx?nyVj9j8uQ5jt_L~dAY=3Z9J+g7Z>tPI9(jSCe}I1HC^6HXEsacNWve*lVOg#Bkg zIzXxEC6GKj4a(k^k-FLC1a<`ph~_MD@etYZ9`(ZVoGI5#t{gqsug87s}o~b>bG6)BI?D-VVjX3iu=fcXF zPuby~PvM6{j+oYb${k44)G)32lrWB(8|G;F)^c2g?P^*+pyy6fR$%VrTGZQ}#!oN_ z>S+`u?%po1USXc$d3J?dw!&>F zS!XnHDtk0BQQ z-m?O6_x69tO3dH|1xGf_Ymj>YO~Vf^tRg`q&>fqf4<5zBU~ zyA@~okcU&H1<2|#aAV00n3bqA3~;I}eAHard>w1;OONp~EaKbaAJfwx9?nGFd!U`7 zJnR}NzkJlZIO!0c0t(fct{5SUA2aX3L%@#5%*COnMi}aAJ6-GHLgi_<_9XJOlOIP+ z1&V(T22(KUP3O9H@$4b$eF_+;m}93a_NeMIktP!q_obEY8W`xbBK`!hsHzi`Bz{JZlo&%@hVm+*oQ6ps1N^?olOdzirY^~wL<=U0zR~0PpZX=H69r^?&%|LN; zhU@YUx1L;4A@NTFi^^9u*>2;cCW{|FLLPp?%uLEcUjI^gt-oBRK4~s(Qi-lz@AJ!z zlIAGVc053OhfEYt8s4ih(sh0k_j6D^-*EZvlV*O0?_kHM^AY`^X%vfi-zm%RB+7se z(?@rh4=UW;9H0#*oIL#9oBp!m{G<200ti+R&cnMscgkB5H zPM|qXg>rgDbo&>o&zNQWj2qWF^Ni51xJ|K7CZIpgQQh$u6zVvrUJxF5qw9*Qil~#< z;?f3*xH#z9O)H>BChVq6a&j%sarIIWxDW*x#tPycQtn%4_O5>wq%+|10?frSr;(~4 zlaR|8P`w31WZ!4Zy!KOJ#ta+6%*t>9pp!Ek>B=zf`62S*XRy#>{}B1_XYj%*aG5;t zjM=A7Q*=1d^fKA0#%vkl0p?*v%Nx;`<2#(P6BkEyVsVx|uW^<=RUtk=yYh|S(bl-u zR5Wn3zWz$A&B?Ij2?&9^wnu;$ggY6VHi{|de)5oMs2eD8?|*m z;JDq#SjyT5;jgq?%B2X|d;`>{TbGQM+n&X|&=+sWZ=N+TRNtz-)blkBJg zPAaZ2N)j3&rxy}MTlw^JW+zU;9DNRpcoF!#x;_&4>}KF&FU#eD^CF1{e39hepaP$Z zH>kiTW@BVot_qV8_zc;o0-swps=#OEM!hVzk&7>o6paUOl zCcP5}&Suiauu_{zkG^O{#@I~Ck5gJ<4mOiMj3X81G~Qx5n@Rg1U81#_v;*b++vMsk zX7PXCOq%1NUtERH??5^5cLQeMXV8WzWPdl`of zYev6peq@ByXNppDK1D6rn@KzHsl;O~j%8fp6Y19C*m}v(Sc_vRJDW+_5Zp|Pm9qKq zOcN(!Yv40kUpmS9M?F&Pou#djR=siyrPxblgXp&@_EOoy=;kT*QrW>Yo(Z2R_EOpL zM3`lYy;ODv5%#h!&Qe*fr%bZ8meMu}TT8jKlyd<|*3QzIAu6n`rS++>mdfVAUy`-8 zG@G)uRCWOEt*xb(6SuaOPNr-vmF-K}S}J=!WoxNyBg)p!(sq=wQnnYjmR8WIwYBt4 z%1>j2DEA~>23a(^9r5*(b?U`<7e3tV(KaD^;>b7QAK_ zTzGn$NN+_MV>zR9<{^xIw|nTpH{K|T#pH*vgl`2~nsUx-7+C^x&1;cGs|~lrIKG0|`7&<1Udq~ayV*F)+F?nP!T-iO z6Hq)>kxttlSw%|Sv{&((7Zh)8oFw){|7=)U z>qoO8x8nLyZ|uZd0CVwZGi;dLJI5$#z~4&Z&*Rz~CRKSF`~;LgUmK5Qpeb)+8R+_( zWS2KFmCy-evRBr ze%rP3SMY?cQ*^5LvSi<#W~2Cw>-2G&?0VG9kjvgeyuSN7xoij0EWTcTv;&L!s&3FW z|ITKbhI0DbW@>!uR1JD%=}xmyV|y&DID&Z!Z`c%C(n7`T;>>Gm$`ZYo3{*_R@NK>K6Z<*Z*9FwUiAT<2*nk0_6Jx;mopY~zi8x~0=M$|LT(p}*g%_22B&Ld>amYLz5#X$}50QXk-}i=A3O;^?HE zTFp-H%O(s)x9?NI==b~dPOaSiXx)Z2CHq}FwI-mJ?O^oHzYazpq?r|rQa&jdm1Doc zi*A0|#0flKft?CGPaSu%S2%I!QQAhuonBmD(Q#)c5ncz8xbtg3uDCPg1fGw%15YHe z<4$hfvg1zfIJ4u<$0(m7?);Is6?eulGb`@gN8E}#->0nN&K91!&+@o&>>U@z*Mty!&hOF1+4o_KjKS#FS5Q85IB3H|5Z8bWAz#n@CK_ z%Bp{bT=R|DVC;VpQ*sL4jw#vm?3hx?R!qr0*v#67#o;M6I;brE_OydaKilu0Xn>*^ zym_>bD3Y0FCXB{@Pa`}e2uU9=j z@Ux(eJ0OunBE+I{=wWO;0l(%jrkJ)rWR%RY?zw8F8eiNs2Kp8}f&f!^7o(T>@mLk7 zCv6RUD}R9Z>eW7xy&9T0XuPjMI0Of0X%iKi!pgT`1w3T$gZ3k6y+2!?`Y1DOuc4Es zcjsB^4tMK}uC&xBv+(x4TXsES7AAZL<-6#s>$2qPpUljl`asCFi?9X}o?mz6E4(un z$>m2763?@=KSpUANxA(9LgMa=jgo@;m~+pzLgM_R2#HtTBRd{7JH#)%S8G3HsN34} z!F_TyV9(+u@>{C=+^^Lk2Cunt$8j?;wqPkSnYt74#k`}K&fC9K&i@_}<%+O;gM7p? zneYQ5%D{4+_(?{eZQ>7Fhu^A0Ptm{Ri?H$>`Ir2Ie8mcR?lHup!ylAa95Xv6v`1sH z+{r4!^vi-{rkS@N;A5zW`qpGC0$*?Yhqd8gmtn%xM>Ke!3-ok)R8BaKtd2b@pFEDN zHa{jm;jvgL{Xe3>n^)>Y8)f|;QQ%2W=)*%iEKC;J-=nj}G(?siR>|!@BE}tvK3bQ+ zz}33dy2}MWA$U&x$&B}`TrG2dLhxyk_$|Os`q+)~FQ;dd-42vStCF1baU5 z=@oREQ=h}s4Mh3l#v$#sZd%$2(yhU87 z;N7VY%JIaKeYrds@1I@pAxe!M;IJ2;qCm%>;+C9A_>aX{@2r$}C-@r%S{2*7a(Wf& z#S6cohj&Jz;hp5J1b-Lx%Q9a4vP^5-+w5PKX;CvQ(XUp&tV;GfpH5yJi`uon?ac#c z^$QQM`bB>_xzF9dV=YaCx_&MMYFpRtOQt;R_cxGDQ~Y{KCcai;_bM!j$*X^wm;_4XmE6=7x9-&`(_n=>SzpDwR`%O>sd2HZJLzQ=(?3U@TGA@+& zXZq_W{S%t_Nio#?hOeCX%g+82m2L1JAYr5>aAi&5oA^h}Yb!j55*mF35NlX6*2zn< z{0%Q+7w}kJz+S7O`h&erg$F{cLMo04b4##IO^qWPtY+@C&M4^$i;vEe8?yXrOu(`x zjtT#>6;1hm)sTO?qNxTenyf*=y_!kCuK7P%$W()cOiew>el|@61|%})v+=Hp;nmn_ot#_W-~1A$Pbvmr zrBBxB>(524cR~Fc{0Fr#QWCggsKH`O;k6ZL*@h1SM5|Y32i2YbZBeUggP+m8H-4Q{>@{+V_S#s|E{&uoWa_(7j$lJMf<>3Y}zW(i8e@p;{YA%m{;ZM&x z1HZi(r!z}4Faw`xq#5;M<-wkCa#v@+U#8sRuOmNs$)74qZ}&HqLmT)T$&@X**)o48 za-6?4H%;cX%{{;7x2)We1@h24{(ve5uKr=3+zfe7yWE@PkXMm&llCaXjdT66jatO$ z6O7>r^7PK+>Geu)qt3PE>=_u$4cTL@zr&)-ka^SX{^T4aVKJQ~=d=;6(y_r`7LCfy zm8;tL<7&QXpWDTdUo`ON%94(`jq%k5f3{I7_m0fXHTueRA|Agovmlhe)+m9~io0`r`2nUJ%S6o*brtlU>_I)TH5&q%)OJwSXV3sUh5@;<8vhteAJy+*X zy{puSmE%VTI?L5hAFA@d1Pj=pnJF-*9x*uj-pdpO1t9DT0>S`#_m)w zU~Psd*#SbK$nrAzi>&N^lnOvlkQF)#N{zLGthuA0)IuxBTFRkU1v1k%SzZlMt_|d} z#`)Rh%7c(6n*+MS8~d{{iCjLXQ@$|F|=%;rSLDYTqy z1&Ak99;Wo9R*iM| z&grzR3&q>ChHPF$6Di7gfK#2KG?2*;1QKP@n+5T*^w~g?+`JE0_nuIoTJEU{B+ENO zflFM2Me$d81+w(I{5-ZwCs}%HUMdHbMA_`7Ku!(*HS^{sRNzVmVX!0X)304|oR}=q zrca+LyRHjn-|~yu}%>4AK63+ zGT?WVZS`)jPqj#m`ZK=D5up%tPoCukK?)bO$V(sso!f+E!*-<%tWt#>Q1+Z5g=O#ZJ+rSSmnxd^7)%0JiS z)s>q!6x5aT_ZAeC9C*nnsq?aml*kf5*jFIP>uH!Q6QrXDN;z6V=6~6cdwb<)hQ5WL zBOsQA+^cLV=|`J8V<8?cP^JkWSO4a)M|c>BF37J@CeE-Y3>uJJ>9Bx1C`yI~L#!{? zB{T?V(>#Ka^kNQxg9>ykdB1uyfZ!R#e98X=p^&_M?7#JBkJojZybbnVt>(d=brC?S z<|<`%5m;+2+78Iu0yb@CSm!CzGWNzXq&Uz9umf&tlTknR+e zmg2M2E%MSsG{NfwCg&1gayZ zOrQSoO};P>I%^$SSGSG_-L#IZmppMtpdj?WS}u!!1D@ph71@ffJ$_ZP+=Z)BY@?Vf;QtFpT= z(v5+S0d~8>%gF8p)js3-79LesZ5rTGm3tQiT85_LR2S>hC0hd0E-0M%JkmWcE)|395 zS=Fw1BPgl`v#Q$_&#jhg4h6DuV3vo&GeNOpqMAXXJXQ|5E09?*7UET)G;uv1uO^A2 zW=-*JwRBD^5xzxR-2(B}Q(F<9tE|{t^`F7~Nv@t}h&2E4`inGhL086580FW!u?f& zjI>Kmf{zl;0epeBCcDtG&OHgHb*ir+nhb<8l68^B-GSUTbs*+|c$JY~1;U6r8SEu3 zZUgfcDl{IfOCdgly(W+ms-1F*GVgaI*mf=M1cN#JxuV(>2Xw|qUhRb4<!Jh9LBUhRHmbW@ZJ}oCKq$vMzlN@J0|WPqNLR7*4J=^ilMv zlXFUDh}Qv%XpoIxj5FV&&c2K++iIO|C&7Dqb4T5^#sS7s zWo1JCAjs9BS(KrJ+7;gnLamV9GKiCiInDPBz;ojo+WzEe>w_wRY;{I3J(ro~D);@!f;uO%O4(|0Agg&3h^;_8Yx1@ruZaIM zOrf`>Ag`1Y76&o{b>T1@gh-Yw2=a&prQ|`m93Df>AzlnZS0t+f!J>kEu!hNoS}^O3 ze;&bfJ+y&__`eqb%UJ}3WQ>GjqOvY0n+#$(CJ&6&2lA$1F#BS{t3jCmpBARD9#ltM zr|xt}Ir9zdUI3qsc;`(%JL-oap0AM#lWt|U8KhVKnzht7uBU!!EhK#YnuZ<-z( z=D|pwl7!qs<@$EKubX!qR7XBP+S_{ti?!iI|HCSB8nn+M8SE$I>0kPoLnVu z2Xc+x20nOYgU)jqo?$}@*9nVU37y*#0&*lIxjF@3_q~W~bgQ~%i^AlescY6rXD9;= zIvEOssYtf7(bn0mXevrBZq7`~$Zi7Z>bK7xKRMP+lpF%Nq5wWKWdRC+Sb^lEsCYOB zuG=?N!A6!mvL)zCB@zT-h#||DFRlnQh{=bD?JX+;g~39IO|$`7bC6eDUmB*+LR+_h z*j`!7qz3~@ZFb;NIIb>-GP2*aXqTQ9_70#AKrATvZ%z0r%nW@5`3n$AL$)8JGNW)1 z6oV+XccU;x{7xCo$c}=1;`&EJVM@%>va_>fF!V6sl^|wGz7b^Cys~T2L^LWnN1;y3 zL1BymG+V)ybHU~{k$a~HO}q&8RTeG9^c)B+MK)H6m1Ng}c$*?$t>CitU>mha_993( zE2V#fXivTsJHQ^uOV6kGK_HZp>@pA&l!qz3wp6ZuD3ICYACQ@eAugQpe#fbu(BtH^jBw#q)IIw)f-ZJEPMAP3+9^NOPdhWmhP zEXDVgpqT}VO~Ql5^+?Zyx$@430}Z;J4N;#$85!$ISImE`G3JMQCqrFuJwW@mkY^~k zKiOSMtR`c%)WJ)pf@_37Ot&nlfjxU*sP0~m1ad>2A+wkmDadH$6_X8@d4)E&aJzG1 z@wa8}8e^~!3x7N_wm$nDIentcWLquR@xn(aS7W+b&^BQ&9*1OBbDzS3mabl47uQuT z`dA1bOF)2K7NtzA|MuVCuJ|XAE9@`?!5=_87uyg!7J+wv`&Rl#=oJc8hF+O|Zzjadf}T7WDAr282qQ!B^{9R;N(T0z!Jc3Bw+4)8+! z|Kz6!9O#_wf*J;$_IO)%-JYL)u91cV778V;55{6ZYys99#KEnVKU@s4ByvcnaKO3Z zZZGdZ!~{YjviCtcKT4ly1=-h*g3>{)Ap2tnuc$!xQIN-Lm~1LYJEAm0E68ql6qM#` z1=#~2X&lbWsrmGYz*Hk`%o%t&1wzTl?l^;SO-9;G+~dyEFxeFv4$XWGUp)oE`gO3K zTC^(-eI3AB1-jnK;H%JpRw{TP89kuRj8=uNj!Ol7;=QKr&k(i19@J>mDur!IUbx*T z=>|gK$jU&`jVi=>!1`=AWY-N?D}yBp4cqKOmRny}iO9YNamJqfxQ5A6kj{hQio7Ad zdc7tuv$b(P6qA)r`SoBAY4H)Te3-dzWghW9a+&(NEZ~%amQ{{+>FsyMRDBHM^+oPi zE~^W`uF@j&o2o@Su^~bLmV;u&_lXztZf^ZWG^i3A4C3obmc45jG6c(=x?S#A6Uc5u znYDprWT#OnNQp|xId=`r-&H9q$e1!-cvH{Y)+M%8Ak0Irs+$Tj)@DR2Ck)P?D0keD zpD5=~3tlLvFTuJIhD7r4=3ut0emd|&(VNHH6_Z@&Bg73qwky67)~sF|_|e<+LGeLdYxf?A;|T#hxcDZb)lS@BtDD0fh_eYl-W5(wN4)-D+S4`o(^P& z20|JEVus|SKd6KSk;N+m8O_eE4WHc4i?#W(8wyN0J%sD@k74=oi(U@ay?aLx zKe@U+FHs)3KQCT~C~7nqvMEq3KYBEnAve#)dsnP_$~t}fB)v*%S2aNySsQhESCI9*oRd1~ZHzytR(M$o*acd&tBCv{F4KX!lE?-R zQz?5JnK&>NUfu|-T8r+K90|VBS3MaW)gBn$QaE2Hq?hbL<;7@ovIG!%z_c)h+cfU> zPIIB)a9oa}-?FVd%M7460>!X(J|;9iY_~_Jsk%9sqj}mFzhs+wpecT@bEhvJXJI z-Y6Z@3bLOa1*H>OLH3(^HE}l0_basOYp{b_beAe(QK>Ct-?sT`F+hqOwI$Fjbs*~U z6A+3*_L*G1C6Jy*beKZR$vzt*>mS7o;Sk6t8Q*oWQ8zRknt!SU)nv0lm`a@*rtql7 z$yS2uh^wbhf8Y;qmmzIa0ffDfM2~Uf1_Dg}3 z?z=6}70VccC7S|rjhcpFvF=l#6Zjco7l7SE)IE67iu_4($Nqx*Wqci6YaL$iJ;zXpt=YOx}>I$eMw06X@Nlr6}nDqU>&(TVbwkt`-rS zs~r;#ak%$J`&S9##e$wXg<7&H$4?CSI^l;zOX5|Q6Y*sV?b?g!^jIdLb*z|>-nvoi zLOU;|WWi$3l0CKt8jqs~w@!gtn9B^&`B_KALNHY zTn5^v@M_T@%%jIa2pP%NM=5!Nx8EG@UpGV*7)?hwpIuwq%E5LuC| zMToYo?oZf8kJc&z#fxj;5x-a8Ak4$oAk;S*+tQ^~O)8&zEf5HFgtkN(R*+eZUaBpQ zz7|MNT@JWLTadjZGhWAH2$o8>Z5d0oLzT?AC39rnX2I+rRO{w<24NQdb5sQjAB*nK z@Z9cGUNOl%@!k_=V^rli8OW9`^5Ta20iLB41ISu~>WGP{v7AogK|4?!fr&}6fpB{q zbp*MWXNk7|HcCc3qT?Nxlp>D z1!$Lo%gEmQO1wqQV48gH>8NIlYR2!tOhMDD zVSlYk?hNrvwDuLF~Yil)*fP zBHJre)@5X4)R_kKLiQ(i2AVh9^JTl@!ypub>=zKvxhzcSSFIq+S@aHqdRl*@z;d!2 zxWv76itC92igQ8TMAUCq zd<3ul^rJ1=jUasrly1`sviZ{36);=SJozZSR*>1|6=6zqlz9c&e30DHH<;C;+v#S& z6i4we--ap1f!G}66F?aM$iB5;a-S+jf3n+-OH7z$g(d->`aP{LC1aUX4Mz%hDGSH* ziK=-$q~3|twB!>X`AiUE05YZ^Y*#PuVl>ZIW$0)5mv=s%mvQED;17XNWHQTR1^IO4 zu|JvRQ5s%6-0wN3RV*guQ?s5!0-hVv+NYQ!Cduhv1hP|kqHTUqIa(e({SyLF~k1i207mR{H?| z6Y?yn;8_r#JEpClgS>TGTmqDBXKou@Gge1| z@5midd+Ds)U?7Q@I3pB#TU1s>VP;7}Wovu(|CZ=NjYE${RJ7n#8Y?DwnSz{dbj6ih8!(I`H zRy?eVK(ylFun0se9*&Ga%#w!>M<7^*!aROHg3*kJFGV0aiB1t>RQF6=E_oEvkpXG z>e4+Haxgm6*RTW8nYxsto#{*3v7$45WjhdkaUA@o9>BH1!1GE-X9~_NjHL`F7S5%e4x@t#$3abfNofgMsk_DLFalgWWlF_7+ld!kl;fQ zA|SGSmA1M8*acd&JDzI}*K05vrgUXvU(OuwPuHO{qQnS#Og-6SI-pDiSCi2>-?L7_ zgO8mdzT9VNT*Hwe+5_aJ>k91{d=~?9ikE}d(`RWr^C*LOnf7TQBX>S*!^*{g2fg@KS zIgOoWKdIGy)aO`z!MR2dzaZ7dqiRMkv=Fjx>#9gwSE%^(l}y5c>+_r4oA*3eXU|Seq$RC;T^z)&MSYrB{}{0O*{Yxoxkqq{7Y#miVc? z+Lp*aM$qXwwN2Xrpt-weiwNjES+E(Hxhwjdhr?P?<`h6PqrKsm)xO7OOlqRaIO=56 zIF-Zj+LpWr(mJY$5zr~3S1^;CqAfjwfM?$KGQ2O4DUXcKOF$G+HUc zxq|_G%}1fKZ+d=aJ8HLqFe;O=xCkv0Io#V-#d)mQh6=K4tf8*4E4~V3rv8d#wTqrR zglLR9At&5smHZA^DELw`T6n}HJ@7(}j}HP#PzFvqJ|Z>)w&ja8=9xJ>cuA~cP*j1zQv zUTsT8ue6RDQzD>q_wlNN4&sYgmnkpBK}gNKxO{=U)*1Q)f$<<$2|XSH3{X!7<$T=A z&l7WD&_x;aC%Z|B)ic2!)Z!yx&uS5+P=7vyZs-2MTU};PhTQ+H2fDcy>8=AIR3y7W z7Jn1S>`Rm$U2%gUmH=3)KxfjHRk8w*E9Y_1rSvHMIG$%l=on1nl)f?^%+#VEOs8@} z5d4rDOnWH3^Pn4}T=A*FHC71^0a_y8cibSqb1a;* z#j09>bQyI6ecQ2Am8CxVKFdF2|>pkbWz%;Ghenx=N{=usOE1>!@Cfjyw`0c13ZBtI?R zF@nAqDj!bCgjfWC&fWdp1zO{kT=`ibu7HL9`x_$e!*#D@%hUXnu>*AK4(|ApgOoosb?S_oX|Ql z=I`k2VhPLdg0Jxiui3Ud>m#q#4(hHdVU$hPDG7=-z&0yQm+|@SMaE>~?X#i+X zP*i8YQxe{M^gl?rjBM0Fy-|zs;jamolN|-&9v&B_(EJ-7Oo|Ir7$pmi;^R$=qTP&C zZt%IGfx(#2JH5dHg>peg@6 z%3e2*Gk*JG>BQw;+kOd9Te_}+eE`2a&?Tyl4DmD26Cl@>VTdI3tM@>s0C}TK4-JHJ zlrk7N0qi<0&H&TNoOP<|Oa;xyDVu7VhqOrZRa(@=#zu3Mb(#X5q6-fJ`ao2W_YCg+ z_}H%Xr&Y4^u|ReUT3w`)R+2HnDP~=?FP=sg%h3$P0jCpqcMw7+GA8zlsi80hl56cP zvi1}LVp5p*cPt|JCP5utMnwr797|n4>ybw7|@KSfVr-v31> z7qqX{b$tr_5DHg+j6D@-h=Z{DQCaE{rz>j9Fn$A)tp+xyQ}J0T6HpTcS4D0O`~03Ex=8J~wIf77=FoiWqriPb23 zZH64WH4uMQUziP3X)DPt193?T7NlT36OVRi<=bF;wfH$$9p$-_td|n2dxMSD;&`y> zT4XQdU#!8L`+lSL=wsF;G1L{urP?7G%Mr==|Grde{1kD5#cHF9;Z&0l1kSAuVre^| zE()$D;~B)Frlv&AVbh2jS06J3D{{C3?WdXUdhkZoTmk%VE4giSb>jDQkgDysdK7)Z z@lf?PMBPkPY$lz|>56(3rTOb1Jjc=eV=dA=Mdji=@y4iJu2Oot+!(V6&<94*ninvN z;`8U$pQVyXCj$PSG@GH)4j`Ka!X{iD)bU`Y){)VhqqCja8Sxx5L)XHDsW`^o2fhM? z7=etb)fh{GKQmX%9VU;m4cC`shc>~(RuFDF zWGoYQUc@nv-5Mrie<95Lw7*)nU4o}|m3stDol!?$W2iQw9aZ0QF0$BDfrj8HQm!l` zH$kHcz{Kd}hKLL@PS^A*ODgoBC!aeMNDK|d@l^_|B%?Yq(44|cj9`8PRSKuL_+SwL zx{A6JM?hydW}C7G>?pVCDZ*Ua#ucI?w#ItyoX|T+dQ4?gbsQ{4#mZH&U}tNw4Oo>H z*(dqu5ll5wflg3aN0nlhauqoZ4*^=^;$5*RYGOobjBjP&4_v%FxKE`mCtC(`p1OFj zMeE4u&C%%su}nH6eeuqR2~+XneHwf{2oVn%Q{$7pp)dtft&7*r9oPCBj)ilQhM-%z zbUiN!vD&dzLmxg*&x@DdQO&8%gBfGh!GBxNY&JTvn-&#b`vJx_iEdf!E6eJ!4=Hty zm64XMWXqiKq$kwty><);RZ>0ruW$J5KR6Ku1eqv3r5o}b@d=eb~ zbeI)iM%Dpuu=QdpO6P*0AUhAg(}#_!?Pxy@goYx!8H8ugX<-V}59!3^VM?<>up&cZ zF5+I)Cg^K+Eeua9Ls`E;Ff+8!@(WK3;c1C>%AUYK4{n8YNGsMd^QD=)#`V(`t!epJ zWv2(d_%EvL_(T!?X$^hw&z&o($IcX@)~j1gRLP3M^iRThXnVc@qu7GKbX+Vb6VU4_Ldgk1>2*=FTpy>%EDlt>Hzd^ z=Q2Q9RMFcIEnW$x9aquuMvc<(E-ljWel5~*>US)J6HVcV8Jsg@Ci)b0hFFiG>nh%3 zpDjk*dLO$+TuUPZje@W6--V2$RmVHb+{?)Qor><>f zX_H{qK-&-6%68#uwn!JD9WRR0yEd#G7=hx0;!OJ=d%T@9Kap>S8p8Yxl~pBKD^Lm^ zY_1c9H{e^+Q$>SVf0!VPlY%cOMJWhg6j59svQrS$g{b6ZcNGZXlby56k6hd|Snu36 z&@&0z*0ymyy&9q&bQfs7u4q;@9bb7!u9=>fKJ>INUA7RqAd>#Y5TdShrzaW8wBvVN zOPt+i3zF?r#i%CZSb^|4iG#%#8YbhoLHJAX?+(ccZ|P4q`ue>LU^@s!C$o~rG5IGN zCbN>qF?mN-8Yd{n$Z8P!QNiWvek)U&2eX*Dh3~K@&{iFc?Ad;?}K2^Yw-oJueJCMSY7Qc1?<1eSw4A2&|f|c zE*?zsLlJyjOwFqF2ggHN}4aiuCXakn#C2c_V%6BriMbO`4GGv~BYveHma|=a- z!b9MnAooq$LFI&)f(%TkB!y@)TcsUD#**SEG}I~ryLRkjyNc{%yPoW0yRz(KyRGbF zyTR;Zwpu;5mksE)lV_e8G(#tyf9(p2G%ihFQK#Sx(Nt~#v{}Ie$Y_BXaRwOb&m)Mu zrVN~PhTusZ`>x#usNtxa+Ckulm2ov0OyF&b%NyQ+0(12n_FDA?uZz;0UNqRQ6GIHP zs{NQO{wtig`XyG8 z0H9~raO?)1bM=M<&&>~V)qqD3U@dyYjdryNJqAb4dPt-iheWDzh+}UFE#XFA$U{z% z7O#a)owx;(F{$eeyrLLDF9kaNMg{%Iitv9uJb6UAP8l^K^1(hUbPpUpqw*TS6Ma>S zJkb+cv`-YTy8!4;6zRC0ivd!BU}O0HNQ{6O$ECS6N&}D74FefLQ9crU7G>AHVRk5eNS3z-K7qYBJ`m;w%cJsL3+nVIE8h-*-6{PU#In9bLNf7S}kI>P~wuYruD^ zv)30Vv;C_YR1 zeWx>NRR+L@T0urTY}vD>*iV_N9!!|Z=oNX|!0!OsXykFxt8zV)rfy3iMj?cqsN&i( zvPlQk=Mo#2;)^H$0O2lAc7qa~sVjVpNrAF&aWJ!_DdaB7pp2{pr0?vMF4hV%`i#Ei z3xoK@uPHycH^s`L8v=Fe*dTNm@)YI0lI%JV<|U?v zDcr7cvUxU6VUxzmHrqIb6qRcwSt>~Rp`c3>ncxxi95CcO`U~+OigHwy(A6YQ0{BUR zky$*!6QCk0BydpI7>74mFylGmyQjao!Z{npfazSO9znxenQ8DBD57RQga;7VO(j3 zYgN4{mCi>c%~$>^$O=LDE`d<1WO&d`>&TdcqqB?YWG>(S1*^0?88Bix4)^DPp9jJ) zLdNuJ8ioQ1WTO=oMTB}n8L)LPtbdYl=>D&Jkr4b=!U)*h3yOOGw-CT05Z-F5$!MOs@DRCQp^;5=5mX*s z7Rcu48KTWH5S|#x9t2_UOd_{lQRXnjV=f`4%pQvOl681Y`A3(Y@~_tMM5L$8;mS^L z4_$V8j$R=SU$%iNISWt0V8i{@pvN)JHDnkfG7>sto@(j;=mm*FZZ`-!k*6L|9XGg` z0R94UWhewsj@GWp6*uTS-h0(}Y@)pGM_vc*9qj;{&0(3X&aQ$?C!A>aT2u{@0%hP7 z(IW^H>U(1INmwZ}U9FZWBbyDZV&aHjIZus^KT;U~N26Tlw!=BdhVa-v~kxh zTIWHhomJX0vPuwk_D%^?pd;if|JgBkMkKf}1oLjHb&-M+I3pTl)pP`OD*us$-C@Dp zkdqDaW>zcV*sd^9C9{o$=mvm0wyJQGU#kd8|C~Jk zq6_ol7u|x-SFQfNAYL9hijUrX`h9+a+|w;DSAJ54?{v=Jj89bU2m}*q26qpR^fl)P zF%G|~ibnQ5NcT8O$Fzd%$5(X(O8apNE+;z#(oIN7+m~DRj6jD!2Y3$%&rY9%(aQB0 z#fxJLpjSZbtK{0+d7dyl;{i@l29aAv1jQ-{`Qp%g&IiSYXf_Rm-a|H5rJ5QbU#8@V z0rKS_{7^;{-YqCUYw5_Dy{)6nQhUV2fL(f9=d`YeIn7X3Eh7a~YNZN6h4PTmO1%K2 zFymEu)kVSlO3MEP!G_E#bAhYO1+Fp{xXM)ElmWsKe1~UW5x;{{M)q|Pf2JWlG~Q$CBTHpuJ3;yi zrS!2@*u}-yN&z&Mtu7Ac^zRL^FNlRAzaE52oDQ~Biz~pM)?&n&JLna^@l$2buydA? z#XV!l`ilbTSN(YsZWYQdiAT@`_DJeHY*Cqw{7jW+8Cfm}_X+ohfrKc&4L=eALat=} zZc|V4X@q+#xSR~|-Z!znkZ>;rSCI7sv4SdGH>h$8cMZTCdb$C2rKDAKO54blt8L`m zv|6gTkgi-swynyXLiki}rMIcofO7hvU><)qHBJ^R#jmZ7-;tNXpHeNCN3IB*A(y>V zP{hRtse182lfJ=EjL^#GjFLA&I0v#FAl(n_DmTO`VB3|6Q{`^Zxorut(Xn)%(|E48 z0bT%Nmmz-~WYw8zXHyL98jX`({~T`&8EJ$kD7c&qFvtH;CFfuj+3ODI8rpU_pc7`xujl6_%RLo%-uJf_B@IAUeQIBqw89k#iUMZ> zI0A|l)pz*@+~ow>Lfi**xzbeLt_&q5BVP;oLD@Zrh;7O z$Wy9qtxcRRpa=gu&cQE@f?`CgiRq#+OnC_i;~3ffa$x^pPW}xLZwAo{Migg(U_>@s z8OiCN6vWEXn*#;sEgp`|G9Xuhc)rU4tx|CHYOwWMv}?jJt_5)CaQSw1Fk_gO8Ajum zb!-!_Wx^2ITj{PJVK7gUD^Ei_51@87Vhh0chRaq1f*IX=L7t>ixo(z?01Q;1>w<0x zpuYkmm%iZzkgrP|((*|qw&9aY%xp-m5(|R`BDp3xyn?{R3XJ3}1_PJ~vK-5%!-Hvv z(R|$&kHFOMNadHT4M<;ylsak!+3k*k(tNETyK|)aX!%9&!qGkuE_AZ5K`Ho9ZES4( zuZ8iyHR@T|vvK$vfN?76fO=qOX^}bg)Z#F(G1zL26$C?{hjA{Bd7~%S)|Iqw2a0;m zW}EM}a>WEvB%dl1rcCXcoi>c6FnwMwuL@=cl!(JxT}N9O_$4!cH>4)HJ%|ecR7;~e zm>Dw`;_VdEW$G2dq;BlXP2dqNMb;jqYm`!FtsqxBRYv$oRf;O#dK7D!Y~ zMh5a^M3Jlm60(eEoJZ+K-5zO=9{>fR9?0GW>3X2_bO)s%dk&-(l-6qn*~Sj?=*GOv zuHtbd=mvlz8F^o2Q*E0Qw$GoOx$OWUW3qSK>tCxJGB6k$`W}GL$;o0!m^z4U=!=Dz zuQi2WB#c;OO+i=!kU`!`!*+IRShONzA?TcLSfGfzs))O)knIny>8^!xS4Gy+N=UAA ziQGkv4e(5Ib$X9rJ?>$awTCxR0UrZF$i*%xrVau42H~GP`bvKF-Q(*wm}0w=i(++X>=O&gKfuKPQ#ky?3{dxr+|OX>4TRo+X< ztn&7Dm-kY4d3(Fdd#U3T6j~mEdVxCoAkqgSqT`B$!$J2n+|J@_GG{ zk5KJVO=hLXFQ+=`i!KardNTTit6#k{$^s~(s9_c8~bde5`u7>e6 zm7tQ$%D1O0-=2|6ayl&N*1ZR~j$nQx+RNqn`RNFlcjD-M5Uyo1UN|`6Qu6OLOlIZd zd@|7xXW&ekYt&l+8^n7$|CU?+E~ZMuS-MfI?geI%zO6 zSR*9Y*adTx>=qE4+OCfX>SWiIueEJkS1n=73=*$Zr{^j!e()V(&%enF<(I6RmX>H=*Dq`DdfW`m5$-mq~B%#*h{ zFnUz>6k5R_dkJ|*5IO-_g#}lFGk2Phvj{4!E{p6nA{gk!LeQ5-bO@7|!3a&jwAET1 z2u4D4k?Hff)ON^p%Ab64M9|;Ub{8v>{`~XLkaB4ivm#Q=N*2>9T7~V&PNKb~j>NPw zt8yj?Cq_0~iPdC}YLslPM#-K5`NV?Np)jSLO3`mG*tbgTPxhk{tI2)_X>&?`eU2Bx082*C`Rog;@G$jd}fo*J5ZHVO|y z(~`xh((p^SloCKtkR>|`N-0`FR?ksT%Fqh397jRPuN7oLM-gmO7m<+Gkad!q{}Bv! zW104-GL@4Z2l1v>9;VbB#Jp>!(hR#f5^b zlN>fGnB93MZ1ySh{*j#eM|?XUec@I64Gd`o7rHEJ6g>w&!42?xr6?n#OcB z1oK^{>oKbYVn1<|5tuQ6CkvTUgS&9=;3K&QQawzpmlzE7??sOg>Y=r+QSF5P ze;E2x5@J6J8;3$I1p7XYGIk1NS7O72+hI(XycuWA%!Dp;#z`;nFTlHC{MQEl_Aq?^ zOc*S55MdY$Q>;N8t1{s-ktfw4PEuJj@r0uHvb~%vXfo-L!R@g5GaJT2m{Q@63q}If zI(5Zy&;8;ud}b7iMLA@8Y115yD4KxJjN{>b5Qeqv`2&W+^KRb>!3M2Hb}=QN!{8@0 zfG4#ij#Cc({x0sJ%Yr#U;RiIM*P~;;g^(*fy31}Y%tT=ipMmwM zVT3#w?)TP=lN=AzQIMSo!|(`gt%Iz+ItZPtgX}bQ5V~3iS$B1GuLc~}g`Xvw$L3)m z_rlNx;bE8zgrpLt10j13hA6^T>mYkY9fTd$LAFaBgx%Ib_Ahk+0wwrH`tsn;SijCV zd%(~GVIEAoCR?ly!fn<;wn80*Rn|fFmO2P~tb^=BbrAMj$NtVS^nAMXPDrQ8u0hsO z9fVV@gX~Oo5PDh%*$8zI&bJP-+3Fz7wGOh_z3L&{Z#`rWtAnt@I>??-2Vt#skUgai z!Y1n=t5gSJi*=B_c)I-NLHI@RZPr8f8Vsw1@Va%p?iNl77R3IgKEk`!N48fTgniaQ z_K`XW2dsnapgIVLtb^=7>L7e$9c15~F4ybf@4$bs9yHUH+6J#4^9oXj`h|hLO+;}o-C{mLaB9-4N?bTsCAGHR|jE~b&!o#2VsnLkX?EP zcNY`B6nvufkWGfcLAb&?$fl`-Fw;87u2BbJmUWO_s}8~(>mZv8tAS34H^{*Q*J?Sj zZMdUS?NsTWPy?n_A?xad?=DKyI?wg zvbZ`3_gV+pa&-_Mv<|X|)j?Qc9b~K2L0DrQWEH1nNcAe*RaapwJ2Z~)hK(b8OC5x_ zt%GcjItY8MgX{x!5I(dHvX9k4_{2KM4xXla*Fo?@)!Y-uyv6As1Cx<)-vtK`62gvZm@FG`9}2 zmg0zoiEXTh>_qW|32m)|>|}KiPO%QMPU;|Zwhpo`>LB#64zjb=adr@RuJw@hRu7?% z`^?N>Zq{yGD(=-QOTt0?iU)tnbu0KTl?iWkv4~#oRBu=(m9R$Slv)rYOzggrc!HbXj z;-ea`iTqCiuwPASuaS*8--`C*mSe_4oaQc#1slh{z~owBkr(a6Q(>3`p>skeo~^QX zC5$J?(e6hWZcp_qdZ~-O@x_Qm_yXq+81fMI!t^NMH8&=n&|9QDKCuGoKVfL-g$5+_ zL3c!XFn8Q@@Vx>%y3-F!@L{4mhi<={mM4QC{{-Xgh#FGnCC7WS(dJ}nm;7uPr~#pM z#oqGZ3r_xAw0a$uGR{{~jj&t!*WiX~UtWyAD{~*eR=#7Fg)v8cJ!E5Ys~rpPDGbl4 z?%au{>n?U@Vc`_zN44~1On9RI3s=XyfW~jT#k28&zCGwv7^+5?2di3cPxlqpan3^E z`HB9OAJxAnAKgDQ-XQ(ET}Kq2;O>nT)N+H@1;;csXS(&r)%A}|UsSas}1<^(ES{N)ae-(`AhGd+#U z2covKD!t1V;r$hhr5i#7CKYlUzKSOo=*<>ygpdcrQ*2J0#0#~L!x$&92k~FPQu<~$ z0jj^1sSw$8*JmjIrKeFlsR91STB*qYmq8i6*#3QSM#;>Dcq0l7Wg={V=^7^MfllEd zOogd~>{fLU7P(n-gN-}52ww$bcSJT1n3Lng;Rxf5h-^*$8sH7?sJX%1Gaf_;o8V4d zI@De;PzGo>zI_UR^#8lp}-+SfO#deOI$V!w$_SnZC^n;?%}T%Lrk*+vUb!ajY@a z88F{bArPQ2AC|J$rBV5N71c3J+dv286*mx|&<2*8fJ#ZK>VAG>u@&7O#aj2FGMW?+Y}Cl_`G0tjCoq3x0J2e zn1zrzCfvJSVMj+-bMy{+|pP z$nG>%2TAoRmVIAGRqZ;Qj6Yf8cSyXwO7Kr6VA{nQ&ia#UF8sec>}5FKgyFqP=4#U< zPW~Ru_w<`1L2PZmHDiihh-!I@ye`7+_hDg!?(=b0S}rH4FkuZ$HxROo>L9#q9b~Vn zgYed^{4Op3yoKQZ>qH!y{_BM_7v0JM=3cOT0nWSH6QKa6V`!6)On2 zdGmvXvEhjS2oe+_F{7f@*p=U!+J)Pn& zfuY|eO=E*9f!_$XN7DcvIGMK*&&k8sl=!9a#W}yHjrKkK%J}o(h)8@Hf#a{vpEl;(LcPg|&~#VwTGbfN zSx0Y&#Im!+`7oA+I1a|L$JkZk-yy7u60HV-^{%?z6hJ#kLTq+zoUzF%sRzS(I}4Dl zG!M{Fsn-by!(hr7Oe{`Plp4d>CXkw|OgKTPuSD%2bcbc&g#qb!7T3#*73i*vYWt@ad5TPYW_BjqA*SlZbj^~?JfW833 zdL}SBU% zn;gito>0CPHRS-1iDBf*P{K_BI;xb-z69gyt>X>@M!4JV2yUtIG&bXXF!#_b+~vyL z70hvqE-IYi7R@L)W?|9EwcXlR71VXN^E>!$GYasE$rnSl-9yWRb=@DQ;JL>McWIgH zxXWJ0(>L;mdX?7~)u}jiS8zhZaV-a!lG9<>1_|c~jS%jK>9LJ$tvJGj;^A`lg>bUa zFrkyGgws?d^iY*>)^OgjJKi06W7|6Jj?>!m>FiTu&m!R#&AlCPNa@djoPjc`V*#C% zo&^}CbOKZ^d)l@k6Xv}`Y+QJKt?&_rlib3jy8!Z20O2TU!~`Ckh@SL86^7NKQ}0FS78 z`4CgGXs9G6#D$hE2Rx=KVV$ba0^U@W@Sdvs0H3Q$_*T_GY#5#kf?@L`oG7&HR6sYS zX8}eE4HL$ydKutxRSD}wuR5 zuPQYKc6P?R0j-8?VFPLd>J5|U+*)yqnyxZoCM?ZdF*ANM2sbgTPZw~9glES-0uRXH zGD@fh!*9jRjOT$gR^98f8pw&*X4=DebRu??ZO9HCFHUt%h14|>LZo3w^Rm=14B){X z=eIiU+>OCHt=ViSl=ETCOr)hWW5E6Htc}5JiN6Mmvtf)U(o*6XaDN5j(=)TCT#9?# z<9Nyp6D}Ahe_Jzr5#-e{98{kKY*qRW;76qnf-|LESu;RarDp*KDfMPW+%p!RU8P-^ zFvZP$HP|Zl6V&WWq>n~`lazJ360V|cR1?*D#Pr!bqKLN6Jl#KwV zDD4dBr*r^d%%yt!c$pijj}u>dtP{R?7zaZk2s2@Nwk4ab4#IBhAUmiI!V&8bhRGpS zI$#h?Q;}Vw4#ITnm_D{8{!CImgnw8M*=}_Z_KfBFX=z8iRQit)?n(5Iug<_WsDt2* zI1(odNwNr`2~02B$WBuS!5eWTPIjj{2+LsFVi`xgUOfbF#F2P%#F5=_V8r+<-CTF# zYj{C*4-8-=44c&jfN4ru;hU8%0&G|M2H-uV`v8ZPvbOc4+p-)$AEi;i2&Lx(u29PQ z-l%i|;FYn*O3ypNIWi2w+en?jVC3Z(-2RITvb(upf2OqC5U2G>W@3@+xjT0R^SU)a zFMp=qy%AS6%^+wuN}5)SK!0N;q^yINDl&HlA5V*QF2$28Fl>K>=`dyw$H``@gRsat z$nH}IVWV}BJ*^JHUh5$HLLG#ktmCKBmZroc4mp5^FzubJnK}q92k`o{jf{4*WQr2T zBr-+gWH+jV;EgsKC%aP}gk>=H5RH>PuMUDY+Gw2YV|5S?!nDOfj`kQCRFvS2HX2Wk zHtLNwE0iDWiKaJ8rm_Wqx0SvFs4rQ{auZpwbu|Ii2`4u+Q-)BTmG6%wx%JTTM|H5j zJK`7?VRxxQzB6vCj zhRuvnE$Xdkvbr!h2>I4Q)=V9Q_SQjmx;h9^>mVDW4#HIHm>R{U^401g++aOqi_}3_ zZXIMR)Ir!{9b~)JLHN)*$UajC;Rov=>ynNt@(>Tmf$2t07E}kJgLRN~QU{@PsXj)* zB7P-Bj1VB>F^7EAHzf7_R9sQQ=P=!9$(qZsqJ;K|VMXI)UDZK|S_jz>br6PI2iX#J z5WHeV#*bhHd7Lhv@tNSth%ItbpD8HtnKq7H&r>2)upu$n|IJ!US!o-POa?oI zD{YtdK=3y4NStiHItbn-9*L9vq7H($HY2h&8%XUVgyY@5d+^5^|MgaJd@26|u?Sm! zo!Hhe9(#ph?;_O3O4GfItR4&wLL2KKJ53#ge%3)2Q3qk7b&$o>L0DuRiy|#hHT4kI zSPxmHItW|bS?>f-kimW-gN+ithUxx5mLuU&f;ZS`oa|(E5IVuM1=%2V5WK-g<78K= zgD?}OEoMe={<=#&1aGj>cyh2&8EnMuhVxg?H!!H?5?|H|Fjna}zzU_S0Bno%*Cv3@ z*SBkZgapkZdfw^Ig+DWQG)N4Xdp7?$hE=%8OY~<;f(Az=VsRc$Bx?OTl}ahp!;$3X z))2Gk48vAM=n2!!jjWeC2qUe7Y=Sxn)2)MSraB1ot%EGC4#Gp$@le>kcyF+7<7ccw zwgraa5VnT(I*Fq^MdS$KFEEZW5-01U4uUtzNSy3qbr8nEv;|pA9RzQbkvN&F4#Hh9 zZE;r^+u2I>5WLYw;>poQ5~G#Bxhg`?V2Ljq3b;Y(O@ODAZUV4@+xAc>yY)$6e`az6 z!#s{RZ2f1aHa8LfI}=Np*ZQz`{yjC8*$?|B4C{e#8ca6}vUAlzIL|uB#;AiZ&N|3u zse>@vI>`Q}4#I8Laa%u}fA3Te;Zf@$Td590rFD=!rw+m!)|E?*7fBlilETuyJVR z$&P`ccS4@*8eL^gwUW_B3Em2c#>pnAgW%OF8YkPT4uUuHXq>DL`otF=1aIQeI9ZW8 z2;Rh_@uvN2;hIK09o!oa;rYEYJ`C1tGDIbUR}37;v2>j}u5-tK7%XW2AeK0}Xq@a3 z^%1;TN8@DmW!6ywW{opt!RajXXo(LKE)-gJ34pzzL@f7erG&LY%bo&M_IIE8Yp{{K zw?kXKme0eqZ-E7H&xptk5%`*&iiAvLH6asTNytQQcaRD1C1fJEI>>~t z5^{`$rH4+ajxlm5L>3-0p>aYcas@yp^hwCXK`Iki6eb~RMFtR-CS)Q@jwBDdgFg-) za~d~DED>ITu`Q9CBV@wfgiPdGfy_0M6L#l)96U3|D&7iXOQKe>l<@b2Ow=lt5}r!P zM6F^eVS7R*Y86WfA0%X=R@O9|T(GEwVUO89p|CVmHV7d%kSVkOl7qpVYC_%jze0m_Z0$Vqu#fhseW=UL`T{M4 zyU%?2do2Qn$E~K?g;4FHAygj4*u^QSU8qaD5H4MG{GApjAQAU^|ATjqQPpkoSuiIf z!DZOOnX|ACX$Ke%6~6QTF~0LZ)4DtQ2lMI{gPjiJvE+33u>-;U20Q}!9?RoJcayt^^Wz~iWqx-;Se}?)g3J7b%lsOvT%{e4tp7-~OK@o?TsMfV2;o7OJ7(u9 zJEpjF#u}zG7B0P>_M5Ho<}0-3Vf*NVm3n037pen!ClSwqbV(hEx^y53F4GV$1F4(R z+U>G7$lD@qVi)wr_xmth+7TXy>18olr8)>(tb^=5brAMh2if=PARMs{vU=x9AB19< z_ECHuK9HQO9>RF*A)BZU!V2pkTcr-dXVyV>NF9WtK3*qeO<|ZJq0~CaVuRE}m}fm? zx2S{gtaXsRq7FjyzFsF}C&ADOVZL>cEmQ|#hjozc>RVfy>;kXXPjB8{fMS)y@VFKM za^mLgv9hji7gv0|)m3|}C5H<-=D1y0P%M6P2UK$!1y zk=MZ~5g!f+nEq#ngFP~5VBGa({gx7P-C5t`3LqD>*nQ^bU~XnHXfF*Q^wEGmpyM@Q zJm?J?K)6W*ZUSAQ0o;UM)&Rn*8t^LUXBzMsD2s&05v5jcw;zJJ$FfRX1vOZLM`SYNlB6Uwdj82Ao%Z|zWS)(+55HG=TDMr3>r zUI*Jn?NCmp7Acw5ZM#0i*SQxro`aIz48v2ughn#82%*5e`A1Z*0JPYx{3)0x)eCC? zVZ5s2K^Le>SfMKGv{O~WXR5L|->FI{a=RTtULKNKOUWXHQc)XopXBa`kr7;>5yG<) z5aZ7HzN&eZ<3a2M1L<;i;ZkH!;F`)7W_wR~a&o$*sJKa+?4-zjl33HY5YIEYUu%u#%v zoAvji?97@d;;-i`V8KJ~{GWpv67}mz3%Jb|p35{`&)A)kA4iNsnP(_oX%IEUK1_qB zoeg)Ws+&Z}U0FMn@kjewuocpxH8&q$zsTvFk(#vBHx;^meFrYpsW6~4H6_L=DbI$? zsSq_JWh%e69Vezj*Y6w^I2DGhfK{2w3`oA6W07wvbp3kLMLHD*EJ{tusZgE`<5Y+m zk}?$zr0UL>m5NP^KI*KS?_HZD&!*nhiF;3GFt-O={kPXS?u69^xiMz? zUtbM+$6RB0(&7+(+iOw`n2z=y6kg+LL-7D)zNX;qq@B?HWpw9egbFgL9#x-etj|7o zdqybOjsgFZQtZR4D{6*v&yfDuklPlKQ}7MnG3_uPUcdSO4$@O~%`@WnPt3d&Os@IF zg`uu_Ha_Y)D&M=7Os;wFYEsucTm84!rMl*ssUHki^@J$wPh7m~b*+7L)tFvrH$l?a zT?n@+AaLAirbZ{0@Guay>KrGhEI)z12Asb;W*hrbr1}$N7X@A z6NVOqsCAGHR0m<0b&!oz2jP6{z_UrcE)V9*AofaMQGz#!s0`vebr8Hk;9WGxks~Ri zgocTfc-j!GojM5K=%R5l9YoYW2)@?F?UfbE?8(VAmX=|{NkYpAJyj)~t7=~W6QTy* z>T^sT2#ApbR%CY?e9*Pg)1r zMs*N2_u^v@&0_3fn8*==*Fz*uHeMYBuZKvS>_&AE=EFE9Jlz1cOdSNT>qtD=bws=N zTA;{}923fH$B{0SmSMu(Ldyt`s!DiF)zyF}d$~Kl59PErv$61J#`37U?3fV0`KlGG zJQrV=!LX7DJ7HQuSOI~RsN2&}O>bkoio!a;l@ zEu#c4Wi(D!Ls~`&brLP{B{f(Jbr8J1qVZ&3QR&O=niXn%7RPgpgog>ugq9IbSC!C3 z)gAz5N!e@-gwx%7vO;;SNdL^3PIvcag_;Z=UpBwk|KN~MTii*B1Gb3 zE2Rh#f>(q{oa|yLLWJNIArdD$US<>_cyo=!$v##G!JBF%e)~BsafKsujS#%KM&e{T z@`#SyyYJmvMm$pn7A4#YL7S?jLIB8RfhmZ ztt}j`wi+^*D8ZXOp5DPyg*phY!n6t58|olm1mD0pi>@R-| z$B8+NEMKRbZTu`gxt2XT6FdjT4+q3!VHj5{ z0Q32VsI|Qx;vXGllC@=Y*zMIk)TrbeG7RJgF7r;=?+W<^= zRAqVP@ki&QWMvu6vlA-2!dO}25EzDa0f6azBh+n{XSY8(Zzn6u z=$qZWIM5XSK|?)Y@-+EpvpZ%wj`X}-@C`EHe1#Nrpp2{Utx`t%eCZjMQbs*swt~#4 zWEr_M=Nvs?`a0$H$-;BEh2}H{O@jqcMq(Ze!wLdgxkYV4p`kT!E;t;*3L3s8|J}!}0;H5s-uiY-0ldtL;_tlASA6x1q$}mL>~(u|yyr;?_eOJc zxO(`@ZMm&C_Q3B5z%Y5j`!KCE*}v66_^^k&_ng9<_D_RvfpOgtKZK>c+YB#o?T%m2 z5jjj~qb(ckPRKRPq{OLJyl&P>p@xH6N+44uU-TxGT7_0?VeF6i91KC*08HqMXLuW= zS*cwUHYU0rlaP~Li&wfnWxWKZq~etTe!B{eZZLLDjKa|0P{5cT{5|YOxHxX8pC|i$ zTy&QH>J8q%v&hYyQrH{L`mvsPIm3nWf`%|*3{1;QcBwiD6Rm@6vN{OUtb=TZItbTT z2U)o~2(ztY_VAYYiw^Y=Zm=G*dFmkCJY1h4>iQaf02797mN4`+_wtIuoMVll<4kds z5_-YX%v2{%G8E=^b%L$jYubfQ%G!2s$F8r#ut5=O-pBVQ=9L@-{~U(jm6{ielO2KK z54(N>WZWlIs*eBhqLJ}m!dQGF^5A8OjohxU7BuAx3y;Zc4|OIC9T6(sw(UdNE&mR> zNmRQb;aKc+gyaiebgzu+rD2=ae&2F`S8GfDl9_gG= z8xCEsWH~U5iqM{;Y7%33ri4cb9bgQP#L2Ew2cg_L$mXbnu)#XWD%C+?6*QGMRKCjX zOY~P;f}(^NqXPK3GcU$5Sy1v}zC(sFAqee6v==cvkyXi7HJM3g01exX*F%PUkt<69 zGXe|r`$|xZVg1iau->+)Qi3D*xGOt^8phZI)1ve&E8{^K>|0Yuu&8Uw8>wSzLgS=- zuh~fp;PNX#2Qya3yMJn3bWsagUCe6*W@kzW?pddV3SvF5&EFBy{NPVE_5yC|J%+zK?gy1b88ZuHsqJ%_9 z%R~r|d?T49S3*h&n_%2{O6_VfrgcL1JrTfthH_gNWCD}=&Q*>%4FU$T;E_;v_!jU7 zHGuFCtQN0!t}w?=!GnWbX3r_@FHeZ+X6hm18_sCxe_h7+VQ0r0g6B)ap@c$Mnwfcd zoJ0rYdo|q@h|^)dUhpzQ2=l6n#%zq^4JI(GAi@W*)O`v+LmclI6Nhgl8s}R?(o#Ax zrt1SZy}%IL3lLG7+#otZp!sq+rqv|8X9ngw=%o3?uzfdYx=*#oC;b()31~l4azqHT zVB7(Ti&eIRFl`|85HXp=C)(4EF})ErU=rr<8=6%iCPN)gf|e4=uJ8P9(LR3T1oT4X zFMr2-wP7d^VFiqbjx3T_MUN1Ue}JdZ>|uSthl^Y`0&te?{oZxENl+_q1I@?zc+in0mDWdwLdheri5~ct*UhFaPls=C{GnRLbwg4ry;VX>L5I99m(-Gr0%ZljIVh}C&5@}B3q*; zF9~JMA|-Ek5!~}6WB}n77+&`klbCx{Pj=G=!pZKa68u^Tu6FwHcdE18K0QKp+^f$B z;b%-{6jZDD;`Gq^K;{%&dR+rU&jh^vzk4V3o~MHkgdv7d29p?)(W)nB{w5N>BjvEW82;)7QSBe%OUdyweK;gx0P|rO72zJC zrGzI`CA^?2VYjM;dMs*aC^Ot8YJ|Y1x(Sf2QU`&p)j_sP9fYr~gY0{C5b8bXHu}K^0HEPW<4G=X#(5`tkO~ziZu@N3#!xMeOR*b(wd0D~ zCCgLCaXDGB0jwC;1m3nUF8}7%9XdmKnaDVn$bZRrjxntu6~j`lgQRLACV!_oog&S< zW<^JMe=dXvVQ%5uh5THdAzR{-Gea%h;&Va`Dn_0Ydeb?x#uFX8u7zQ1B&>(&QH$&a zbr4>*4zgufVQ4|P7v@&>z$uEUieT7QngE(9CA5ceavgvj6Wl9?+}D#ArPqaLqImI( zw7_{VoW(hiok|J2U_7%Cbr^{wn>*&wqIxAv^54zJ9oajSTfgdH?p-Zcma$pLe;o`5 z1i}KC{5B6qxj}VrX2y900?mId4)3if*%GN>8R0gezE`tPMw6M+%y*5j8^ZffM5Vl5 z4*~N&)B{yRPe8)XSmGlDO~iu<(J z2l#G+dvoVK2yQ#~K(B+uJp2>K!m!5>E)}_LoLF7PiT7_kUzA&dCjSr2G%wZ|iJQal zsgS_=$uWW?s=7B^<8*^S^Q{15j)9OTqVN1X5yJFTF<>anN)>Au=WQr&Kc4ck%Q~^; zEAi77m?PFCp({++B-sFU5QbU@*;sWD##sm1W$GYYZXINk)j_zzI<8n1!>4NX5N28r z*){4Q%(4!$Yt=!RV;yAItAlWdb=ayJPsdz6v2MEg85LkOHUxLU$9N6l1OM-qr0oA* zNo1en;XPIt6AsFx2N8~k;m{O|lbj5bGgjMzIJbg6vOHy629~+x%gr%D+aM&Unt`5Ql)>70tW?9Fq zm4mVAs)sPgddTLggK(pDklmyX!hGu>Tc{4ga(6*#C|7;~i&H#7JQ0Epm zkT9VQOb^#&r>cW+hINp=tq#JT6?)=jqL&|Kq6k3~aXTT?_(&q2zfu%q{HrjWc((&~ zC?y<*amL>Rk4Gxr1U0*~EkVq>A425B-qH)$iShqsY?yFW87P=#!EWnRQb}B4#yZ#L~ zGe%AiHO^X&Yq$^O!Y)kMw_1Ohit-+jBLv9!Af4SI@Ddib!?+sW0`7(R#?1R)4?s%I zh#SBKWj(Pe&yejqOt=QdqenPSR;~`hZ0jJKqYeU(OWMMgJwSbqn^_iW+`Sj*f0>_m zs*CtJr-M7Ldixqn=Hm{{-dP1Xv3b~J?uB6=Bm5nvA9KhaQU~D)>##!v@tUBu7vwuW z>McWKZb94M=mVETzuSpE)b+b5{vZQBRiOJjVc7fqV{e11b{mfWVZ_}4XThqh1mo$x zNijtZLXXpygx0^(Qgyiz*!Li|)*odP9z-|-OE;6YnK;=m>L65?JaqWS+3aB);b0g( zq5H!;m*r%A4Ss{nDomL72)|~`ss97yNm%ApKM^{w2u?O88%udGY}1VZXDdAyFk0zY zz&NFZ%iJ@Dg&MV*3QEJZ24NNqcV*r%ak9UOV<=&+TRtq5du|W({~s7CM&Kw@i;AyT z61wl|h4Y<)n{Od)NoeA}$L^^f(wldL>WO@jI9Z;AM+i;aCc{IynOFWwlH3uuLVZw@ zLvsZi1zmNz>va zi)CTPw3HQF0&xHgX$TWw_~lLSkH^r@Nl=DMfW3|HnAQ-+i)hEh2RgEwL+cIWiYMM9 zG4?>3VX`3ZtK|fNf<^%s4Ej2O7%`rBZO^A3Gc!JW{Pjf z4??M%+Osjt^%@Lm*$e+UhNm)?2Vwj+*$XnG;Qllf{YQni2F^VN@|hBCYsbNy4ymii;qErV4wVs=>v3!ONtprR ziYIwIZP=P}y2ueiLl}n@iIX)}2LbWeXB+fzxKOM*p$9Brrqv*x1LJFR(EQjq7pA~c z4q30Dx86_6-D&J={JrEE1@+wG8MupDK87c~vG}QFJg?Be-8(uOm$8FfI7lr=PI`b8rrFFW59GDi9>^OB0PS_^jZ#H3k84QCV41?hm@n|egb^-$3 z%>xVbT6e_K{~&E~U&LPv!)Kt`fV-7$1-z$}h3CIC!_-~ekr#(@%WeRr`77gWhd}dh z&dvb{w3NsnAkb38e9R$#8*lamd5SE-rF_WN^)42-g}ZD^!NqRo%fU={{$KIKm6;8o zjeHBWj$an4_rND(Lm62|Ucw#vmzg_EsQZd;B$OWzIYQV1(~X4eWpxk`&jWiVzDpvQ-0sqNvI1iM%d$(C6@k-yH{|h(1qieh@q7rhlxkfDf#wtOARmNs z&41<`aGGxb#^Hn#bJKN&|2v#aVqQt{0K@|?yUS)2$%8eG8-I;ya;mY%p`k2O_xqAIHfI4ye;hvY`%%Vlfr4GW6TiqR#Lq)NH;QyC8@P_1-C6M@bnO(jM<2kGy2`9traU#b?hmJ92 z!$~u2Il{eXN+>sD4Ct7xvZY~1P9HMvMO@^=P$)tTxTR1eg)r!ZW-u)j*$L_(lvoE@ z4|NdwCki#;|6T{)kZhqq*xfnkp0yx0=&wWaV$vjH+KaLm#bzU#=D*YA+y{Y{BEAlR zma=QrLvC7%$f_g?_wY{(k@K+8m6m}>|1pZ4nNOJgWQ<&Z!CNXWBrJXLw+xua&lI+ zx8O&WV7>vQn;)LT^JOCXCiN?#NvB9lP73c3aSYnhd_{E(d#aMum?Qk|YHdm+#}(tWfbMJMiwb>Uk-tq^(RW&?jT75}nf*&=M_{G2G|BlA10fxa2$JE`&u2zTV-g7jE5I3~kbS0WRknqEH2%=@^?UQ%O??TYy`Lg`N9X}Fa8n_SK%uPU7n zv0Z%loOhh65o?C!a@khGgvBsjTV$2$AZ)P?vKQ1rc-1<{UQ-9*b?YE|Lmh-Y)`7Lv z_|;%N8N^Kz5FvPjh{VaXWyIeyV)qqn2KW!Jkw`S-VS6(;2g!HO<)O}%#|E-L!nRnWj)HMO9gTe+t&$Nl-5(EQfxpTQL< z3|$Zo!*u158RTQ%fc?+PMd6?wi6F=ske||st$^K1-v#Vd%F^(k)Yo|&BI8)cH-QXf zeHr}Gv+jaV@dKDacISUnnC_0eyP&!|asr<8 z?l&2iiN9Qi2bPK^ghF_M$t;ZYdL8M6Tfk{4o76)PXeq<51A&$jc@hL#ir5tb%_ll$ zbS3V;R7!aUPXed;0*v!F2(%P&DFj-I_&5Ywins;B7WeR9L&wEF0i~t*4@01(hyyW7 znqM?=9QsyOP_)N093AC$H*VFz`B35*NjzQxhY`+$al6eTiL3q?U{!_d%*Kn0sy5w> z=D6)l*eV&@#);Z>^3i1DipUk88~Y0U8yJ2JnQ(^mGK9cR)6A9A;w0Cp?rogB&&ZY< zJ~SC&k1c8DE%>#WeGwQRfM+j9VBAHHtPA5Ni=_75vPovM4UMxHO=!L?n1|1uPvh!N zRzhR|U?|Kjza*41B0x`LEV3UW-BFRIERcr9*&^X(c)&R@4D@=y zyo5}=K=OtOvtS%Q@miG$w3P9q>n3Qq42F-P4+7drwEakIoPH-kogx9gVt=_2*L*PF z23yT=oOL#Ff0H{GRvergdd|su6jxJE=@k`W$Mf>BGDf~#WdbkFaEa10xo*tgk>xQ>=&i7H zvlPN3BHGiS^J}6>XC%#cL~?w!Me`NNI13O(a}0hFDDe-^F+y1nOSv|HH{D!> z(p_7%%D*C-bc(c;?#4l&`HrRma}9)RH_GQ3+$dO!yQeSct=azojwt;J&~&?GYYFJ6 z)ElvWOR^F%Y|V8u%!VuY>BZLXMJ@4>FM0D76s>Fl|OC)CUH23{+ zxS=uu&RLRc5Mc`pJH!t2GRQ8~3AtY40+24=Lb97~kcPv26=gL#qA8VTiO8 z-%zTG6vG=NYf zbeAwgsH5)axT){)O@Fdr~Ian4_cl zwo=Eu1>wD?B%sUp;57euoB)PRORa?Iftwe76f95e?#Ob0W$xlDn@y@$fX44#{(PoD8Lyq zVc16b>=^`bHs@m~M7F>tNEnuoIa==@TUL{hfrLazNYEZYgm7Sk zJ0c#+YdsfR_zKw>!-SnMT{mRA)Ir!SU;O1o7_?R7vTXoHVbf;Bn@YVtjk6j8E#-)X zmvnD&N`}H96TaKxwtXCL0=W--oycVsfQ?F%*}6cWIs8M{#6M>s1X{|$=PC%al>Kn* z^G*pZMZ6sX%`wA5UQS{V+VP^7wFR8^yyJG;RMgO2^+X8gp&7W(Fn<@m0Ne3cQQfQ~ zxX9@In#_{W^)uawa9upA3}NdCnC7~MlcB7~lY^^`&RL6M_`*T3Tz>-a-f@E1icCH$h4 zkjQP1mK=Ty=+)3CUbpdLoPPjU;BUaZKQrvRWNKj(E(Nm|VG6g)G{S_+!}5uF zB;~ls5ke)b>Xx|z+C~ZSm1=n+xXKy39P%w1OIV=2WQ_rzq%vX3VIH^&bYSfAb@dV6 zNHpmOUZyf(s5EI9TZXq=tdtjBl&uA9R=NeSOX)uWA1F<1nuez&W8Q_h7nX*zc%0;8 zi5f!q#M8Yd#w?%OvFl2hZw=$Ndko5*Rn;*NCRY`^Lg-ahEP&9Ws(5$`Htnk7eu!Ve zQo7$gB^`gAKSe&tw_ZOP_d{TaARK||VU8?En-cP-NU>vEAn$_l6bkqU3}1qqH-Y<9 z{t$3TDRVfIqpSuXTd7wa?v!lzPZ)PN;vTk0y*e&OtDB`|_-2lLK1RL^57kYCc8%(U zav5N=SSB)DC|SaUa+pqt>=tzpZnX}wrRpI3-8#q~R0rWv>mYkf9fY;kpv3&CSUcIp)6E5v=wgwh1TRt4mniB_6!j&FCKB=TI%rHD z+Fv56N|U1~m44m%kKj+=ymDbv@CpRV?Dt8tF!QZe>a9Z_G|z<86UKE&>?I-gl<1h2 zSUqRTn(|$oHipm)hWj>KG)`@j70p$pNCNTRx(&j+_5MVcm+t6(J`*s~G}L&{)Dr>nafYx|6kI zB;GU!Lk>ctQSuI)R+QfnIYMYOO5fPyKllC&J$IDbe|0FQhC@Hh&7515lerK39j%tPbV2r23<%QNoE==$7jLLxv1!t=;XbLk%*EK?lGvF2W$@$j;~t+W!i@=TLM- zVIOz?s|BaJ53LEEQEefHv()W}p4{^)LbZ4~5a>Mu?>C2KnDD~%$innP;74S+OqR)u z(9ZK83x1p|4-!B5c|Lz%@S(D-?a3$k{8Pba>asgvb?6vxBr)`}&Fgo_!gTWOuv#Xq zVfUB1EKG;S<*#6wo+hrQ=?l}Teh1^r#TKSdfx>Zz(a+JbR0qJ4u|w0bIMr>wF4QVk zfp*WqGR%O5>CuJhd_Re=?Gb6V>*=bMre7&ZmM zxiCG%k(H{0Fz|f7oGUMQ5_o$UcTnP)FdSqxTHaX2mkFHWW^M}NyVK!?rAzkVvjQ#w z@D=%oq2t^g+i=&N_th&#ZVYt^^nZ6W&VexW?+wzJT@d~$qP^;I%v=cZs*%PF!T@Hg zOqk;y+8k=!{sO3%z&K3eIN@#M#3e9XBoLx#!F$uhIc}GyLwPNyKwcve5yE;HlMp*g zHxUUQ&3BtMh+PBuM_7g#C@Z}#LXLrX%k9A1`!;q`T#zU~TurXF?Zdv6nm@3!&kaauyy6uUQX4P{k)vL*CrddA2L@M5+L>}SO-=r&sxe-yei%zck4EDuMza#)*Sa52g;X*6JXfU>#&9 zse{maoV<=d#vc9y!{FO7VIU?HQ zG@kcp1m#?JXszU^)-7;p!lqZyjXUsDm)eI>@e72VvQz zy4KmlSt3UWUJsEt*e1y;uR<$xe zpaJsSQ&^Z?TpRx85?)4VDRjt*fOe`Tw~6B+oLGT5UYg#0E>b)r-G>QVU^)-7?dl-x zv<|Xe>L47tM7HhLOmv6H5yJg29WL3U>L4H&YY=LbR4#Q^b&X0;ZSZ@@_S+Ol>!Mzk5jQX3DKE^ z=KowDxD~>!m+*qDQTJ_Qu_7fPOsE0VqLS5D2O-xw$Qr1F@V84`{Dw!-P$qIjju5;= zkvLgBbr8HnkvLgI9fVOZoiEu1>L8#8u7=nf=piU_*>QjtO1&a;H5@`jp~yoR(MqWo z0d$UqL>G>aZ2;FP^&%XHeK3pf-lQjL)fw;+OsY$AK%$2b*idv5&63<*18+inb1bVK zbaC1|!(H_go~En39w$uft3~eo9k}M(-YA$;QS?oyRiI=j;upg(RKjgAT{C3&s)KO9 zb&x%v4g&rF;(NTBiFqy)HA0vU(=wBltAp^;SSj<_7l5x8xojigS*5l_AdFrs@*qZR zQR+qDUO9w~?rYzN^13nEpXr<_byQv&$6?!YxBPG@uPf;lFsUvH$Bu2|+Np!k!8*t~s)I0CE6O}S!+0D7)J%j&;$)c;9w7`) zRP<{Ebr-p;Hz2IkP85XEXNo+C5mBXHgfTrK^wx?p*`Mj0DXUhLZ8N2!T}U$!B9$ZI z*ikue3ZgRyEv2I0qUE=4lOwp=mIGOek z)gC-YvaSzE7aV@_#TMdS563@XybuJ$-V#3K9l*a;P9`ztZAf%s7yAgHo!UE?{8alN z$lt^Gd5l;h1NPk%F{UNtB`}nd!1-#W(A+(;nfK+6ht>_oEW~SJ82TIl!+o>RPtsnz ztV%YR3*%D-HzZn+Cns`BLiN29f_W&jaiQ0(_GRa1%sKGRyI3xl@V7g2@v(6;3=<(d z1Jj9+ZBYl|g$sFY+o%;9*MT9N&;+L8WKGpUIPPNi%gv#@(P`iz7)L{77}|Q#l#^33 zCKv98FnrT%dN%9XJkEuDSWPp@S>%Z1#Rt-vJndp$)i>(C=OUaJVMtE+2Brfe`%WE% zAFPAyh&l*AU&Ma6Fl_C_!gH%-RYHAR0|8LwL%1$Tq5ju=ygr_rTGc@VBH589N!i7UY(zBKjqeLju9Ci&nUc{ku2SN~Fvpx*HU>COxbK6hF=0p} zRVJJ-)IRCWgl~+;O>G#~DB+NsRkJWRa}DTgsuFgpdK>5ysuI?yIt6s0s)WU&x|Qn+ zYLxWA@KhPnfma*l8@$RU2VYXX7z96IfAqa&s zuP~t*O#2{fp$mWNx9fY=*$vSKo0M8e>j7>EnrJBvqRTmjXn9xnqvow*!*v&w`@x4dRyqq_I1LRhYWS>wPbsZ5xcka?eC zjLL*d#<^|V77lescEg>>`BxVllhtp6DH#F7S|*H|;NDXmt9c@RzW@f6FmIxs%O6C< z8Vx3Ff@wv`wyA?~XoCJ4;ykpyP16wWfoVM1Q|cgWu@15q)j{}TVlvTdB1Z^sz?di! zC)=YA!anODJD?5%67lLHs}A@zB8Lg(l0R62F^|{b6Q;p*oMhLigRsCl$Xs<0?w`N{ z<+i~Cl^0;~I`KpZUK2dGho$?}LAc+YU#GB9jN!9HjS{@@s4qM!;c#+H$@_HQ{M$f%3IqPSznr zR@V{|YU;Le;mpfT$(JxBA$$$f8j}5>4nkm(=kWT$gXam|_tA{!Qpz{ch0zO6;ysn@ zg2m8wz;G*u@P^Pb!uyxYc@;+eQ&n#u#P!(0cgwyWCcF*P zX?Q`7c@Ek(2}wBy96~V$NW$;{;viVnre7h3dXQ}!?YW+)#@OuwT|S_A4=%HE7XAVH;8oj|IQ?-$`cu02E1lvpv2FU_~JN` zZG8z5>l}h~jBHVZvH&?sy)49Wh`3T3h6%IvP#dE>RpbbPbLHfG-+LI0!8tq`A91Fz z+i*Uh2qv2~NgLJuon49W8(_FVy%DfjsXt;Rq-Q6a7(<=|f8pqmmmuv?`5nN%)QG_U zW?aR{(OvWO0Gu^>u#C|^u)DFltb}1)s{mgq^+$XQsir2W1*oIci@?`2xYcj2;-9)? zmy7_9!MLFjL(}< zz;}Jj+~XiO6*-#h)n3XlVl*Pg!my7J*Z_~h)S*lNRiEA!?*!2to@PvS2rAk~BCn!BP)M_&N(A%OoUa9SnhdB@DauG(dbR zzs}B%Ql2Do8G#Xa_fZ{&tX0_?FF&ViOFgc{;eJ3ud~4@f2zVb#PGQdRr2i6s$}x2> zr2VjJX1c*TApPEbF9+W?)AKzH`-Ru1F|{z0nKB!%5b#kvTg2h1ku5|VmMV@G@mF*D zMsDhx^$4stO^Qn>o+cM;S(LxKl5&Iq8P^?o7j1?7gQOl-6Y_}?G3<0en&j|}LdWw4 zf@{E?ftmB=18mjVx6Gz1e9Po(-K++I1cG>IDx6KGMS~mQbJ=G{%SFu zSOjyOyYWLNY>J=YLHrN`n{vA(vORu^DpQ8T7L4)zV^i&F1Vc4qgf9T}SU7%fCe@Nt zi81y$7>`%}EYy89WC$MJt{TB!Flm-bBYbP{d5GV@{3ktQJT-AT!*vAzas8gCt6ByA z|0bMfK7*wWEvfqc=G4X}(rS_~&^S}JVBfInLuhEleA`{K|3ll`z}Zx;;lt0`Gsf3o zhM6&#nZ1QDNkphrLlRN3_s|$4>L@BjMTe+ON%B!dmZUb)$0?N}R4R28byO;SITdxB zKF-lO`c_AIuj{_oTKic$o&Wj$-}fEA+jZ~jzMuQKpJzSm>sepd;tm-Ic6fvnrs@GX z=}&}C5IRlucbC+)!0#~`7e4Osi4cH}d-9W&K*&+zqVCZDbg_h(GOIh58$Xmzc7!FasB zaX9Gp5H1K}D{%=*@^(l)Os3-~&yhG2f+a$j1Htw-nW8dJ_-eumQG?|ZF~6GdNKwm@k_m#JL?T74ks1ho5{VSGm>LLv5{VSGgc=Bb5s?hh|QEPJ@PtKd4$4I>)sF*Mg!YQuHfwy@29N= zG0b`h4u=SB+}BE@r8TEO{ePRL-?DUdr?G9U2^AYKTz4Z6&lbY?P7fPNa1#8C{ z*GBvn5Nk>EaGk!4!Zn4M9dfmqfG7BM7xH3+*ZtE5$L5xg`-dv7ePyCNDbDCrJ| zOC;0~!nKfyxh9Xe!QB~+7FE(?I0OwQjDo-;_X6MsrPIxk_)_a66!nMKvbIy5$hVcy)}@MO5^ZRj6BtSu^z`9RDOGUx-xTnJ(|B)p*> z2j)s~4OR!okfduUD9#N%Uq(Qgq~{Z)Zx;+Imi>FE=rss)Jp|838sbfm(1I~0hC{6W za+nn-41nmykE4NqjGEsn(@PGzI&dTVt!z-^ga%2!Ftv*z*l!TVLfkjvrA6g``JYS3 zNyMnv;E&6A2sDJiU^wcYhJCF6_clB_ibv29+ysz*7s4JSwi6d?_%U3Yq)d{zd*k?m zX7PW!B8I zq`)lbt9%2MPa(*Nu=yr7XHo&N#VkKNYNtb_3MyyJ(j#KF=M}hO+eq+BBvO6}7(D+k zpNf^aJ-5c{C(&~)P;L-}JxA1zs26ck)Yf?kSksYBHYRsSEv>oo=Hh8$3N!RvD5ZN$mW5q#Cmm44~ zN_-k(xo|u^3+g@Tvh&iNWL(s7>%JL~TAT)HZn*qPD+YEhj~-Ir3&S;@J=^rcuN(qF0Xt zEK!>9ys}#X|5BEaa|6p&Uk_-Ux%`b`YqGuiiH&d6lSyOVg5?-6sFUemtt#_js-zZdI*5w7Sp_M-QtzlU9G)E=TU$vj?3Zo>u+jPRxa`+v(OifwLb{QL9oo?10D3A23LMI5X zyH_3?Exa`CTzMPV+adUx%#2aN0@wFfjs(wO918P+^v%H?AydpzDZiXG@5&W`MMCu* zI5yg>E!nvcBu8MZh`Fi`afi}`9d4(N(Wd1GvEQhzETI!bx3tu{sDUtCnpj*z|CT~0 z2)=(JMQwl@2*V-a#o(B1aQP5C=s3BB|K>|H!!ay;%FS+Gr)ZH|F)~``^nR#j2n1~) z%z|iI)aIyx@NQtBwp$H^A7;rsm0NvWG%q;-L={BV5h@cP2t5ffS=34bV}tdp5N}qp zMfsNi+eNJ;utIqI^@=xZ{!V!g6YsCBVVxSik^vtSm*5x@;}66|_~;7Se>9C6yD}Xv z@QoPSpHyFW#qH5N-n%ov&6^lKt9&QA@h1qWavw1_p3pM?qk5HO$ z5kz~L+H5gY5$1>*C(MVa54GFWK)5|HP+L5k*DeanS;JHaj{gV@rlW!y9bq6WnJrVL z$;+VAgwrYwBdXt##LEMZc-kYqT04J$onoEkuvj}#9fgh)&VXn$Xp}#v{m+1A8#%80_yEO#eM>u+;sr@Z~9OIqSmrkRI=D$&R*iV-sU|GU%Up;JDFA(HZ%hkl_}|GEUgBQQizw zPWoA)6NDWQU4)tk|Mz%z<DSyIT z+(iUI3kdhjl@<&jy+G(n!aWeSAbp3AF?3%pF6r$G2FiLgY@E`BD>Ps}>6amR#*YA6 zW}itHi}w)16{`B<%`qFrm&JzqB<6rXz6!DS^E7@6s;dO38WqH{4oFG^G8oV@-0R$e zb0G-2fWU>vsnc|Q#?a*yaY+z77wgF0cBxbsX<$A}c9)Vv2sLxu>8E4*t^hjSxE2#H zgW&M+3cwUq?*Tlh>KZ_iwD&whGf@+SQ}x0mhh>vgcef!5CUtrmJzqUeqg_eUV_0snu#8F%bB>9Q6k0( zo=>oRjA@L(JtcT(l%?|-k&+O#TQMoZUfO6HB zaMvvxN1PE&WtAVg8;RUQ_c&n$M7JW;u22JE-aYaJeoN99LU0(jHHyPH>SG{S0EDsk zxK|E}7PTJ>-71~LPYvrQ8ZmT9-s3(#KH9wfIApN~f-DGsfv7vR57j{U+1=AW+O#Fv zoe)0>>hD011mWGgHHmkjTZO;E&&(v~^3~mv1on>w$(rR@`yoh#uo;WodI4{-vy7OrP6u zH5Y;^2&*Al1+|CNKzKed_>r*xj$}AJa|9>4Jad~YnTxkTHw&aPLJXpnQ9D`D(hoE7EH4v?f+7oIZYzqu_T^UY)K7tcn{(P%6Y|M7( zbsu|Tqj zkzNJyv!MO}1X&OsbSDgoHf{GHRIBjw_?ejmU7nX^T)rRqbhuq|Ae;?RZ))eOfiUfM z?FrIxh@S)X^B~B9P<6ZZL=|+a^mzQtOoA@sZ`YpKfrN6A33`HX3`E_j^;83)+FKr^ zJ3;&`sGk5q7KCoz^5_QLDt$J7W@bT`vvqmM@!uUgOFO$;zKb<;r*tpP-FV92=pWTTJja8-E;e?@QZ02)B6qgHXZg5zh_ilJtFuT3v8O z22=EM3wIb|1F5YR&cK$ZGDvj2MINFOw^rH2#qV+NE#?jIIZgyv}eK%`}e#FII2%;CFpN4RM z9UU#cFtcn*%T^HAcx8!R*$S)r3cqih$YFTUV$TNptX>g2(5EzK#KEO_FAWmJXdw)P z=%AoBM-7Defq~i*H4yF$41V2NhGl7UzkVrN!kxQ3=j3)OC_CPL?c(U)-31+5W+y9A zHL4{{glM(Y7OH`;I51FKsRqK+fq~lVY9PEB7^r=$2Eq@4K@)WkkH@S1naR;f@k$W< zxQP_C&1xY0u#__;#pP3>|1bXEiGOps;euuU|7p~Bh@80+vo`Xi=F99?UFw1v9&&AFb z^%6Qjv|ei6)Ib<`t5($|OrMCKk`9%A;!}`MpHm^IiU68bowpd9_+1cGMfeV)RZ;7` zNDPENkj!5D4_rE{i$9R@o=zcyr>wG1UOEq3R0wJy9E4~fY9~qKr?#EUplGqWasez!SM_@XXGYj&X_N0T!JTpan`w4&PwA16XZZG2ZH1XC251#A|C%` zI29ks30(0!U3v^s13^r}G>B$LZH5{MOXqQaU3hXNgP#c-I^ys~b_9PchJ@P}F)XuK zE9{Q;xo95*RT4~kh(pVffgLB*7j-xxf2r*I%Cq6$M~f0JhG<>XmaBnqkE=%)q%VW` z`*rFQAlR=Hu5{fAmq!cQC81O7+d0vt(=a*~K#(Zm_S^LZ61(oexyTZs30)zY1hv!E zK)5h4PkBGTc-5*p9pr5I0gG~e7Cu6z=qDC>6{ejD#D^AI)Zv2*~t*}65&pWb_cb`)j)Xj z4nD+Nc$7)u$9)h#Q|b>vkSXEeJ9x-fcnWsc596m5VLg5ZV~szyLbNWwNfE;`Tkp`+ zmM_LxDg>z!eu1bvwL&<;KsdoqEek*DLj2UIH-sQHLL*JB+-Za#R{3`LnVAP&+G!qW z%7@tUlxQY|lY&gBU8@Gdb&#Nm{IP7Y*J~B{(HG*UMtuMTsSyS)mR{?LUK@y?|1IQv z*fXFJz-4`Zc!r(!uk3#&ssIP+{FT(mol2^I2 z9zU$oui%~A6yl^Bd2N$=y%kE@C`(ZQp-z8RfK_%aAx>U3^;sIE_AS^Y;j8W9(b?jDQ>;H zFh@52A$+X%z=9|~-TYixQyd=@>gNLw%!n>=4}2T_1FsJ>-8gM(^oP1xztpPdzOWNt zqr(hwp}XP_W%V~cd{cB)EoZrV&fI8!z|y(V6P4bflB@Kwf4H7crW84=-XLOH~EeKxl5w8HEc7t z;!Vs5V;(qHUu1{N8qM4t_#QOd)F5kiVLhC>6v>4M%x~woYj4KIj+2v-IMYB#HaaDQN+_Nf{O`vL>rYNDGD$2$lj%&| zz58Oq zsR@6T84YI*@K@#?6YALQI;LLBU$_a9z=m)VH5g7bcLjLz8VPE1_o-I z)IiuA7^r=y2Er$Sfm#c!hNy$k9-?)$e=vzNBef7Z1{S|Lcy$sAtBW;)&I(BDD#*Zq zv_{go0cnj&KMTjWZ90?{p5EtPT)TrHLBcYKCP?kw)nXug08shB>{nOIj^__18sxgS`oqbACjVWl=u%J9E7+PPHEX6 zj5!k~*2>{PWSvNau-l`Fi~yPtMQM5ykAr|F94~4$p{uez06(mjTmP0kUY3JZpg1`Q z0Y*!#8Um}SWjbGDT1#X9s20MlX$#dw5Z-7+PwMPruOQXc5L_uIJe0OjeI1g6+r3%v z^?NaL-UCq^YkUqF{$QKDP*e{<5Q@+k4amWRj`XBH4&r%Iy-LiQ6ZLh$9WwJ#yg4@RT8eehc7mAH=^g7uY93DMP( z+E6tRsscm0PUZD|Mq99x+%EgfIN>#j#-SF~IE15vIMj|;1L35Vx^HBlZbByrCqWn} zeKP7ee}+pB@b<}lf2xsM40!n!k>3s zP|mv3wg99T*AM1MFdDG-ABhaMo9gMTl);D#{#)+H?bHzDPWTr@dyiUuY@S?`?2)OGYY)3)+Y9_ z#ZMzW4}!xIf(t>(Y~m_NLmmJe@lcNi5#-$a@!%XcMD?_}gmw_^X=>foKo}Ajs9mN8 z!koZB?XPMed~}~Smo;n@x{~k_gf*n^Ux^r&yaOW5O|FDy6?o}41&pB!`HbUT(hmq- zMWDxjIo_rBW8yuGKyM!J9v$?VKdy+KaGTwF2$nu!!?pSu6w>DiT}c2fpVK2aqbY^fKJgtB%m>G~Rl?1x{mrkMg1o0k5 zptpY#z*EiA;XPO3K^+J>f-nxE1BTjEH4yF$4AdS|1L5_+KDE&npv z`o{_DAvz+`*{t$-44O1K2INEty4fckGYQ0Wh%UoA=-U$M<~V_4ARO8;^}!WEf-`hK zmWhEq4wBKiq+3Di>-KT7;dw9#`i3`}UG3BJbU3RGxXBL5ZkJZX3AI+qR!@3izt9On zEyQN#*8bdV1pgxBx0&w%d(iFt2&U_(T5%4pl-rI+l70&kY6OXckZ>dHHb`K2gq8!I z!~wNO=&DZv->lSop(kSwVkQLMgw+u3eQFP>fv__rPk1Nkzd+~&VJQT&>(f$H{KAP8 zwG9v~7Q#+QxM%RTOK@}xopj1_rRDdkh^$V@jxkB6Tc!9_*~Hr+p^hT467u^UzqosnS1Kv+MK;gObK3u(U^(0(1H{YpUl zHIUX(q5l_SciUR_zH!2F-ciOtETQvsu@NSxWE+!D`U;^F1km#KmJwn48XZ%;NaGP6 zBwIze48q|>yaw|7BZ&p+;dY)<(l!6Px%gTr1g#((nyUvw`=NiMG~qj+#?8^+=zY?J z@8rJj5;r!ewAIEd)+^&4;@fmxB6`-GkARu9j2F%}tB~Ue0Xu^tV@}<@?(pL+eAWVhG zHAE`#;nzk>=(A3IDhba)B6v#)vLLbK96t$1UbBKsIWC`I7UkFS6522DK!CS8V02Gs6i90=gK#t zO)BuMMEtrPf-yr_F6t1%7G(+BAz5a!W7RiT^5Dzl3fxiKOB(RZ%I#E$Ti|gseBF(2 zY>IZyIkPn;9y`h$u(fy(74)bmFYJLDhom!&fKW0xmBgFeJkniocdXFek`-+>%rR$P zkMCGRuunZ8^Yva3$7u_;*AXmPfhF`nVwz?sx6{bz$@)zu985KH7knQ@dkSzVM;f)K zFTQUxVQRFE+p$*^pPGNMG{>!Y2(2Bp0+)Q&ZovuXGcE8br@OX9b2mP>CHkQSqvd0XnOScUAfQ z!m_6(Wl1H?MTj{Gg7t$i9a7s|tse~Lk6CIX%(iXm7BB+ETEns=?4@B6-vkHY)#Vkh zz$I2TmSUB6%m>&86bYH`E0oE*314}KptlHPZ<6&hNxDqv1mS2=1KQtR%zxk zb%uN=xbyMQj~tP4LWd`GJ#U8FYey6h%v@5^N57}Yr@l5Wc{w`IIei*77rBqf4wujv zqP;?`Kn;ZAz(B3J8VDti1VZrJ1XOb^;$pUGT1Cb`~y zA_F^4*axX?rsy`5KaRUW+CexTqUlnbc%v8ye}bri+8Q+wwg(1ke^CQrr*G(!qWZR4 z2=Drq6txf3K=?2)P}`#h!Y4O!Lt2(#OBM*7AS{K{FkuD@ zU|bXYBoirW8aUwv#?evnAO`L#-B3yJ{VOg1O7+)ns0?;#9LcK@RBOhI{G>Yhc4FT} zh)NqbbG{EUqAT4<6JLaYCTtaYlJV1|i+kl%yov1 |A{5buVd5J9V6I4CnNgYe?9 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 c(_F8 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 YYXTk%YMR_Glformat_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:16: warning: unused variable 'buf' [-Wunused-variable] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:161:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 161 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[4/8] Linking C static library esp-idf\main\libmain.a +[5/8] Generating ld/sections.ld +[6/8] Linking CXX executable i80_controller.elf +[7/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_10076 b/build/log/idf_py_stdout_output_10076 new file mode 100644 index 0000000..9ac4355 --- /dev/null +++ b/build/log/idf_py_stdout_output_10076 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36120 bytes. Smallest app partition is 0x100000 bytes. 0xc9ee0 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 221472 bytes to 115158... +Writing at 0x00010000... (12 %) +Writing at 0x0001cffa... (25 %) +Writing at 0x00022e08... (37 %) +Writing at 0x000291e2... (50 %) +Writing at 0x0002fa63... (62 %) +Writing at 0x0003977f... (75 %) +Writing at 0x0003f9df... (87 %) +Writing at 0x00045eae... (100 %) +Wrote 221472 bytes (115158 compressed) at 0x00010000 in 2.4 seconds (effective 726.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_10088 b/build/log/idf_py_stdout_output_10088 new file mode 100644 index 0000000..6c48a7f --- /dev/null +++ b/build/log/idf_py_stdout_output_10088 @@ -0,0 +1,57 @@ +[1/11] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:168:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 168 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[2/11] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[3/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +ccache E:\Espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\bin\xtensa-esp32s3-elf-gcc.exe -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DUNITY_INCLUDE_CONFIG_H -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_ringbuf/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/deprecated -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_pm/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/library -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/esp_crt_bundle/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/bootloader_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_partition/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_update/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spi_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/pthread/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_timer/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_trace/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_event/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/nvs_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/vfs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_netif/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/esp_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_wifi/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/unity/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/cmock/CMock/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/console -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/http_parser -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls/esp-tls-crypto -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/deprecated/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_eth/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hid/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/tcp_transport/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_client/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_server/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_https_ota/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protobuf-c/protobuf-c -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/common -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/security -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/transports -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_local_ctrl/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_psram/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include/port/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wear_levelling/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/sdmmc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/diskio -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/vfs -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ieee802154/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/json/cJSON -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mqtt/esp-mqtt/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/perfmon/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spiffs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/touch_element/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/usb/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wifi_provisioning/include -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\"v5.0.4-dirty\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -MD -MT esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -MF esp-idf\main\CMakeFiles\__idf_main.dir\i80_controller_example_main.c.obj.d -o esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -c E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c: In function 'app_main': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:205:13: error: expected ';' before 'gpio_set_level' + 205 | line = 5 + | ^ + | ; + 206 | gpio_set_level(HUB75_OE_PIN_NUM, 1); + | ~~~~~~~~~~~~~~ +ninja: build stopped: subcommand failed. diff --git a/build/log/idf_py_stdout_output_10100 b/build/log/idf_py_stdout_output_10100 new file mode 100644 index 0000000..96b6668 --- /dev/null +++ b/build/log/idf_py_stdout_output_10100 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_10108 b/build/log/idf_py_stdout_output_10108 new file mode 100644 index 0000000..e69de29 diff --git a/build/log/idf_py_stdout_output_10132 b/build/log/idf_py_stdout_output_10132 new file mode 100644 index 0000000..b725822 --- /dev/null +++ b/build/log/idf_py_stdout_output_10132 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb54h (117588) map +I (143) esp_image: segment 4: paddr=0003cb7c vaddr=40376acc size=0ad68h ( 44392) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375238 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 4f774b204e227818... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_10268 b/build/log/idf_py_stdout_output_10268 new file mode 100644 index 0000000..d4dc375 --- /dev/null +++ b/build/log/idf_py_stdout_output_10268 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb64h (117604) map +I (143) esp_image: segment 4: paddr=0003cb8c vaddr=40376acc size=0ad68h ( 44392) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375238 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 95bc09763f765c2c... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_10288 b/build/log/idf_py_stdout_output_10288 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_10288 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_10292 b/build/log/idf_py_stdout_output_10292 new file mode 100644 index 0000000..3168627 --- /dev/null +++ b/build/log/idf_py_stdout_output_10292 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36140 bytes. Smallest app partition is 0x100000 bytes. 0xc9ec0 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 221504 bytes to 115187... +Writing at 0x00010000... (12 %) +Writing at 0x0001cffa... (25 %) +Writing at 0x00022dfe... (37 %) +Writing at 0x000291c3... (50 %) +Writing at 0x0002fa61... (62 %) +Writing at 0x0003973f... (75 %) +Writing at 0x0003f9d2... (87 %) +Writing at 0x00045eab... (100 %) +Wrote 221504 bytes (115187 compressed) at 0x00010000 in 2.4 seconds (effective 727.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_10412 b/build/log/idf_py_stdout_output_10412 new file mode 100644 index 0000000..427dc10 --- /dev/null +++ b/build/log/idf_py_stdout_output_10412 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 227616 bytes to 118264... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002313b... (37 %) +Writing at 0x00029694... (50 %) +Writing at 0x0002f475... (62 %) +Writing at 0x00038daa... (75 %) +Writing at 0x00040126... (87 %) +Writing at 0x00045f57... (100 %) +Wrote 227616 bytes (118264 compressed) at 0x00010000 in 2.5 seconds (effective 719.4 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_10464 b/build/log/idf_py_stdout_output_10464 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_10464 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_10492 b/build/log/idf_py_stdout_output_10492 new file mode 100644 index 0000000..03ed080 --- /dev/null +++ b/build/log/idf_py_stdout_output_10492 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.3 kbit/s)... +Hash of data verified. +Compressed 227680 bytes to 118324... +Writing at 0x00010000... (12 %) +Writing at 0x0001d328... (25 %) +Writing at 0x00023132... (37 %) +Writing at 0x0002969e... (50 %) +Writing at 0x0002f469... (62 %) +Writing at 0x00038d98... (75 %) +Writing at 0x00040127... (87 %) +Writing at 0x00045f4c... (100 %) +Wrote 227680 bytes (118324 compressed) at 0x00010000 in 2.5 seconds (effective 723.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.0 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_10528 b/build/log/idf_py_stdout_output_10528 new file mode 100644 index 0000000..4474d73 --- /dev/null +++ b/build/log/idf_py_stdout_output_10528 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37b10 bytes. Smallest app partition is 0x100000 bytes. 0xc84f0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 228112 bytes to 118438... +Writing at 0x00010000... (12 %) +Writing at 0x0001d32e... (25 %) +Writing at 0x0002319f... (37 %) +Writing at 0x0002973e... (50 %) +Writing at 0x0002f527... (62 %) +Writing at 0x00038e3d... (75 %) +Writing at 0x00040247... (87 %) +Writing at 0x00046073... (100 %) +Wrote 228112 bytes (118438 compressed) at 0x00010000 in 2.5 seconds (effective 743.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_10560 b/build/log/idf_py_stdout_output_10560 new file mode 100644 index 0000000..82343ed --- /dev/null +++ b/build/log/idf_py_stdout_output_10560 @@ -0,0 +1,37 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:161:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 161 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_10588 b/build/log/idf_py_stdout_output_10588 new file mode 100644 index 0000000..a97b280 --- /dev/null +++ b/build/log/idf_py_stdout_output_10588 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.3 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118330... +Writing at 0x00010000... (12 %) +Writing at 0x0001d328... (25 %) +Writing at 0x00023130... (37 %) +Writing at 0x0002967f... (50 %) +Writing at 0x0002f46e... (62 %) +Writing at 0x00038d90... (75 %) +Writing at 0x0004011e... (87 %) +Writing at 0x00045f3f... (100 %) +Wrote 227664 bytes (118330 compressed) at 0x00010000 in 2.5 seconds (effective 737.7 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_10620 b/build/log/idf_py_stdout_output_10620 new file mode 100644 index 0000000..8973b82 --- /dev/null +++ b/build/log/idf_py_stdout_output_10620 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227616 bytes to 118263... +Writing at 0x00010000... (12 %) +Writing at 0x0001d346... (25 %) +Writing at 0x0002313f... (37 %) +Writing at 0x0002969d... (50 %) +Writing at 0x0002f47e... (62 %) +Writing at 0x00038da7... (75 %) +Writing at 0x0004012a... (87 %) +Writing at 0x00045f5c... (100 %) +Wrote 227616 bytes (118263 compressed) at 0x00010000 in 2.5 seconds (effective 732.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 527.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_10632 b/build/log/idf_py_stdout_output_10632 new file mode 100644 index 0000000..4e5e9c0 --- /dev/null +++ b/build/log/idf_py_stdout_output_10632 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.3 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118316... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312f... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f467... (62 %) +Writing at 0x00038d96... (75 %) +Writing at 0x00040123... (87 %) +Writing at 0x00045f4f... (100 %) +Wrote 227664 bytes (118316 compressed) at 0x00010000 in 2.5 seconds (effective 733.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_10672 b/build/log/idf_py_stdout_output_10672 new file mode 100644 index 0000000..d417735 --- /dev/null +++ b/build/log/idf_py_stdout_output_10672 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 21df39282881fc47... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_10676 b/build/log/idf_py_stdout_output_10676 new file mode 100644 index 0000000..cad229f --- /dev/null +++ b/build/log/idf_py_stdout_output_10676 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb38h (117560) map +I (143) esp_image: segment 4: paddr=0003cb60 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 84d6eb97bf57a072... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_10688 b/build/log/idf_py_stdout_output_10688 new file mode 100644 index 0000000..557955e --- /dev/null +++ b/build/log/idf_py_stdout_output_10688 @@ -0,0 +1,84 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bca8h (113832) map +I (142) esp_image: segment 4: paddr=0003bcd0 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: a2f9a6ba0c5e3d25... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display +I (22419) led matrix: 2 display +I (24439) led matrix: 3 display +I (26459) led matrix: 4 display +I (28479) led matrix: 5 display +I (30499) led matrix: 6 display +I (32519) led matrix: 7 display +I (34539) led matrix: 0 display diff --git a/build/log/idf_py_stdout_output_10752 b/build/log/idf_py_stdout_output_10752 new file mode 100644 index 0000000..71dbeeb --- /dev/null +++ b/build/log/idf_py_stdout_output_10752 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36140 bytes. Smallest app partition is 0x100000 bytes. 0xc9ec0 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 221504 bytes to 115183... +Writing at 0x00010000... (12 %) +Writing at 0x0001d037... (25 %) +Writing at 0x00022e00... (37 %) +Writing at 0x000291cf... (50 %) +Writing at 0x0002fa65... (62 %) +Writing at 0x00039744... (75 %) +Writing at 0x0003f9d8... (87 %) +Writing at 0x00045ead... (100 %) +Wrote 221504 bytes (115183 compressed) at 0x00010000 in 2.4 seconds (effective 726.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.8 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_10896 b/build/log/idf_py_stdout_output_10896 new file mode 100644 index 0000000..e3f170c --- /dev/null +++ b/build/log/idf_py_stdout_output_10896 @@ -0,0 +1,437 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ition Table: +SP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40048841 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: c6700517a78838c9... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (188) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (191) app_start: Starting scheduler on CPU1 +I (191) main_task: Started on CPU0 +I (201) main_task: Calling app_main() +I (201) led matrix: Initialize Intel 8080 bus +I (201) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) led matrix: led_matrix_oe_lat_ledc_init +E (201) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: c6700517a78838c9 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: c6700517a78838c9... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: c6700517a78838c9 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: c6700517a78838c9... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: c6700517a78838c9 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: c6700517a78838c9... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: c6700517a78838c9 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: c6700517a78838c9... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: c6700517a78838c9 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 diff --git a/build/log/idf_py_stdout_output_11140 b/build/log/idf_py_stdout_output_11140 new file mode 100644 index 0000000..79fb680 --- /dev/null +++ b/build/log/idf_py_stdout_output_11140 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 452.6 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118332... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f46c... (62 %) +Writing at 0x00038d8e... (75 %) +Writing at 0x0004011d... (87 %) +Writing at 0x00045f3d... (100 %) +Wrote 227664 bytes (118332 compressed) at 0x00010000 in 2.5 seconds (effective 737.6 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_11152 b/build/log/idf_py_stdout_output_11152 new file mode 100644 index 0000000..b051205 --- /dev/null +++ b/build/log/idf_py_stdout_output_11152 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb38h (117560) map +I (143) esp_image: segment 4: paddr=0003cb60 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 37cfbbe34c60e9a9... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_11176 b/build/log/idf_py_stdout_output_11176 new file mode 100644 index 0000000..c789731 --- /dev/null +++ b/build/log/idf_py_stdout_output_11176 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_11220 b/build/log/idf_py_stdout_output_11220 new file mode 100644 index 0000000..64a704a --- /dev/null +++ b/build/log/idf_py_stdout_output_11220 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360e0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f20 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_11320 b/build/log/idf_py_stdout_output_11320 new file mode 100644 index 0000000..96b6668 --- /dev/null +++ b/build/log/idf_py_stdout_output_11320 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_11352 b/build/log/idf_py_stdout_output_11352 new file mode 100644 index 0000000..f43e905 --- /dev/null +++ b/build/log/idf_py_stdout_output_11352 @@ -0,0 +1,36 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +ccache E:\Espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\bin\xtensa-esp32s3-elf-gcc.exe -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DUNITY_INCLUDE_CONFIG_H -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_ringbuf/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/deprecated -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_pm/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/library -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/esp_crt_bundle/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/bootloader_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_partition/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_update/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spi_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/pthread/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_timer/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_trace/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_event/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/nvs_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/vfs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_netif/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/esp_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_wifi/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/unity/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/cmock/CMock/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/console -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/http_parser -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls/esp-tls-crypto -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/deprecated/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_eth/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hid/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/tcp_transport/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_client/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_server/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_https_ota/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protobuf-c/protobuf-c -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/common -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/security -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/transports -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_local_ctrl/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_psram/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include/port/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wear_levelling/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/sdmmc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/diskio -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/vfs -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ieee802154/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/json/cJSON -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mqtt/esp-mqtt/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/perfmon/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spiffs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/touch_element/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/usb/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wifi_provisioning/include -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\"v5.0.4-dirty\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -MD -MT esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -MF esp-idf\main\CMakeFiles\__idf_main.dir\i80_controller_example_main.c.obj.d -o esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -c E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:186:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 186 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:134:23: note: previous declaration here + 134 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c: In function 'ledc_timer_ovf_isr': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:187:16: error: 'bus' undeclared (first use in this function) + 187 | int line = bus->cur_scan_line; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:187:16: note: each undeclared identifier is reported only once for each function it appears in +At top level: +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:198:13: warning: 'hub75_addr_task' defined but not used [-Wunused-function] + 198 | static void hub75_addr_task(void *arg) + | ^~~~~~~~~~~~~~~ +ninja: build stopped: subcommand failed. diff --git a/build/log/idf_py_stdout_output_11384 b/build/log/idf_py_stdout_output_11384 new file mode 100644 index 0000000..68fbf4e --- /dev/null +++ b/build/log/idf_py_stdout_output_11384 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb64h (117604) map +I (143) esp_image: segment 4: paddr=0003cb8c vaddr=40376acc size=0ad68h ( 44392) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375238 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 4989c978dd9fb5a6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_11424 b/build/log/idf_py_stdout_output_11424 new file mode 100644 index 0000000..97be596 --- /dev/null +++ b/build/log/idf_py_stdout_output_11424 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x42007715 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb34h (117556) map +I (143) esp_image: segment 4: paddr=0003cb5c vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 15f98ec48f523b53... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_11440 b/build/log/idf_py_stdout_output_11440 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_11440 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_11588 b/build/log/idf_py_stdout_output_11588 new file mode 100644 index 0000000..7a0b62e --- /dev/null +++ b/build/log/idf_py_stdout_output_11588 @@ -0,0 +1,86 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcb0h (113840) map +I (142) esp_image: segment 4: paddr=0003bcd8 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: c61697353edbbaa0... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display +I (22419) led matrix: 2 display +I (24439) led matrix: 3 display +I (26459) led matrix: 4 display +I (28479) led matrix: 5 display +I (30499) led matrix: 6 display +I (32519) led matrix: 7 display +I (34539) led matrix: 0 display +I (36559) led matrix: 1 display +I (38579) led matrix: 2 display diff --git a/build/log/idf_py_stdout_output_11620 b/build/log/idf_py_stdout_output_11620 new file mode 100644 index 0000000..c73ff33 --- /dev/null +++ b/build/log/idf_py_stdout_output_11620 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36120 bytes. Smallest app partition is 0x100000 bytes. 0xc9ee0 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 221472 bytes to 115162... +Writing at 0x00010000... (12 %) +Writing at 0x0001d037... (25 %) +Writing at 0x00022e08... (37 %) +Writing at 0x000291e4... (50 %) +Writing at 0x0002fa6b... (62 %) +Writing at 0x00039785... (75 %) +Writing at 0x0003f9de... (87 %) +Writing at 0x00045eb2... (100 %) +Wrote 221472 bytes (115162 compressed) at 0x00010000 in 2.5 seconds (effective 717.7 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.8 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_11648 b/build/log/idf_py_stdout_output_11648 new file mode 100644 index 0000000..1335e7a --- /dev/null +++ b/build/log/idf_py_stdout_output_11648 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting.... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118318... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312f... (37 %) +Writing at 0x00029683... (50 %) +Writing at 0x0002f46f... (62 %) +Writing at 0x00038d92... (75 %) +Writing at 0x00040120... (87 %) +Writing at 0x00045f48... (100 %) +Wrote 227664 bytes (118318 compressed) at 0x00010000 in 2.5 seconds (effective 737.7 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_11852 b/build/log/idf_py_stdout_output_11852 new file mode 100644 index 0000000..69c1cb2 --- /dev/null +++ b/build/log/idf_py_stdout_output_11852 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36130 bytes. Smallest app partition is 0x100000 bytes. 0xc9ed0 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_11868 b/build/log/idf_py_stdout_output_11868 new file mode 100644 index 0000000..3d43db4 --- /dev/null +++ b/build/log/idf_py_stdout_output_11868 @@ -0,0 +1,37 @@ +[1/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[2/9] Linking C static library esp-idf\main\libmain.a +[3/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_11900 b/build/log/idf_py_stdout_output_11900 new file mode 100644 index 0000000..773ce08 --- /dev/null +++ b/build/log/idf_py_stdout_output_11900 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118320... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x0002312a... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f463... (62 %) +Writing at 0x00038d93... (75 %) +Writing at 0x00040120... (87 %) +Writing at 0x00045f48... (100 %) +Wrote 227664 bytes (118320 compressed) at 0x00010000 in 2.5 seconds (effective 728.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_11976 b/build/log/idf_py_stdout_output_11976 new file mode 100644 index 0000000..b85c727 --- /dev/null +++ b/build/log/idf_py_stdout_output_11976 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37900 bytes. Smallest app partition is 0x100000 bytes. 0xc8700 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227584 bytes to 118242... +Writing at 0x00010000... (12 %) +Writing at 0x0001d346... (25 %) +Writing at 0x0002313c... (37 %) +Writing at 0x00029695... (50 %) +Writing at 0x0002f477... (62 %) +Writing at 0x00038dac... (75 %) +Writing at 0x00040123... (87 %) +Writing at 0x00045f64... (100 %) +Wrote 227584 bytes (118242 compressed) at 0x00010000 in 2.5 seconds (effective 732.7 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.1 seconds (effective 394.5 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_12028 b/build/log/idf_py_stdout_output_12028 new file mode 100644 index 0000000..a2507e3 --- /dev/null +++ b/build/log/idf_py_stdout_output_12028 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227680 bytes to 118332... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2d9... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f462... (62 %) +Writing at 0x00038d93... (75 %) +Writing at 0x00040122... (87 %) +Writing at 0x00045f44... (100 %) +Wrote 227680 bytes (118332 compressed) at 0x00010000 in 2.5 seconds (effective 723.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_12064 b/build/log/idf_py_stdout_output_12064 new file mode 100644 index 0000000..9ca3d73 --- /dev/null +++ b/build/log/idf_py_stdout_output_12064 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227632 bytes to 118288... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x00023135... (37 %) +Writing at 0x00029690... (50 %) +Writing at 0x0002f471... (62 %) +Writing at 0x00038d9e... (75 %) +Writing at 0x00040125... (87 %) +Writing at 0x00045f56... (100 %) +Wrote 227632 bytes (118288 compressed) at 0x00010000 in 2.5 seconds (effective 723.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_12184 b/build/log/idf_py_stdout_output_12184 new file mode 100644 index 0000000..7b55604 --- /dev/null +++ b/build/log/idf_py_stdout_output_12184 @@ -0,0 +1,67 @@ +I (104) esp_image: segment 1: paddr=0001ab54 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab2ch ( 43820) map +I (104) esp_image: segment 1: paddr=0001ab54 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce54 vaddr=40374000 size=031c4h ( 12740) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bc8ch (113804) map +I (142) esp_image: segment 4: paddr=0003bcb4 vaddr=403771c4 size=0a404h ( 41988) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 1698b6e960207696... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (186) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  diff --git a/build/log/idf_py_stdout_output_12240 b/build/log/idf_py_stdout_output_12240 new file mode 100644 index 0000000..eddbf9d --- /dev/null +++ b/build/log/idf_py_stdout_output_12240 @@ -0,0 +1,84 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcc4h (113860) map +I (142) esp_image: segment 4: paddr=0003bcec vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 9063a5aa03748116... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (3209) led matrix: 0 display +I (6219) led matrix: 1 display +I (9229) led matrix: 0 display +I (12239) led matrix: 1 display +I (15249) led matrix: 0 display +I (18259) led matrix: 1 display +I (21269) led matrix: 0 display +I (24279) led matrix: 1 display +I (27289) led matrix: 0 display +I (30299) led matrix: 1 display +I (33309) led matrix: 0 display +I (36319) led matrix: 1 display +I (39329) led matrix: 0 display +I (42339) led matrix: 1 display +I (45349) led matrix: 0 display +I (48359) led matrix: 1 display +I (51369) led matrix: 0 display diff --git a/build/log/idf_py_stdout_output_12464 b/build/log/idf_py_stdout_output_12464 new file mode 100644 index 0000000..c4ebd52 --- /dev/null +++ b/build/log/idf_py_stdout_output_12464 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118327... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x0002312f... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f463... (62 %) +Writing at 0x00038d94... (75 %) +Writing at 0x0004011a... (87 %) +Writing at 0x00045f3b... (100 %) +Wrote 227664 bytes (118327 compressed) at 0x00010000 in 2.5 seconds (effective 728.4 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_12496 b/build/log/idf_py_stdout_output_12496 new file mode 100644 index 0000000..450f06f --- /dev/null +++ b/build/log/idf_py_stdout_output_12496 @@ -0,0 +1,110 @@ +I (105) esp_image: segment 1: paddr=0001b284 vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378da6 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b25ch ( 45660) map +I (105) esp_image: segment 1: paddr=0001b284 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d594 vaddr=40374000 size=02a84h ( 10884) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc38h (117816) map +I (143) esp_image: segment 4: paddr=0003cc60 vaddr=40376a84 size=0ade0h ( 44512) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375244 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 522755e8aef31a8f... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[18]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +I (200) led matrix: hub75_addr_task +E (5200) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time: +E (5200) task_wdt: - IDLE (CPU 1) +E (5200) task_wdt: Tasks currently running: +E (5200) task_wdt: CPU 0: IDLE +E (5200) task_wdt: CPU 1: hub75_addr +E (5200) task_wdt: Print CPU 1 backtrace + + +Backtrace: 0x40378A5A:0x3FC92C50 0x403770B1:0x3FC92C70 0x4200987B:0x3FC9E6C0 0x42007251:0x3FC9E6F0 0x40379FD9:0x3FC9E710 + +E (10200) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time: +E (10200) task_wdt: - IDLE (CPU 1) +E (10200) task_wdt: Tasks currently running: +E (10200) task_wdt: CPU 0: IDLE +E (10200) task_wdt: CPU 1: hub75_addr +E (10200) task_wdt: Print CPU 1 backtrace + + +Backtrace: 0x40378A5A:0x3FC92C50 0x403770B1:0x3FC92C70 0x4200983E:0x3FC9E6C0 0x42007247:0x3FC9E6F0 0x40379FD9:0x3FC9E710 + +E (15200) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time: +E (15200) task_wdt: - IDLE (CPU 1) +E (15200) task_wdt: Tasks currently running: +E (15200) task_wdt: CPU 0: IDLE +E (15200) task_wdt: CPU 1: hub75_addr +E (15200) task_wdt: Print CPU 1 backtrace + + +Backtrace: 0x40378A5A:0x3FC92C50 0x403770B1:0x3FC92C70 0x42009841:0x3FC9E6C0 0x42007247:0x3FC9E6F0 0x40379FD9:0x3FC9E710 + +E (20200) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time: +E (20200) task_wdt: - IDLE (CPU 1) +E (20200) task_wdt: Tasks currently running: +E (20200) task_wdt: CPU 0: IDLE +E (20200) task_wdt: CPU 1: hub75_addr +E (20200) task_wdt: Print CPU 1 backtrace + + +Backtrace: 0x40378A5A:0x3FC92C50 0x403770B1:0x3FC92C70 0x42009844:0x3FC9E6C0 0x42007233:0x3FC9E6F0 0x40379FD9:0x3FC9E710 + diff --git a/build/log/idf_py_stdout_output_12540 b/build/log/idf_py_stdout_output_12540 new file mode 100644 index 0000000..6df2d69 --- /dev/null +++ b/build/log/idf_py_stdout_output_12540 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118328... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2d2... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f460... (62 %) +Writing at 0x00038d8a... (75 %) +Writing at 0x00040117... (87 %) +Writing at 0x00045f38... (100 %) +Wrote 227664 bytes (118328 compressed) at 0x00010000 in 2.5 seconds (effective 723.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_1280 b/build/log/idf_py_stdout_output_1280 new file mode 100644 index 0000000..b81bbca --- /dev/null +++ b/build/log/idf_py_stdout_output_1280 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360f0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f10 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_12968 b/build/log/idf_py_stdout_output_12968 new file mode 100644 index 0000000..361f422 --- /dev/null +++ b/build/log/idf_py_stdout_output_12968 @@ -0,0 +1,37 @@ +[1/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:161:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 161 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[2/9] Linking C static library esp-idf\main\libmain.a +[3/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_13152 b/build/log/idf_py_stdout_output_13152 new file mode 100644 index 0000000..39d5d1c --- /dev/null +++ b/build/log/idf_py_stdout_output_13152 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227632 bytes to 118297... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2c6... (25 %) +Writing at 0x00023125... (37 %) +Writing at 0x00029671... (50 %) +Writing at 0x0002f45d... (62 %) +Writing at 0x00038d88... (75 %) +Writing at 0x00040112... (87 %) +Writing at 0x00045f43... (100 %) +Wrote 227632 bytes (118297 compressed) at 0x00010000 in 2.5 seconds (effective 719.2 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_13176 b/build/log/idf_py_stdout_output_13176 new file mode 100644 index 0000000..049d81d --- /dev/null +++ b/build/log/idf_py_stdout_output_13176 @@ -0,0 +1,314 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcb8h (113848) map +I (142) esp_image: segment 4: paddr=0003bce0 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 9744500135fba914... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display +I (22419) led matrix: 2 display +I (24439) led matrix: 3 display +I (26459) led matrix: 4 display +I (28479) led matrix: 5 display +I (30499) led matrix: 6 display +I (32519) led matrix: 7 display +I (34539) led matrix: 0 display +I (36559) led matrix: 1 display +I (38579) led matrix: 2 display +I (40599) led matrix: 3 display +I (42619) led matrix: 4 display +I (44639) led matrix: 5 display +I (46659) led matrix: 6 display +I (48679) led matrix: 7 display +I (50699) led matrix: 0 display +I (52719) led matrix: 1 display +I (54739) led matrix: 2 display +I (56759) led matrix: 3 display +I (58779) led matrix: 4 display +I (60799) led matrix: 5 display +I (62819) led matrix: 6 display +I (64839) led matrix: 7 display +I (66859) led matrix: 0 display +I (68879) led matrix: 1 display +I (70899) led matrix: 2 display +I (72919) led matrix: 3 display +I (74939) led matrix: 4 display +I (76959) led matrix: 5 display +I (78979) led matrix: 6 display +I (80999) led matrix: 7 display +I (83019) led matrix: 0 display +I (85039) led matrix: 1 display +I (87059) led matrix: 2 display +I (89079) led matrix: 3 display +I (91099) led matrix: 4 display +I (93119) led matrix: 5 display +I (95139) led matrix: 6 display +I (97159) led matrix: 7 display +I (99179) led matrix: 0 display +I (101199) led matrix: 1 display +I (103219) led matrix: 2 display +I (105239) led matrix: 3 display +I (107259) led matrix: 4 display +I (109279) led matrix: 5 display +I (111299) led matrix: 6 display +I (113319) led matrix: 7 display +I (115339) led matrix: 0 display +I (117359) led matrix: 1 display +I (119379) led matrix: 2 display +I (121399) led matrix: 3 display +I (123419) led matrix: 4 display +I (125439) led matrix: 5 display +I (127459) led matrix: 6 display +I (129479) led matrix: 7 display +I (131499) led matrix: 0 display +I (133519) led matrix: 1 display +I (135539) led matrix: 2 display +I (137559) led matrix: 3 display +I (139579) led matrix: 4 display +I (141599) led matrix: 5 display +I (143619) led matrix: 6 display +I (145639) led matrix: 7 display +I (147659) led matrix: 0 display +I (149679) led matrix: 1 display +I (151699) led matrix: 2 display +I (153719) led matrix: 3 display +I (155739) led matrix: 4 display +I (157759) led matrix: 5 display +I (159779) led matrix: 6 display +I (161799) led matrix: 7 display +I (163819) led matrix: 0 display +I (165839) led matrix: 1 display +I (167859) led matrix: 2 display +I (169879) led matrix: 3 display +I (171899) led matrix: 4 display +I (173919) led matrix: 5 display +I (175939) led matrix: 6 display +I (177959) led matrix: 7 display +I (179979) led matrix: 0 display +I (181999) led matrix: 1 display +I (184019) led matrix: 2 display +I (186039) led matrix: 3 display +I (188059) led matrix: 4 display +I (190079) led matrix: 5 display +I (192099) led matrix: 6 display +I (194119) led matrix: 7 display +I (196139) led matrix: 0 display +I (198159) led matrix: 1 display +I (200179) led matrix: 2 display +I (202199) led matrix: 3 display +I (204219) led matrix: 4 display +I (206239) led matrix: 5 display +I (208259) led matrix: 6 display +I (210279) led matrix: 7 display +I (212299) led matrix: 0 display +I (214319) led matrix: 1 display +I (216339) led matrix: 2 display +I (218359) led matrix: 3 display +I (220379) led matrix: 4 display +I (222399) led matrix: 5 display +I (224419) led matrix: 6 display +I (226439) led matrix: 7 display +I (228459) led matrix: 0 display +I (230479) led matrix: 1 display +I (232499) led matrix: 2 display +I (234519) led matrix: 3 display +I (236539) led matrix: 4 display +I (238559) led matrix: 5 display +I (240579) led matrix: 6 display +I (242599) led matrix: 7 display +I (244619) led matrix: 0 display +I (246639) led matrix: 1 display +I (248659) led matrix: 2 display +I (250679) led matrix: 3 display +I (252699) led matrix: 4 display +I (254719) led matrix: 5 display +I (256739) led matrix: 6 display +I (258759) led matrix: 7 display +I (260779) led matrix: 0 display +I (262799) led matrix: 1 display +I (264819) led matrix: 2 display +I (266839) led matrix: 3 display +I (268859) led matrix: 4 display +I (270879) led matrix: 5 display +I (272899) led matrix: 6 display +I (274919) led matrix: 7 display +I (276939) led matrix: 0 display +I (278959) led matrix: 1 display +I (280979) led matrix: 2 display +I (282999) led matrix: 3 display +I (285019) led matrix: 4 display +I (287039) led matrix: 5 display +I (289059) led matrix: 6 display +I (291079) led matrix: 7 display +I (293099) led matrix: 0 display +I (295119) led matrix: 1 display +I (297139) led matrix: 2 display +I (299159) led matrix: 3 display +I (301179) led matrix: 4 display +I (303199) led matrix: 5 display +I (305219) led matrix: 6 display +I (307239) led matrix: 7 display +I (309259) led matrix: 0 display +I (311279) led matrix: 1 display +I (313299) led matrix: 2 display +I (315319) led matrix: 3 display +I (317339) led matrix: 4 display +I (319359) led matrix: 5 display +I (321379) led matrix: 6 display +I (323399) led matrix: 7 display +I (325419) led matrix: 0 display +I (327439) led matrix: 1 display +I (329459) led matrix: 2 display +I (331479) led matrix: 3 display +I (333499) led matrix: 4 display +I (335519) led matrix: 5 display +I (337539) led matrix: 6 display +I (339559) led matrix: 7 display +I (341579) led matrix: 0 display +I (343599) led matrix: 1 display +I (345619) led matrix: 2 display +I (347639) led matrix: 3 display +I (349659) led matrix: 4 display +I (351679) led matrix: 5 display +I (353699) led matrix: 6 display +I (355719) led matrix: 7 display +I (357739) led matrix: 0 display +I (359759) led matrix: 1 display +I (361779) led matrix: 2 display +I (363799) led matrix: 3 display +I (365819) led matrix: 4 display +I (367839) led matrix: 5 display +I (369859) led matrix: 6 display +I (371879) led matrix: 7 display +I (373899) led matrix: 0 display +I (375919) led matrix: 1 display +I (377939) led matrix: 2 display +I (379959) led matrix: 3 display +I (381979) led matrix: 4 display +I (383999) led matrix: 5 display +I (386019) led matrix: 6 display +I (388039) led matrix: 7 display +I (390059) led matrix: 0 display +I (392079) led matrix: 1 display +I (394099) led matrix: 2 display +I (396119) led matrix: 3 display +I (398139) led matrix: 4 display +I (400159) led matrix: 5 display +I (402179) led matrix: 6 display +I (404199) led matrix: 7 display +I (406219) led matrix: 0 display +I (408239) led matrix: 1 display +I (410259) led matrix: 2 display +I (412279) led matrix: 3 display +I (414299) led matrix: 4 display +I (416319) led matrix: 5 display +I (418339) led matrix: 6 display +I (420359) led matrix: 7 display +I (422379) led matrix: 0 display +I (424399) led matrix: 1 display +I (426419) led matrix: 2 display +I (428439) led matrix: 3 display +I (430459) led matrix: 4 display +I (432479) led matrix: 5 display +I (434499) led matrix: 6 display +I (436519) led matrix: 7 display +I (438539) led matrix: 0 display +I (440559) led matrix: 1 display +I (442579) led matrix: 2 display +I (444599) led matrix: 3 display +I (446619) led matrix: 4 display +I (448639) led matrix: 5 display +I (450659) led matrix: 6 display +I (452679) led matrix: 7 display +I (454699) led matrix: 0 display +I (456719) led matrix: 1 display +I (458739) led matrix: 2 display +I (460759) led matrix: 3 display +I (462779) led matrix: 4 display +I (464799) led matrix: 5 display +I (466819) led matrix: 6 display +I (468839) led matrix: 7 display +I (470859) led matrix: 0 display +I (472879) led matrix: 1 display +I (474899) led matrix: 2 display +I (476919) led matrix: 3 display +I (478939) led matrix: 4 display +I (480959) led matrix: 5 display +I (482979) led matrix: 6 display +I (484999) led matrix: 7 display +I (487019) led matrix: 0 display +I (489039) led matrix: 1 display +I (491059) led matrix: 2 display +I (493079) led matrix: 3 display +I (495099) led matrix: 4 display +I (497119) led matrix: 5 display +I (499139) led matrix: 6 display diff --git a/build/log/idf_py_stdout_output_13232 b/build/log/idf_py_stdout_output_13232 new file mode 100644 index 0000000..bcd6b5c --- /dev/null +++ b/build/log/idf_py_stdout_output_13232 @@ -0,0 +1,67 @@ +I (105) esp_image: segment 1: paddr=0001b254 vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d8e +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b22ch ( 45612) map +I (105) esp_image: segment 1: paddr=0001b254 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d564 vaddr=40374000 size=02ab4h ( 10932) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb4ch (117580) map +I (143) esp_image: segment 4: paddr=0003cb74 vaddr=40376ab4 size=0ad98h ( 44440) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: b108989f00abf855... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_13368 b/build/log/idf_py_stdout_output_13368 new file mode 100644 index 0000000..781b916 --- /dev/null +++ b/build/log/idf_py_stdout_output_13368 @@ -0,0 +1,35 @@ +[1/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[2/9] Linking C static library esp-idf\main\libmain.a +[3/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_13392 b/build/log/idf_py_stdout_output_13392 new file mode 100644 index 0000000..82bfcc3 --- /dev/null +++ b/build/log/idf_py_stdout_output_13392 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb2ch (117548) map +I (143) esp_image: segment 4: paddr=0003cb54 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: a86d749931c20329... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_13396 b/build/log/idf_py_stdout_output_13396 new file mode 100644 index 0000000..8bc9c4e --- /dev/null +++ b/build/log/idf_py_stdout_output_13396 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.4 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118329... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x00023129... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f462... (62 %) +Writing at 0x00038d8a... (75 %) +Writing at 0x0004011e... (87 %) +Writing at 0x00045f3e... (100 %) +Wrote 227664 bytes (118329 compressed) at 0x00010000 in 2.5 seconds (effective 723.4 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.5 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_13400 b/build/log/idf_py_stdout_output_13400 new file mode 100644 index 0000000..0c82456 --- /dev/null +++ b/build/log/idf_py_stdout_output_13400 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36130 bytes. Smallest app partition is 0x100000 bytes. 0xc9ed0 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 221488 bytes to 115169... +Writing at 0x00010000... (12 %) +Writing at 0x0001d036... (25 %) +Writing at 0x00022e01... (37 %) +Writing at 0x000291dd... (50 %) +Writing at 0x0002fa6b... (62 %) +Writing at 0x0003975c... (75 %) +Writing at 0x0003f9e2... (87 %) +Writing at 0x00045eb4... (100 %) +Wrote 221488 bytes (115169 compressed) at 0x00010000 in 2.5 seconds (effective 722.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.5 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_13456 b/build/log/idf_py_stdout_output_13456 new file mode 100644 index 0000000..036dc1a --- /dev/null +++ b/build/log/idf_py_stdout_output_13456 @@ -0,0 +1,58 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:161:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 161 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[4/8] Linking C static library esp-idf\main\libmain.a +[5/8] Generating ld/sections.ld +[6/8] Linking CXX executable i80_controller.elf +[7/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_13460 b/build/log/idf_py_stdout_output_13460 new file mode 100644 index 0000000..e69de29 diff --git a/build/log/idf_py_stdout_output_13508 b/build/log/idf_py_stdout_output_13508 new file mode 100644 index 0000000..cbcd35e --- /dev/null +++ b/build/log/idf_py_stdout_output_13508 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.4 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118318... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x00023130... (37 %) +Writing at 0x00029683... (50 %) +Writing at 0x0002f46f... (62 %) +Writing at 0x00038d93... (75 %) +Writing at 0x00040120... (87 %) +Writing at 0x00045f48... (100 %) +Wrote 227664 bytes (118318 compressed) at 0x00010000 in 2.5 seconds (effective 733.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.4 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_13516 b/build/log/idf_py_stdout_output_13516 new file mode 100644 index 0000000..208bd29 --- /dev/null +++ b/build/log/idf_py_stdout_output_13516 @@ -0,0 +1,37 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_13528 b/build/log/idf_py_stdout_output_13528 new file mode 100644 index 0000000..15b8e7f --- /dev/null +++ b/build/log/idf_py_stdout_output_13528 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb38h (117560) map +I (143) esp_image: segment 4: paddr=0003cb60 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: cd300cde5420a95a... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_13596 b/build/log/idf_py_stdout_output_13596 new file mode 100644 index 0000000..affd862 --- /dev/null +++ b/build/log/idf_py_stdout_output_13596 @@ -0,0 +1,1270 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919arly entropy source..ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40048836 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (104) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e018b3c19cbeb2f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +E (200) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=0 +ESP_ERROR_CHECK failed: esp_err_t 0xffffffff (ESP_FAIL) at 0x42007368 +file: "/IDF/app/led_matrix/main/i80_controller_example_main.c" line 141 +func: led_matrix_oe_lat_ledc_init +expression: ledc_timer_config(&ledc_timer) + +abort() was called at PC 0x40379ff7 on core 0 + + +Backtrace: 0x40375dfa:0x3fc98050 0x4037a001:0x3fc98070 0x4037f77a:0x3fc98090 0x40379ff7:0x3fc98100 0x42007368:0x3fc98130 0x42007421:0x3fc981c0 0x4201c3b3:0x3fc981e0 0x4037a011:0x3fc98210 + + + + +ELF file SHA256: e018b3c19cbeb2f6 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375789 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map diff --git a/build/log/idf_py_stdout_output_1360 b/build/log/idf_py_stdout_output_1360 new file mode 100644 index 0000000..162c84d --- /dev/null +++ b/build/log/idf_py_stdout_output_1360 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:187:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 187 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:136:23: note: previous declaration here + 136 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37a70 bytes. Smallest app partition is 0x100000 bytes. 0xc8590 bytes (78%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 437.0 kbit/s)... +Hash of data verified. +Compressed 227952 bytes to 118524... +Writing at 0x00010000... (12 %) +Writing at 0x0001d30c... (25 %) +Writing at 0x0002313d... (37 %) +Writing at 0x00029658... (50 %) +Writing at 0x0002f48b... (62 %) +Writing at 0x00038d90... (75 %) +Writing at 0x00040135... (87 %) +Writing at 0x00045f63... (100 %) +Wrote 227952 bytes (118524 compressed) at 0x00010000 in 2.5 seconds (effective 720.4 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 529.8 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_13676 b/build/log/idf_py_stdout_output_13676 new file mode 100644 index 0000000..a59df40 --- /dev/null +++ b/build/log/idf_py_stdout_output_13676 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb2ch (117548) map +I (143) esp_image: segment 4: paddr=0003cb54 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 2c83db723e47cfe6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (191) app_start: Starting scheduler on CPU1 +I (191) main_task: Started on CPU0 +I (201) main_task: Calling app_main() +I (201) led matrix: Initialize Intel 8080 bus +I (201) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_13708 b/build/log/idf_py_stdout_output_13708 new file mode 100644 index 0000000..a845a79 --- /dev/null +++ b/build/log/idf_py_stdout_output_13708 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb38h (117560) map +I (143) esp_image: segment 4: paddr=0003cb60 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 32e4c4bfa7888dad... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_1376 b/build/log/idf_py_stdout_output_1376 new file mode 100644 index 0000000..559c6d8 --- /dev/null +++ b/build/log/idf_py_stdout_output_1376 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting.... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227680 bytes to 118349... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312f... (37 %) +Writing at 0x0002967d... (50 %) +Writing at 0x0002f464... (62 %) +Writing at 0x00038d8e... (75 %) +Writing at 0x0004011a... (87 %) +Writing at 0x00045f3b... (100 %) +Wrote 227680 bytes (118349 compressed) at 0x00010000 in 2.5 seconds (effective 715.1 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.9 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_13824 b/build/log/idf_py_stdout_output_13824 new file mode 100644 index 0000000..87ad52d --- /dev/null +++ b/build/log/idf_py_stdout_output_13824 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.3 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118328... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f462... (62 %) +Writing at 0x00038d94... (75 %) +Writing at 0x0004011a... (87 %) +Writing at 0x00045f3b... (100 %) +Wrote 227664 bytes (118328 compressed) at 0x00010000 in 2.5 seconds (effective 719.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_13840 b/build/log/idf_py_stdout_output_13840 new file mode 100644 index 0000000..781b916 --- /dev/null +++ b/build/log/idf_py_stdout_output_13840 @@ -0,0 +1,35 @@ +[1/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[2/9] Linking C static library esp-idf\main\libmain.a +[3/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_13872 b/build/log/idf_py_stdout_output_13872 new file mode 100644 index 0000000..b3efff2 --- /dev/null +++ b/build/log/idf_py_stdout_output_13872 @@ -0,0 +1,77 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcb8h (113848) map +I (142) esp_image: segment 4: paddr=0003bce0 vaddr=403771a4 size=0a424h ( 42020) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d4e2e47f7f77f8e5... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display diff --git a/build/log/idf_py_stdout_output_13912 b/build/log/idf_py_stdout_output_13912 new file mode 100644 index 0000000..a0d77e6 --- /dev/null +++ b/build/log/idf_py_stdout_output_13912 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 227632 bytes to 118299... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2cc... (25 %) +Writing at 0x00023125... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f45d... (62 %) +Writing at 0x00038d89... (75 %) +Writing at 0x00040115... (87 %) +Writing at 0x00045f46... (100 %) +Wrote 227632 bytes (118299 compressed) at 0x00010000 in 2.5 seconds (effective 723.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.5 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_13920 b/build/log/idf_py_stdout_output_13920 new file mode 100644 index 0000000..3690a05 --- /dev/null +++ b/build/log/idf_py_stdout_output_13920 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb2ch (117548) map +I (143) esp_image: segment 4: paddr=0003cb54 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 0867a3394bea623a... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (191) app_start: Starting scheduler on CPU1 +I (191) main_task: Started on CPU0 +I (201) main_task: Calling app_main() +I (201) led matrix: Initialize Intel 8080 bus +I (201) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_14036 b/build/log/idf_py_stdout_output_14036 new file mode 100644 index 0000000..d0b11c1 --- /dev/null +++ b/build/log/idf_py_stdout_output_14036 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d8e +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb64h (117604) map +I (143) esp_image: segment 4: paddr=0003cb8c vaddr=40376acc size=0ad80h ( 44416) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 59c3bd6cd3c7f011... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (191) app_start: Starting scheduler on CPU1 +I (191) main_task: Started on CPU0 +I (201) main_task: Calling app_main() +I (201) led matrix: Initialize Intel 8080 bus +I (201) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_14040 b/build/log/idf_py_stdout_output_14040 new file mode 100644 index 0000000..605db1a --- /dev/null +++ b/build/log/idf_py_stdout_output_14040 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 227616 bytes to 118263... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x00023139... (37 %) +Writing at 0x00029692... (50 %) +Writing at 0x0002f475... (62 %) +Writing at 0x00038daa... (75 %) +Writing at 0x00040126... (87 %) +Writing at 0x00045f59... (100 %) +Wrote 227616 bytes (118263 compressed) at 0x00010000 in 2.5 seconds (effective 723.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.0 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_14152 b/build/log/idf_py_stdout_output_14152 new file mode 100644 index 0000000..6e89121 --- /dev/null +++ b/build/log/idf_py_stdout_output_14152 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb30h (117552) map +I (143) esp_image: segment 4: paddr=0003cb58 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 0fca112ef41ab5b4... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_14160 b/build/log/idf_py_stdout_output_14160 new file mode 100644 index 0000000..6b6388e --- /dev/null +++ b/build/log/idf_py_stdout_output_14160 @@ -0,0 +1,81 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcbch (113852) map +I (142) esp_image: segment 4: paddr=0003bce4 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: fc394d4051ca7dfa... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display +I (22419) led matrix: 2 display +I (24439) led matrix: 3 display +I (26459) led matrix: 4 display +I (28479) led matrix: 5 display diff --git a/build/log/idf_py_stdout_output_14316 b/build/log/idf_py_stdout_output_14316 new file mode 100644 index 0000000..208bd29 --- /dev/null +++ b/build/log/idf_py_stdout_output_14316 @@ -0,0 +1,37 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_14388 b/build/log/idf_py_stdout_output_14388 index 4ddaf5e..4b7ca79 100644 --- a/build/log/idf_py_stdout_output_14388 +++ b/build/log/idf_py_stdout_output_14388 @@ -1,8 +1,32 @@ -[1/9] Performing build step for 'bootloader' +[1/10] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[2/10] Performing build step for 'bootloader' [1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. -[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +[3/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined 188 | #define SOC_LCD_I80_SUPPORTED 1 | @@ -15,20 +39,20 @@ In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_s E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ | -E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:99:13: warning: 'line_trans_done_cb' defined but not used [-Wunused-function] - 99 | static bool line_trans_done_cb(esp_lcd_panel_io_handle_t panel_io, esp_lcd_panel_io_event_data_t *edata, void *user_ctx) - | ^~~~~~~~~~~~~~~~~~ -E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:88:13: warning: 'line_scan_loop_cb' defined but not used [-Wunused-function] - 88 | static void line_scan_loop_cb(void *args) - | ^~~~~~~~~~~~~~~~~ -[3/7] Linking C static library esp-idf\main\libmain.a -[4/7] Generating ld/sections.ld -[5/7] Linking CXX executable i80_controller.elf -[6/7] Generating binary image from built executable +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[4/8] Linking C static library esp-idf\main\libmain.a +[5/8] Generating ld/sections.ld +[6/8] Linking CXX executable i80_controller.elf +[7/8] Generating binary image from built executable esptool.py v4.6.2 Creating esp32s3 image... Merged 2 ELF sections Successfully created esp32s3 image. Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin -[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" -i80_controller.bin binary size 0x34e90 bytes. Smallest app partition is 0x100000 bytes. 0xcb170 bytes (79%) free. +[8/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_14408 b/build/log/idf_py_stdout_output_14408 index 8a4d4ec..e035f1f 100644 --- a/build/log/idf_py_stdout_output_14408 +++ b/build/log/idf_py_stdout_output_14408 @@ -1,434 +1,45 @@ -I (104) esp_image: segment 1: paddr=0001a4d4 vaddr=3fc916ESP-ROM:esp32s3-20210327 -Build:Mar 27 2021 -rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) -Saved PC:0x40378c1e -SPIWP:0xee -mode:DIO, clock div:1 -load:0x3fce3810,len:0x168c -load:0x403c9700,len:0xbe0 -load:0x403cc700,len:0x2cd0 -entry 0x403c9908 -I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader -I (25) boot: compile time 08:38:38 -I (25) boot: Multicore bootloader -I (27) boot: chip revision: v0.1 -I (31) boot.esp32s3: Boot SPI Speed : 80MHz -I (36) boot.esp32s3: SPI Mode : DIO -I (41) boot.esp32s3: SPI Flash Size : 2MB -I (45) boot: Enabling RNG early entropy source... -I (51) boot: Partition Table: -I (54) boot: ## Label Usage Type ST Offset Length -I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 -I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 -I (76) boot: 2 factory factory app 00 00 00010000 00100000 -I (84) boot: End of partition table -I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0a4ach ( 42156) map -I (104) esp_image: segment 1: paddr=0001a4d4 vaddr=3fc91600 size=022f8h ( 8952) load -I (107) esp_image: segment 2: paddr=0001c7d4 vaddr=40374000 size=03844h ( 14404) load -I (117) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1b128h (110888) map -I (142) esp_image: segment 4: paddr=0003b150 vaddr=40377844 size=09d2ch ( 40236) load -I (157) boot: Loaded app from partition at offset 0x10000 -I (157) boot: Disabling RNG early entropy source... -I (157) cpu_start: Multicore app -I (161) cpu_start: Pro cpu up. -I (165) cpu_start: Starting app cpu, entry point is 0x403751c0 -I (0) cpu_start: App cpu up. -I (181) cpu_start: Pro cpu start user code -I (181) cpu_start: cpu freq: 160000000 Hz -I (181) cpu_start: Application information: -I (181) cpu_start: Project name: i80_controller -I (181) cpu_start: App version: 7d6a7d3-dirty -I (181) cpu_start: Compile time: Jan 29 2024 08:38:13 -I (182) cpu_start: ELF file SHA256: 265a0a4aeda8d974... -I (182) cpu_start: ESP-IDF: v5.0.4-dirty -I (182) cpu_start: Min chip rev: v0.0 -I (182) cpu_start: Max chip rev: v0.99  -I (183) cpu_start: Chip rev: v0.1 -I (183) heap_init: Initializing. RAM available for dynamic allocation: -I (183) heap_init: At 3FC94310 len 00055400 (341 KiB): DRAM -I (183) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM -I (184) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM -I (184) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM -I (185) spi_flash: detected chip: gd -I (186) spi_flash: flash io: dio -W (186) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. -I (187) app_start: Starting scheduler on CPU0 -I (188) app_start: Starting scheduler on CPU1 -I (188) main_task: Started on CPU0 -I (198) main_task: Calling app_main() -I (198) led matrix: Initialize Intel 8080 bus -I (198) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (198) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (198) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (198) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (198) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (198) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (198) led matrix: Test send data to LCD -I (198) lcd_panel.io: esp_lcd_panel_io_tx_color -I (198) lcd_panel.io.i80: panel_io_i80_tx_color -I (198) lcd_panel.io.i80: 1 -I (198) lcd_panel.io.i80: 2 -I (198) lcd_panel.io.i80: 3 -I (198) lcd_panel.io.i80: 4 -I (198) lcd_panel.io.i80: 5 -I (208) lcd_panel.io.i80: 6 -I (1208) led matrix: line trans done -I (2208) led matrix: Test send data to LCD -I (2208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (2208) lcd_panel.io.i80: panel_io_i80_tx_color -I (2208) lcd_panel.io.i80: 1 -I (2208) lcd_panel.io.i80: 2 -I (2208) lcd_panel.io.i80: 3 -I (2208) lcd_panel.io.i80: 4 -I (2208) lcd_panel.io.i80: 5 -I (2208) lcd_panel.io.i80: 6 -I (3208) led matrix: line trans done -I (4208) led matrix: Test send data to LCD -I (4208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (4208) lcd_panel.io.i80: panel_io_i80_tx_color -I (4208) lcd_panel.io.i80: 1 -I (4208) lcd_panel.io.i80: 2 -I (4208) lcd_panel.io.i80: 3 -I (4208) lcd_panel.io.i80: 4 -I (4208) lcd_panel.io.i80: 5 -I (4208) lcd_panel.io.i80: 6 -I (5208) led matrix: line trans done -I (6208) led matrix: Test send data to LCD -I (6208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (6208) lcd_panel.io.i80: panel_io_i80_tx_color -I (6208) lcd_panel.io.i80: 1 -I (6208) lcd_panel.io.i80: 2 -I (6208) lcd_panel.io.i80: 3 -I (6208) lcd_panel.io.i80: 4 -I (6208) lcd_panel.io.i80: 5 -I (6208) lcd_panel.io.i80: 6 -I (7208) led matrix: line trans done -I (8208) led matrix: Test send data to LCD -I (8208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (8208) lcd_panel.io.i80: panel_io_i80_tx_color -I (8208) lcd_panel.io.i80: 1 -I (8208) lcd_panel.io.i80: 2 -I (8208) lcd_panel.io.i80: 3 -I (8208) lcd_panel.io.i80: 4 -I (8208) lcd_panel.io.i80: 5 -I (8208) lcd_panel.io.i80: 6 -I (9208) led matrix: line trans done -I (10208) led matrix: Test send data to LCD -I (10208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (10208) lcd_panel.io.i80: panel_io_i80_tx_color -I (10208) lcd_panel.io.i80: 1 -I (10208) lcd_panel.io.i80: 2 -I (10208) lcd_panel.io.i80: 3 -I (10208) lcd_panel.io.i80: 4 -I (10208) lcd_panel.io.i80: 5 -I (10208) lcd_panel.io.i80: 6 -I (11208) led matrix: line trans done -I (12208) led matrix: Test send data to LCD -I (12208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (12208) lcd_panel.io.i80: panel_io_i80_tx_color -I (12208) lcd_panel.io.i80: 1 -I (12208) lcd_panel.io.i80: 2 -I (12208) lcd_panel.io.i80: 3 -I (12208) lcd_panel.io.i80: 4 -I (12208) lcd_panel.io.i80: 5 -I (12208) lcd_panel.io.i80: 6 -I (13208) led matrix: line trans done -I (14208) led matrix: Test send data to LCD -I (14208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (14208) lcd_panel.io.i80: panel_io_i80_tx_color -I (14208) lcd_panel.io.i80: 1 -I (14208) lcd_panel.io.i80: 2 -I (14208) lcd_panel.io.i80: 3 -I (14208) lcd_panel.io.i80: 4 -I (14208) lcd_panel.io.i80: 5 -I (14208) lcd_panel.io.i80: 6 -I (15208) led matrix: line trans done -I (16208) led matrix: Test send data to LCD -I (16208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (16208) lcd_panel.io.i80: panel_io_i80_tx_color -I (16208) lcd_panel.io.i80: 1 -I (16208) lcd_panel.io.i80: 2 -I (16208) lcd_panel.io.i80: 3 -I (16208) lcd_panel.io.i80: 4 -I (16208) lcd_panel.io.i80: 5 -I (16208) lcd_panel.io.i80: 6 -I (17208) led matrix: line trans done -I (18208) led matrix: Test send data to LCD -I (18208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (18208) lcd_panel.io.i80: panel_io_i80_tx_color -I (18208) lcd_panel.io.i80: 1 -I (18208) lcd_panel.io.i80: 2 -I (18208) lcd_panel.io.i80: 3 -I (18208) lcd_panel.io.i80: 4 -I (18208) lcd_panel.io.i80: 5 -I (18208) lcd_panel.io.i80: 6 -I (19208) led matrix: line trans done -I (20208) led matrix: Test send data to LCD -I (20208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (20208) lcd_panel.io.i80: panel_io_i80_tx_color -I (20208) lcd_panel.io.i80: 1 -I (20208) lcd_panel.io.i80: 2 -I (20208) lcd_panel.io.i80: 3 -I (20208) lcd_panel.io.i80: 4 -I (20208) lcd_panel.io.i80: 5 -I (20208) lcd_panel.io.i80: 6 -I (21208) led matrix: line trans done -I (22208) led matrix: Test send data to LCD -I (22208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (22208) lcd_panel.io.i80: panel_io_i80_tx_color -I (22208) lcd_panel.io.i80: 1 -I (22208) lcd_panel.io.i80: 2 -I (22208) lcd_panel.io.i80: 3 -I (22208) lcd_panel.io.i80: 4 -I (22208) lcd_panel.io.i80: 5 -I (22208) lcd_panel.io.i80: 6 -I (23208) led matrix: line trans done -I (24208) led matrix: Test send data to LCD -I (24208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (24208) lcd_panel.io.i80: panel_io_i80_tx_color -I (24208) lcd_panel.io.i80: 1 -I (24208) lcd_panel.io.i80: 2 -I (24208) lcd_panel.io.i80: 3 -I (24208) lcd_panel.io.i80: 4 -I (24208) lcd_panel.io.i80: 5 -I (24208) lcd_panel.io.i80: 6 -I (25208) led matrix: line trans done -I (26208) led matrix: Test send data to LCD -I (26208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (26208) lcd_panel.io.i80: panel_io_i80_tx_color -I (26208) lcd_panel.io.i80: 1 -I (26208) lcd_panel.io.i80: 2 -I (26208) lcd_panel.io.i80: 3 -I (26208) lcd_panel.io.i80: 4 -I (26208) lcd_panel.io.i80: 5 -I (26208) lcd_panel.io.i80: 6 -I (27208) led matrix: line trans done -I (28208) led matrix: Test send data to LCD -I (28208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (28208) lcd_panel.io.i80: panel_io_i80_tx_color -I (28208) lcd_panel.io.i80: 1 -I (28208) lcd_panel.io.i80: 2 -I (28208) lcd_panel.io.i80: 3 -I (28208) lcd_panel.io.i80: 4 -I (28208) lcd_panel.io.i80: 5 -I (28208) lcd_panel.io.i80: 6 -I (29208) led matrix: line trans done -I (30208) led matrix: Test send data to LCD -I (30208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (30208) lcd_panel.io.i80: panel_io_i80_tx_color -I (30208) lcd_panel.io.i80: 1 -I (30208) lcd_panel.io.i80: 2 -I (30208) lcd_panel.io.i80: 3 -I (30208) lcd_panel.io.i80: 4 -I (30208) lcd_panel.io.i80: 5 -I (30208) lcd_panel.io.i80: 6 -I (31208) led matrix: line trans done -I (32208) led matrix: Test send data to LCD -I (32208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (32208) lcd_panel.io.i80: panel_io_i80_tx_color -I (32208) lcd_panel.io.i80: 1 -I (32208) lcd_panel.io.i80: 2 -I (32208) lcd_panel.io.i80: 3 -I (32208) lcd_panel.io.i80: 4 -I (32208) lcd_panel.io.i80: 5 -I (32208) lcd_panel.io.i80: 6 -I (33208) led matrix: line trans done -I (34208) led matrix: Test send data to LCD -I (34208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (34208) lcd_panel.io.i80: panel_io_i80_tx_color -I (34208) lcd_panel.io.i80: 1 -I (34208) lcd_panel.io.i80: 2 -I (34208) lcd_panel.io.i80: 3 -I (34208) lcd_panel.io.i80: 4 -I (34208) lcd_panel.io.i80: 5 -I (34208) lcd_panel.io.i80: 6 -I (35208) led matrix: line trans done -I (36208) led matrix: Test send data to LCD -I (36208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (36208) lcd_panel.io.i80: panel_io_i80_tx_color -I (36208) lcd_panel.io.i80: 1 -I (36208) lcd_panel.io.i80: 2 -I (36208) lcd_panel.io.i80: 3 -I (36208) lcd_panel.io.i80: 4 -I (36208) lcd_panel.io.i80: 5 -I (36208) lcd_panel.io.i80: 6 -I (37208) led matrix: line trans done -I (38208) led matrix: Test send data to LCD -I (38208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (38208) lcd_panel.io.i80: panel_io_i80_tx_color -I (38208) lcd_panel.io.i80: 1 -I (38208) lcd_panel.io.i80: 2 -I (38208) lcd_panel.io.i80: 3 -I (38208) lcd_panel.io.i80: 4 -I (38208) lcd_panel.io.i80: 5 -I (38208) lcd_panel.io.i80: 6 -I (39208) led matrix: line trans done -I (40208) led matrix: Test send data to LCD -I (40208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (40208) lcd_panel.io.i80: panel_io_i80_tx_color -I (40208) lcd_panel.io.i80: 1 -I (40208) lcd_panel.io.i80: 2 -I (40208) lcd_panel.io.i80: 3 -I (40208) lcd_panel.io.i80: 4 -I (40208) lcd_panel.io.i80: 5 -I (40208) lcd_panel.io.i80: 6 -I (41208) led matrix: line trans done -I (42208) led matrix: Test send data to LCD -I (42208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (42208) lcd_panel.io.i80: panel_io_i80_tx_color -I (42208) lcd_panel.io.i80: 1 -I (42208) lcd_panel.io.i80: 2 -I (42208) lcd_panel.io.i80: 3 -I (42208) lcd_panel.io.i80: 4 -I (42208) lcd_panel.io.i80: 5 -I (42208) lcd_panel.io.i80: 6 -I (43208) led matrix: line trans done -I (44208) led matrix: Test send data to LCD -I (44208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (44208) lcd_panel.io.i80: panel_io_i80_tx_color -I (44208) lcd_panel.io.i80: 1 -I (44208) lcd_panel.io.i80: 2 -I (44208) lcd_panel.io.i80: 3 -I (44208) lcd_panel.io.i80: 4 -I (44208) lcd_panel.io.i80: 5 -I (44208) lcd_panel.io.i80: 6 -I (45208) led matrix: line trans done -I (46208) led matrix: Test send data to LCD -I (46208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (46208) lcd_panel.io.i80: panel_io_i80_tx_color -I (46208) lcd_panel.io.i80: 1 -I (46208) lcd_panel.io.i80: 2 -I (46208) lcd_panel.io.i80: 3 -I (46208) lcd_panel.io.i80: 4 -I (46208) lcd_panel.io.i80: 5 -I (46208) lcd_panel.io.i80: 6 -I (47208) led matrix: line trans done -I (48208) led matrix: Test send data to LCD -I (48208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (48208) lcd_panel.io.i80: panel_io_i80_tx_color -I (48208) lcd_panel.io.i80: 1 -I (48208) lcd_panel.io.i80: 2 -I (48208) lcd_panel.io.i80: 3 -I (48208) lcd_panel.io.i80: 4 -I (48208) lcd_panel.io.i80: 5 -I (48208) lcd_panel.io.i80: 6 -I (49208) led matrix: line trans done -I (50208) led matrix: Test send data to LCD -I (50208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (50208) lcd_panel.io.i80: panel_io_i80_tx_color -I (50208) lcd_panel.io.i80: 1 -I (50208) lcd_panel.io.i80: 2 -I (50208) lcd_panel.io.i80: 3 -I (50208) lcd_panel.io.i80: 4 -I (50208) lcd_panel.io.i80: 5 -I (50208) lcd_panel.io.i80: 6 -I (51208) led matrix: line trans done -I (52208) led matrix: Test send data to LCD -I (52208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (52208) lcd_panel.io.i80: panel_io_i80_tx_color -I (52208) lcd_panel.io.i80: 1 -I (52208) lcd_panel.io.i80: 2 -I (52208) lcd_panel.io.i80: 3 -I (52208) lcd_panel.io.i80: 4 -I (52208) lcd_panel.io.i80: 5 -I (52208) lcd_panel.io.i80: 6 -I (53208) led matrix: line trans done -I (54208) led matrix: Test send data to LCD -I (54208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (54208) lcd_panel.io.i80: panel_io_i80_tx_color -I (54208) lcd_panel.io.i80: 1 -I (54208) lcd_panel.io.i80: 2 -I (54208) lcd_panel.io.i80: 3 -I (54208) lcd_panel.io.i80: 4 -I (54208) lcd_panel.io.i80: 5 -I (54208) lcd_panel.io.i80: 6 -I (55208) led matrix: line trans done -I (56208) led matrix: Test send data to LCD -I (56208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (56208) lcd_panel.io.i80: panel_io_i80_tx_color -I (56208) lcd_panel.io.i80: 1 -I (56208) lcd_panel.io.i80: 2 -I (56208) lcd_panel.io.i80: 3 -I (56208) lcd_panel.io.i80: 4 -I (56208) lcd_panel.io.i80: 5 -I (56208) lcd_panel.io.i80: 6 -I (57208) led matrix: line trans done -I (58208) led matrix: Test send data to LCD -I (58208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (58208) lcd_panel.io.i80: panel_io_i80_tx_color -I (58208) lcd_panel.io.i80: 1 -I (58208) lcd_panel.io.i80: 2 -I (58208) lcd_panel.io.i80: 3 -I (58208) lcd_panel.io.i80: 4 -I (58208) lcd_panel.io.i80: 5 -I (58208) lcd_panel.io.i80: 6 -I (59208) led matrix: line trans done -I (60208) led matrix: Test send data to LCD -I (60208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (60208) lcd_panel.io.i80: panel_io_i80_tx_color -I (60208) lcd_panel.io.i80: 1 -I (60208) lcd_panel.io.i80: 2 -I (60208) lcd_panel.io.i80: 3 -I (60208) lcd_panel.io.i80: 4 -I (60208) lcd_panel.io.i80: 5 -I (60208) lcd_panel.io.i80: 6 -I (61208) led matrix: line trans done -I (62208) led matrix: Test send data to LCD -I (62208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (62208) lcd_panel.io.i80: panel_io_i80_tx_color -I (62208) lcd_panel.io.i80: 1 -I (62208) lcd_panel.io.i80: 2 -I (62208) lcd_panel.io.i80: 3 -I (62208) lcd_panel.io.i80: 4 -I (62208) lcd_panel.io.i80: 5 -I (62208) lcd_panel.io.i80: 6 -I (63208) led matrix: line trans done -I (64208) led matrix: Test send data to LCD -I (64208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (64208) lcd_panel.io.i80: panel_io_i80_tx_color -I (64208) lcd_panel.io.i80: 1 -I (64208) lcd_panel.io.i80: 2 -I (64208) lcd_panel.io.i80: 3 -I (64208) lcd_panel.io.i80: 4 -I (64208) lcd_panel.io.i80: 5 -I (64208) lcd_panel.io.i80: 6 -I (65208) led matrix: line trans done -I (66208) led matrix: Test send data to LCD -I (66208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (66208) lcd_panel.io.i80: panel_io_i80_tx_color -I (66208) lcd_panel.io.i80: 1 -I (66208) lcd_panel.io.i80: 2 -I (66208) lcd_panel.io.i80: 3 -I (66208) lcd_panel.io.i80: 4 -I (66208) lcd_panel.io.i80: 5 -I (66208) lcd_panel.io.i80: 6 -I (67208) led matrix: line trans done -I (68208) led matrix: Test send data to LCD -I (68208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (68208) lcd_panel.io.i80: panel_io_i80_tx_color -I (68208) lcd_panel.io.i80: 1 -I (68208) lcd_panel.io.i80: 2 -I (68208) lcd_panel.io.i80: 3 -I (68208) lcd_panel.io.i80: 4 -I (68208) lcd_panel.io.i80: 5 -I (68208) lcd_panel.io.i80: 6 -I (69208) led matrix: line trans done -I (70208) led matrix: Test send data to LCD -I (70208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (70208) lcd_panel.io.i80: panel_io_i80_tx_color -I (70208) lcd_panel.io.i80: 1 -I (70208) lcd_panel.io.i80: 2 -I (70208) lcd_panel.io.i80: 3 -I (70208) lcd_panel.io.i80: 4 -I (70208) lcd_panel.io.i80: 5 -I (70208) lcd_panel.io.i80: 6 -I (71208) led matrix: line trans done -I (72208) led matrix: Test send data to LCD -I (72208) lcd_panel.io: esp_lcd_panel_io_tx_color -I (72208) lcd_panel.io.i80: panel_io_i80_tx_color -I (72208) lcd_panel.io.i80: 1 -I (72208) lcd_panel.io.i80: 2 -I (72208) lcd_panel.io.i80: 3 -I (72208) lcd_panel.io.i80: 4 -I (72208) lcd_panel.io.i80: 5 -I (72208) lcd_panel.io.i80: 6 +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37940 bytes. Smallest app partition is 0x100000 bytes. 0xc86c0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227648 bytes to 118319... +Writing at 0x00010000... (12 %) +Writing at 0x0001d328... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029678... (50 %) +Writing at 0x0002f467... (62 %) +Writing at 0x00038d82... (75 %) +Writing at 0x00040117... (87 %) +Writing at 0x00045f3d... (100 %) +Wrote 227648 bytes (118319 compressed) at 0x00010000 in 2.5 seconds (effective 732.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_14512 b/build/log/idf_py_stdout_output_14512 new file mode 100644 index 0000000..fd8f11c --- /dev/null +++ b/build/log/idf_py_stdout_output_14512 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118328... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f465... (62 %) +Writing at 0x00038d94... (75 %) +Writing at 0x0004011f... (87 %) +Writing at 0x00045f41... (100 %) +Wrote 227664 bytes (118328 compressed) at 0x00010000 in 2.5 seconds (effective 719.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_14528 b/build/log/idf_py_stdout_output_14528 new file mode 100644 index 0000000..73095a5 --- /dev/null +++ b/build/log/idf_py_stdout_output_14528 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb4ch (117580) map +I (143) esp_image: segment 4: paddr=0003cb74 vaddr=40376acc size=0ad68h ( 44392) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375238 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 19c26eeda108ceff... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_14600 b/build/log/idf_py_stdout_output_14600 new file mode 100644 index 0000000..ed3af64 --- /dev/null +++ b/build/log/idf_py_stdout_output_14600 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 6708bf0383394f06... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_14640 b/build/log/idf_py_stdout_output_14640 new file mode 100644 index 0000000..ab13d17 --- /dev/null +++ b/build/log/idf_py_stdout_output_14640 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +ccache E:\Espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\bin\xtensa-esp32s3-elf-gcc.exe -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DUNITY_INCLUDE_CONFIG_H -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_ringbuf/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/deprecated -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_pm/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/library -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/esp_crt_bundle/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/bootloader_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_partition/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_update/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spi_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/pthread/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_timer/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_trace/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_event/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/nvs_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/vfs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_netif/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/esp_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_wifi/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/unity/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/cmock/CMock/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/console -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/http_parser -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls/esp-tls-crypto -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/deprecated/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_eth/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hid/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/tcp_transport/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_client/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_server/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_https_ota/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protobuf-c/protobuf-c -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/common -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/security -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/transports -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_local_ctrl/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_psram/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include/port/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wear_levelling/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/sdmmc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/diskio -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/vfs -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ieee802154/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/json/cJSON -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mqtt/esp-mqtt/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/perfmon/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spiffs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/touch_element/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/usb/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wifi_provisioning/include -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\"v5.0.4-dirty\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -MD -MT esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -MF esp-idf\main\CMakeFiles\__idf_main.dir\i80_controller_example_main.c.obj.d -o esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -c E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c: In function 'ledc_timer_ovf_isr': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:5: error: too few arguments to function 'hub75_send_line' + 179 | hub75_send_line(io_handle, line); + | ^~~~~~~~~~~~~~~ +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:89:6: note: declared here + 89 | void hub75_send_line(esp_lcd_panel_io_handle_t io, int times, int line); + | ^~~~~~~~~~~~~~~ +ninja: build stopped: subcommand failed. diff --git a/build/log/idf_py_stdout_output_14700 b/build/log/idf_py_stdout_output_14700 new file mode 100644 index 0000000..36ddfe2 --- /dev/null +++ b/build/log/idf_py_stdout_output_14700 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting.... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118319... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x00023129... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f462... (62 %) +Writing at 0x00038d8a... (75 %) +Writing at 0x0004011f... (87 %) +Writing at 0x00045f45... (100 %) +Wrote 227664 bytes (118319 compressed) at 0x00010000 in 2.5 seconds (effective 732.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.0 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_14720 b/build/log/idf_py_stdout_output_14720 new file mode 100644 index 0000000..b90c5f3 --- /dev/null +++ b/build/log/idf_py_stdout_output_14720 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37940 bytes. Smallest app partition is 0x100000 bytes. 0xc86c0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 227648 bytes to 118319... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029678... (50 %) +Writing at 0x0002f467... (62 %) +Writing at 0x00038d82... (75 %) +Writing at 0x00040117... (87 %) +Writing at 0x00045f40... (100 %) +Wrote 227648 bytes (118319 compressed) at 0x00010000 in 2.5 seconds (effective 737.6 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.1 seconds (effective 394.5 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_14744 b/build/log/idf_py_stdout_output_14744 new file mode 100644 index 0000000..311ef0c --- /dev/null +++ b/build/log/idf_py_stdout_output_14744 @@ -0,0 +1,37 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:161:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 161 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37940 bytes. Smallest app partition is 0x100000 bytes. 0xc86c0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_14800 b/build/log/idf_py_stdout_output_14800 new file mode 100644 index 0000000..56e2b38 --- /dev/null +++ b/build/log/idf_py_stdout_output_14800 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb10h (117520) map +I (143) esp_image: segment 4: paddr=0003cb38 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 5fc9c4a6a4ba6bfa... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_14820 b/build/log/idf_py_stdout_output_14820 new file mode 100644 index 0000000..9aed1af --- /dev/null +++ b/build/log/idf_py_stdout_output_14820 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 227632 bytes to 118298... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2cc... (25 %) +Writing at 0x00023125... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f45e... (62 %) +Writing at 0x00038d8a... (75 %) +Writing at 0x00040115... (87 %) +Writing at 0x00045f45... (100 %) +Wrote 227632 bytes (118298 compressed) at 0x00010000 in 2.5 seconds (effective 723.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.8 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_14884 b/build/log/idf_py_stdout_output_14884 new file mode 100644 index 0000000..c789731 --- /dev/null +++ b/build/log/idf_py_stdout_output_14884 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_14908 b/build/log/idf_py_stdout_output_14908 new file mode 100644 index 0000000..b81bbca --- /dev/null +++ b/build/log/idf_py_stdout_output_14908 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360f0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f10 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_14928 b/build/log/idf_py_stdout_output_14928 new file mode 100644 index 0000000..af43093 --- /dev/null +++ b/build/log/idf_py_stdout_output_14928 @@ -0,0 +1,67 @@ +I (105) esp_image: segment 1: paddr=0001b254 vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x4037a25b +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b22ch ( 45612) map +I (105) esp_image: segment 1: paddr=0001b254 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d564 vaddr=40374000 size=02ab4h ( 10932) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb5ch (117596) map +I (143) esp_image: segment 4: paddr=0003cb84 vaddr=40376ab4 size=0ada4h ( 44452) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375244 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: ee913fb25c145f31... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_14960 b/build/log/idf_py_stdout_output_14960 new file mode 100644 index 0000000..18d8b06 --- /dev/null +++ b/build/log/idf_py_stdout_output_14960 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118325... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f465... (62 %) +Writing at 0x00038d94... (75 %) +Writing at 0x0004011f... (87 %) +Writing at 0x00045f42... (100 %) +Wrote 227664 bytes (118325 compressed) at 0x00010000 in 2.5 seconds (effective 715.1 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_15016 b/build/log/idf_py_stdout_output_15016 new file mode 100644 index 0000000..3bb1678 --- /dev/null +++ b/build/log/idf_py_stdout_output_15016 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting.... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118320... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x00023125... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f462... (62 %) +Writing at 0x00038d8a... (75 %) +Writing at 0x0004011f... (87 %) +Writing at 0x00045f3f... (100 %) +Wrote 227664 bytes (118320 compressed) at 0x00010000 in 2.5 seconds (effective 728.4 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.8 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_15056 b/build/log/idf_py_stdout_output_15056 new file mode 100644 index 0000000..b480018 --- /dev/null +++ b/build/log/idf_py_stdout_output_15056 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_15064 b/build/log/idf_py_stdout_output_15064 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_15064 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_15072 b/build/log/idf_py_stdout_output_15072 new file mode 100644 index 0000000..36cd6a7 --- /dev/null +++ b/build/log/idf_py_stdout_output_15072 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360f0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f10 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.4 kbit/s)... +Hash of data verified. +Compressed 221424 bytes to 115100... +Writing at 0x00010000... (12 %) +Writing at 0x0001d05a... (25 %) +Writing at 0x00022e04... (37 %) +Writing at 0x000291f4... (50 %) +Writing at 0x0002fa7d... (62 %) +Writing at 0x0003983e... (75 %) +Writing at 0x0003f9fc... (87 %) +Writing at 0x00045efc... (100 %) +Wrote 221424 bytes (115100 compressed) at 0x00010000 in 2.4 seconds (effective 731.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.8 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_15080 b/build/log/idf_py_stdout_output_15080 new file mode 100644 index 0000000..0b19258 --- /dev/null +++ b/build/log/idf_py_stdout_output_15080 @@ -0,0 +1,35 @@ +[1/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[2/9] Linking C static library esp-idf\main\libmain.a +[3/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_15136 b/build/log/idf_py_stdout_output_15136 new file mode 100644 index 0000000..24ca42d --- /dev/null +++ b/build/log/idf_py_stdout_output_15136 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36120 bytes. Smallest app partition is 0x100000 bytes. 0xc9ee0 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 221472 bytes to 115159... +Writing at 0x00010000... (12 %) +Writing at 0x0001cffa... (25 %) +Writing at 0x00022e07... (37 %) +Writing at 0x000291e4... (50 %) +Writing at 0x0002fa6b... (62 %) +Writing at 0x00039785... (75 %) +Writing at 0x0003f9de... (87 %) +Writing at 0x00045eb3... (100 %) +Wrote 221472 bytes (115159 compressed) at 0x00010000 in 2.5 seconds (effective 722.1 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_15188 b/build/log/idf_py_stdout_output_15188 index 692c300..bdbf024 100644 --- a/build/log/idf_py_stdout_output_15188 +++ b/build/log/idf_py_stdout_output_15188 @@ -1,7 +1,7 @@ -I (104) esp_image: segment 1: paddr=0001a4d4 vaddr=3fc916ESP-ROM:esp32s3-20210327 +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 Build:Mar 27 2021 rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) -Saved PC:0x40378c1e +Saved PC:0x40378c76 SPIWP:0xee mode:DIO, clock div:1 load:0x3fce3810,len:0x168c @@ -22,133 +22,87 @@ entry 0x403c9908 I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 I (76) boot: 2 factory factory app 00 00 00010000 00100000 I (84) boot: End of partition table -I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0a4ach ( 42156) map -I (104) esp_image: segment 1: paddr=0001a4d4 vaddr=3fc91600 size=022f8h ( 8952) load -I (107) esp_image: segment 2: paddr=0001c7d4 vaddr=40374000 size=03844h ( 14404) load -I (117) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1b0fch (110844) map -I (142) esp_image: segment 4: paddr=0003b124 vaddr=40377844 size=09d2ch ( 40236) load -I (156) boot: Loaded app from partition at offset 0x10000 -I (157) boot: Disabling RNG early entropy source... -I (157) cpu_start: Multicore app -I (161) cpu_start: Pro cpu up. -I (165) cpu_start: Starting app cpu, entry point is 0x403751c0 +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcc4h (113860) map +I (142) esp_image: segment 4: paddr=0003bcec vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375214 I (0) cpu_start: App cpu up. -I (180) cpu_start: Pro cpu start user code +I (181) cpu_start: Pro cpu start user code I (181) cpu_start: cpu freq: 160000000 Hz -I (181) cpu_start: Application information: -I (181) cpu_start: Project name: i80_controller -I (181) cpu_start: App version: 7d6a7d3-dirty -I (181) cpu_start: Compile time: Jan 29 2024 08:38:13 -I (182) cpu_start: ELF file SHA256: 531992e8aeae88c8... -I (182) cpu_start: ESP-IDF: v5.0.4-dirty -I (182) cpu_start: Min chip rev: v0.0 -I (182) cpu_start: Max chip rev: v0.99  +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 905adfdbd5c2fef2... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  I (183) cpu_start: Chip rev: v0.1 -I (183) heap_init: Initializing. RAM available for dynamic allocation: -I (183) heap_init: At 3FC94308 len 00055408 (341 KiB): DRAM -I (183) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM -I (184) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM -I (184) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM -I (185) spi_flash: detected chip: gd +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd I (186) spi_flash: flash io: dio -W (186) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. -I (187) app_start: Starting scheduler on CPU0 -I (187) app_start: Starting scheduler on CPU1 -I (187) main_task: Started on CPU0 -I (197) main_task: Calling app_main() -I (197) led matrix: Initialize Intel 8080 bus -I (197) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) led matrix: Test send data to LCD -I (197) lcd_panel.io: esp_lcd_panel_io_tx_color -I (197) lcd_panel.io.i80: panel_io_i80_tx_color -I (197) lcd_panel.io.i80: 1 -I (197) lcd_panel.io.i80: 2 -I (197) lcd_panel.io.i80: 3 -I (197) lcd_panel.io.i80: 4 -I (197) lcd_panel.io.i80: 5 -I (197) lcd_panel.io.i80: 6 -I (1207) led matrix: line trans done -I (2207) led matrix: Test send data to LCD -I (2207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (2207) lcd_panel.io.i80: panel_io_i80_tx_color -I (2207) lcd_panel.io.i80: 1 -I (2207) lcd_panel.io.i80: 2 -I (2207) lcd_panel.io.i80: 3 -I (2207) lcd_panel.io.i80: 4 -I (2207) lcd_panel.io.i80: 5 -I (2207) lcd_panel.io.i80: 6 -I (3207) led matrix: line trans done -I (4207) led matrix: Test send data to LCD -I (4207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (4207) lcd_panel.io.i80: panel_io_i80_tx_color -I (4207) lcd_panel.io.i80: 1 -I (4207) lcd_panel.io.i80: 2 -I (4207) lcd_panel.io.i80: 3 -I (4207) lcd_panel.io.i80: 4 -I (4207) lcd_panel.io.i80: 5 -I (4207) lcd_panel.io.i80: 6 -I (5207) led matrix: line trans done -I (6207) led matrix: Test send data to LCD -I (6207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (6207) lcd_panel.io.i80: panel_io_i80_tx_color -I (6207) lcd_panel.io.i80: 1 -I (6207) lcd_panel.io.i80: 2 -I (6207) lcd_panel.io.i80: 3 -I (6207) lcd_panel.io.i80: 4 -I (6207) lcd_panel.io.i80: 5 -I (6207) lcd_panel.io.i80: 6 -I (7207) led matrix: line trans done -I (8207) led matrix: Test send data to LCD -I (8207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (8207) lcd_panel.io.i80: panel_io_i80_tx_color -I (8207) lcd_panel.io.i80: 1 -I (8207) lcd_panel.io.i80: 2 -I (8207) lcd_panel.io.i80: 3 -I (8207) lcd_panel.io.i80: 4 -I (8207) lcd_panel.io.i80: 5 -I (8207) lcd_panel.io.i80: 6 -I (9207) led matrix: line trans done -I (10207) led matrix: Test send data to LCD -I (10207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (10207) lcd_panel.io.i80: panel_io_i80_tx_color -I (10207) lcd_panel.io.i80: 1 -I (10207) lcd_panel.io.i80: 2 -I (10207) lcd_panel.io.i80: 3 -I (10207) lcd_panel.io.i80: 4 -I (10207) lcd_panel.io.i80: 5 -I (10207) lcd_panel.io.i80: 6 -I (11207) led matrix: line trans done -I (12207) led matrix: Test send data to LCD -I (12207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (12207) lcd_panel.io.i80: panel_io_i80_tx_color -I (12207) lcd_panel.io.i80: 1 -I (12207) lcd_panel.io.i80: 2 -I (12207) lcd_panel.io.i80: 3 -I (12207) lcd_panel.io.i80: 4 -I (12207) lcd_panel.io.i80: 5 -I (12207) lcd_panel.io.i80: 6 -I (13207) led matrix: line trans done -I (14207) led matrix: Test send data to LCD -I (14207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (14207) lcd_panel.io.i80: panel_io_i80_tx_color -I (14207) lcd_panel.io.i80: 1 -I (14207) lcd_panel.io.i80: 2 -I (14207) lcd_panel.io.i80: 3 -I (14207) lcd_panel.io.i80: 4 -I (14207) lcd_panel.io.i80: 5 -I (14207) lcd_panel.io.i80: 6 -I (15207) led matrix: line trans done -I (16207) led matrix: Test send data to LCD -I (16207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (16207) lcd_panel.io.i80: panel_io_i80_tx_color -I (16207) lcd_panel.io.i80: 1 -I (16207) lcd_panel.io.i80: 2 -I (16207) lcd_panel.io.i80: 3 -I (16207) lcd_panel.io.i80: 4 -I (16207) lcd_panel.io.i80: 5 -I (16207) lcd_panel.io.i80: 6 +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) led matrix: -1 display +I (2219) led matrix: 0 display +I (4239) led matrix: -1 display +I (6259) led matrix: 0 display +I (8279) led matrix: -1 display +I (10299) led matrix: 0 display +I (12319) led matrix: -1 display +I (14339) led matrix: 0 display +I (16359) led matrix: -1 display +I (18379) led matrix: 0 display +I (20399) led matrix: -1 display +I (22419) led matrix: 0 display +I (24439) led matrix: -1 display +I (26459) led matrix: 0 display +I (28479) led matrix: -1 display +I (30499) led matrix: 0 display +I (32519) led matrix: -1 display +I (34539) led matrix: 0 display +I (36559) led matrix: -1 display +I (38579) led matrix: 0 display +I (40599) led matrix: -1 display +I (42619) led matrix: 0 display +I (44639) led matrix: -1 display +I (46659) led matrix: 0 display +I (48679) led matrix: -1 display +I (50699) led matrix: 0 display +I (52719) led matrix: -1 display +I (54739) led matrix: 0 display +I (56759) led matrix: -1 display +I (58779) led matrix: 0 display +I (60799) led matrix: -1 display +I (62819) led matrix: 0 display +I (64839) led matrix: -1 display +I (66859) led matrix: 0 display +I (68879) led matrix: -1 display +I (70899) led matrix: 0 display +I (72919) led matrix: -1 display +I (74939) led matrix: 0 display +I (76959) led matrix: -1 display +I (78979) led matrix: 0 display +I (80999) led matrix: -1 display diff --git a/build/log/idf_py_stdout_output_15192 b/build/log/idf_py_stdout_output_15192 new file mode 100644 index 0000000..5ff5c23 --- /dev/null +++ b/build/log/idf_py_stdout_output_15192 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36130 bytes. Smallest app partition is 0x100000 bytes. 0xc9ed0 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 221488 bytes to 115185... +Writing at 0x00010000... (12 %) +Writing at 0x0001cff8... (25 %) +Writing at 0x00022e07... (37 %) +Writing at 0x000291de... (50 %) +Writing at 0x0002fa68... (62 %) +Writing at 0x00039740... (75 %) +Writing at 0x0003f9ce... (87 %) +Writing at 0x00045ea7... (100 %) +Wrote 221488 bytes (115185 compressed) at 0x00010000 in 2.5 seconds (effective 722.2 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_15204 b/build/log/idf_py_stdout_output_15204 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_15204 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_15276 b/build/log/idf_py_stdout_output_15276 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_15276 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_15280 b/build/log/idf_py_stdout_output_15280 new file mode 100644 index 0000000..c789731 --- /dev/null +++ b/build/log/idf_py_stdout_output_15280 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_15312 b/build/log/idf_py_stdout_output_15312 new file mode 100644 index 0000000..8056ea0 --- /dev/null +++ b/build/log/idf_py_stdout_output_15312 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118318... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f464... (62 %) +Writing at 0x00038d94... (75 %) +Writing at 0x00040121... (87 %) +Writing at 0x00045f48... (100 %) +Wrote 227664 bytes (118318 compressed) at 0x00010000 in 2.5 seconds (effective 728.4 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_1532 b/build/log/idf_py_stdout_output_1532 new file mode 100644 index 0000000..9b38b6c --- /dev/null +++ b/build/log/idf_py_stdout_output_1532 @@ -0,0 +1,88 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcb4h (113844) map +I (142) esp_image: segment 4: paddr=0003bcdc vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e755f296f848f7b4... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (186) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display +I (22419) led matrix: 2 display +I (24439) led matrix: 3 display +I (26459) led matrix: 4 display +I (28479) led matrix: 5 display +I (30499) led matrix: 6 display +I (32519) led matrix: 7 display +I (34539) led matrix: 0 display +I (36559) led matrix: 1 display +I (38579) led matrix: 2 display +I (40599) led matrix: 3 display +I (42619) led matrix: 4 display diff --git a/build/log/idf_py_stdout_output_15320 b/build/log/idf_py_stdout_output_15320 new file mode 100644 index 0000000..e649307 --- /dev/null +++ b/build/log/idf_py_stdout_output_15320 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.4 kbit/s)... +Hash of data verified. +Compressed 227680 bytes to 118329... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312f... (37 %) +Writing at 0x0002968d... (50 %) +Writing at 0x0002f466... (62 %) +Writing at 0x00038d95... (75 %) +Writing at 0x00040123... (87 %) +Writing at 0x00045f45... (100 %) +Wrote 227680 bytes (118329 compressed) at 0x00010000 in 2.5 seconds (effective 724.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.7 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_15344 b/build/log/idf_py_stdout_output_15344 new file mode 100644 index 0000000..8799ab2 --- /dev/null +++ b/build/log/idf_py_stdout_output_15344 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36130 bytes. Smallest app partition is 0x100000 bytes. 0xc9ed0 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 221488 bytes to 115169... +Writing at 0x00010000... (12 %) +Writing at 0x0001d036... (25 %) +Writing at 0x00022e01... (37 %) +Writing at 0x000291dd... (50 %) +Writing at 0x0002fa6b... (62 %) +Writing at 0x0003975c... (75 %) +Writing at 0x0003f9e2... (87 %) +Writing at 0x00045eb4... (100 %) +Wrote 221488 bytes (115169 compressed) at 0x00010000 in 2.5 seconds (effective 722.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_15356 b/build/log/idf_py_stdout_output_15356 new file mode 100644 index 0000000..c62164a --- /dev/null +++ b/build/log/idf_py_stdout_output_15356 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118328... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f466... (62 %) +Writing at 0x00038d95... (75 %) +Writing at 0x00040122... (87 %) +Writing at 0x00045f42... (100 %) +Wrote 227664 bytes (118328 compressed) at 0x00010000 in 2.5 seconds (effective 719.4 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.8 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_1608 b/build/log/idf_py_stdout_output_1608 new file mode 100644 index 0000000..b04230d --- /dev/null +++ b/build/log/idf_py_stdout_output_1608 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dba +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb58h (117592) map +I (143) esp_image: segment 4: paddr=0003cb80 vaddr=40376acc size=0adach ( 44460) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375244 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 3b285a9ca9f69bb4... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_1664 b/build/log/idf_py_stdout_output_1664 new file mode 100644 index 0000000..cd9abdd --- /dev/null +++ b/build/log/idf_py_stdout_output_1664 @@ -0,0 +1,26 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/esp_lcd/CMakeFiles/__idf_esp_lcd.dir/src/esp_lcd_panel_io.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/src/esp_lcd_panel_io.c:9: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include/hal/lcd_types.h:9, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_types.h:8, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/src/esp_lcd_panel_io.c:9: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +[3/7] Linking C static library esp-idf\esp_lcd\libesp_lcd.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_1748 b/build/log/idf_py_stdout_output_1748 new file mode 100644 index 0000000..361f422 --- /dev/null +++ b/build/log/idf_py_stdout_output_1748 @@ -0,0 +1,37 @@ +[1/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:161:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 161 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[2/9] Linking C static library esp-idf\main\libmain.a +[3/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_1836 b/build/log/idf_py_stdout_output_1836 new file mode 100644 index 0000000..3a882a6 --- /dev/null +++ b/build/log/idf_py_stdout_output_1836 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118331... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f464... (62 %) +Writing at 0x00038d93... (75 %) +Writing at 0x0004011f... (87 %) +Writing at 0x00045f42... (100 %) +Wrote 227664 bytes (118331 compressed) at 0x00010000 in 2.5 seconds (effective 719.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.1 seconds (effective 394.9 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_1892 b/build/log/idf_py_stdout_output_1892 new file mode 100644 index 0000000..21edfe2 --- /dev/null +++ b/build/log/idf_py_stdout_output_1892 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37900 bytes. Smallest app partition is 0x100000 bytes. 0xc8700 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting.... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 433.7 kbit/s)... +Hash of data verified. +Compressed 227584 bytes to 118241... +Writing at 0x00010000... (12 %) +Writing at 0x0001d34c... (25 %) +Writing at 0x0002313d... (37 %) +Writing at 0x00029695... (50 %) +Writing at 0x0002f478... (62 %) +Writing at 0x00038dac... (75 %) +Writing at 0x00040124... (87 %) +Writing at 0x00045f5f... (100 %) +Wrote 227584 bytes (118241 compressed) at 0x00010000 in 2.5 seconds (effective 732.6 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.7 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_1912 b/build/log/idf_py_stdout_output_1912 new file mode 100644 index 0000000..5b15d33 --- /dev/null +++ b/build/log/idf_py_stdout_output_1912 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb34h (117556) map +I (143) esp_image: segment 4: paddr=0003cb5c vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 8b02eb1af5f1df09... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_1988 b/build/log/idf_py_stdout_output_1988 new file mode 100644 index 0000000..9023ad6 --- /dev/null +++ b/build/log/idf_py_stdout_output_1988 @@ -0,0 +1,58 @@ +[1/10] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[2/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[3/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:153:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 153 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[4/8] Linking C static library esp-idf\main\libmain.a +[5/8] Generating ld/sections.ld +[6/8] Linking CXX executable i80_controller.elf +[7/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37990 bytes. Smallest app partition is 0x100000 bytes. 0xc8670 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_2024 b/build/log/idf_py_stdout_output_2024 new file mode 100644 index 0000000..cefaf15 --- /dev/null +++ b/build/log/idf_py_stdout_output_2024 @@ -0,0 +1,58 @@ +[1/10] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[2/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[3/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[4/8] Linking C static library esp-idf\main\libmain.a +[5/8] Generating ld/sections.ld +[6/8] Linking CXX executable i80_controller.elf +[7/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37900 bytes. Smallest app partition is 0x100000 bytes. 0xc8700 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_2104 b/build/log/idf_py_stdout_output_2104 new file mode 100644 index 0000000..ab2f81d --- /dev/null +++ b/build/log/idf_py_stdout_output_2104 @@ -0,0 +1,35 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +ccache E:\Espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\bin\xtensa-esp32s3-elf-gcc.exe -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DUNITY_INCLUDE_CONFIG_H -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_ringbuf/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/deprecated -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_pm/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/library -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/esp_crt_bundle/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/bootloader_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_partition/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_update/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spi_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/pthread/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_timer/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_trace/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_event/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/nvs_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/vfs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_netif/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/esp_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_wifi/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/unity/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/cmock/CMock/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/console -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/http_parser -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls/esp-tls-crypto -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/deprecated/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_eth/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hid/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/tcp_transport/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_client/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_server/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_https_ota/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protobuf-c/protobuf-c -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/common -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/security -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/transports -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_local_ctrl/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_psram/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include/port/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wear_levelling/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/sdmmc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/diskio -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/vfs -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ieee802154/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/json/cJSON -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mqtt/esp-mqtt/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/perfmon/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spiffs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/touch_element/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/usb/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wifi_provisioning/include -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\"v5.0.4-dirty\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -MD -MT esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -MF esp-idf\main\CMakeFiles\__idf_main.dir\i80_controller_example_main.c.obj.d -o esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -c E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c: In function 'led_matrix_addr_gpio_init': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:120:20: error: redefinition of 'io_conf' + 120 | gpio_config_t io_conf = { + | ^~~~~~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:109:19: note: previous definition of 'io_conf' with type 'gpio_config_t' + 109 | gpio_config_t io_conf = { + | ^~~~~~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c: At top level: +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:187:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 187 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:136:23: note: previous declaration here + 136 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +ninja: build stopped: subcommand failed. diff --git a/build/log/idf_py_stdout_output_2124 b/build/log/idf_py_stdout_output_2124 new file mode 100644 index 0000000..ebb74d6 --- /dev/null +++ b/build/log/idf_py_stdout_output_2124 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36130 bytes. Smallest app partition is 0x100000 bytes. 0xc9ed0 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 435.4 kbit/s)... +Hash of data verified. +Compressed 221488 bytes to 115168... +Writing at 0x00010000... (12 %) +Writing at 0x0001d037... (25 %) +Writing at 0x00022e01... (37 %) +Writing at 0x000291dd... (50 %) +Writing at 0x0002fa6b... (62 %) +Writing at 0x0003975c... (75 %) +Writing at 0x0003f9e1... (87 %) +Writing at 0x00045eb4... (100 %) +Wrote 221488 bytes (115168 compressed) at 0x00010000 in 2.4 seconds (effective 726.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.0 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_2204 b/build/log/idf_py_stdout_output_2204 new file mode 100644 index 0000000..46fd072 --- /dev/null +++ b/build/log/idf_py_stdout_output_2204 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb38h (117560) map +I (143) esp_image: segment 4: paddr=0003cb60 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 8ab9a02705c46a87... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_2268 b/build/log/idf_py_stdout_output_2268 new file mode 100644 index 0000000..d57d92e --- /dev/null +++ b/build/log/idf_py_stdout_output_2268 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37910 bytes. Smallest app partition is 0x100000 bytes. 0xc86f0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.3 kbit/s)... +Hash of data verified. +Compressed 227600 bytes to 118250... +Writing at 0x00010000... (12 %) +Writing at 0x0001d34f... (25 %) +Writing at 0x00023141... (37 %) +Writing at 0x0002969d... (50 %) +Writing at 0x0002f47d... (62 %) +Writing at 0x00038db2... (75 %) +Writing at 0x00040125... (87 %) +Writing at 0x00045f5d... (100 %) +Wrote 227600 bytes (118250 compressed) at 0x00010000 in 2.5 seconds (effective 728.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.9 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_2304 b/build/log/idf_py_stdout_output_2304 index 8389899..a74726c 100644 --- a/build/log/idf_py_stdout_output_2304 +++ b/build/log/idf_py_stdout_output_2304 @@ -1,44 +1,35 @@ -[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" -i80_controller.bin binary size 0x34f50 bytes. Smallest app partition is 0x100000 bytes. 0xcb0b0 bytes (79%) free. -[2/5] Performing build step for 'bootloader' +[1/9] Performing build step for 'bootloader' [1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. -[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" -esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable esptool.py v4.6.2 -Serial port COM3 -Connecting... -Chip is ESP32-S3 (revision v0.1) -Features: WiFi, BLE -Crystal is 40MHz -MAC: 60:55:f9:f5:71:08 -Uploading stub... -Running stub... -Stub running... -Changing baud rate to 460800 -Changed. -Configuring flash size... -Flash will be erased from 0x00000000 to 0x00004fff... -Flash will be erased from 0x00010000 to 0x00044fff... -Flash will be erased from 0x00008000 to 0x00008fff... -Compressed 20368 bytes to 12915... -Writing at 0x00000000... (100 %) -Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.4 kbit/s)... -Hash of data verified. -Compressed 216912 bytes to 113167... -Writing at 0x00010000... (14 %) -Writing at 0x0001cda4... (28 %) -Writing at 0x00022a0b... (42 %) -Writing at 0x00028c00... (57 %) -Writing at 0x0002f395... (71 %) -Writing at 0x00039809... (85 %) -Writing at 0x0003f2d1... (100 %) -Wrote 216912 bytes (113167 compressed) at 0x00010000 in 2.2 seconds (effective 774.4 kbit/s)... -Hash of data verified. -Compressed 3072 bytes to 103... -Writing at 0x00008000... (100 %) -Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.2 kbit/s)... -Hash of data verified. - -Leaving... -Hard resetting via RTS pin... +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36140 bytes. Smallest app partition is 0x100000 bytes. 0xc9ec0 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_2392 b/build/log/idf_py_stdout_output_2392 new file mode 100644 index 0000000..40753f8 --- /dev/null +++ b/build/log/idf_py_stdout_output_2392 @@ -0,0 +1,58 @@ +[1/10] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:161:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 161 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[2/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[3/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[4/8] Linking C static library esp-idf\main\libmain.a +[5/8] Generating ld/sections.ld +[6/8] Linking CXX executable i80_controller.elf +[7/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37940 bytes. Smallest app partition is 0x100000 bytes. 0xc86c0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_244 b/build/log/idf_py_stdout_output_244 new file mode 100644 index 0000000..98e31ce --- /dev/null +++ b/build/log/idf_py_stdout_output_244 @@ -0,0 +1,123 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcb0h (113840) map +I (142) esp_image: segment 4: paddr=0003bcd8 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: a5e5bbc58b0cdf2f... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (3209) led matrix: 0 display +I (6219) led matrix: 0 display +I (9229) led matrix: 0 display +I (12239) led matrix: 0 display +I (15249) led matrix: 0 display +I (18259) led matrix: 0 display +I (21269) led matrix: 0 display +I (24279) led matrix: 0 display +I (27289) led matrix: 0 display +I (30299) led matrix: 0 display +I (33309) led matrix: 0 display +I (36319) led matrix: 0 display +I (39329) led matrix: 0 display +I (42339) led matrix: 0 display +I (45349) led matrix: 0 display +I (48359) led matrix: 0 display +I (51369) led matrix: 0 display +I (54379) led matrix: 0 display +I (57389) led matrix: 0 display +I (60399) led matrix: 0 display +I (63409) led matrix: 0 display +I (66419) led matrix: 0 display +I (69429) led matrix: 0 display +I (72439) led matrix: 0 display +I (75449) led matrix: 0 display +I (78459) led matrix: 0 display +I (81469) led matrix: 0 display +I (84479) led matrix: 0 display +I (87489) led matrix: 0 display +I (90499) led matrix: 0 display +I (93509) led matrix: 0 display +I (96519) led matrix: 0 display +I (99529) led matrix: 0 display +I (102539) led matrix: 0 display +I (105549) led matrix: 0 display +I (108559) led matrix: 0 display +I (111569) led matrix: 0 display +I (114579) led matrix: 0 display +I (117589) led matrix: 0 display +I (120599) led matrix: 0 display +I (123609) led matrix: 0 display +I (126619) led matrix: 0 display +I (129629) led matrix: 0 display +I (132639) led matrix: 0 display +I (135649) led matrix: 0 display +I (138659) led matrix: 0 display +I (141669) led matrix: 0 display +I (144679) led matrix: 0 display +I (147689) led matrix: 0 display +I (150699) led matrix: 0 display +I (153709) led matrix: 0 display +I (156719) led matrix: 0 display +I (159729) led matrix: 0 display +I (162739) led matrix: 0 display +I (165749) led matrix: 0 display +I (168759) led matrix: 0 display diff --git a/build/log/idf_py_stdout_output_2440 b/build/log/idf_py_stdout_output_2440 new file mode 100644 index 0000000..b8242a2 --- /dev/null +++ b/build/log/idf_py_stdout_output_2440 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.2 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118320... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x0002312a... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f463... (62 %) +Writing at 0x00038d93... (75 %) +Writing at 0x00040120... (87 %) +Writing at 0x00045f48... (100 %) +Wrote 227664 bytes (118320 compressed) at 0x00010000 in 2.5 seconds (effective 724.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_2484 b/build/log/idf_py_stdout_output_2484 new file mode 100644 index 0000000..511dbfa --- /dev/null +++ b/build/log/idf_py_stdout_output_2484 @@ -0,0 +1,1448 @@ +I (105) esp_image: segment 1: paddr=0001b344 vaddr=3fc91974) boot: 1 phy_initESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40048839 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (105) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d654 vaddr=40374000 size=029c4h ( 10692) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc34h (117812) map +I (143) esp_image: segment 4: paddr=0003cc5c vaddr=403769c4 size=0ae88h ( 44680) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: d6c74e7c38516abc... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011b39:0x3fc92240 0x42014c7d:0x3fc92550 0x4201cc39:0x3fc92580 0x4037f5d9:0x3fc925b0 0x420087ed:0x3fc92600 0x42007f85:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: d6c74e7c38516abc + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b31ch ( 45852) map +I (104) esp_image: segment 1: paddr=0001b344 vaddr=3fc91900 size=02308h ( 8968) load diff --git a/build/log/idf_py_stdout_output_2536 b/build/log/idf_py_stdout_output_2536 new file mode 100644 index 0000000..ca95975 --- /dev/null +++ b/build/log/idf_py_stdout_output_2536 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 3fa0f4931cf3d092... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_2548 b/build/log/idf_py_stdout_output_2548 new file mode 100644 index 0000000..a4e789f --- /dev/null +++ b/build/log/idf_py_stdout_output_2548 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting.... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 227680 bytes to 118329... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f463... (62 %) +Writing at 0x00038d93... (75 %) +Writing at 0x00040122... (87 %) +Writing at 0x00045f45... (100 %) +Wrote 227680 bytes (118329 compressed) at 0x00010000 in 2.5 seconds (effective 719.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.7 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_2628 b/build/log/idf_py_stdout_output_2628 new file mode 100644 index 0000000..8cec581 --- /dev/null +++ b/build/log/idf_py_stdout_output_2628 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.3 kbit/s)... +Hash of data verified. +Compressed 227680 bytes to 118325... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x00023130... (37 %) +Writing at 0x0002969d... (50 %) +Writing at 0x0002f467... (62 %) +Writing at 0x00038d97... (75 %) +Writing at 0x00040126... (87 %) +Writing at 0x00045f4c... (100 %) +Wrote 227680 bytes (118325 compressed) at 0x00010000 in 2.5 seconds (effective 728.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 525.0 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_2728 b/build/log/idf_py_stdout_output_2728 new file mode 100644 index 0000000..c521224 --- /dev/null +++ b/build/log/idf_py_stdout_output_2728 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36140 bytes. Smallest app partition is 0x100000 bytes. 0xc9ec0 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.2 kbit/s)... +Hash of data verified. +Compressed 221504 bytes to 115180... +Writing at 0x00010000... (12 %) +Writing at 0x0001d039... (25 %) +Writing at 0x00022e01... (37 %) +Writing at 0x000291d5... (50 %) +Writing at 0x0002fa69... (62 %) +Writing at 0x0003974b... (75 %) +Writing at 0x0003f9dd... (87 %) +Writing at 0x00045eb2... (100 %) +Wrote 221504 bytes (115180 compressed) at 0x00010000 in 2.4 seconds (effective 726.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_2864 b/build/log/idf_py_stdout_output_2864 new file mode 100644 index 0000000..d46beed --- /dev/null +++ b/build/log/idf_py_stdout_output_2864 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36120 bytes. Smallest app partition is 0x100000 bytes. 0xc9ee0 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_3172 b/build/log/idf_py_stdout_output_3172 new file mode 100644 index 0000000..208bd29 --- /dev/null +++ b/build/log/idf_py_stdout_output_3172 @@ -0,0 +1,37 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_3192 b/build/log/idf_py_stdout_output_3192 new file mode 100644 index 0000000..62a36f4 --- /dev/null +++ b/build/log/idf_py_stdout_output_3192 @@ -0,0 +1,79 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcb0h (113840) map +I (142) esp_image: segment 4: paddr=0003bcd8 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: ef3ea0419214a1b0... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display +I (22419) led matrix: 2 display +I (24439) led matrix: 3 display diff --git a/build/log/idf_py_stdout_output_3200 b/build/log/idf_py_stdout_output_3200 new file mode 100644 index 0000000..2c73623 --- /dev/null +++ b/build/log/idf_py_stdout_output_3200 @@ -0,0 +1,67 @@ +I (104) esp_image: segment 1: paddr=0001ab54 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab2ch ( 43820) map +I (104) esp_image: segment 1: paddr=0001ab54 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce54 vaddr=40374000 size=031c4h ( 12740) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bc90h (113808) map +I (142) esp_image: segment 4: paddr=0003bcb8 vaddr=403771c4 size=0a404h ( 41988) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 47979b2233651a2b... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (186) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  diff --git a/build/log/idf_py_stdout_output_3288 b/build/log/idf_py_stdout_output_3288 new file mode 100644 index 0000000..604328e --- /dev/null +++ b/build/log/idf_py_stdout_output_3288 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36120 bytes. Smallest app partition is 0x100000 bytes. 0xc9ee0 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting.... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.2 kbit/s)... +Hash of data verified. +Compressed 221472 bytes to 115165... +Writing at 0x00010000... (12 %) +Writing at 0x0001cff7... (25 %) +Writing at 0x00022e01... (37 %) +Writing at 0x000291e1... (50 %) +Writing at 0x0002fa66... (62 %) +Writing at 0x0003977e... (75 %) +Writing at 0x0003f9d7... (87 %) +Writing at 0x00045ea9... (100 %) +Wrote 221472 bytes (115165 compressed) at 0x00010000 in 2.4 seconds (effective 726.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 525.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_3420 b/build/log/idf_py_stdout_output_3420 new file mode 100644 index 0000000..5db5d37 --- /dev/null +++ b/build/log/idf_py_stdout_output_3420 @@ -0,0 +1,108 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcach (113836) map +I (142) esp_image: segment 4: paddr=0003bcd4 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: e5f28ca32d9e639f... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 0 display +I (6259) led matrix: 0 display +I (8279) led matrix: 0 display +I (10299) led matrix: 0 display +I (12319) led matrix: 0 display +I (14339) led matrix: 0 display +I (16359) led matrix: 0 display +I (18379) led matrix: 0 display +I (20399) led matrix: 0 display +I (22419) led matrix: 0 display +I (24439) led matrix: 0 display +I (26459) led matrix: 0 display +I (28479) led matrix: 0 display +I (30499) led matrix: 0 display +I (32519) led matrix: 0 display +I (34539) led matrix: 0 display +I (36559) led matrix: 0 display +I (38579) led matrix: 0 display +I (40599) led matrix: 0 display +I (42619) led matrix: 0 display +I (44639) led matrix: 0 display +I (46659) led matrix: 0 display +I (48679) led matrix: 0 display +I (50699) led matrix: 0 display +I (52719) led matrix: 0 display +I (54739) led matrix: 0 display +I (56759) led matrix: 0 display +I (58779) led matrix: 0 display +I (60799) led matrix: 0 display +I (62819) led matrix: 0 display +I (64839) led matrix: 0 display +I (66859) led matrix: 0 display +I (68879) led matrix: 0 display +I (70899) led matrix: 0 display +I (72919) led matrix: 0 display +I (74939) led matrix: 0 display +I (76959) led matrix: 0 display +I (78979) led matrix: 0 display +I (80999) led matrix: 0 display +I (83019) led matrix: 0 display diff --git a/build/log/idf_py_stdout_output_3564 b/build/log/idf_py_stdout_output_3564 new file mode 100644 index 0000000..98e45d9 --- /dev/null +++ b/build/log/idf_py_stdout_output_3564 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360e0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f20 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.3 kbit/s)... +Hash of data verified. +Compressed 221408 bytes to 115103... +Writing at 0x00010000... (12 %) +Writing at 0x0001d059... (25 %) +Writing at 0x00022e01... (37 %) +Writing at 0x000291f4... (50 %) +Writing at 0x0002fa75... (62 %) +Writing at 0x0003980d... (75 %) +Writing at 0x0003f9f0... (87 %) +Writing at 0x00045ee4... (100 %) +Wrote 221408 bytes (115103 compressed) at 0x00010000 in 2.4 seconds (effective 726.6 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.9 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_3580 b/build/log/idf_py_stdout_output_3580 new file mode 100644 index 0000000..e69de29 diff --git a/build/log/idf_py_stdout_output_3648 b/build/log/idf_py_stdout_output_3648 new file mode 100644 index 0000000..10d7a62 --- /dev/null +++ b/build/log/idf_py_stdout_output_3648 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118320... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2d1... (25 %) +Writing at 0x00023131... (37 %) +Writing at 0x0002967f... (50 %) +Writing at 0x0002f470... (62 %) +Writing at 0x00038d92... (75 %) +Writing at 0x00040124... (87 %) +Writing at 0x00045f4a... (100 %) +Wrote 227664 bytes (118320 compressed) at 0x00010000 in 2.5 seconds (effective 723.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.5 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_3696 b/build/log/idf_py_stdout_output_3696 new file mode 100644 index 0000000..594dcb4 --- /dev/null +++ b/build/log/idf_py_stdout_output_3696 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb20h (117536) map +I (143) esp_image: segment 4: paddr=0003cb48 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 6c9fcaa7c1cedb83... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_3780 b/build/log/idf_py_stdout_output_3780 new file mode 100644 index 0000000..8213228 --- /dev/null +++ b/build/log/idf_py_stdout_output_3780 @@ -0,0 +1,58 @@ +[1/10] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[2/10] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:168:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 168 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/10] Linking C static library esp-idf\main\libmain.a +[4/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[5/8] Generating ld/sections.ld +[6/8] Linking CXX executable i80_controller.elf +[7/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_3972 b/build/log/idf_py_stdout_output_3972 index 50f9fa5..96b6668 100644 --- a/build/log/idf_py_stdout_output_3972 +++ b/build/log/idf_py_stdout_output_3972 @@ -1,264 +1,35 @@ -I (104) esp_image: segment 1: paddr=0001a4d4 vaddr=3fc916ESP-ROM:esp32s3-20210327 -Build:Mar 27 2021 -rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) -Saved PC:0x40378c1e -SPIWP:0xee -mode:DIO, clock div:1 -load:0x3fce3810,len:0x168c -load:0x403c9700,len:0xbe0 -load:0x403cc700,len:0x2cd0 -entry 0x403c9908 -I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader -I (25) boot: compile time 08:38:38 -I (25) boot: Multicore bootloader -I (27) boot: chip revision: v0.1 -I (31) boot.esp32s3: Boot SPI Speed : 80MHz -I (36) boot.esp32s3: SPI Mode : DIO -I (41) boot.esp32s3: SPI Flash Size : 2MB -I (45) boot: Enabling RNG early entropy source... -I (51) boot: Partition Table: -I (54) boot: ## Label Usage Type ST Offset Length -I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 -I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 -I (76) boot: 2 factory factory app 00 00 00010000 00100000 -I (84) boot: End of partition table -I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0a4ach ( 42156) map -I (104) esp_image: segment 1: paddr=0001a4d4 vaddr=3fc91600 size=022f8h ( 8952) load -I (107) esp_image: segment 2: paddr=0001c7d4 vaddr=40374000 size=03844h ( 14404) load -I (117) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1b120h (110880) map -I (142) esp_image: segment 4: paddr=0003b148 vaddr=40377844 size=09d2ch ( 40236) load -I (157) boot: Loaded app from partition at offset 0x10000 -I (157) boot: Disabling RNG early entropy source... -I (157) cpu_start: Multicore app -I (161) cpu_start: Pro cpu up. -I (165) cpu_start: Starting app cpu, entry point is 0x403751c0 -I (0) cpu_start: App cpu up. -I (180) cpu_start: Pro cpu start user code -I (181) cpu_start: cpu freq: 160000000 Hz -I (181) cpu_start: Application information: -I (181) cpu_start: Project name: i80_controller -I (181) cpu_start: App version: 7d6a7d3-dirty -I (181) cpu_start: Compile time: Jan 29 2024 08:38:13 -I (182) cpu_start: ELF file SHA256: f004e884c49fee22... -I (182) cpu_start: ESP-IDF: v5.0.4-dirty -I (182) cpu_start: Min chip rev: v0.0 -I (182) cpu_start: Max chip rev: v0.99  -I (182) cpu_start: Chip rev: v0.1 -I (183) heap_init: Initializing. RAM available for dynamic allocation: -I (183) heap_init: At 3FC94310 len 00055400 (341 KiB): DRAM -I (183) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM -I (184) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM -I (184) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM -I (185) spi_flash: detected chip: gd -I (186) spi_flash: flash io: dio -W (186) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. -I (187) app_start: Starting scheduler on CPU0 -I (187) app_start: Starting scheduler on CPU1 -I (187) main_task: Started on CPU0 -I (197) main_task: Calling app_main() -I (197) led matrix: Initialize Intel 8080 bus -I (197) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  -I (197) led matrix: Test send data to LCD -I (197) lcd_panel.io: esp_lcd_panel_io_tx_color -I (197) lcd_panel.io.i80: panel_io_i80_tx_color -I (197) lcd_panel.io.i80: 1 -I (197) lcd_panel.io.i80: 2 -I (197) lcd_panel.io.i80: 3 -I (197) lcd_panel.io.i80: 4 -I (197) lcd_panel.io.i80: 5 -I (197) lcd_panel.io.i80: 6 -I (1207) led matrix: line trans done -I (2207) led matrix: Test send data to LCD -I (2207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (2207) lcd_panel.io.i80: panel_io_i80_tx_color -I (2207) lcd_panel.io.i80: 1 -I (2207) lcd_panel.io.i80: 2 -I (2207) lcd_panel.io.i80: 3 -I (2207) lcd_panel.io.i80: 4 -I (2207) lcd_panel.io.i80: 5 -I (2207) lcd_panel.io.i80: 6 -I (3207) led matrix: line trans done -I (4207) led matrix: Test send data to LCD -I (4207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (4207) lcd_panel.io.i80: panel_io_i80_tx_color -I (4207) lcd_panel.io.i80: 1 -I (4207) lcd_panel.io.i80: 2 -I (4207) lcd_panel.io.i80: 3 -I (4207) lcd_panel.io.i80: 4 -I (4207) lcd_panel.io.i80: 5 -I (4207) lcd_panel.io.i80: 6 -I (5207) led matrix: line trans done -I (6207) led matrix: Test send data to LCD -I (6207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (6207) lcd_panel.io.i80: panel_io_i80_tx_color -I (6207) lcd_panel.io.i80: 1 -I (6207) lcd_panel.io.i80: 2 -I (6207) lcd_panel.io.i80: 3 -I (6207) lcd_panel.io.i80: 4 -I (6207) lcd_panel.io.i80: 5 -I (6207) lcd_panel.io.i80: 6 -I (7207) led matrix: line trans done -I (8207) led matrix: Test send data to LCD -I (8207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (8207) lcd_panel.io.i80: panel_io_i80_tx_color -I (8207) lcd_panel.io.i80: 1 -I (8207) lcd_panel.io.i80: 2 -I (8207) lcd_panel.io.i80: 3 -I (8207) lcd_panel.io.i80: 4 -I (8207) lcd_panel.io.i80: 5 -I (8207) lcd_panel.io.i80: 6 -I (9207) led matrix: line trans done -I (10207) led matrix: Test send data to LCD -I (10207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (10207) lcd_panel.io.i80: panel_io_i80_tx_color -I (10207) lcd_panel.io.i80: 1 -I (10207) lcd_panel.io.i80: 2 -I (10207) lcd_panel.io.i80: 3 -I (10207) lcd_panel.io.i80: 4 -I (10207) lcd_panel.io.i80: 5 -I (10207) lcd_panel.io.i80: 6 -I (11207) led matrix: line trans done -I (12207) led matrix: Test send data to LCD -I (12207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (12207) lcd_panel.io.i80: panel_io_i80_tx_color -I (12207) lcd_panel.io.i80: 1 -I (12207) lcd_panel.io.i80: 2 -I (12207) lcd_panel.io.i80: 3 -I (12207) lcd_panel.io.i80: 4 -I (12207) lcd_panel.io.i80: 5 -I (12207) lcd_panel.io.i80: 6 -I (13207) led matrix: line trans done -I (14207) led matrix: Test send data to LCD -I (14207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (14207) lcd_panel.io.i80: panel_io_i80_tx_color -I (14207) lcd_panel.io.i80: 1 -I (14207) lcd_panel.io.i80: 2 -I (14207) lcd_panel.io.i80: 3 -I (14207) lcd_panel.io.i80: 4 -I (14207) lcd_panel.io.i80: 5 -I (14207) lcd_panel.io.i80: 6 -I (15207) led matrix: line trans done -I (16207) led matrix: Test send data to LCD -I (16207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (16207) lcd_panel.io.i80: panel_io_i80_tx_color -I (16207) lcd_panel.io.i80: 1 -I (16207) lcd_panel.io.i80: 2 -I (16207) lcd_panel.io.i80: 3 -I (16207) lcd_panel.io.i80: 4 -I (16207) lcd_panel.io.i80: 5 -I (16207) lcd_panel.io.i80: 6 -I (17207) led matrix: line trans done -I (18207) led matrix: Test send data to LCD -I (18207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (18207) lcd_panel.io.i80: panel_io_i80_tx_color -I (18207) lcd_panel.io.i80: 1 -I (18207) lcd_panel.io.i80: 2 -I (18207) lcd_panel.io.i80: 3 -I (18207) lcd_panel.io.i80: 4 -I (18207) lcd_panel.io.i80: 5 -I (18207) lcd_panel.io.i80: 6 -I (19207) led matrix: line trans done -I (20207) led matrix: Test send data to LCD -I (20207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (20207) lcd_panel.io.i80: panel_io_i80_tx_color -I (20207) lcd_panel.io.i80: 1 -I (20207) lcd_panel.io.i80: 2 -I (20207) lcd_panel.io.i80: 3 -I (20207) lcd_panel.io.i80: 4 -I (20207) lcd_panel.io.i80: 5 -I (20207) lcd_panel.io.i80: 6 -I (21207) led matrix: line trans done -I (22207) led matrix: Test send data to LCD -I (22207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (22207) lcd_panel.io.i80: panel_io_i80_tx_color -I (22207) lcd_panel.io.i80: 1 -I (22207) lcd_panel.io.i80: 2 -I (22207) lcd_panel.io.i80: 3 -I (22207) lcd_panel.io.i80: 4 -I (22207) lcd_panel.io.i80: 5 -I (22207) lcd_panel.io.i80: 6 -I (23207) led matrix: line trans done -I (24207) led matrix: Test send data to LCD -I (24207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (24207) lcd_panel.io.i80: panel_io_i80_tx_color -I (24207) lcd_panel.io.i80: 1 -I (24207) lcd_panel.io.i80: 2 -I (24207) lcd_panel.io.i80: 3 -I (24207) lcd_panel.io.i80: 4 -I (24207) lcd_panel.io.i80: 5 -I (24207) lcd_panel.io.i80: 6 -I (25207) led matrix: line trans done -I (26207) led matrix: Test send data to LCD -I (26207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (26207) lcd_panel.io.i80: panel_io_i80_tx_color -I (26207) lcd_panel.io.i80: 1 -I (26207) lcd_panel.io.i80: 2 -I (26207) lcd_panel.io.i80: 3 -I (26207) lcd_panel.io.i80: 4 -I (26207) lcd_panel.io.i80: 5 -I (26207) lcd_panel.io.i80: 6 -I (27207) led matrix: line trans done -I (28207) led matrix: Test send data to LCD -I (28207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (28207) lcd_panel.io.i80: panel_io_i80_tx_color -I (28207) lcd_panel.io.i80: 1 -I (28207) lcd_panel.io.i80: 2 -I (28207) lcd_panel.io.i80: 3 -I (28207) lcd_panel.io.i80: 4 -I (28207) lcd_panel.io.i80: 5 -I (28207) lcd_panel.io.i80: 6 -I (29207) led matrix: line trans done -I (30207) led matrix: Test send data to LCD -I (30207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (30207) lcd_panel.io.i80: panel_io_i80_tx_color -I (30207) lcd_panel.io.i80: 1 -I (30207) lcd_panel.io.i80: 2 -I (30207) lcd_panel.io.i80: 3 -I (30207) lcd_panel.io.i80: 4 -I (30207) lcd_panel.io.i80: 5 -I (30207) lcd_panel.io.i80: 6 -I (31207) led matrix: line trans done -I (32207) led matrix: Test send data to LCD -I (32207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (32207) lcd_panel.io.i80: panel_io_i80_tx_color -I (32207) lcd_panel.io.i80: 1 -I (32207) lcd_panel.io.i80: 2 -I (32207) lcd_panel.io.i80: 3 -I (32207) lcd_panel.io.i80: 4 -I (32207) lcd_panel.io.i80: 5 -I (32207) lcd_panel.io.i80: 6 -I (33207) led matrix: line trans done -I (34207) led matrix: Test send data to LCD -I (34207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (34207) lcd_panel.io.i80: panel_io_i80_tx_color -I (34207) lcd_panel.io.i80: 1 -I (34207) lcd_panel.io.i80: 2 -I (34207) lcd_panel.io.i80: 3 -I (34207) lcd_panel.io.i80: 4 -I (34207) lcd_panel.io.i80: 5 -I (34207) lcd_panel.io.i80: 6 -I (35207) led matrix: line trans done -I (36207) led matrix: Test send data to LCD -I (36207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (36207) lcd_panel.io.i80: panel_io_i80_tx_color -I (36207) lcd_panel.io.i80: 1 -I (36207) lcd_panel.io.i80: 2 -I (36207) lcd_panel.io.i80: 3 -I (36207) lcd_panel.io.i80: 4 -I (36207) lcd_panel.io.i80: 5 -I (36207) lcd_panel.io.i80: 6 -I (37207) led matrix: line trans done -I (38207) led matrix: Test send data to LCD -I (38207) lcd_panel.io: esp_lcd_panel_io_tx_color -I (38207) lcd_panel.io.i80: panel_io_i80_tx_color -I (38207) lcd_panel.io.i80: 1 -I (38207) lcd_panel.io.i80: 2 -I (38207) lcd_panel.io.i80: 3 -I (38207) lcd_panel.io.i80: 4 -I (38207) lcd_panel.io.i80: 5 -I (38207) lcd_panel.io.i80: 6 +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_4004 b/build/log/idf_py_stdout_output_4004 new file mode 100644 index 0000000..9bc0132 --- /dev/null +++ b/build/log/idf_py_stdout_output_4004 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360e0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f20 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 221408 bytes to 115078... +Writing at 0x00010000... (12 %) +Writing at 0x0001d057... (25 %) +Writing at 0x00022e01... (37 %) +Writing at 0x00029227... (50 %) +Writing at 0x0002fa7f... (62 %) +Writing at 0x000398a1... (75 %) +Writing at 0x0003fa18... (87 %) +Writing at 0x00045f04... (100 %) +Wrote 221408 bytes (115078 compressed) at 0x00010000 in 2.5 seconds (effective 722.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_4068 b/build/log/idf_py_stdout_output_4068 new file mode 100644 index 0000000..c0f3702 --- /dev/null +++ b/build/log/idf_py_stdout_output_4068 @@ -0,0 +1,39 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +ccache E:\Espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\bin\xtensa-esp32s3-elf-gcc.exe -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DUNITY_INCLUDE_CONFIG_H -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_ringbuf/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/deprecated -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_pm/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/library -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/esp_crt_bundle/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/bootloader_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_partition/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_update/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spi_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/pthread/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_timer/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_trace/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_event/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/nvs_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/vfs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_netif/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/esp_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_wifi/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/unity/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/cmock/CMock/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/console -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/http_parser -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls/esp-tls-crypto -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/deprecated/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_eth/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hid/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/tcp_transport/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_client/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_server/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_https_ota/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protobuf-c/protobuf-c -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/common -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/security -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/transports -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_local_ctrl/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_psram/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include/port/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wear_levelling/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/sdmmc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/diskio -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/vfs -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ieee802154/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/json/cJSON -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mqtt/esp-mqtt/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/perfmon/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spiffs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/touch_element/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/usb/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wifi_provisioning/include -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\"v5.0.4-dirty\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -MD -MT esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -MF esp-idf\main\CMakeFiles\__idf_main.dir\i80_controller_example_main.c.obj.d -o esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -c E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c: In function 'app_main': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:213:46: error: unknown type name 's' + 213 | gpio_set_level(HUB75_LAT_PIN_NUM, 0);s + | ^ +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:67, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/projdefs.h:47:43: error: expected declaration specifiers or '...' before '(' token + 47 | #define pdMS_TO_TICKS( xTimeInMs ) ( ( TickType_t ) ( ( ( TickType_t ) ( xTimeInMs ) * ( TickType_t ) configTICK_RATE_HZ ) / ( TickType_t ) 1000U ) ) + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:214:20: note: in expansion of macro 'pdMS_TO_TICKS' + 214 | vTaskDelay(pdMS_TO_TICKS(10)); + | ^~~~~~~~~~~~~ +ninja: build stopped: subcommand failed. diff --git a/build/log/idf_py_stdout_output_4300 b/build/log/idf_py_stdout_output_4300 new file mode 100644 index 0000000..632fba3 --- /dev/null +++ b/build/log/idf_py_stdout_output_4300 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:187:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 187 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:136:23: note: previous declaration here + 136 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37aa0 bytes. Smallest app partition is 0x100000 bytes. 0xc8560 bytes (78%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.1 kbit/s)... +Hash of data verified. +Compressed 228000 bytes to 118540... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2b2... (25 %) +Writing at 0x0002313f... (37 %) +Writing at 0x0002966d... (50 %) +Writing at 0x0002f4a7... (62 %) +Writing at 0x00038dac... (75 %) +Writing at 0x0004015a... (87 %) +Writing at 0x00045f80... (100 %) +Wrote 228000 bytes (118540 compressed) at 0x00010000 in 2.5 seconds (effective 720.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.9 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_4340 b/build/log/idf_py_stdout_output_4340 new file mode 100644 index 0000000..96b6668 --- /dev/null +++ b/build/log/idf_py_stdout_output_4340 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_4436 b/build/log/idf_py_stdout_output_4436 new file mode 100644 index 0000000..51c15e1 --- /dev/null +++ b/build/log/idf_py_stdout_output_4436 @@ -0,0 +1,37 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_4476 b/build/log/idf_py_stdout_output_4476 new file mode 100644 index 0000000..020664b --- /dev/null +++ b/build/log/idf_py_stdout_output_4476 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118324... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x00023132... (37 %) +Writing at 0x00029683... (50 %) +Writing at 0x0002f46c... (62 %) +Writing at 0x00038d90... (75 %) +Writing at 0x00040123... (87 %) +Writing at 0x00045f44... (100 %) +Wrote 227664 bytes (118324 compressed) at 0x00010000 in 2.5 seconds (effective 733.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.8 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_4604 b/build/log/idf_py_stdout_output_4604 new file mode 100644 index 0000000..c47c1a6 --- /dev/null +++ b/build/log/idf_py_stdout_output_4604 @@ -0,0 +1,98 @@ +[1/11] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:168:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 168 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[4/9] Linking C static library esp-idf\main\libmain.a +[5/9] Generating ld/sections.ld +[6/9] Linking CXX executable i80_controller.elf +[7/9] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/9] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36140 bytes. Smallest app partition is 0x100000 bytes. 0xc9ec0 bytes (79%) free. +[8/9] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 221504 bytes to 115194... +Writing at 0x00010000... (12 %) +Writing at 0x0001cff8... (25 %) +Writing at 0x00022e07... (37 %) +Writing at 0x000291e4... (50 %) +Writing at 0x0002fa66... (62 %) +Writing at 0x00039740... (75 %) +Writing at 0x0003f9d2... (87 %) +Writing at 0x00045e9f... (100 %) +Wrote 221504 bytes (115194 compressed) at 0x00010000 in 2.4 seconds (effective 726.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.1 seconds (effective 394.4 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_4612 b/build/log/idf_py_stdout_output_4612 new file mode 100644 index 0000000..74ef007 --- /dev/null +++ b/build/log/idf_py_stdout_output_4612 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37900 bytes. Smallest app partition is 0x100000 bytes. 0xc8700 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_4768 b/build/log/idf_py_stdout_output_4768 new file mode 100644 index 0000000..4a6c8ab --- /dev/null +++ b/build/log/idf_py_stdout_output_4768 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227632 bytes to 118299... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2c6... (25 %) +Writing at 0x00023124... (37 %) +Writing at 0x00029670... (50 %) +Writing at 0x0002f45c... (62 %) +Writing at 0x00038d87... (75 %) +Writing at 0x00040111... (87 %) +Writing at 0x00045f43... (100 %) +Wrote 227632 bytes (118299 compressed) at 0x00010000 in 2.5 seconds (effective 719.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_5076 b/build/log/idf_py_stdout_output_5076 new file mode 100644 index 0000000..46cfce4 --- /dev/null +++ b/build/log/idf_py_stdout_output_5076 @@ -0,0 +1,58 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[4/8] Linking C static library esp-idf\main\libmain.a +[5/8] Generating ld/sections.ld +[6/8] Linking CXX executable i80_controller.elf +[7/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37910 bytes. Smallest app partition is 0x100000 bytes. 0xc86f0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_5096 b/build/log/idf_py_stdout_output_5096 new file mode 100644 index 0000000..c789731 --- /dev/null +++ b/build/log/idf_py_stdout_output_5096 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_5100 b/build/log/idf_py_stdout_output_5100 index 1792715..1b3527c 100644 --- a/build/log/idf_py_stdout_output_5100 +++ b/build/log/idf_py_stdout_output_5100 @@ -1,44 +1,58 @@ -[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" -i80_controller.bin binary size 0x34df0 bytes. Smallest app partition is 0x100000 bytes. 0xcb210 bytes (79%) free. -[2/5] Performing build step for 'bootloader' +[1/10] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[2/10] Performing build step for 'bootloader' [1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. -[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" -esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +[3/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[4/8] Linking C static library esp-idf\main\libmain.a +[5/8] Generating ld/sections.ld +[6/8] Linking CXX executable i80_controller.elf +[7/8] Generating binary image from built executable esptool.py v4.6.2 -Serial port COM3 -Connecting... -Chip is ESP32-S3 (revision v0.1) -Features: WiFi, BLE -Crystal is 40MHz -MAC: 60:55:f9:f5:71:08 -Uploading stub... -Running stub... -Stub running... -Changing baud rate to 460800 -Changed. -Configuring flash size... -Flash will be erased from 0x00000000 to 0x00004fff... -Flash will be erased from 0x00010000 to 0x00044fff... -Flash will be erased from 0x00008000 to 0x00008fff... -Compressed 20368 bytes to 12915... -Writing at 0x00000000... (100 %) -Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 448.9 kbit/s)... -Hash of data verified. -Compressed 216560 bytes to 112976... -Writing at 0x00010000... (14 %) -Writing at 0x0001cd5c... (28 %) -Writing at 0x000229bf... (42 %) -Writing at 0x00028bc2... (57 %) -Writing at 0x0002f332... (71 %) -Writing at 0x000397d5... (85 %) -Writing at 0x0003f274... (100 %) -Wrote 216560 bytes (112976 compressed) at 0x00010000 in 2.3 seconds (effective 769.0 kbit/s)... -Hash of data verified. -Compressed 3072 bytes to 103... -Writing at 0x00008000... (100 %) -Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.9 kbit/s)... -Hash of data verified. - -Leaving... -Hard resetting via RTS pin... +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_5112 b/build/log/idf_py_stdout_output_5112 new file mode 100644 index 0000000..208bd29 --- /dev/null +++ b/build/log/idf_py_stdout_output_5112 @@ -0,0 +1,37 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_5280 b/build/log/idf_py_stdout_output_5280 new file mode 100644 index 0000000..cb82ea3 --- /dev/null +++ b/build/log/idf_py_stdout_output_5280 @@ -0,0 +1,98 @@ +[1/11] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[2/11] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[3/9] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:168:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 168 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[4/9] Linking C static library esp-idf\main\libmain.a +[5/9] Generating ld/sections.ld +[6/9] Linking CXX executable i80_controller.elf +[7/9] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[8/9] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36130 bytes. Smallest app partition is 0x100000 bytes. 0xc9ed0 bytes (79%) free. +[8/9] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 221488 bytes to 115165... +Writing at 0x00010000... (12 %) +Writing at 0x0001cff9... (25 %) +Writing at 0x00022e09... (37 %) +Writing at 0x000291e9... (50 %) +Writing at 0x0002fa67... (62 %) +Writing at 0x00039747... (75 %) +Writing at 0x0003f9df... (87 %) +Writing at 0x00045eb2... (100 %) +Wrote 221488 bytes (115165 compressed) at 0x00010000 in 2.5 seconds (effective 722.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_5348 b/build/log/idf_py_stdout_output_5348 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_5348 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_5380 b/build/log/idf_py_stdout_output_5380 new file mode 100644 index 0000000..d242209 --- /dev/null +++ b/build/log/idf_py_stdout_output_5380 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb38h (117560) map +I (143) esp_image: segment 4: paddr=0003cb60 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 08c7ab133d703a4c... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_5672 b/build/log/idf_py_stdout_output_5672 new file mode 100644 index 0000000..8c01177 --- /dev/null +++ b/build/log/idf_py_stdout_output_5672 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb2ch (117548) map +I (143) esp_image: segment 4: paddr=0003cb54 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 0867a3394bea623a... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_5684 b/build/log/idf_py_stdout_output_5684 new file mode 100644 index 0000000..c789731 --- /dev/null +++ b/build/log/idf_py_stdout_output_5684 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_5728 b/build/log/idf_py_stdout_output_5728 new file mode 100644 index 0000000..312db81 --- /dev/null +++ b/build/log/idf_py_stdout_output_5728 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb34h (117556) map +I (143) esp_image: segment 4: paddr=0003cb5c vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 45195474d450cae6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (188) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (191) app_start: Starting scheduler on CPU1 +I (191) main_task: Started on CPU0 +I (201) main_task: Calling app_main() +I (201) led matrix: Initialize Intel 8080 bus +I (201) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_5812 b/build/log/idf_py_stdout_output_5812 new file mode 100644 index 0000000..69cca4f --- /dev/null +++ b/build/log/idf_py_stdout_output_5812 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x4037a3a9 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 3e4543e2174b3b39... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_5828 b/build/log/idf_py_stdout_output_5828 new file mode 100644 index 0000000..b62bae0 --- /dev/null +++ b/build/log/idf_py_stdout_output_5828 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb68h (117608) map +I (143) esp_image: segment 4: paddr=0003cb90 vaddr=40376acc size=0ad68h ( 44392) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375238 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 1ec99c40edc9ff2b... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_584 b/build/log/idf_py_stdout_output_584 new file mode 100644 index 0000000..0552d00 --- /dev/null +++ b/build/log/idf_py_stdout_output_584 @@ -0,0 +1,38 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:186:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 186 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:134:23: note: previous declaration here + 134 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:197:13: warning: 'hub75_addr_task' defined but not used [-Wunused-function] + 197 | static void hub75_addr_task(void *arg) + | ^~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x379b0 bytes. Smallest app partition is 0x100000 bytes. 0xc8650 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_5844 b/build/log/idf_py_stdout_output_5844 new file mode 100644 index 0000000..80711d5 --- /dev/null +++ b/build/log/idf_py_stdout_output_5844 @@ -0,0 +1,76 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcb0h (113840) map +I (142) esp_image: segment 4: paddr=0003bcd8 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 04169bb8241f671b... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display diff --git a/build/log/idf_py_stdout_output_5868 b/build/log/idf_py_stdout_output_5868 new file mode 100644 index 0000000..aed5ee9 --- /dev/null +++ b/build/log/idf_py_stdout_output_5868 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36120 bytes. Smallest app partition is 0x100000 bytes. 0xc9ee0 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 221472 bytes to 115149... +Writing at 0x00010000... (12 %) +Writing at 0x0001cff8... (25 %) +Writing at 0x00022e07... (37 %) +Writing at 0x000291f4... (50 %) +Writing at 0x0002fa72... (62 %) +Writing at 0x00039806... (75 %) +Writing at 0x0003f9f0... (87 %) +Writing at 0x00045ebd... (100 %) +Wrote 221472 bytes (115149 compressed) at 0x00010000 in 2.4 seconds (effective 726.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_6064 b/build/log/idf_py_stdout_output_6064 new file mode 100644 index 0000000..b480018 --- /dev/null +++ b/build/log/idf_py_stdout_output_6064 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_620 b/build/log/idf_py_stdout_output_620 new file mode 100644 index 0000000..889dbc1 --- /dev/null +++ b/build/log/idf_py_stdout_output_620 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118323... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2f2... (25 %) +Writing at 0x0002312a... (37 %) +Writing at 0x0002966e... (50 %) +Writing at 0x0002f45c... (62 %) +Writing at 0x00038d80... (75 %) +Writing at 0x0004011e... (87 %) +Writing at 0x00045f47... (100 %) +Wrote 227664 bytes (118323 compressed) at 0x00010000 in 2.5 seconds (effective 742.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_6208 b/build/log/idf_py_stdout_output_6208 new file mode 100644 index 0000000..3240276 --- /dev/null +++ b/build/log/idf_py_stdout_output_6208 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.3 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118327... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x0002312f... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f463... (62 %) +Writing at 0x00038d94... (75 %) +Writing at 0x0004011a... (87 %) +Writing at 0x00045f3b... (100 %) +Wrote 227664 bytes (118327 compressed) at 0x00010000 in 2.5 seconds (effective 724.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_6256 b/build/log/idf_py_stdout_output_6256 new file mode 100644 index 0000000..fbf9b8b --- /dev/null +++ b/build/log/idf_py_stdout_output_6256 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37990 bytes. Smallest app partition is 0x100000 bytes. 0xc8670 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 227728 bytes to 118293... +Writing at 0x00010000... (12 %) +Writing at 0x0001d378... (25 %) +Writing at 0x00023156... (37 %) +Writing at 0x000296c6... (50 %) +Writing at 0x0002f4a0... (62 %) +Writing at 0x00038dc9... (75 %) +Writing at 0x0004017a... (87 %) +Writing at 0x00045fa9... (100 %) +Wrote 227728 bytes (118293 compressed) at 0x00010000 in 2.5 seconds (effective 738.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_6284 b/build/log/idf_py_stdout_output_6284 new file mode 100644 index 0000000..adc0949 --- /dev/null +++ b/build/log/idf_py_stdout_output_6284 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: f762d7f05e3154f6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (191) app_start: Starting scheduler on CPU1 +I (191) main_task: Started on CPU0 +I (201) main_task: Calling app_main() +I (201) led matrix: Initialize Intel 8080 bus +I (201) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_632 b/build/log/idf_py_stdout_output_632 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_632 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_6324 b/build/log/idf_py_stdout_output_6324 new file mode 100644 index 0000000..48f1641 --- /dev/null +++ b/build/log/idf_py_stdout_output_6324 @@ -0,0 +1,110 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcb8h (113848) map +I (142) esp_image: segment 4: paddr=0003bce0 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 9744500135fba914... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display +I (22419) led matrix: 2 display +I (24439) led matrix: 3 display +I (26459) led matrix: 4 display +I (28479) led matrix: 5 display +I (30499) led matrix: 6 display +I (32519) led matrix: 7 display +I (34539) led matrix: 0 display +I (36559) led matrix: 1 display +I (38579) led matrix: 2 display +I (40599) led matrix: 3 display +I (42619) led matrix: 4 display +I (44639) led matrix: 5 display +I (46659) led matrix: 6 display +I (48679) led matrix: 7 display +I (50699) led matrix: 0 display +I (52719) led matrix: 1 display +I (54739) led matrix: 2 display +I (56759) led matrix: 3 display +I (58779) led matrix: 4 display +I (60799) led matrix: 5 display +I (62819) led matrix: 6 display +I (64839) led matrix: 7 display +I (66859) led matrix: 0 display +I (68879) led matrix: 1 display +I (70899) led matrix: 2 display +I (72919) led matrix: 3 display +I (74939) led matrix: 4 display +I (76959) led matrix: 5 display +I (78979) led matrix: 6 display +I (80999) led matrix: 7 display +I (83019) led matrix: 0 display +I (85039) led matrix: 1 display +I (87059) led matrix: 2 display diff --git a/build/log/idf_py_stdout_output_6340 b/build/log/idf_py_stdout_output_6340 new file mode 100644 index 0000000..b480018 --- /dev/null +++ b/build/log/idf_py_stdout_output_6340 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_6428 b/build/log/idf_py_stdout_output_6428 new file mode 100644 index 0000000..54e27b2 --- /dev/null +++ b/build/log/idf_py_stdout_output_6428 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118315... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312f... (37 %) +Writing at 0x0002968d... (50 %) +Writing at 0x0002f467... (62 %) +Writing at 0x00038d97... (75 %) +Writing at 0x00040124... (87 %) +Writing at 0x00045f4f... (100 %) +Wrote 227664 bytes (118315 compressed) at 0x00010000 in 2.5 seconds (effective 728.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 525.4 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_648 b/build/log/idf_py_stdout_output_648 new file mode 100644 index 0000000..ee9f30c --- /dev/null +++ b/build/log/idf_py_stdout_output_648 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting.... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227680 bytes to 118332... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2d2... (25 %) +Writing at 0x0002312a... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f462... (62 %) +Writing at 0x00038d93... (75 %) +Writing at 0x00040122... (87 %) +Writing at 0x00045f44... (100 %) +Wrote 227680 bytes (118332 compressed) at 0x00010000 in 2.5 seconds (effective 724.0 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_6644 b/build/log/idf_py_stdout_output_6644 new file mode 100644 index 0000000..78bd5e2 --- /dev/null +++ b/build/log/idf_py_stdout_output_6644 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118316... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f466... (62 %) +Writing at 0x00038d96... (75 %) +Writing at 0x00040123... (87 %) +Writing at 0x00045f48... (100 %) +Wrote 227664 bytes (118316 compressed) at 0x00010000 in 2.5 seconds (effective 728.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.7 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_6672 b/build/log/idf_py_stdout_output_6672 new file mode 100644 index 0000000..15672b4 --- /dev/null +++ b/build/log/idf_py_stdout_output_6672 @@ -0,0 +1,77 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcc4h (113860) map +I (142) esp_image: segment 4: paddr=0003bcec vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 53d3195510b898fa... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (186) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (3209) led matrix: 0 display +I (6219) led matrix: 1 display +I (9229) led matrix: 0 display +I (12239) led matrix: 1 display +I (15249) led matrix: 0 display +I (18259) led matrix: 1 display +I (21269) led matrix: 0 display +I (24279) led matrix: 1 display +I (27289) led matrix: 0 display +I (30299) led matrix: 1 display diff --git a/build/log/idf_py_stdout_output_6768 b/build/log/idf_py_stdout_output_6768 new file mode 100644 index 0000000..f779670 --- /dev/null +++ b/build/log/idf_py_stdout_output_6768 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d8e +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb58h (117592) map +I (143) esp_image: segment 4: paddr=0003cb80 vaddr=40376acc size=0ad80h ( 44416) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: fe1371eab23d75a0... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_6920 b/build/log/idf_py_stdout_output_6920 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_6920 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_6948 b/build/log/idf_py_stdout_output_6948 new file mode 100644 index 0000000..0709e74 --- /dev/null +++ b/build/log/idf_py_stdout_output_6948 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb38h (117560) map +I (143) esp_image: segment 4: paddr=0003cb60 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: e7e5841ea04e0754... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_6976 b/build/log/idf_py_stdout_output_6976 new file mode 100644 index 0000000..a86a4d4 --- /dev/null +++ b/build/log/idf_py_stdout_output_6976 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.3 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118328... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029679... (50 %) +Writing at 0x0002f462... (62 %) +Writing at 0x00038d93... (75 %) +Writing at 0x0004011a... (87 %) +Writing at 0x00045f3b... (100 %) +Wrote 227664 bytes (118328 compressed) at 0x00010000 in 2.5 seconds (effective 723.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.4 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_7076 b/build/log/idf_py_stdout_output_7076 new file mode 100644 index 0000000..64a704a --- /dev/null +++ b/build/log/idf_py_stdout_output_7076 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360e0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f20 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_7116 b/build/log/idf_py_stdout_output_7116 new file mode 100644 index 0000000..709d7ee --- /dev/null +++ b/build/log/idf_py_stdout_output_7116 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 417.1 kbit/s)... +Hash of data verified. +Compressed 227680 bytes to 118325... +Writing at 0x00010000... (12 %) +Writing at 0x0001d328... (25 %) +Writing at 0x00023131... (37 %) +Writing at 0x0002969e... (50 %) +Writing at 0x0002f468... (62 %) +Writing at 0x00038d98... (75 %) +Writing at 0x00040127... (87 %) +Writing at 0x00045f47... (100 %) +Wrote 227680 bytes (118325 compressed) at 0x00010000 in 2.5 seconds (effective 723.9 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.7 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_7144 b/build/log/idf_py_stdout_output_7144 new file mode 100644 index 0000000..bf8b1d6 --- /dev/null +++ b/build/log/idf_py_stdout_output_7144 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb20h (117536) map +I (143) esp_image: segment 4: paddr=0003cb48 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 988152730d69ddb6... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_7204 b/build/log/idf_py_stdout_output_7204 new file mode 100644 index 0000000..05e4b1d --- /dev/null +++ b/build/log/idf_py_stdout_output_7204 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118318... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x00023130... (37 %) +Writing at 0x00029683... (50 %) +Writing at 0x0002f46f... (62 %) +Writing at 0x00038d93... (75 %) +Writing at 0x00040120... (87 %) +Writing at 0x00045f48... (100 %) +Wrote 227664 bytes (118318 compressed) at 0x00010000 in 2.5 seconds (effective 737.6 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_728 b/build/log/idf_py_stdout_output_728 new file mode 100644 index 0000000..fcea360 --- /dev/null +++ b/build/log/idf_py_stdout_output_728 @@ -0,0 +1,6506 @@ +I (318) led matrix: oe = 1 +I (318) led matrix: oe = 1 +IESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378da6 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b27ch ( 45692) map +I (105) esp_image: segment 1: paddr=0001b2a4 vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d5b4 vaddr=40374000 size=02a64h ( 10852) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cc54h (117844) map +I (143) esp_image: segment 4: paddr=0003cc7c vaddr=40376a64 size=0ae00h ( 44544) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375244 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (184) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: f15ed54c3e5d5a92... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[18]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init +I (200) led matrix: hub75_addr_task +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (210) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (220) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (230) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (240) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (250) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (260) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (270) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (280) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (290) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (300) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (310) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (320) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (330) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (340) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (350) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (360) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (370) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (380) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (390) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (400) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (410) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (420) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (430) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (440) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (450) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (460) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (470) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (480) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (490) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (500) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (510) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (520) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (530) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (540) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (550) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (560) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (570) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (580) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (590) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (600) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (610) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (620) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (630) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (640) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (650) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (660) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (670) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (680) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (690) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (700) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (710) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (720) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (730) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (740) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (750) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (760) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (770) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (780) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (790) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (800) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (810) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (820) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (830) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (840) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (850) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (860) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (870) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (880) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (890) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (900) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (910) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (920) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (930) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (940) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (950) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (960) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (970) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (980) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (990) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1000) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = 1 +I (1010) led matrix: oe = \ No newline at end of file diff --git a/build/log/idf_py_stdout_output_7280 b/build/log/idf_py_stdout_output_7280 new file mode 100644 index 0000000..cd8b3e2 --- /dev/null +++ b/build/log/idf_py_stdout_output_7280 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227632 bytes to 118288... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x00023135... (37 %) +Writing at 0x00029690... (50 %) +Writing at 0x0002f471... (62 %) +Writing at 0x00038d9e... (75 %) +Writing at 0x00040125... (87 %) +Writing at 0x00045f56... (100 %) +Wrote 227632 bytes (118288 compressed) at 0x00010000 in 2.5 seconds (effective 723.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.1 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_7316 b/build/log/idf_py_stdout_output_7316 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_7316 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_7360 b/build/log/idf_py_stdout_output_7360 new file mode 100644 index 0000000..1f47cb6 --- /dev/null +++ b/build/log/idf_py_stdout_output_7360 @@ -0,0 +1,107 @@ +I (104) esp_image: segment 1: paddr=0001ab54 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab2ch ( 43820) map +I (104) esp_image: segment 1: paddr=0001ab54 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce54 vaddr=40374000 size=031c4h ( 12740) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bc84h (113796) map +I (142) esp_image: segment 4: paddr=0003bcac vaddr=403771c4 size=0a404h ( 41988) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: f23acab2760ff817... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (186) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +E (6199) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time: +E (6199) task_wdt: - IDLE (CPU 0) +E (6199) task_wdt: Tasks currently running: +E (6199) task_wdt: CPU 0: main +E (6199) task_wdt: CPU 1: IDLE +E (6199) task_wdt: Print CPU 0 (current core) backtrace + + +Backtrace: 0x4200A4EA:0x3FC92320 0x4200A696:0x3FC92340 0x40377055:0x3FC92360 0x420072AD:0x3FC97E80 0x4201B50F:0x3FC97EA0 0x40379E6D:0x3FC97ED0 + +E (11199) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time: +E (11199) task_wdt: - IDLE (CPU 0) +E (11199) task_wdt: Tasks currently running: +E (11199) task_wdt: CPU 0: main +E (11199) task_wdt: CPU 1: IDLE +E (11199) task_wdt: Print CPU 0 (current core) backtrace + + +Backtrace: 0x4200A4EA:0x3FC92320 0x4200A696:0x3FC92340 0x40377055:0x3FC92360 0x420072AD:0x3FC97E80 0x4201B50F:0x3FC97EA0 0x40379E6D:0x3FC97ED0 + +E (16199) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time: +E (16199) task_wdt: - IDLE (CPU 0) +E (16199) task_wdt: Tasks currently running: +E (16199) task_wdt: CPU 0: main +E (16199) task_wdt: CPU 1: IDLE +E (16199) task_wdt: Print CPU 0 (current core) backtrace + + +Backtrace: 0x4200A4EA:0x3FC92320 0x4200A696:0x3FC92340 0x40377055:0x3FC92360 0x420072AD:0x3FC97E80 0x4201B50F:0x3FC97EA0 0x40379E6D:0x3FC97ED0 + +E (21199) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time: +E (21199) task_wdt: - IDLE (CPU 0) +E (21199) task_wdt: Tasks currently running: +E (21199) task_wdt: CPU 0: main +E (21199) task_wdt: CPU 1: IDLE +E (21199) task_wdt: Print CPU 0 (current core) backtrace + + +Backtrace: 0x4200A4EA:0x3FC92320 0x4200A696:0x3FC92340 0x40377055:0x3FC92360 0x420072AD:0x3FC97E80 0x4201B50F:0x3FC97EA0 0x40379E6D:0x3FC97ED0 + diff --git a/build/log/idf_py_stdout_output_7364 b/build/log/idf_py_stdout_output_7364 new file mode 100644 index 0000000..69c1cb2 --- /dev/null +++ b/build/log/idf_py_stdout_output_7364 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36130 bytes. Smallest app partition is 0x100000 bytes. 0xc9ed0 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_7440 b/build/log/idf_py_stdout_output_7440 new file mode 100644 index 0000000..f275cb4 --- /dev/null +++ b/build/log/idf_py_stdout_output_7440 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36120 bytes. Smallest app partition is 0x100000 bytes. 0xc9ee0 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 221472 bytes to 115160... +Writing at 0x00010000... (12 %) +Writing at 0x0001cffa... (25 %) +Writing at 0x00022e06... (37 %) +Writing at 0x000291e4... (50 %) +Writing at 0x0002fa6b... (62 %) +Writing at 0x00039785... (75 %) +Writing at 0x0003f9e6... (87 %) +Writing at 0x00045eb3... (100 %) +Wrote 221472 bytes (115160 compressed) at 0x00010000 in 2.5 seconds (effective 722.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_7480 b/build/log/idf_py_stdout_output_7480 new file mode 100644 index 0000000..ee85bdc --- /dev/null +++ b/build/log/idf_py_stdout_output_7480 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227632 bytes to 118287... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002313c... (37 %) +Writing at 0x00029690... (50 %) +Writing at 0x0002f47d... (62 %) +Writing at 0x00038da6... (75 %) +Writing at 0x0004011c... (87 %) +Writing at 0x00045f4e... (100 %) +Wrote 227632 bytes (118287 compressed) at 0x00010000 in 2.5 seconds (effective 719.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_7508 b/build/log/idf_py_stdout_output_7508 new file mode 100644 index 0000000..ce150b3 --- /dev/null +++ b/build/log/idf_py_stdout_output_7508 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting.... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227632 bytes to 118288... +Writing at 0x00010000... (12 %) +Writing at 0x0001d300... (25 %) +Writing at 0x00023139... (37 %) +Writing at 0x00029695... (50 %) +Writing at 0x0002f476... (62 %) +Writing at 0x00038d95... (75 %) +Writing at 0x00040127... (87 %) +Writing at 0x00045f57... (100 %) +Wrote 227632 bytes (118288 compressed) at 0x00010000 in 2.5 seconds (effective 742.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.5 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_7700 b/build/log/idf_py_stdout_output_7700 new file mode 100644 index 0000000..81a6a72 --- /dev/null +++ b/build/log/idf_py_stdout_output_7700 @@ -0,0 +1,37 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:168:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 168 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_7772 b/build/log/idf_py_stdout_output_7772 new file mode 100644 index 0000000..c789731 --- /dev/null +++ b/build/log/idf_py_stdout_output_7772 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37930 bytes. Smallest app partition is 0x100000 bytes. 0xc86d0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_7880 b/build/log/idf_py_stdout_output_7880 new file mode 100644 index 0000000..8509f8a --- /dev/null +++ b/build/log/idf_py_stdout_output_7880 @@ -0,0 +1,83 @@ +[0/1] Re-running CMake... +-- ccache will be used for faster recompilation +-- Building ESP-IDF components for target esp32s3 +-- Project sdkconfig file E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/sdkconfig +-- App "i80_controller" version: 42d44b0-dirty +-- Adding linker script E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/esp-idf/esp_system/ld/memory.ld +-- Adding linker script E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/ld/esp32s3/sections.ld.in +-- Adding linker script E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3/ld/esp32s3.rom.ld +-- Adding linker script E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3/ld/esp32s3.rom.api.ld +-- Adding linker script E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3/ld/esp32s3.rom.libgcc.ld +-- Adding linker script E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3/ld/esp32s3.rom.newlib.ld +-- Adding linker script E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3/ld/esp32s3.rom.version.ld +-- Adding linker script E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/ld/esp32s3.peripherals.ld +-- Components: app_trace app_update bootloader bootloader_support bt cmock console cxx driver efuse esp-tls esp_adc esp_app_format esp_common esp_eth esp_event esp_gdbstub esp_hid esp_http_client esp_http_server esp_https_ota esp_https_server esp_hw_support esp_lcd esp_local_ctrl esp_netif esp_partition esp_phy esp_pm esp_psram esp_ringbuf esp_rom esp_system esp_timer esp_wifi espcoredump esptool_py fatfs freertos hal heap http_parser idf_test ieee802154 json log lwip main mbedtls mqtt newlib nvs_flash openthread partition_table perfmon protobuf-c protocomm pthread sdmmc soc spi_flash spiffs tcp_transport touch_element ulp unity usb vfs wear_levelling wifi_provisioning wpa_supplicant xtensa +-- Component paths: E:/Espressif/frameworks/esp-idf-v5.0.4/components/app_trace E:/Espressif/frameworks/esp-idf-v5.0.4/components/app_update E:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader E:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support E:/Espressif/frameworks/esp-idf-v5.0.4/components/bt E:/Espressif/frameworks/esp-idf-v5.0.4/components/cmock E:/Espressif/frameworks/esp-idf-v5.0.4/components/console E:/Espressif/frameworks/esp-idf-v5.0.4/components/cxx E:/Espressif/frameworks/esp-idf-v5.0.4/components/driver E:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_eth E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_event E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hid E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_client E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_server E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_https_ota E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_https_server E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_local_ctrl E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_netif E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_partition E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_pm E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_psram E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_ringbuf E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_timer E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_wifi E:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py E:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos E:/Espressif/frameworks/esp-idf-v5.0.4/components/hal E:/Espressif/frameworks/esp-idf-v5.0.4/components/heap E:/Espressif/frameworks/esp-idf-v5.0.4/components/http_parser E:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test E:/Espressif/frameworks/esp-idf-v5.0.4/components/ieee802154 E:/Espressif/frameworks/esp-idf-v5.0.4/components/json E:/Espressif/frameworks/esp-idf-v5.0.4/components/log E:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main E:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls E:/Espressif/frameworks/esp-idf-v5.0.4/components/mqtt E:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib E:/Espressif/frameworks/esp-idf-v5.0.4/components/nvs_flash E:/Espressif/frameworks/esp-idf-v5.0.4/components/openthread E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table E:/Espressif/frameworks/esp-idf-v5.0.4/components/perfmon E:/Espressif/frameworks/esp-idf-v5.0.4/components/protobuf-c E:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm E:/Espressif/frameworks/esp-idf-v5.0.4/components/pthread E:/Espressif/frameworks/esp-idf-v5.0.4/components/sdmmc E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc E:/Espressif/frameworks/esp-idf-v5.0.4/components/spi_flash E:/Espressif/frameworks/esp-idf-v5.0.4/components/spiffs E:/Espressif/frameworks/esp-idf-v5.0.4/components/tcp_transport E:/Espressif/frameworks/esp-idf-v5.0.4/components/touch_element E:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp E:/Espressif/frameworks/esp-idf-v5.0.4/components/unity E:/Espressif/frameworks/esp-idf-v5.0.4/components/usb E:/Espressif/frameworks/esp-idf-v5.0.4/components/vfs E:/Espressif/frameworks/esp-idf-v5.0.4/components/wear_levelling E:/Espressif/frameworks/esp-idf-v5.0.4/components/wifi_provisioning E:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant E:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa +-- Configuring done +-- Generating done +-- Build files have been written to: E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build +[1/17] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/15] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal.c.obj +[3/15] Building C object esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj +[4/15] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/ledc_hal_iram.c.obj +[5/15] Linking C static library esp-idf\hal\libhal.a +[6/15] Linking C static library esp-idf\esp_app_format\libesp_app_format.a +[7/15] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:153:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 153 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[8/15] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[9/15] Building C object esp-idf/driver/CMakeFiles/__idf_driver.dir/ledc.c.obj +[10/15] Linking C static library esp-idf\driver\libdriver.a +[11/15] Linking C static library esp-idf\main\libmain.a +[12/15] Generating ld/sections.ld +[13/15] Linking CXX executable i80_controller.elf +[14/15] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[15/15] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37b10 bytes. Smallest app partition is 0x100000 bytes. 0xc84f0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_7980 b/build/log/idf_py_stdout_output_7980 new file mode 100644 index 0000000..37b573f --- /dev/null +++ b/build/log/idf_py_stdout_output_7980 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360f0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f10 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 221424 bytes to 115100... +Writing at 0x00010000... (12 %) +Writing at 0x0001d05a... (25 %) +Writing at 0x00022e04... (37 %) +Writing at 0x000291f4... (50 %) +Writing at 0x0002fa7d... (62 %) +Writing at 0x0003983e... (75 %) +Writing at 0x0003f9fc... (87 %) +Writing at 0x00045efc... (100 %) +Wrote 221424 bytes (115100 compressed) at 0x00010000 in 2.4 seconds (effective 726.7 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.8 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_8008 b/build/log/idf_py_stdout_output_8008 new file mode 100644 index 0000000..f0e8554 --- /dev/null +++ b/build/log/idf_py_stdout_output_8008 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36130 bytes. Smallest app partition is 0x100000 bytes. 0xc9ed0 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.2 kbit/s)... +Hash of data verified. +Compressed 221488 bytes to 115175... +Writing at 0x00010000... (12 %) +Writing at 0x0001cffa... (25 %) +Writing at 0x00022dfc... (37 %) +Writing at 0x000291c7... (50 %) +Writing at 0x0002fa69... (62 %) +Writing at 0x00039747... (75 %) +Writing at 0x0003f9dc... (87 %) +Writing at 0x00045eae... (100 %) +Wrote 221488 bytes (115175 compressed) at 0x00010000 in 2.5 seconds (effective 722.3 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_8052 b/build/log/idf_py_stdout_output_8052 new file mode 100644 index 0000000..0c688dc --- /dev/null +++ b/build/log/idf_py_stdout_output_8052 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360e0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f20 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 221408 bytes to 115094... +Writing at 0x00010000... (12 %) +Writing at 0x0001d058... (25 %) +Writing at 0x00022e04... (37 %) +Writing at 0x000291ff... (50 %) +Writing at 0x0002fa79... (62 %) +Writing at 0x0003981d... (75 %) +Writing at 0x0003f9f9... (87 %) +Writing at 0x00045ef4... (100 %) +Wrote 221408 bytes (115094 compressed) at 0x00010000 in 2.4 seconds (effective 726.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_8060 b/build/log/idf_py_stdout_output_8060 index 83c8084..702b403 100644 --- a/build/log/idf_py_stdout_output_8060 +++ b/build/log/idf_py_stdout_output_8060 @@ -1,42 +1,45 @@ -[1/10] Performing build step for 'bootloader' +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' [1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. -[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_modify.c.obj -FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_modify.c.obj -ccache E:\Espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\bin\xtensa-esp32s3-elf-gcc.exe -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DUNITY_INCLUDE_CONFIG_H -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_ringbuf/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/deprecated -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_pm/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/library -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/esp_crt_bundle/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/bootloader_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_partition/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_update/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spi_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/pthread/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_timer/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_trace/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_event/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/nvs_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/vfs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_netif/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/esp_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_wifi/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/unity/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/cmock/CMock/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/console -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/http_parser -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls/esp-tls-crypto -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/deprecated/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_eth/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hid/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/tcp_transport/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_client/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_server/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_https_ota/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protobuf-c/protobuf-c -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/common -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/security -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/transports -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_local_ctrl/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_psram/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include/port/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wear_levelling/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/sdmmc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/diskio -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/vfs -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ieee802154/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/json/cJSON -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mqtt/esp-mqtt/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/perfmon/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spiffs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/touch_element/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/usb/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wifi_provisioning/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/components/hub75 -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\"v5.0.4-dirty\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -MD -MT esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_modify.c.obj -MF esp-idf\main\CMakeFiles\__idf_main.dir\esp_lcd_panel_io_i80_modify.c.obj.d -o esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_modify.c.obj -c E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_modify.c -In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, - from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_modify.c:24: -E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined - 188 | #define SOC_LCD_I80_SUPPORTED 1 - | -In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, - from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, - from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, - from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, - from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, - from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_modify.c:18: -E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition - 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ - | -E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_modify.c:35:10: fatal error: esp_lcd_common.h: No such file or directory - 35 | #include "esp_lcd_common.h" - | ^~~~~~~~~~~~~~~~~~ -compilation terminated. -[3/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: -E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined - 188 | #define SOC_LCD_I80_SUPPORTED 1 - | -In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, - from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, - from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, - from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, - from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, - from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: -E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition - 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ - | -E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:88:13: warning: 'line_scan_loop_cb' defined but not used [-Wunused-function] - 88 | static void line_scan_loop_cb(void *args) - | ^~~~~~~~~~~~~~~~~ -ninja: build stopped: subcommand failed. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.1 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118331... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2d8... (25 %) +Writing at 0x0002312a... (37 %) +Writing at 0x00029678... (50 %) +Writing at 0x0002f45f... (62 %) +Writing at 0x00038d8a... (75 %) +Writing at 0x00040116... (87 %) +Writing at 0x00045f37... (100 %) +Wrote 227664 bytes (118331 compressed) at 0x00010000 in 2.5 seconds (effective 728.4 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_8076 b/build/log/idf_py_stdout_output_8076 new file mode 100644 index 0000000..e69de29 diff --git a/build/log/idf_py_stdout_output_8080 b/build/log/idf_py_stdout_output_8080 new file mode 100644 index 0000000..dabed84 --- /dev/null +++ b/build/log/idf_py_stdout_output_8080 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.4 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118318... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x0002312b... (37 %) +Writing at 0x00029680... (50 %) +Writing at 0x0002f464... (62 %) +Writing at 0x00038d94... (75 %) +Writing at 0x00040121... (87 %) +Writing at 0x00045f4f... (100 %) +Wrote 227664 bytes (118318 compressed) at 0x00010000 in 2.5 seconds (effective 728.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 523.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_8116 b/build/log/idf_py_stdout_output_8116 new file mode 100644 index 0000000..4f762b9 --- /dev/null +++ b/build/log/idf_py_stdout_output_8116 @@ -0,0 +1,67 @@ +I (104) esp_image: segment 1: paddr=0001ab54 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab2ch ( 43820) map +I (104) esp_image: segment 1: paddr=0001ab54 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce54 vaddr=40374000 size=031c4h ( 12740) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bc90h (113808) map +I (142) esp_image: segment 4: paddr=0003bcb8 vaddr=403771c4 size=0a404h ( 41988) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 53cb230ce79b9fb6... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  diff --git a/build/log/idf_py_stdout_output_824 b/build/log/idf_py_stdout_output_824 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_824 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_8252 b/build/log/idf_py_stdout_output_8252 new file mode 100644 index 0000000..93995d8 --- /dev/null +++ b/build/log/idf_py_stdout_output_8252 @@ -0,0 +1,58 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +ccache E:\Espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\bin\xtensa-esp32s3-elf-gcc.exe -DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DUNITY_INCLUDE_CONFIG_H -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/config -IE:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/newlib/platform_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include/freertos -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/esp_additions/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/soc/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/port/esp32s3/private_include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/heap/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/log/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/. -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/hal/platform_port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_rom/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/soc -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_system/port/include/private -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/xtensa/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/include/apps/sntp -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/lwip/src/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/lwip/port/esp32/include/arch -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_ringbuf/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/efuse/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/deprecated -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/driver/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_pm/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/mbedtls/library -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mbedtls/esp_crt_bundle/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_app_format/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/bootloader_support/bootloader_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_partition/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_update/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spi_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/pthread/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_timer/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/app_trace/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_event/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/nvs_flash/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_phy/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/vfs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_netif/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/port/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wpa_supplicant/esp_supplicant/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_wifi/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/unity/unity/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/cmock/CMock/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/console -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/http_parser -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp-tls/esp-tls-crypto -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/esp32s3/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_adc/deprecated/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_eth/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_gdbstub/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hid/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/tcp_transport/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_client/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_http_server/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_https_ota/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protobuf-c/protobuf-c -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/common -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/security -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/protocomm/include/transports -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_local_ctrl/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_psram/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/espcoredump/include/port/xtensa -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wear_levelling/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/sdmmc/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/diskio -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/vfs -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/fatfs/src -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/idf_test/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ieee802154/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/json/cJSON -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/mqtt/esp-mqtt/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/perfmon/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/spiffs/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/touch_element/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/ulp/ulp_common/include/esp32s3 -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/usb/include -IE:/Espressif/frameworks/esp-idf-v5.0.4/components/wifi_provisioning/include -mlongcalls -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix=. -fmacro-prefix-map=E:/Espressif/frameworks/esp-idf-v5.0.4=/IDF -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -DconfigENABLE_FREERTOS_DEBUG_OCDAWARE=1 -std=gnu17 -Wno-old-style-declaration -D_GNU_SOURCE -DIDF_VER=\"v5.0.4-dirty\" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS -MD -MT esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -MF esp-idf\main\CMakeFiles\__idf_main.dir\i80_controller_example_main.c.obj.d -o esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj -c E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:186:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 186 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:134:23: note: previous declaration here + 134 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c: In function 'ledc_timer_ovf_isr': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:188:19: error: invalid use of undefined type 'struct esp_lcd_i80_hub75_bus_t' + 188 | int line = bus->cur_scan_line; + | ^~ +At top level: +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:199:13: warning: 'hub75_addr_task' defined but not used [-Wunused-function] + 199 | static void hub75_addr_task(void *arg) + | ^~~~~~~~~~~~~~~ +[3/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:146:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 146 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:170:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 170 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +ninja: build stopped: subcommand failed. diff --git a/build/log/idf_py_stdout_output_8300 b/build/log/idf_py_stdout_output_8300 new file mode 100644 index 0000000..96b6668 --- /dev/null +++ b/build/log/idf_py_stdout_output_8300 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37960 bytes. Smallest app partition is 0x100000 bytes. 0xc86a0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_8316 b/build/log/idf_py_stdout_output_8316 new file mode 100644 index 0000000..b81bbca --- /dev/null +++ b/build/log/idf_py_stdout_output_8316 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360f0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f10 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_8380 b/build/log/idf_py_stdout_output_8380 new file mode 100644 index 0000000..880af9b --- /dev/null +++ b/build/log/idf_py_stdout_output_8380 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb28h (117544) map +I (143) esp_image: segment 4: paddr=0003cb50 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: da0cb3f6372e981f... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_8560 b/build/log/idf_py_stdout_output_8560 new file mode 100644 index 0000000..05e4449 --- /dev/null +++ b/build/log/idf_py_stdout_output_8560 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dba +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb38h (117560) map +I (143) esp_image: segment 4: paddr=0003cb60 vaddr=40376acc size=0adach ( 44460) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375244 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: b0446a4efc912574... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_8652 b/build/log/idf_py_stdout_output_8652 new file mode 100644 index 0000000..a06e8cb --- /dev/null +++ b/build/log/idf_py_stdout_output_8652 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb64h (117604) map +I (143) esp_image: segment 4: paddr=0003cb8c vaddr=40376acc size=0ad68h ( 44392) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375238 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 207382af00507b6e... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_8780 b/build/log/idf_py_stdout_output_8780 new file mode 100644 index 0000000..98b1fba --- /dev/null +++ b/build/log/idf_py_stdout_output_8780 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118313... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x00023133... (37 %) +Writing at 0x00029684... (50 %) +Writing at 0x0002f46b... (62 %) +Writing at 0x00038d9c... (75 %) +Writing at 0x00040127... (87 %) +Writing at 0x00045f53... (100 %) +Wrote 227664 bytes (118313 compressed) at 0x00010000 in 2.5 seconds (effective 719.4 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.6 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_8904 b/build/log/idf_py_stdout_output_8904 new file mode 100644 index 0000000..85bd0cd --- /dev/null +++ b/build/log/idf_py_stdout_output_8904 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_892 b/build/log/idf_py_stdout_output_892 new file mode 100644 index 0000000..1f69345 --- /dev/null +++ b/build/log/idf_py_stdout_output_892 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360f0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f10 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 221424 bytes to 115100... +Writing at 0x00010000... (12 %) +Writing at 0x0001d05a... (25 %) +Writing at 0x00022e05... (37 %) +Writing at 0x000291ff... (50 %) +Writing at 0x0002fa7e... (62 %) +Writing at 0x0003983e... (75 %) +Writing at 0x0003f9fc... (87 %) +Writing at 0x00045efc... (100 %) +Wrote 221424 bytes (115100 compressed) at 0x00010000 in 2.4 seconds (effective 724.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.4 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_8968 b/build/log/idf_py_stdout_output_8968 new file mode 100644 index 0000000..feb1cb7 --- /dev/null +++ b/build/log/idf_py_stdout_output_8968 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360d0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f30 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.4 kbit/s)... +Hash of data verified. +Compressed 221392 bytes to 115071... +Writing at 0x00010000... (12 %) +Writing at 0x0001d019... (25 %) +Writing at 0x00022df0... (37 %) +Writing at 0x000291f2... (50 %) +Writing at 0x0002fa7b... (62 %) +Writing at 0x000398e7... (75 %) +Writing at 0x0003fa1f... (87 %) +Writing at 0x00045efd... (100 %) +Wrote 221392 bytes (115071 compressed) at 0x00010000 in 2.4 seconds (effective 726.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_9096 b/build/log/idf_py_stdout_output_9096 new file mode 100644 index 0000000..9f977ed --- /dev/null +++ b/build/log/idf_py_stdout_output_9096 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 227664 bytes to 118332... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2da... (25 %) +Writing at 0x00023125... (37 %) +Writing at 0x00029673... (50 %) +Writing at 0x0002f461... (62 %) +Writing at 0x00038d8a... (75 %) +Writing at 0x0004011d... (87 %) +Writing at 0x00045f3d... (100 %) +Wrote 227664 bytes (118332 compressed) at 0x00010000 in 2.5 seconds (effective 719.5 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_9120 b/build/log/idf_py_stdout_output_9120 new file mode 100644 index 0000000..ed23185 --- /dev/null +++ b/build/log/idf_py_stdout_output_9120 @@ -0,0 +1,586 @@ +SP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x4004883b +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b264h ( 45668) map +I (105) esp_image: segment 1: paddr=0001b28c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d59c vaddr=40374000 size=02a7ch ( 10876) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb68h (117608) map +I (143) esp_image: segment 4: paddr=0003cb90 vaddr=40376a7c size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 33e25d741cde30f1... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011a6d:0x3fc92240 0x42014bb1:0x3fc92550 0x4201cb6d:0x3fc92580 0x4037f5d9:0x3fc925b0 0x42008721:0x3fc92600 0x42007eb9:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: 33e25d741cde30f1 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b264h ( 45668) map +I (104) esp_image: segment 1: paddr=0001b28c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d59c vaddr=40374000 size=02a7ch ( 10876) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb68h (117608) map +I (143) esp_image: segment 4: paddr=0003cb90 vaddr=40376a7c size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 33e25d741cde30f1... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011a6d:0x3fc92240 0x42014bb1:0x3fc92550 0x4201cb6d:0x3fc92580 0x4037f5d9:0x3fc925b0 0x42008721:0x3fc92600 0x42007eb9:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: 33e25d741cde30f1 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b264h ( 45668) map +I (104) esp_image: segment 1: paddr=0001b28c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d59c vaddr=40374000 size=02a7ch ( 10876) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb68h (117608) map +I (143) esp_image: segment 4: paddr=0003cb90 vaddr=40376a7c size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 33e25d741cde30f1... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011a6d:0x3fc92240 0x42014bb1:0x3fc92550 0x4201cb6d:0x3fc92580 0x4037f5d9:0x3fc925b0 0x42008721:0x3fc92600 0x42007eb9:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: 33e25d741cde30f1 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b264h ( 45668) map +I (104) esp_image: segment 1: paddr=0001b28c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d59c vaddr=40374000 size=02a7ch ( 10876) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb68h (117608) map +I (143) esp_image: segment 4: paddr=0003cb90 vaddr=40376a7c size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 33e25d741cde30f1... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011a6d:0x3fc92240 0x42014bb1:0x3fc92550 0x4201cb6d:0x3fc92580 0x4037f5d9:0x3fc925b0 0x42008721:0x3fc92600 0x42007eb9:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: 33e25d741cde30f1 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b264h ( 45668) map +I (104) esp_image: segment 1: paddr=0001b28c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d59c vaddr=40374000 size=02a7ch ( 10876) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb68h (117608) map +I (143) esp_image: segment 4: paddr=0003cb90 vaddr=40376a7c size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 33e25d741cde30f1... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011a6d:0x3fc92240 0x42014bb1:0x3fc92550 0x4201cb6d:0x3fc92580 0x4037f5d9:0x3fc925b0 0x42008721:0x3fc92600 0x42007eb9:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: 33e25d741cde30f1 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b264h ( 45668) map +I (104) esp_image: segment 1: paddr=0001b28c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d59c vaddr=40374000 size=02a7ch ( 10876) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb68h (117608) map +I (143) esp_image: segment 4: paddr=0003cb90 vaddr=40376a7c size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 33e25d741cde30f1... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011a6d:0x3fc92240 0x42014bb1:0x3fc92550 0x4201cb6d:0x3fc92580 0x4037f5d9:0x3fc925b0 0x42008721:0x3fc92600 0x42007eb9:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: 33e25d741cde30f1 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b264h ( 45668) map +I (104) esp_image: segment 1: paddr=0001b28c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d59c vaddr=40374000 size=02a7ch ( 10876) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb68h (117608) map +I (143) esp_image: segment 4: paddr=0003cb90 vaddr=40376a7c size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (166) cpu_start: Starting app cpu, entry point is 0x40375240 +I (0) cpu_start: App cpu up. +I (182) cpu_start: Pro cpu start user code +I (182) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 33e25d741cde30f1... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: 1 +I (200) led matrix: led_matrix_oe_lat_ledc_init + +abort() was called at PC 0x40377353 on core 0 + + +Backtrace: 0x40375df2:0x3fc92110 0x40379fb1:0x3fc92130 0x4037f72a:0x3fc92150 0x40377353:0x3fc921c0 0x40377469:0x3fc921f0 0x40377538:0x3fc92210 0x42011a6d:0x3fc92240 0x42014bb1:0x3fc92550 0x4201cb6d:0x3fc92580 0x4037f5d9:0x3fc925b0 0x42008721:0x3fc92600 0x42007eb9:0x3fc92630 0x40377851:0x3fc92650 0x40377149:0x3fc92670 0x400559dd:0x3fc980e0 |<-CORRUPTED + + + + +ELF file SHA256: 33e25d741cde30f1 + +Rebooting... +ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40375781 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (24) boot: compile time 08:38:38 +I (24) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (30) boot.esp32s3: Boot SPI Speed : 80MHz +I (35) boot.esp32s3: SPI Mode : DIO +I (40) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (50) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (61) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (68) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (83) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b264h ( 45668) map +I (104) esp_image: segment 1: paddr=0001b28c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d59c vaddr=40374000 size=02a7ch ( 10876) load +I (115) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb68h (117608) map +I (143) esp_image: segment 4: paddr=0003cb90 vaddr=40376a7c size=0add0h ( 44496) load +I (158) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. diff --git a/build/log/idf_py_stdout_output_9132 b/build/log/idf_py_stdout_output_9132 new file mode 100644 index 0000000..cb0fa54 --- /dev/null +++ b/build/log/idf_py_stdout_output_9132 @@ -0,0 +1,75 @@ +[1/10] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/8] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/8] Linking C static library esp-idf\main\libmain.a +[4/8] Generating ld/sections.ld +[5/8] Linking CXX executable i80_controller.elf +[6/8] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36120 bytes. Smallest app partition is 0x100000 bytes. 0xc9ee0 bytes (79%) free. +[7/8] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.2 kbit/s)... +Hash of data verified. +Compressed 221472 bytes to 115158... +Writing at 0x00010000... (12 %) +Writing at 0x0001d035... (25 %) +Writing at 0x00022e07... (37 %) +Writing at 0x000291e5... (50 %) +Writing at 0x0002fa6b... (62 %) +Writing at 0x00039786... (75 %) +Writing at 0x0003f9e6... (87 %) +Writing at 0x00045eb4... (100 %) +Wrote 221472 bytes (115158 compressed) at 0x00010000 in 2.5 seconds (effective 722.2 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 522.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_9160 b/build/log/idf_py_stdout_output_9160 new file mode 100644 index 0000000..055a74a --- /dev/null +++ b/build/log/idf_py_stdout_output_9160 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb2ch (117548) map +I (143) esp_image: segment 4: paddr=0003cb54 vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: b592f7c30b7d1823... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (185) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_9304 b/build/log/idf_py_stdout_output_9304 new file mode 100644 index 0000000..769f2cb --- /dev/null +++ b/build/log/idf_py_stdout_output_9304 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x360f0 bytes. Smallest app partition is 0x100000 bytes. 0xc9f10 bytes (79%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00046fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.0 kbit/s)... +Hash of data verified. +Compressed 221424 bytes to 115100... +Writing at 0x00010000... (12 %) +Writing at 0x0001d05a... (25 %) +Writing at 0x00022e04... (37 %) +Writing at 0x000291f4... (50 %) +Writing at 0x0002fa7d... (62 %) +Writing at 0x0003983e... (75 %) +Writing at 0x0003f9fc... (87 %) +Writing at 0x00045efc... (100 %) +Wrote 221424 bytes (115100 compressed) at 0x00010000 in 2.4 seconds (effective 726.6 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.2 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_9356 b/build/log/idf_py_stdout_output_9356 new file mode 100644 index 0000000..d4dc375 --- /dev/null +++ b/build/log/idf_py_stdout_output_9356 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb64h (117604) map +I (143) esp_image: segment 4: paddr=0003cb8c vaddr=40376acc size=0ad68h ( 44392) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375238 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 95bc09763f765c2c... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_9424 b/build/log/idf_py_stdout_output_9424 new file mode 100644 index 0000000..0f0ff35 --- /dev/null +++ b/build/log/idf_py_stdout_output_9424 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378d76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb64h (117604) map +I (143) esp_image: segment 4: paddr=0003cb8c vaddr=40376acc size=0ad68h ( 44392) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375238 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 684917b0f8bcdb19... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (189) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (190) app_start: Starting scheduler on CPU1 +I (190) main_task: Started on CPU0 +I (200) main_task: Calling app_main() +I (200) led matrix: Initialize Intel 8080 bus +I (200) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (200) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/log/idf_py_stdout_output_9484 b/build/log/idf_py_stdout_output_9484 new file mode 100644 index 0000000..208bd29 --- /dev/null +++ b/build/log/idf_py_stdout_output_9484 @@ -0,0 +1,37 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/esp_lcd_panel_io_i80_hub75.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/interface/esp_lcd_panel_io_interface.h:10, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:25: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:18: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'test_init_buf': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:144:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 144 | uint16_t (*buf)[8][128] = bus->format_buffer; + | ^~~ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c: In function 'hub75_send_line': +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.c:164:31: warning: initialization of 'uint16_t (*)[8][128]' {aka 'short unsigned int (*)[8][128]'} from incompatible pointer type 'uint8_t *' {aka 'unsigned char *'} [-Wincompatible-pointer-types] + 164 | uint16_t (*buf)[8][128] = i80_device->bus->format_buffer; + | ^~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37950 bytes. Smallest app partition is 0x100000 bytes. 0xc86b0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_9568 b/build/log/idf_py_stdout_output_9568 new file mode 100644 index 0000000..e69de29 diff --git a/build/log/idf_py_stdout_output_9596 b/build/log/idf_py_stdout_output_9596 new file mode 100644 index 0000000..3d7ddb8 --- /dev/null +++ b/build/log/idf_py_stdout_output_9596 @@ -0,0 +1,109 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bccch (113868) map +I (142) esp_image: segment 4: paddr=0003bcf4 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: 33b781fb9df0fe6a... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (184) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (185) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display +I (22419) led matrix: 2 display +I (24439) led matrix: 3 display +I (26459) led matrix: 4 display +I (28479) led matrix: 5 display +I (30499) led matrix: 6 display +I (32519) led matrix: 7 display +I (34539) led matrix: 0 display +I (36559) led matrix: 1 display +I (38579) led matrix: 2 display +I (40599) led matrix: 3 display +I (42619) led matrix: 4 display +I (44639) led matrix: 5 display +I (46659) led matrix: 6 display +I (48679) led matrix: 7 display +I (50699) led matrix: 0 display +I (52719) led matrix: 1 display +I (54739) led matrix: 2 display +I (56759) led matrix: 3 display +I (58779) led matrix: 4 display +I (60799) led matrix: 5 display +I (62819) led matrix: 6 display +I (64839) led matrix: 7 display +I (66859) led matrix: 0 display +I (68879) led matrix: 1 display +I (70899) led matrix: 2 display +I (72919) led matrix: 3 display +I (74939) led matrix: 4 display +I (76959) led matrix: 5 display +I (78979) led matrix: 6 display +I (80999) led matrix: 7 display +I (83019) led matrix: 0 display +I (85039) led matrix: 1 display diff --git a/build/log/idf_py_stdout_output_9636 b/build/log/idf_py_stdout_output_9636 new file mode 100644 index 0000000..08c36b3 --- /dev/null +++ b/build/log/idf_py_stdout_output_9636 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227616 bytes to 118263... +Writing at 0x00010000... (12 %) +Writing at 0x0001d2e8... (25 %) +Writing at 0x00023139... (37 %) +Writing at 0x00029692... (50 %) +Writing at 0x0002f475... (62 %) +Writing at 0x00038daa... (75 %) +Writing at 0x00040126... (87 %) +Writing at 0x00045f59... (100 %) +Wrote 227616 bytes (118263 compressed) at 0x00010000 in 2.5 seconds (effective 723.6 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.0 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_9672 b/build/log/idf_py_stdout_output_9672 new file mode 100644 index 0000000..fe4d051 --- /dev/null +++ b/build/log/idf_py_stdout_output_9672 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 453.2 kbit/s)... +Hash of data verified. +Compressed 227616 bytes to 118262... +Writing at 0x00010000... (12 %) +Writing at 0x0001d34c... (25 %) +Writing at 0x0002313c... (37 %) +Writing at 0x00029695... (50 %) +Writing at 0x0002f477... (62 %) +Writing at 0x00038dac... (75 %) +Writing at 0x00040128... (87 %) +Writing at 0x00045f5a... (100 %) +Wrote 227616 bytes (118262 compressed) at 0x00010000 in 2.5 seconds (effective 723.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 524.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_9696 b/build/log/idf_py_stdout_output_9696 new file mode 100644 index 0000000..a74726c --- /dev/null +++ b/build/log/idf_py_stdout_output_9696 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:179:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 179 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:128:23: note: previous declaration here + 128 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x36140 bytes. Smallest app partition is 0x100000 bytes. 0xc9ec0 bytes (79%) free. diff --git a/build/log/idf_py_stdout_output_9784 b/build/log/idf_py_stdout_output_9784 new file mode 100644 index 0000000..07906ac --- /dev/null +++ b/build/log/idf_py_stdout_output_9784 @@ -0,0 +1,45 @@ +[1/5] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. +[2/5] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/3] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\components\esptool_py && E:\Espressif\tools\cmake\3.24.0\bin\cmake.exe -D IDF_PATH=E:/Espressif/frameworks/esp-idf-v5.0.4 -D SERIAL_TOOL=E:/Espressif/python_env/idf5.0_py3.11_env/Scripts/python.exe;;E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/esptool/esptool.py;--chip;esp32s3 -D SERIAL_TOOL_ARGS=--before=default_reset;--after=hard_reset;write_flash;@flash_args -D WORKING_DIRECTORY=E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build -P E:/Espressif/frameworks/esp-idf-v5.0.4/components/esptool_py/run_serial_tool.cmake" +esptool esp32s3 -p COM3 -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 bootloader/bootloader.bin 0x10000 i80_controller.bin 0x8000 partition_table/partition-table.bin +esptool.py v4.6.2 +Serial port COM3 +Connecting... +Chip is ESP32-S3 (revision v0.1) +Features: WiFi, BLE +Crystal is 40MHz +MAC: 60:55:f9:f5:71:08 +Uploading stub... +Running stub... +Stub running... +Changing baud rate to 460800 +Changed. +Configuring flash size... +Flash will be erased from 0x00000000 to 0x00004fff... +Flash will be erased from 0x00010000 to 0x00047fff... +Flash will be erased from 0x00008000 to 0x00008fff... +Compressed 20368 bytes to 12915... +Writing at 0x00000000... (100 %) +Wrote 20368 bytes (12915 compressed) at 0x00000000 in 0.4 seconds (effective 434.5 kbit/s)... +Hash of data verified. +Compressed 227616 bytes to 118261... +Writing at 0x00010000... (12 %) +Writing at 0x0001d346... (25 %) +Writing at 0x0002313e... (37 %) +Writing at 0x0002969a... (50 %) +Writing at 0x0002f478... (62 %) +Writing at 0x00038dad... (75 %) +Writing at 0x00040129... (87 %) +Writing at 0x00045f5a... (100 %) +Wrote 227616 bytes (118261 compressed) at 0x00010000 in 2.5 seconds (effective 723.8 kbit/s)... +Hash of data verified. +Compressed 3072 bytes to 103... +Writing at 0x00008000... (100 %) +Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.0 seconds (effective 521.3 kbit/s)... +Hash of data verified. + +Leaving... +Hard resetting via RTS pin... diff --git a/build/log/idf_py_stdout_output_9788 b/build/log/idf_py_stdout_output_9788 new file mode 100644 index 0000000..b480018 --- /dev/null +++ b/build/log/idf_py_stdout_output_9788 @@ -0,0 +1,35 @@ +[1/9] Performing build step for 'bootloader' +[1/1] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\bootloader\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/bootloader/bootloader.bin" +Bootloader binary size 0x4f90 bytes. 0x3070 bytes (38%) free. +[2/7] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/i80_controller_example_main.c.obj +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/esp_lcd_panel_io_i80_hub75.h:4, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:6: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_lcd/include/esp_lcd_panel_io.h:188: warning: "SOC_LCD_I80_SUPPORTED" redefined + 188 | #define SOC_LCD_I80_SUPPORTED 1 + | +In file included from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/esp_cpu.h:13, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/esp_hw_support/include/spinlock.h:11, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos/portmacro.h:74, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/portable.h:58, + from E:/Espressif/frameworks/esp-idf-v5.0.4/components/freertos/FreeRTOS-Kernel/include/freertos/FreeRTOS.h:70, + from E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:3: +E:/Espressif/frameworks/esp-idf-v5.0.4/components/soc/esp32s3/include/soc/soc_caps.h:235: note: this is the location of the previous definition + 235 | #define SOC_LCD_I80_SUPPORTED (1) /*!< Intel 8080 LCD is supported */ + | +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:177:1: warning: ignoring attribute 'section (".iram1.3")' because it conflicts with previous 'section (".iram1.2")' [-Wattributes] + 177 | { + | ^ +E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/main/i80_controller_example_main.c:126:23: note: previous declaration here + 126 | static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); + | ^~~~~~~~~~~~~~~~~~ +[3/7] Linking C static library esp-idf\main\libmain.a +[4/7] Generating ld/sections.ld +[5/7] Linking CXX executable i80_controller.elf +[6/7] Generating binary image from built executable +esptool.py v4.6.2 +Creating esp32s3 image... +Merged 2 ELF sections +Successfully created esp32s3 image. +Generated E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin +[7/7] cmd.exe /C "cd /D E:\Espressif\frameworks\esp-idf-v5.0.4\app\led_matrix\build\esp-idf\esptool_py && E:\Espressif\python_env\idf5.0_py3.11_env\Scripts\python.exe E:/Espressif/frameworks/esp-idf-v5.0.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/partition_table/partition-table.bin E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build/i80_controller.bin" +i80_controller.bin binary size 0x37920 bytes. Smallest app partition is 0x100000 bytes. 0xc86e0 bytes (78%) free. diff --git a/build/log/idf_py_stdout_output_9956 b/build/log/idf_py_stdout_output_9956 new file mode 100644 index 0000000..0a73ff6 --- /dev/null +++ b/build/log/idf_py_stdout_output_9956 @@ -0,0 +1,107 @@ +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc916ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378c76 +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0ab4ch ( 43852) map +I (104) esp_image: segment 1: paddr=0001ab74 vaddr=3fc91600 size=022f8h ( 8952) load +I (107) esp_image: segment 2: paddr=0001ce74 vaddr=40374000 size=031a4h ( 12708) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1bcb0h (113840) map +I (142) esp_image: segment 4: paddr=0003bcd8 vaddr=403771a4 size=0a424h ( 42020) load +I (157) boot: Loaded app from partition at offset 0x10000 +I (158) boot: Disabling RNG early entropy source... +I (158) cpu_start: Multicore app +I (162) cpu_start: Pro cpu up. +I (165) cpu_start: Starting app cpu, entry point is 0x40375214 +I (0) cpu_start: App cpu up. +I (181) cpu_start: Pro cpu start user code +I (181) cpu_start: cpu freq: 160000000 Hz +I (182) cpu_start: Application information: +I (182) cpu_start: Project name: i80_controller +I (182) cpu_start: App version: 42d44b0-dirty +I (182) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (183) cpu_start: ELF file SHA256: a7ffba3179575c14... +I (183) cpu_start: ESP-IDF: v5.0.4-dirty +I (183) cpu_start: Min chip rev: v0.0 +I (183) cpu_start: Max chip rev: v0.99  +I (183) cpu_start: Chip rev: v0.1 +I (184) heap_init: Initializing. RAM available for dynamic allocation: +I (184) heap_init: At 3FC94330 len 000553E0 (340 KiB): DRAM +I (184) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (185) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (185) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (186) spi_flash: detected chip: gd +I (187) spi_flash: flash io: dio +W (187) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (188) sleep: Configure to isolate all GPIO pins in sleep state +I (188) sleep: Enable automatic switching of GPIO sleep configuration +I (189) app_start: Starting scheduler on CPU0 +I (189) app_start: Starting scheduler on CPU1 +I (189) main_task: Started on CPU0 +I (199) main_task: Calling app_main() +I (199) led matrix: Initialize Intel 8080 bus +I (199) gpio: GPIO[8]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[21]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (199) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (2219) led matrix: 0 display +I (4239) led matrix: 1 display +I (6259) led matrix: 2 display +I (8279) led matrix: 3 display +I (10299) led matrix: 4 display +I (12319) led matrix: 5 display +I (14339) led matrix: 6 display +I (16359) led matrix: 7 display +I (18379) led matrix: 0 display +I (20399) led matrix: 1 display +I (22419) led matrix: 2 display +I (24439) led matrix: 3 display +I (26459) led matrix: 4 display +I (28479) led matrix: 5 display +I (30499) led matrix: 6 display +I (32519) led matrix: 7 display +I (34539) led matrix: 0 display +I (36559) led matrix: 1 display +I (38579) led matrix: 2 display +I (40599) led matrix: 3 display +I (42619) led matrix: 4 display +I (44639) led matrix: 5 display +I (46659) led matrix: 6 display +I (48679) led matrix: 7 display +I (50699) led matrix: 0 display +I (52719) led matrix: 1 display +I (54739) led matrix: 2 display +I (56759) led matrix: 3 display +I (58779) led matrix: 4 display +I (60799) led matrix: 5 display +I (62819) led matrix: 6 display +I (64839) led matrix: 7 display +I (66859) led matrix: 0 display +I (68879) led matrix: 1 display +I (70899) led matrix: 2 display +I (72919) led matrix: 3 display +I (74939) led matrix: 4 display +I (76959) led matrix: 5 display +I (78979) led matrix: 6 display +I (80999) led matrix: 7 display diff --git a/build/log/idf_py_stdout_output_996 b/build/log/idf_py_stdout_output_996 new file mode 100644 index 0000000..142c299 --- /dev/null +++ b/build/log/idf_py_stdout_output_996 @@ -0,0 +1,66 @@ +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc919ESP-ROM:esp32s3-20210327 +Build:Mar 27 2021 +rst:0x15 (USB_UART_CHIP_RESET),boot:0x29 (SPI_FAST_FLASH_BOOT) +Saved PC:0x40378dde +SPIWP:0xee +mode:DIO, clock div:1 +load:0x3fce3810,len:0x168c +load:0x403c9700,len:0xbe0 +load:0x403cc700,len:0x2cd0 +entry 0x403c9908 +I (24) boot: ESP-IDF v5.0.4-dirty 2nd stage bootloader +I (25) boot: compile time 08:38:38 +I (25) boot: Multicore bootloader +I (27) boot: chip revision: v0.1 +I (31) boot.esp32s3: Boot SPI Speed : 80MHz +I (36) boot.esp32s3: SPI Mode : DIO +I (41) boot.esp32s3: SPI Flash Size : 2MB +I (45) boot: Enabling RNG early entropy source... +I (51) boot: Partition Table: +I (54) boot: ## Label Usage Type ST Offset Length +I (62) boot: 0 nvs WiFi data 01 02 00009000 00006000 +I (69) boot: 1 phy_init RF data 01 01 0000f000 00001000 +I (76) boot: 2 factory factory app 00 00 00010000 00100000 +I (84) boot: End of partition table +I (88) esp_image: segment 0: paddr=00010020 vaddr=3c020020 size=0b214h ( 45588) map +I (105) esp_image: segment 1: paddr=0001b23c vaddr=3fc91900 size=02308h ( 8968) load +I (107) esp_image: segment 2: paddr=0001d54c vaddr=40374000 size=02acch ( 10956) load +I (116) esp_image: segment 3: paddr=00020020 vaddr=42000020 size=1cb34h (117556) map +I (143) esp_image: segment 4: paddr=0003cb5c vaddr=40376acc size=0add0h ( 44496) load +I (159) boot: Loaded app from partition at offset 0x10000 +I (159) boot: Disabling RNG early entropy source... +I (159) cpu_start: Multicore app +I (163) cpu_start: Pro cpu up. +I (167) cpu_start: Starting app cpu, entry point is 0x40375248 +I (0) cpu_start: App cpu up. +I (183) cpu_start: Pro cpu start user code +I (183) cpu_start: cpu freq: 160000000 Hz +I (183) cpu_start: Application information: +I (183) cpu_start: Project name: i80_controller +I (183) cpu_start: App version: 42d44b0-dirty +I (183) cpu_start: Compile time: Jan 30 2024 08:46:37 +I (184) cpu_start: ELF file SHA256: 6a10a83d4f40d790... +I (184) cpu_start: ESP-IDF: v5.0.4-dirty +I (184) cpu_start: Min chip rev: v0.0 +I (184) cpu_start: Max chip rev: v0.99  +I (185) cpu_start: Chip rev: v0.1 +I (185) heap_init: Initializing. RAM available for dynamic allocation: +I (185) heap_init: At 3FC94670 len 000550A0 (340 KiB): DRAM +I (186) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM +I (186) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM +I (186) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM +I (187) spi_flash: detected chip: gd +I (188) spi_flash: flash io: dio +W (188) spi_flash: Detected size(8192k) larger than the size in the binary image header(2048k). Using the size in the binary image header. +I (189) sleep: Configure to isolate all GPIO pins in sleep state +I (190) sleep: Enable automatic switching of GPIO sleep configuration +I (190) app_start: Starting scheduler on CPU0 +I (191) app_start: Starting scheduler on CPU1 +I (191) main_task: Started on CPU0 +I (201) main_task: Calling app_main() +I (201) led matrix: Initialize Intel 8080 bus +I (201) gpio: GPIO[33]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[34]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[35]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) gpio: GPIO[36]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0  +I (201) led matrix: led_matrix_oe_lat_ledc_init diff --git a/build/project_description.json b/build/project_description.json index 9a2957a..1f1eb02 100644 --- a/build/project_description.json +++ b/build/project_description.json @@ -1,7 +1,7 @@ { "version": "1", "project_name": "i80_controller", - "project_version": "92e5b1f-dirty", + "project_version": "42d44b0-dirty", "project_path": "E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix", "idf_path": "E:/Espressif/frameworks/esp-idf-v5.0.4", "build_dir": "E:/Espressif/frameworks/esp-idf-v5.0.4/app/led_matrix/build", diff --git a/main/esp_lcd_panel_io_i80_hub75.c b/main/esp_lcd_panel_io_i80_hub75.c index 768f3bc..f4ce35b 100644 --- a/main/esp_lcd_panel_io_i80_hub75.c +++ b/main/esp_lcd_panel_io_i80_hub75.c @@ -82,6 +82,8 @@ struct esp_lcd_i80_hub75_bus_t { int max_scan_times; // 每页行最多扫描次数,和全彩显示有关系 int max_scan_line; // 最多扫描行 int max_transfer_bytes; // 最多一次发送的数据,也就是一行的数据个数 + int cur_scan_times; + int cur_scan_line; uint8_t *format_buffer; // The driver allocates an internal buffer for DMA to do data format transformer @@ -142,9 +144,24 @@ struct lcd_panel_io_i80_hub75_t { void test_init_buf(esp_lcd_i80_hub75_bus_handle_t bus) { uint16_t (*buf)[8][128] = bus->format_buffer; + + memset(buf, 0, sizeof(bus->max_transfer_bytes * bus->max_scan_times * bus->max_scan_line)); // clear buffer firstly. + buf[0][0][0] = 0x9; /* 红 */ buf[0][0][1] = 0x12; buf[0][0][2] = 0x24; + + buf[0][1][0] = 0x0; /* 红 */ + buf[0][1][1] = 0x0; + buf[0][1][2] = 0x0; + + buf[0][3][0] = 0x12; /* 红 */ + buf[0][3][1] = 0x9; + buf[0][3][2] = 0x24; + + buf[0][5][0] = 0x24; /* 红 */ + buf[0][5][1] = 0x12; + buf[0][5][2] = 0x9; } void hub75_send_line(esp_lcd_panel_io_handle_t io, int times, int line) @@ -492,19 +509,17 @@ static esp_err_t panel_io_i80_tx_param(esp_lcd_panel_io_t *io, int lcd_cmd, cons static esp_err_t panel_io_i80_tx_color(esp_lcd_panel_io_t *io, int lcd_cmd, const void *color, size_t color_size) { - ESP_LOGI(TAG, "panel_io_i80_tx_color"); + // ESP_LOGI(TAG, "panel_io_i80_tx_color"); lcd_panel_io_i80_hub75_t *i80_device = __containerof(io, lcd_panel_io_i80_hub75_t, base); esp_lcd_i80_hub75_bus_t *bus = i80_device->bus; lcd_i80_hub75_trans_descriptor_t *trans_desc = NULL; assert(color_size <= (bus->num_dma_nodes * DMA_DESCRIPTOR_BUFFER_MAX_SIZE) && "color bytes too long, enlarge max_transfer_bytes"); - ESP_LOGI(TAG, "1"); // in case bus_width=16 and cmd_bits=8, we still need 1 cmd_cycle uint32_t cmd_cycles = i80_device->lcd_cmd_bits / bus->bus_width; if (cmd_cycles * bus->bus_width < i80_device->lcd_cmd_bits) { cmd_cycles++; } i80_lcd_prepare_cmd_buffer(bus, i80_device, &lcd_cmd); - ESP_LOGI(TAG, "2"); if (i80_device->num_trans_inflight < i80_device->queue_size) { trans_desc = &i80_device->trans_pool[i80_device->num_trans_inflight]; } else { @@ -521,20 +536,16 @@ static esp_err_t panel_io_i80_tx_color(esp_lcd_panel_io_t *io, int lcd_cmd, cons trans_desc->trans_done_cb = i80_device->on_color_trans_done; trans_desc->user_ctx = i80_device->user_ctx; - ESP_LOGI(TAG, "3"); if (esp_ptr_external_ram(color)) { // flush framebuffer from cache to the physical PSRAM Cache_WriteBack_Addr((uint32_t)color, color_size); } - ESP_LOGI(TAG, "4"); // send transaction to trans_queue xQueueSend(i80_device->trans_queue, &trans_desc, portMAX_DELAY); - ESP_LOGI(TAG, "5"); i80_device->num_trans_inflight++; // enable interrupt and go into isr handler, where we fetch the transactions from trans_queue and start it // we will go into `lcd_default_isr_handler` almost at once, because the "trans done" event is active at the moment esp_intr_enable(bus->intr); - ESP_LOGI(TAG, "6"); return ESP_OK; } diff --git a/main/i80_controller_example_main.c b/main/i80_controller_example_main.c index 5229a9d..418180c 100644 --- a/main/i80_controller_example_main.c +++ b/main/i80_controller_example_main.c @@ -30,6 +30,8 @@ static const char *TAG = "led matrix"; #define HUB75_OE_PIN_NUM 21 #define HUB75_CLK_PIN_NUM 7 +#define HUB75_OE_CAPTRUE_PIN_NUM 18 + #define HUB75_G0 1 #define HUB75_R0 2 #define HUB75_B0 3 @@ -48,8 +50,6 @@ static const char *TAG = "led matrix"; typedef unsigned char uint8_t; typedef unsigned short int uint16_t; -static int line = 0; /* 本次扫描行,32行16扫,一次显示两行 */ - esp_lcd_i80_hub75_bus_handle_t i80_bus = NULL; esp_lcd_panel_io_handle_t io_handle = NULL; void led_matrix_i80_hub75_bus_init(void) @@ -106,26 +106,34 @@ void led_matrix_addr_gpio_init(void) { gpio_config_t io_conf = { .mode = GPIO_MODE_OUTPUT, - .pin_bit_mask = (1ULL << HUB75_LINE_ADDR_A_PIN_NUM) | + .pin_bit_mask = (1ULL << HUB75_LAT_PIN_NUM) | + (1ULL << HUB75_OE_PIN_NUM) | + (1ULL << HUB75_LINE_ADDR_A_PIN_NUM) | (1ULL << HUB75_LINE_ADDR_B_PIN_NUM) | (1ULL << HUB75_LINE_ADDR_C_PIN_NUM) | (1ULL << HUB75_LINE_ADDR_D_PIN_NUM), }; ESP_ERROR_CHECK(gpio_config(&io_conf)); + + gpio_config_t io_conf1 = { + .mode = GPIO_MODE_INPUT, + .pin_bit_mask = (1ULL << HUB75_OE_CAPTRUE_PIN_NUM), + }; + ESP_ERROR_CHECK(gpio_config(&io_conf1)); } #define LEDC_MODE LEDC_LOW_SPEED_MODE #define LEDC_TIMER LEDC_TIMER_0 #define LEDC_DUTY_RES LEDC_TIMER_11_BIT -#define LEDC_FREQUENCY (3840) /* 60 * 8 * 8 */ +#define LEDC_FREQUENCY (480) /* 3840 = 60 * 8 * 8 */ -#define LEDC_DUTY_OE (2040) /* 先低后高,前面有效,控制亮度 */ -#define LEDC_DUTY_LAT (2048 - 5) /* 先高后低锁存 */ +#define LEDC_DUTY_OE (100) /* 先低后高,前面有效,控制亮度 */ +#define LEDC_DUTY_LAT (2048 - 5) /* 高电平锁存 */ static void IRAM_ATTR ledc_timer_ovf_isr(void *arg); extern esp_err_t ledc_set_timer_ovf_intr(ledc_mode_t speed_mode, ledc_channel_t channel, int enbale); -esp_err_t ledc_clear_timer_ovf_intr_status(ledc_mode_t speed_mode, ledc_channel_t channel); +extern void ledc_clear_timer_ovf_intr_status(ledc_timer_t timer_num); static ledc_isr_handle_t s_ledc_time_isr_handle = NULL; esp_err_t led_matrix_oe_lat_ledc_init(void) @@ -156,7 +164,7 @@ esp_err_t led_matrix_oe_lat_ledc_init(void) .intr_type = LEDC_INTR_DISABLE, .gpio_num = HUB75_LAT_PIN_NUM, .duty = LEDC_DUTY_LAT, - .flags.output_invert = 0, + .flags.output_invert = 1, .hpoint = 0}; ESP_ERROR_CHECK(ledc_channel_config(&ledc_channel_oe)); ESP_ERROR_CHECK(ledc_channel_config(&ledc_channel_lat)); @@ -164,7 +172,7 @@ esp_err_t led_matrix_oe_lat_ledc_init(void) /* 中断配置 */ ledc_set_timer_ovf_intr(LEDC_MODE, LEDC_TIMER, false); int isr_flags = ESP_INTR_FLAG_LEVEL2; - int ret = ledc_isr_register(ledc_timer_ovf_isr, NULL, isr_flags, &s_ledc_time_isr_handle); + int ret = ledc_isr_register(ledc_timer_ovf_isr, i80_bus, isr_flags, &s_ledc_time_isr_handle); ESP_GOTO_ON_ERROR(ret, err, TAG, "install interrupt failed"); ledc_set_timer_ovf_intr(LEDC_MODE, LEDC_TIMER, true); @@ -173,10 +181,35 @@ err: return ESP_FAIL; } +static int line = 0; /* 本次扫描行,32行16扫,一次显示两行 */ static void IRAM_ATTR ledc_timer_ovf_isr(void *arg) { - ledc_clear_timer_ovf_intr_status(LEDC_MODE, LEDC_TIMER); - hub75_send_line(io_handle, 0, 0); + ledc_clear_timer_ovf_intr_status(LEDC_TIMER_0); + gpio_set_level(HUB75_LINE_ADDR_A_PIN_NUM, line & 1); /* 行地址,A是低位(待求证) */ + gpio_set_level(HUB75_LINE_ADDR_B_PIN_NUM, (line >> 1) & 1); + gpio_set_level(HUB75_LINE_ADDR_C_PIN_NUM, (line >> 2) & 1); + gpio_set_level(HUB75_LINE_ADDR_D_PIN_NUM, (line >> 3) & 1); + line ++; + if (line == 8) line = 0; + hub75_send_line(io_handle, 0, line); +} + +static void hub75_addr_task(void *arg) +{ + ESP_LOGI(TAG, "hub75_addr_task"); + int oe = 0; + while (1) + { + oe = gpio_get_level(HUB75_OE_CAPTRUE_PIN_NUM); + if (oe == 1) + { + // ESP_LOGI(TAG, "oe = 1"); + gpio_set_level(HUB75_LINE_ADDR_A_PIN_NUM, line & 1); /* 行地址,A是低位(待求证) */ + gpio_set_level(HUB75_LINE_ADDR_B_PIN_NUM, (line >> 1) & 1); + gpio_set_level(HUB75_LINE_ADDR_C_PIN_NUM, (line >> 2) & 1); + gpio_set_level(HUB75_LINE_ADDR_D_PIN_NUM, (line >> 3) & 1); + } + } } @@ -186,15 +219,12 @@ void app_main(void) led_matrix_addr_gpio_init(); test_init_buf(i80_bus); - gpio_set_level(HUB75_LINE_ADDR_A_PIN_NUM, line & 1); /* 行地址,A是低位(待求证) */ - gpio_set_level(HUB75_LINE_ADDR_B_PIN_NUM, (line >> 1) & 1); - gpio_set_level(HUB75_LINE_ADDR_C_PIN_NUM, (line >> 2) & 1); - gpio_set_level(HUB75_LINE_ADDR_D_PIN_NUM, (line >> 3) & 1); - ESP_LOGI(TAG, "1"); led_matrix_oe_lat_ledc_init(); + // xTaskCreatePinnedToCore(hub75_addr_task, "hub75_addr", 4096, NULL, 9, NULL, tskNO_AFFINITY); + while (1) { - vTaskDelay(pdMS_TO_TICKS(1000)); + vTaskDelay(pdMS_TO_TICKS(1000)); } }