commit 367905ec17e9b5c933795f1dc0358710b06f106e
Author: Enzo Niro <enzo.niro@inrae.fr>
Date:   Tue Jan 28 15:25:22 2025 +0100

    Version 2.8 :
    -> Changement nom Bluetooth en SICPA_ASB-{4 chiffres adresse MAC}
    -> Optimisation de l'algorithme anti corruption

diff --git a/Version 2.8/Panel_reader_controller.X/.generated_files/flags/default/5dd84e98093f7971548bf1431a93e252a220bd51 b/Version 2.8/Panel_reader_controller.X/.generated_files/flags/default/5dd84e98093f7971548bf1431a93e252a220bd51
new file mode 100644
index 0000000..28785c8
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/.generated_files/flags/default/5dd84e98093f7971548bf1431a93e252a220bd51	
@@ -0,0 +1 @@
+ $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c  -D__DEBUG=1 -g -DDEBUG  -gdwarf-2  -x c -D__$(MP_PROCESSOR_OPTION)__   -mdfp="${DFP_DIR}/xc8"  -Wl,--gc-sections -O1 -ffunction-sections -fdata-sections -fshort-enums -fno-common -funsigned-char -funsigned-bitfields -Wall -DXPRJ_default=$(CND_CONF)  $(COMPARISON_BUILD)  -gdwarf-3 -mno-const-data-in-progmem    C:\Users\eniro\MPLABXProjects\Panel_reader_controller.X\main.c
\ No newline at end of file
diff --git a/Version 2.8/Panel_reader_controller.X/.generated_files/flags/default/b96fca17d599584f41492ff66125b9a9a0e64339 b/Version 2.8/Panel_reader_controller.X/.generated_files/flags/default/b96fca17d599584f41492ff66125b9a9a0e64339
new file mode 100644
index 0000000..108e4d4
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/.generated_files/flags/default/b96fca17d599584f41492ff66125b9a9a0e64339	
@@ -0,0 +1 @@
+ $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c  -x c -D__$(MP_PROCESSOR_OPTION)__   -mdfp="${DFP_DIR}/xc8"  -Wl,--gc-sections -O1 -ffunction-sections -fdata-sections -fshort-enums -fno-common -funsigned-char -funsigned-bitfields -Wall -DXPRJ_default=$(CND_CONF)  $(COMPARISON_BUILD)  -gdwarf-3 -mno-const-data-in-progmem    C:\Users\eniro\MPLABXProjects\Panel_reader_controller.X\main.c
\ No newline at end of file
diff --git a/Version 2.8/Panel_reader_controller.X/.generated_files/flags/default/da39a3ee5e6b4b0d3255bfef95601890afd80709 b/Version 2.8/Panel_reader_controller.X/.generated_files/flags/default/da39a3ee5e6b4b0d3255bfef95601890afd80709
new file mode 100644
index 0000000..e69de29
diff --git a/Version 2.8/Panel_reader_controller.X/Makefile b/Version 2.8/Panel_reader_controller.X/Makefile
new file mode 100644
index 0000000..fca8e2c
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/Makefile	
@@ -0,0 +1,113 @@
+#
+#  There exist several targets which are by default empty and which can be 
+#  used for execution of your targets. These targets are usually executed 
+#  before and after some main targets. They are: 
+#
+#     .build-pre:              called before 'build' target
+#     .build-post:             called after 'build' target
+#     .clean-pre:              called before 'clean' target
+#     .clean-post:             called after 'clean' target
+#     .clobber-pre:            called before 'clobber' target
+#     .clobber-post:           called after 'clobber' target
+#     .all-pre:                called before 'all' target
+#     .all-post:               called after 'all' target
+#     .help-pre:               called before 'help' target
+#     .help-post:              called after 'help' target
+#
+#  Targets beginning with '.' are not intended to be called on their own.
+#
+#  Main targets can be executed directly, and they are:
+#  
+#     build                    build a specific configuration
+#     clean                    remove built files from a configuration
+#     clobber                  remove all built files
+#     all                      build all configurations
+#     help                     print help mesage
+#  
+#  Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and
+#  .help-impl are implemented in nbproject/makefile-impl.mk.
+#
+#  Available make variables:
+#
+#     CND_BASEDIR                base directory for relative paths
+#     CND_DISTDIR                default top distribution directory (build artifacts)
+#     CND_BUILDDIR               default top build directory (object files, ...)
+#     CONF                       name of current configuration
+#     CND_ARTIFACT_DIR_${CONF}   directory of build artifact (current configuration)
+#     CND_ARTIFACT_NAME_${CONF}  name of build artifact (current configuration)
+#     CND_ARTIFACT_PATH_${CONF}  path to build artifact (current configuration)
+#     CND_PACKAGE_DIR_${CONF}    directory of package (current configuration)
+#     CND_PACKAGE_NAME_${CONF}   name of package (current configuration)
+#     CND_PACKAGE_PATH_${CONF}   path to package (current configuration)
+#
+# NOCDDL
+
+
+# Environment 
+MKDIR=mkdir
+CP=cp
+CCADMIN=CCadmin
+RANLIB=ranlib
+
+
+# build
+build: .build-post
+
+.build-pre:
+# Add your pre 'build' code here...
+
+.build-post: .build-impl
+# Add your post 'build' code here...
+
+
+# clean
+clean: .clean-post
+
+.clean-pre:
+# Add your pre 'clean' code here...
+# WARNING: the IDE does not call this target since it takes a long time to
+# simply run make. Instead, the IDE removes the configuration directories
+# under build and dist directly without calling make.
+# This target is left here so people can do a clean when running a clean
+# outside the IDE.
+
+.clean-post: .clean-impl
+# Add your post 'clean' code here...
+
+
+# clobber
+clobber: .clobber-post
+
+.clobber-pre:
+# Add your pre 'clobber' code here...
+
+.clobber-post: .clobber-impl
+# Add your post 'clobber' code here...
+
+
+# all
+all: .all-post
+
+.all-pre:
+# Add your pre 'all' code here...
+
+.all-post: .all-impl
+# Add your post 'all' code here...
+
+
+# help
+help: .help-post
+
+.help-pre:
+# Add your pre 'help' code here...
+
+.help-post: .help-impl
+# Add your post 'help' code here...
+
+
+
+# include project implementation makefile
+include nbproject/Makefile-impl.mk
+
+# include project make variables
+include nbproject/Makefile-variables.mk
diff --git a/Version 2.8/Panel_reader_controller.X/build/default/production/main.o b/Version 2.8/Panel_reader_controller.X/build/default/production/main.o
new file mode 100644
index 0000000..051ef4a
Binary files /dev/null and b/Version 2.8/Panel_reader_controller.X/build/default/production/main.o differ
diff --git a/Version 2.8/Panel_reader_controller.X/build/default/production/main.o.d b/Version 2.8/Panel_reader_controller.X/build/default/production/main.o.d
new file mode 100644
index 0000000..8d8dc90
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/build/default/production/main.o.d	
@@ -0,0 +1,90 @@
+build/default/production/main.o.d build/default/production/main.o: main.c \
+ c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\xc.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\cci.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\io.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\sfr_defs.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\inttypes.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\features.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\stdint.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\stdint.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\bits\alltypes.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\bits\stdint.h \
+ C:/Program\ Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/include/avr/iotn826.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\portpins.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\common.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\xmega.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\fuse.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\lock.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\builtins.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\stdio.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\string.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\stdbool.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\util\delay.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\util\delay_basic.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\math.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\interrupt.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\eeprom.h \
+ c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\stddef.h \
+ factory.h defValues.h configuration.h pins.h moduleCmds.h
+
+c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\xc.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\cci.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\io.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\sfr_defs.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\inttypes.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\features.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\stdint.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\stdint.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\bits\alltypes.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\bits\stdint.h:
+
+C:/Program\ Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/include/avr/iotn826.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\portpins.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\common.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\xmega.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\fuse.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\lock.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\builtins.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\stdio.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\string.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\stdbool.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\util\delay.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\util\delay_basic.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\math.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\interrupt.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\avr\include\avr\eeprom.h:
+
+c:\program\ files\microchip\xc8\v2.46\avr\lib\gcc\avr\5.4.0\include\stddef.h:
+
+factory.h:
+
+defValues.h:
+
+configuration.h:
+
+pins.h:
+
+moduleCmds.h:
diff --git a/Version 2.8/Panel_reader_controller.X/configuration.h b/Version 2.8/Panel_reader_controller.X/configuration.h
new file mode 100644
index 0000000..f6bf1f6
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/configuration.h	
@@ -0,0 +1,52 @@
+/* Microchip Technology Inc. and its subsidiaries.  You may use this software 
+ * and any derivatives exclusively with Microchip products. 
+ * 
+ * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS".  NO WARRANTIES, WHETHER 
+ * EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE, INCLUDING ANY IMPLIED 
+ * WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A 
+ * PARTICULAR PURPOSE, OR ITS INTERACTION WITH MICROCHIP PRODUCTS, COMBINATION 
+ * WITH ANY OTHER PRODUCTS, OR USE IN ANY APPLICATION. 
+ *
+ * IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, 
+ * INCIDENTAL OR CONSEQUENTIAL LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND 
+ * WHATSOEVER RELATED TO THE SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS 
+ * BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE.  TO THE 
+ * FULLEST EXTENT ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS 
+ * IN ANY WAY RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF 
+ * ANY, THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
+ *
+ * MICROCHIP PROVIDES THIS SOFTWARE CONDITIONALLY UPON YOUR ACCEPTANCE OF THESE 
+ * TERMS. 
+ */
+
+/* 
+ * File:   configuration.h
+ * Author: Enzo Niro
+ * Comments: Setup firmware behavior
+ * Revision history: 1.0
+ */
+
+// This is a guard condition so that contents of this file are not included
+// more than once.  
+#ifndef APP_CONFIGURATION_H
+#define	APP_CONFIGURATION_H
+
+#include <xc.h> // include processor files - each processor file is guarded.  
+#include "defValues.h"
+
+#define USE_TWO_SERIAL_PORTS
+
+
+//PWM cfg
+#define PWM_RATE 0x7F //Set dimmer rate
+#define PWM_DIV  0x01 //Choose dimmer frequency 
+
+
+//ADC cfg
+#define ADC_PRESCALER   0x3 //set adc clock base for conversion
+#define ADC_TIMEBASE    0x8 //set adc delay start conversion
+#define ADC_REF         0x5 //set adc voltage reference
+#define ADC_PGA_GAIN    ADC_PGA_1X  
+
+#endif	/* XC_HEADER_TEMPLATE_H */
+
diff --git a/Version 2.8/Panel_reader_controller.X/defValues.h b/Version 2.8/Panel_reader_controller.X/defValues.h
new file mode 100644
index 0000000..ae6029d
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/defValues.h	
@@ -0,0 +1,124 @@
+/* Microchip Technology Inc. and its subsidiaries.  You may use this software 
+ * and any derivatives exclusively with Microchip products. 
+ * 
+ * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS".  NO WARRANTIES, WHETHER 
+ * EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE, INCLUDING ANY IMPLIED 
+ * WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A 
+ * PARTICULAR PURPOSE, OR ITS INTERACTION WITH MICROCHIP PRODUCTS, COMBINATION 
+ * WITH ANY OTHER PRODUCTS, OR USE IN ANY APPLICATION. 
+ *
+ * IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, 
+ * INCIDENTAL OR CONSEQUENTIAL LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND 
+ * WHATSOEVER RELATED TO THE SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS 
+ * BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE.  TO THE 
+ * FULLEST EXTENT ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS 
+ * IN ANY WAY RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF 
+ * ANY, THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
+ *
+ * MICROCHIP PROVIDES THIS SOFTWARE CONDITIONALLY UPON YOUR ACCEPTANCE OF THESE 
+ * TERMS. 
+ */
+
+/* 
+ * File:   defValues.h
+ * Author: Enzo Niro
+ * Comments: Defitions values for every default variables/registers/ect...
+ * Revision history: 1.0
+ */
+
+// This is a guard condition so that contents of this file are not included
+// more than once.  
+#ifndef APP_DEF_VALUES_H
+#define	APP_DEF_VALUES_H
+
+#include <xc.h> // include processor files - each processor file is guarded.  
+
+//General definitions
+
+#define ENABLE_BIT                      1
+#define ASCII_NUMBER_CONVERSION         0x30
+
+
+//USART
+#define MAX_BAUD_VALUES                 9
+
+
+//EEPROM cfg max bytes
+#define TOP_CFG_ADDR                    33
+
+//Window serial buffer analyser (add 1 one to get entire frame + temp byte)
+#define MAX_WINDOW_BUFFER               15
+
+//ADC definitions
+#define ADC_PGA_BIAS                    0x00 //Set PGA BIAS -> We must set CLK_ADC less than 6MHz
+#define ADC_PGA_SMD                     0x02  //Set PGA SAMPDUR -> We must set CLK_ADC less than 6MHz
+
+//PGA gains
+enum ADCPGAGain
+{
+    ADC_PGA_1X = 0,
+    ADC_PGA_2X,
+    ADC_PGA_4X,
+    ADC_PGA_8X,
+    ADC_PGA_16X,
+};
+
+
+#define ADC_VIA_DIRECT                  0x00 //Analog input linked direct to ADC
+#define ADC_VIA_PGA                     0x01 //Analog input linked to PGA
+
+enum ADCMUXPOS
+{
+    ADC_MUX_DEFAULT = 0,
+    ADC_MUX_AIN1,
+    ADC_MUX_AIN2,
+    ADC_MUX_AIN3,
+    ADC_MUX_AIN4,
+    ADC_MUX_AIN5,
+    ADC_MUX_AIN6,
+    ADC_MUX_AIN7,
+    ADC_MUX_AIN8,
+    ADC_MUX_AIN9,
+    ADC_MUX_AIN10,
+    ADC_MUX_AIN11,
+    ADC_MUX_AIN12,
+    ADC_MUX_AIN13,
+    ADC_MUX_AIN14,
+    ADC_MUX_AIN15,
+    ADC_MUX_GND = 30,
+    ADC_MUX_VDDDIV10,
+    ADC_MUX_TEMPSENSE,
+    ADC_MUX_DACREF0,
+};
+
+
+enum ADCMUXNEG
+{
+    ADC_MUXN_DEFAULT = 0,
+    ADC_MUXN_AIN1,
+    ADC_MUXN_AIN2,
+    ADC_MUXN_AIN3,
+    ADC_MUXN_AIN4,
+    ADC_MUXN_AIN5,
+    ADC_MUXN_AIN6,
+    ADC_MUXN_AIN7,
+    ADC_MUXN_AIN8,
+    ADC_MUXN_AIN9,
+    ADC_MUXN_AIN10,
+    ADC_MUXN_AIN11,
+    ADC_MUXN_AIN12,
+    ADC_MUXN_AIN13,
+    ADC_MUXN_AIN14,
+    ADC_MUXN_AIN15,
+    ADC_MUXN_GND = 30,
+    ADC_MUXN_VDDDIV10,
+    ADC_MUXN_TEMPSENSE,
+    ADC_MUXN_DACREF0,
+};
+
+//ADC operation mode
+#define ADC_SINGLE_8BIT                 0x00
+#define ADC_SINGLE_12BIT                0x01
+
+#endif	/* XC_HEADER_TEMPLATE_H */
+
diff --git a/Version 2.8/Panel_reader_controller.X/defmplabxtrace.log b/Version 2.8/Panel_reader_controller.X/defmplabxtrace.log
new file mode 100644
index 0000000..e69de29
diff --git a/Version 2.8/Panel_reader_controller.X/defmplabxtrace.log.inx b/Version 2.8/Panel_reader_controller.X/defmplabxtrace.log.inx
new file mode 100644
index 0000000..29197e3
Binary files /dev/null and b/Version 2.8/Panel_reader_controller.X/defmplabxtrace.log.inx differ
diff --git a/Version 2.8/Panel_reader_controller.X/dist/default/production/Panel_reader_controller.X.production.elf b/Version 2.8/Panel_reader_controller.X/dist/default/production/Panel_reader_controller.X.production.elf
new file mode 100644
index 0000000..38d7b60
Binary files /dev/null and b/Version 2.8/Panel_reader_controller.X/dist/default/production/Panel_reader_controller.X.production.elf differ
diff --git a/Version 2.8/Panel_reader_controller.X/dist/default/production/Panel_reader_controller.X.production.hex b/Version 2.8/Panel_reader_controller.X/dist/default/production/Panel_reader_controller.X.production.hex
new file mode 100644
index 0000000..e20b3fb
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/dist/default/production/Panel_reader_controller.X.production.hex	
@@ -0,0 +1,523 @@
+:100000002FC02ECF2DCF2CCF2BCF2ACF29CF28CF2B
+:1000100027CF26CF25CF24CF23CF22CF21CF20CF4C
+:100020001FCF08CE1DCF1CCF1BCF1ACF19CF18CF93
+:1000300017CF16CF16CE14CF13CF12CF3C003E00F1
+:10004000803E003E12001E6A3E123E21803E213E4E
+:100050002F001E7C3E2F3E3000187F3E303E328007
+:1000600011241FBECFEFCDBFDFE3DEBFECE3F0E036
+:1000700040E017C0B591A59135912591059107FDF7
+:100080000CC095918591EF01F92FE82F05900D9205
+:10009000A217B307D9F7FE0104C01D92A217B30738
+:1000A000E1F7E036F40731F703D0C6CEF894FFCF7E
+:1000B000CF93DF93CDB7DEB7C854D109CDBFDEBF34
+:1000C00091E088ED84BF90936100A89500E014E072
+:1000D000F80114826894DD24D7F8D0826894EE2465
+:1000E000E5F8FF24F2F8F701148282E3808336DE1C
+:1000F000F701848180628483FFE322E43FE0F150D2
+:1001000020403040E1F700C00000F80184818068A1
+:100110008483FFE926E831E0F15020403040E1F7E8
+:1001200000C00000F80184818F778483FFE926E80E
+:1001300031E0F15020403040E1F700C00000F8010C
+:10014000848180688483FFEF28E03DE3F150204004
+:100150003040E1F700C00000F70184818F7D848387
+:10016000A895CE01019697DC87E190E05DDEF894DA
+:10017000F801908192609083F70190819460908360
+:10018000A0E0B8E01596DC92159790EC16969C933B
+:1001900016972BE017962C931797E82FF0E0EE0FA9
+:1001A000FF1FE050F24C2081318118962D933C9333
+:1001B0001997A0E2B8E01596DC92159716969C93D5
+:1001C000169783E017968C931797808191811896E4
+:1001D0008D939C9319977894A89500E01EE30F2EB9
+:1001E000F2E1CF2EFEE3DF2EF02DE12C6894FF2408
+:1001F000F3F864E08FE698E90EDCFFE32DE033E0EE
+:10020000F15020403040E1F700C000008091313EC5
+:100210008823D1F1B12C75DCE2E2F0E0EC0FFD1F98
+:10022000EB0DF11D8083B3948091313E8111F3CFAA
+:10023000BB2069F140912F3E90E01BC0FE01B296B9
+:100240002B2D30E0215031092E0F3F1F81818193EA
+:10025000E217F307D9F7733431F46D3421F45434D1
+:1002600011F441E391E0BA94B11003C040932F3EE2
+:100270000CC07AA16BA15CA12B2D30E0215031097B
+:1002800012161306DCF2E7CF90E091119DC2F8013F
+:10029000819191918F01F70180879187FFE32DE094
+:1002A00033E0F15020403040E1F700C000000C1571
+:1002B0001D0509F09ECF64E08FE698E9ACDB4FE3C3
+:1002C0005DE083E0415050408040E1F700C0000015
+:1002D0007BC217DC8091313E8111FBCF9FE3EDE0C3
+:1002E000F3E09150E040F040E1F700C00000809161
+:1002F0000808909109088093280890932908A895E8
+:10030000CE01019607D7082F57D9182F80E590E026
+:100310008BDD26968FAF26972FE33DE043E02150FB
+:1003200030404040E1F700C0000081E590E07CDD16
+:1003300027968FAF27975FE38DE093E05150804081
+:100340009040E1F700C0000082E590E06DDD289666
+:100350008FAF2897EFE3FDE023E0E150F04020402D
+:10036000E1F700C0000001110EC080E690E05CDD06
+:100370003FE34DE053E0315040405040E1F700C0D2
+:1003800000008823B9F1111160C026968FAD269721
+:100390008F5F26968FAF269783E0E0E2F4E09481AA
+:1003A000906294839FE121EA37E0915020403040F1
+:1003B000E1F700C0000094819F7D94834FE151EAF2
+:1003C00097E0415050409040E1F700C0000081505C
+:1003D00031F7CE010196C7D560E080E690E097DC6A
+:1003E000EFE3FDE023E0E150F0402040E1F700C002
+:1003F000000098C0112309F45DC027963FAD2797F0
+:100400003F5F27963FAF279783E0E0E2F4E09481D7
+:10041000906194834FE151EA97E041505040904001
+:10042000E1F700C0000094819F7E94832FE131EAC0
+:1004300047E0215030404040E1F700C000008150CB
+:1004400031F7CE010196B5D36DC028965FAD2897E0
+:100450005F5F28965FAF289783E0E0E0FAE02FEF38
+:1004600030E022A733A79FE141EA57E09150404096
+:100470005040E1F700C0000012A613A69FE141EA38
+:1004800057E0915040405040E1F700C000008150DB
+:1004900041F7CE01019622DA60E080E690E037DC99
+:1004A0008FE39DE0E3E081509040E040E1F700C041
+:1004B000000038C082E0E0E2F4E0A0E0BAE02FEF14
+:1004C00030E09481906294834FE151EA97E041508B
+:1004D00050409040E1F700C0000094819F7D9483DC
+:1004E0009481906194834FE151EA97E041505040EC
+:1004F0009040E1F700C0000094819F7E94839A961B
+:100500002D933C939B974FE151EA97E04150504027
+:100510009040E1F700C000009A961D921C929B97B4
+:10052000815079F6A8952896EFAD2897EF3F81F492
+:1005300060E082E590E0EBDBFFE32DE033E0F1509B
+:1005400020403040E1F700C0000028961FAE2897F9
+:1005500027964FAD27974F3F81F460E081E590E00B
+:10056000D6DB5FE38DE093E0515080409040E1F7AF
+:1005700000C0000027961FAE27972696EFAD26975E
+:10058000EF3F81F460E080E590E0C1DBFFE32DE028
+:1005900033E0F15020403040E1F700C000002696E3
+:1005A0001FAE269765E084E798E935DA4FE754E80F
+:1005B0008EE1415050408040E1F700C00000809142
+:1005C000313E882329F09DDA8091313E8111FBCFA5
+:1005D000C12C6894DD24D2F800E214E06894AA24C7
+:1005E000A6F8BB24B2F80F2E612CFAE07F2EF02D76
+:1005F00044244A94512C212C6894332433F8E2E1AA
+:10060000FEE32396EFAF23972496FFAF24971BC0FA
+:1006100025963FAD259729963FAF29972596FFAEA2
+:10062000259711C025964FAD259729964FAF29974D
+:100630002596FFAE259707C02596FFAE25975FE468
+:1006400029965FAF29970F2EF0E2EF2EFEE3FF2EE3
+:10065000F02D6894882485F8992493F8A895F601DC
+:10066000808584FD05C0F80184818F7E848304C069
+:10067000F801848180618483F601808586FF03C050
+:10068000808585FD05C0F80184818062848304C073
+:10069000F80184818F7D8483F501808581FF04C00A
+:1006A000F30142A653A603C0F30112A613A680913C
+:1006B000303E882309F453C0F601808584FD04C0D0
+:1006C0003ADAF10182834BC036DA8093203EF101A1
+:1006D0008283E2E1FEE381818193EE15FF05D9F784
+:1006E0004EE061E27EE323968FAD239724969FAD83
+:1006F0002497F9DA882399F167E089E798E9C8DA5D
+:1007000026962FAD2697F401228383EC99E001977A
+:10071000F1F700C0000020E2228383EC99E001970A
+:10072000F1F700C0000027962FAD2797228383ECB6
+:1007300099E00197F1F700C0000020E2228383ECEA
+:1007400099E00197F1F700C0000028962FAD289797
+:10075000228383EC99E00197F1F700C000008091BB
+:10076000313E882309F47ACFF601808584FD04C0E8
+:10077000C8D98093220867CFC4D9F82E8093220865
+:100780002996FFAD2997F13409F042CF25962FAD78
+:1007900025972F3409F046CF3BE483134DCF6FEFFD
+:1007A00080E690E0B4DA4FE35DE083E041505040F2
+:1007B0008040E1F700C000002596FFAE25979FE43A
+:1007C00029969FAF29973FCFEFE3F2E42FE0E15066
+:1007D000F0402040E1F700C000008091313E8111DF
+:0407E00078CD7CCD87
+:1007E400AEE0B0E0E7EFF3E0F5C94C016B0119822C
+:1007F4001A828FEF9FEF8B839C831D821E824F830F
+:10080400588729873A87A12CB12CD6016D907C900A
+:10081400F301EA0DFB1D808181110FC0D601ED9318
+:10082400FC938081853209F0BEC13F01BFEF6B1A92
+:100834007B0AF6016082718218C0853279F3B401B3
+:10084400082E000C990B6AD64FEFA41AB40ADDCF18
+:100854008C32ACF08D32F9F489819A81816089837C
+:100864009A833196D601ED93FC93D601ED91FC91D8
+:1008740080818B3269F789819A818460F0CF8032DC
+:1008840021F489819A818860EACF833251F4898185
+:100894009A818061E4CF803321F489819A818260D6
+:1008A400DECFB701C601EAD78D839E8397FF0BC0C5
+:1008B40029813A81B1E02B2729833A839195819547
+:1008C40091098D839E8389819A8180FF03C08D7FE6
+:1008D40089839A83D601ED91FC91119780818E32A0
+:1008E40041F43196ED93FC93B701C601C7D78B83CE
+:1008F4009C83C601AED8582ED601ED91FC9180811F
+:10090400082E000C990B86DA893609F440C084F469
+:10091400833609F4F3C034F4853209F418C18136FE
+:10092400D9F021C1843699F188360CF4CCC01BC1AE
+:10093400803709F490C03CF48E3609F4B0C08F3689
+:1009440009F45AC010C18537E1F1883709F46EC043
+:10095400833709F008C1E5C0652D70E0A701CE0119
+:100964000B964CDB892B09F418C1D601ED91FC914F
+:100974001197CF0101968D939C932081AE01455F21
+:100984005F4FBE016F5F7F4FC40138DB03C1652D2C
+:1009940070E0970141E050E0CE010B96A0D4892B82
+:1009A40009F4FBC0F60180819181019680839183D3
+:1009B400AE01455F5F4FBE016F5F7F4FC40121D41D
+:1009C400E9C0652D70E0970140E050E0CE010B9640
+:1009D40086D4892B09F4E1C0D6018D919C9111979D
+:1009E40001968D939C93AE01455F5F4FBE016F5F8F
+:1009F4007F4FC40128D6CEC0652D70E0970140E03A
+:100A040050E0CE010B966BD4892B09F4C6C0F601D5
+:100A140080819181019680839183AE01455F5F4F10
+:100A2400BE016F5F7F4FC40124D5B4C0652D70E053
+:100A3400970140E050E0CE010B9651D4892B09F484
+:100A4400ACC0D601ED91FC911197CF0101968D9325
+:100A54009C9320811BC0970140E050E060EF70E060
+:100A6400CE010B963CD4892B09F497C0F601808102
+:100A740091810196808391838B859C85892B29F4B0
+:100A840020E030E049E55EE980C028E7AE01455F3B
+:100A94005F4FBE016F5F7F4FC40179D17BC0A50159
+:100AA400400F511F652D70E09701CE010B96A6DA19
+:100AB400892B09F472C0D6018D919C9111970196EE
+:100AC4008D939C9370C0652D70E0A701CE010B96A9
+:100AD40095DA892B09F461C0D601ED91FC91119747
+:100AE400CF0101968D939C932081AE01455F5F4FAA
+:100AF400BE016F5F7F4FC40181DA4CC0B0E85B1266
+:100B04004CC0F60180819181019680839183D70145
+:100B1400ED91FC911197CF0102968D939C93808166
+:100B240020C0B0E85B1239C0F60180819181019642
+:100B340080839183D701ED91FC911197CF010296A7
+:100B44008D939C934081518120E030E01EC0B0E839
+:100B54005B1223C0F601208131812F5F3F4F208338
+:100B640031838B870DC085E28B87D6016D927C9291
+:100B740019821A821D821E828FEF9FEF8B839C83C2
+:100B840021E030E0AE01455F5F4FBE016F5F7F4FF4
+:100B9400C401F7D68A0D9B1D07C0F601808191819F
+:0E0BA400019680839183C5012E96EFE02CC848
+:100BB200AF92BF92CF92DF92EF92FF920F931F9369
+:100BC200CF93DF93CDB7DEB7C654D109CDBFDEBF19
+:100BD2006C0191E39EA782E38FA723E328AB24E372
+:100BE20029AB20E32AAB9BAB8CAB82E1EDE5F8E9C4
+:100BF200DE01D59601900D928A95E1F7D6018C918E
+:100C0200FE01E80FF11D86A51F928F9382E298E9FB
+:100C12009F938F930F2EF6E2EF2EF8E9FF2EF02D21
+:100C2200FF92EF928E010F5F1F4F1F930F93A7D872
+:100C320069E1C801EFD6BFE7E4E8FEE1B150E04068
+:100C4200F040E1F700C00000D60113968C91FE013E
+:100C5200E80FF11D82A91F928F938CE298E99F936E
+:100C62008F93FF92EF921F930F9389D869E1C80186
+:100C7200D1D6BFE7E4E8FEE1B150E040F040E1F751
+:100C820000C000007E012AE1E20EF11C49E050E0C2
+:100C92006CED7DE9C70182D769E1C8017FD8FF9277
+:100CA200EF9280E398E99F938F930F2EF4E3EF2E58
+:100CB200F8E9FF2EF02DFF92EF921F930F935FD86A
+:100CC20069E1C801A7D68FE794E8AEE18150904070
+:100CD200A040E1F700C00000B6016F5E7F4F5E01E9
+:100CE200BAE2AB0EB11C44E050E0C50157D769E14E
+:100CF200C80154D8BF92AF928AE398E99F938F9329
+:100D0200FF92EF921F930F933AD8CDBFDEBF69E1F6
+:100D1200C80180D6FFE724E88EE1F15020408040F0
+:100D2200E1F700C0000069E1C80138D8D601579642
+:100D3200EC91F0E0EE0FFF1FE00FF11F85A98F93FA
+:100D420084A98F938EE398E99F938F93FF92EF92FA
+:100D52001F930F9314D869E1C8015CD6BFE7E4E89A
+:100D6200FEE1B150E040F040E1F700C00000CDBF2D
+:100D7200DEBFCA5BDF4FCDBFDEBFDF91CF911F91D8
+:100D82000F91FF90EF90DF90CF90BF90AF900895BA
+:100D9200AFE0B0E0EEECF6E01BC71C016B0149834B
+:100DA2005A832B83FB018281938184809580008109
+:100DB2001181A680B78097FD02C00D7F02C081E03D
+:100DC20090E0E981FA8140805180628073809801CD
+:100DD200207133272C833D83740104FF08C0411422
+:100DE20051046104710419F032E0E31AF108F801C8
+:100DF200E870FF27EE83FF8303FF03C0F1E0EF1AE1
+:100E0200F108F6010084F185E02D3197EE87FF8726
+:100E1200EA0DFB1D10829C012E193F092887398794
+:100E2200C801827099278A879B87EB818E2FEE0FEC
+:100E3200990B9C01215431092C873D872E853F85D2
+:100E42002230310530F48C819D81892B09F041C01B
+:100E52005BC0411451046104710459F18E859F8570
+:100E620001978E879F87C2018F7099278A309105DB
+:100E720014F4C09602C0895A9F4FEC85FD857A977B
+:100E820040F49C012062215631092A31310508F4CF
+:100E9200B9D7EE85FF85EA0DFB1D8083F1E0EF1ADD
+:100EA200F10884E076946794579447948A95D1F731
+:100EB200C5CF888599858E0D9F1D1816190674F267
+:100EC2001E141F040CF0BFCFEA85FB85EF2B31F611
+:100ED200BACFE981FA8180819181A281B381892B84
+:100EE2008A2B8B2B89F0EE85FF85EA0DFB1D31974E
+:100EF2002B8120838E859F8502978E879F87FC0199
+:100F0200EA0DFB1D80E38083EE81FF81EF2B59F018
+:100F12002E853F85215031092E873F87F901EA0D41
+:100F2200FB1D80E28083F6014085518541505109C5
+:100F32002E853F85421B530BB9016A0D7B1D94011F
+:100F4200C10135D49C01F1018081918190FF06C0DD
+:100F5200F60182819381821793070CF4C9012F96BF
+:040F6200E2E14FC6B3
+:100F6600CF92DF92EF92FF920F931F93CF93DF936F
+:100F7600CDB7DEB7E297CDBFDEBF7C0187E491E453
+:100F860089839A830DE010E00B831C8369E1CE010F
+:100F960001963ED52FE784E89EE12150804090409F
+:100FA600E1F700C0000069E1CE014A96C0D48A8DFF
+:100FB6008053F701808361E0C70185D5F7018183FE
+:100FC60061E0C701B5D6F701828387E497E4898398
+:100FD6009A830B831C8369E1CE01019619D5FFE73D
+:100FE60024E88EE1F15020408040E1F700C0000087
+:100FF60069E1CE014A969BD48A8D8053F70183839B
+:101006006701F3E0CF0ED11C61E0C6015CD5F701A4
+:10101600848361E0C6018CD6F701858387E490E579
+:1010260089839A830B831C8369E1CE010196F0D4F0
+:10103600FFE724E88EE1F15020408040E1F700C050
+:10104600000069E1CE014A9672D4FE017A968701C4
+:101056000F5E1F4FD8019E01225E3F4F81918D93F7
+:10106600E217F307D9F764E0C8012DD5F701858BA0
+:1010760064E0C8015DD6F701868B87E495E5898330
+:101086009A838DE090E08B839C8369E1CE01019683
+:10109600BFD4FFE724E88EE1F15020408040E1F71D
+:1010A60000C0000069E1CE014A9641D48B8D81349F
+:1010B60021F0823421F0835303C087E001C088E029
+:1010C600F701878B8701095E1F4F61E0C801FBD4DA
+:1010D600F701808F61E0C8012BD6F701818F00E010
+:1010E60010E0F70161917F01C8010ED60F5F1F4F17
+:1010F60001321105B1F7E296CDBFDEBFDF91CF9188
+:0E1106001F910F91FF90EF90DF90CF90089512
+:10111400EF92FF920F931F93CF93DF93EC0161E063
+:10112400D3D4182F61E0CE0104D6498150E0542F66
+:1011340044279A81492B212F30E0322F2227282B54
+:1011440001E04217530709F400E061E07E0143E047
+:10115400E40EF11CC701B8D4182F61E0C701E9D52A
+:10116400212F30E0322F2227A901482BCA012C81DC
+:1011740030E0322F22274D81242B8217930709F068
+:10118400026064E07E0151E1E50EF11CC7019CD4CC
+:10119400182F64E0C701CDD5212F30E0322F22274C
+:1011A400A901482BCA012D8930E0322F22274E890C
+:1011B400242B8217930709F008607E0157E1E50E9E
+:1011C400F11C61E0C70180D4182F61E0C701B1D5DB
+:1011D400212F30E0322F2227A901482BCA01288D64
+:1011E40030E0322F2227498D242B8217930709F0F0
+:1011F4000061802FDF91CF911F910F91FF90EF90AD
+:0212040008954B
+:10120600A2E0B0E0E8E0F9E0E1C43C016B01FB01DB
+:1012160022813381A480B5808081918189839A83DC
+:1012260086809780FA012080318042805380B20107
+:10123600A10157FE07C044275527BA014219530991
+:101246006409750937FD03C08D7F89839A839501EB
+:1012560057FC05C0898182FD02C083FF02C0215070
+:101266003109CE0101967C010AE010E0C6019ED04C
+:1012760057FC03C0298122FF0AC00197F401E80F39
+:10128600F91F57FC02C02BE209C02DE207C023FF5D
+:1012960006C00197F401E80FF91F20E220830981B7
+:1012A6001A81F6014085518541505109481B590B59
+:1012B600B401680F791F9501C30177D29C01F30130
+:1012C6008081918190FF06C0F60182819381821709
+:0C12D60093070CF4C9012296E2E191C4D8
+:1012E200CF93DF93DC01F90168387105F1F05CF40A
+:1012F2006138710561F164387105A1F160387105D9
+:1013020009F051C02FC0603C710509F441C0603F33
+:101312007105F1F1603A710509F045C0C081D181D2
+:10132200CE0102968083918325C0C081D181CE01F6
+:10133200029680839183452B39F04881042E000C5C
+:10134200550B660B770B1CC0488150E029C0C08149
+:10135200D181CE01049680839183488159816A812B
+:101362007B810EC0C081D181CE01029680839183A0
+:10137200452BA1F048815981052E000C660B770B95
+:101382004D935D936D937C93139781E090E00DC034
+:10139200C081D181CE010296808391834881598197
+:1013A20060E070E0EDCF80E090E0DF91CF910895B2
+:1013B200A0E0B0E0EEEDF9E00DC4DC0128011696E4
+:1013C200AD90BC901797F701808191811296ED91B3
+:1013D200FC9113971896CD91DC9119972197F7FFFD
+:1013E20002C0E1E0F0E0CA0DDB1D18826901A1E054
+:1013F200B0E08F01021B130B4C01F2E08F22992403
+:10140200052C000C66087708CE018A199B09CA15BB
+:10141200DB0511F1411551056105710581F0CB0123
+:10142200BA01A3019201D4D2CA01A62FB72F605DDF
+:101432006A9341E0C41AD108A901BC01E5CF980121
+:101442002C0D3D1D1216130654F31C141D0434F406
+:101452008114910421F702C080E090E0AB2B31F4BB
+:10146200F701208131812F7E20833183CDB7DEB712
+:04147200E0E1C9C329
+:10147600A2E0B0E0E0E4FAE0ADC34C016B01FB0191
+:1014860022813381648075808081918189839A83EA
+:10149600A680B78037FD03C08D7F89839A83FA01C2
+:1014A6004081518162817381CE0101967C0108E001
+:1014B60010E09301C6017ADF298124FF06C0019757
+:1014C600F501E80FF91F20E32083298123FF06C0D9
+:1014D6000197F501E80FF91F20E2208309811A819F
+:1014E600F6014085518541505109481B590BB501FC
+:1014F600680F791F9301C40158D19C01F4018081C2
+:10150600918190FF06C0F60182819381821793072D
+:0A1516000CF4C9012296EEE076C342
+:101520000F931F93CF93DF93DB01109719F48FEF85
+:101530009FEF3DC02D913C91119730FF25C016962D
+:101540004D915C91179714962D913C9115974217E8
+:10155000530778F41296ED91FC91139780831296BD
+:101560002D913C9113972F5F3F4F12962D933C93F3
+:10157000139716962D913C9117972F5F3F4F169614
+:101580002D933C93179713C01C96ED91FC911D97DA
+:10159000309769F2EB01092F182F0995892B39F63D
+:1015A0008E819F8101968E839F83812F902FDF9163
+:0815B000CF911F910F910895E6
+:1015B800CF93DF93CDB7DEB76697CDBFDEBF86E0AA
+:1015C800ECE1F8E9DE01519601900D928A95E1F778
+:1015D80063E088E198E91BD22FE784E89EE1215077
+:1015E80080409040E1F700C000008091313E8823A0
+:1015F80079F360E1CE01019699D18091313E88233B
+:1016080089F07BD28091313E8111FBCF0BC02191B3
+:101618009D91291380E0E417F507C9F7823059F442
+:1016280081E009C0FE013196DE015196AE01495FA5
+:101638005F4F82E0ECCF6696CDBFDEBFDF91CF91E2
+:02164800089503
+:10164A00A2E0B0E0EAE2FBE0C3C25C016B01FB018D
+:10165A0022813381848095808081918189839A83D4
+:10166A006680778037FD03C08D7F89839A83FA016C
+:10167A004081518162817381CE0101967C010AE029
+:10168A0010E09401C60190DE09811A81F6014085B5
+:10169A00518541505109481B590BB301680F791FF5
+:1016AA009401C50180D09C01F5018081918190FF50
+:1016BA0006C0F60182819381821793070CF4C9014F
+:0616CA002296EEE09EC234
+:1016D000A2E8B0E0EDE6FBE082C25C014A01CF5730
+:1016E000DF4F68837983C158D040C12CD12CCF57AC
+:1016F000DF4FE881F981C158D04080818823E1F033
+:101700007401860120E830E0AE014F5F5F4FBE01FB
+:101710006F577F4FC50166D88C0D9D1D8C159D059B
+:101720004CF48FE490E08093003C9093013C8FEF69
+:101730009FEF03C06C01DBCFC601CE57DF4FECE05B
+:0217400067C27E
+:10174200A0E1B0E0E6EAFBE04FC2FB01BA01AE0164
+:101752004F5F5F4F7A0140E1D7011D924A95E9F749
+:1017620042E051E049835A838B839C83F7FF09C08F
+:101772008FE490E08093003C9093013C8FEF9FEFC9
+:1017820013C0A9018C013197ED83FE83C70195D265
+:101792004F8158852D813E814217530708F49A01E3
+:0E17A200F801E20FF31F10826096E6E036C2F7
+:1017B000A0E0B0E0EDEDFBE012C26C015B017A014C
+:1017C000E901480181E08822992400FD03C0421705
+:1017D000530748F0A701B501C601C7D1EC16FD06B5
+:1017E00010F0C70115C08E010E191F090115110552
+:1017F00039F0B60180E290E093DE01501109F6CF96
+:101800008114910421F4A701B501C601AED1CE0126
+:08181000CDB7DEB7ECE0FCC12E
+:10181800474E0D00524E3436373853412C0025734D
+:1018280025630D0053472C00532D2C002573257379
+:101838000D0053502C0053552C0030330030340029
+:10184800303500303600303700303800303900305D
+:1018580041003042004298459848984B984E98511C
+:1018680098549857985A982424240D002D2D2D0DFE
+:0718780000434E543A20002A
+:01187F003038
+:10188000DC01ED91FC91119780818A3221F080E09A
+:1018900090E03AE00EC03196ED93FC93DB01ED91C0
+:1018A000FC911197CF0102968D939C938081918139
+:1018B0000895ED91FC911197208120532A3068F40E
+:1018C000389FA001399F500D1124CA01820F911D2C
+:0C18D0003196ED93FC931197ECCF089536
+:1018DC00CF92DF92EF92FF920F931F93CF93DF93F0
+:1018EC00C82ED92E0F2EF6EDEF2EFDE9FF2EF02D82
+:1018FC00082F192FC0E0D0E0F70161917F01F801AA
+:10190C0061938F01CE01FDD12196CA31D105A1F78A
+:10191C008C2D9D2D48D9DF91CF911F910F91FF9068
+:08192C00EF90DF90CF900895C9
+:101934000F931F93CF93DF932FE936E841E02150B3
+:1019440030404040E1F700C000002091313E2223A6
+:1019540099F0662389F0EC016150062F10E00F5FC7
+:101964001F4F080F191FCBD089938091313E8823D4
+:1019740019F0C017D107B9F7DF91CF911F910F91DB
+:021984000895C4
+:10198600A0E0B0E0E8ECFCE029C17C01FB01EA0143
+:10199600C901A280B380C480D580008111812097BF
+:1019A60011F4C2E5DEE9009711F4CE0103D2B7FCCB
+:1019B60004C0A816B90608F4C5019601AC01BE011B
+:0C19C600C701F3DECDB7DEB7EAE021C1B7
+:1019D200A1E21A2EAA1BBB1BFD010DC0AA1FBB1F31
+:1019E200EE1FFF1FA217B307E407F50720F0A21BA3
+:1019F200B30BE40BF50B661F771F881F991F1A9410
+:101A020069F760957095809590959B01AC01BD0139
+:041A1200CF01089563
+:101A1600AC0170E016161706D4F420E030E0A0E022
+:101A2600B8E0FA01E20FF31F908112969C93129789
+:101A360090819D3009F49B012F5F3F4F83EC99E025
+:101A46000197F1F700C000002617370754F30895F1
+:101A5600CF93DF93EC0190E0E92FF0E0EE0FFF1F4C
+:101A6600E051F2468081811102C081810EC0A881B9
+:101A7600B9812C91821305C091811196A883B983EF
+:101A860001C09F5F9B3040F3892FDF91CF9108956E
+:101A96000F931F93CF93DF938C01C0E0D0E0CE016C
+:101AA600C0D1F80181938F0187EA91E60197F1F79A
+:101AB60000C000002196C132D10589F7DF91CF9190
+:061AC6001F910F9108952D
+:101ACC006623B9F0FC019C01260F311DB90180E0A1
+:101ADC000BC0452F492309F08F5F990F2150310915
+:101AEC00C1F7E617F70731F0519128E030E091E0AB
+:061AFC00F0CF80E0089528
+:101B02008091013D4091313E242F30E02150310936
+:101B1200121613065CF4E1E0FDE3242F30E02050BE
+:101B2200334C91819193E217F307D9F741504093D7
+:041B3200313E0895A3
+:101B36008091023C4091303E242F30E02150310903
+:101B4600121613065CF4E2E0FCE3242F30E02F5F6C
+:101B5600334C91819193E217F307D9F741504093A3
+:041B6600303E089570
+:101B6A00A0E0B0E0EAEBFDE039C06C01EB018A01CC
+:101B7A007B01E40EF51ECE15DF0539F08991B60119
+:101B8A00082E000C990BC7DCF6CFC801CDB7DEB71B
+:041B9A00E8E03DC082
+:101B9E00CF93DF93EB01FC014115510581F04150CC
+:101BAE005109DF01119629912083FD012111F4CFF6
+:101BBE004A0F5B1F4A175B0711F01D92FBCFDF9197
+:041BCE00CF91089516
+:101BD2002F923F924F925F926F927F928F929F923B
+:101BE200AF92BF92CF92DF92EF92FF920F931F9329
+:101BF200CF93DF93CDB7DEB7CA1BDB0BCDBFDEBF02
+:021C0200099443
+:101C04002A88398848885F846E847D848C849B8488
+:101C1400AA84B984C884DF80EE80FD800C811B8196
+:101C2400AA81B981CE0FD11DCDBFDEBFED010895CC
+:101C34008F938FB78F93EF93FF93E091313E81E0C1
+:101C44008E0F8093313E80910008F0E0EF5FF24CFC
+:0E1C54008083FF91EF918F918FBF8F91189534
+:101C62008F938FB78F93EF93FF93E091303E81E094
+:101C72008E0F8093303E80912008F0E0EE5FF34CAF
+:0E1C82008083FF91EF918F918FBF8F91189506
+:101C9000662399F0FC019C01260F311DA0E2B8E0FB
+:101CA000919112969C93129783EC99E00197F1F72A
+:0C1CB00000C00000E217F30799F7089548
+:101CBC00A2E0B0E0E3E6FEE094CF8C0149835A83C6
+:101CCC00AE014F5F5F4FFEDCF801208124FF02C0A4
+:0A1CDC008FEF9FEF2296E4E09DCF0A
+:101CE600442381F0FC01A62FB72F9C01240F311D40
+:101CF600A90181E021919D91291380E0E417F50760
+:081D0600C9F7089581E008957A
+:101D0E00262FAF93BF93E0E0F0E1328131FDFDCF9E
+:101D1E00DC01A050BC4E2C933DE934BF23E0208360
+:081D2E000196BF91AF910895E9
+:101D3600662379F0FC019C01260F311D80E091910C
+:101D460090FD02C08E5F01C08F5FE217F307B9F7FF
+:061D5600089580E00895ED
+:101D5C00E0E0FAE083E0808383E1818381E08383A8
+:101D6C008FE790E080A791A7E0E2F4E080818160AA
+:041D7C0080830895C3
+:101D8000A0E0B0E0E5ECFEE034CFAE01475F5F4F8E
+:0E1D90006F8178858D819E8156D0E2E043CF31
+:101D9E00662359F0FC01615070E06F5F7F4F860F34
+:0C1DAE00971F1192E817F907E1F708955C
+:101DBA00FC01AF014F5F5F4F2081222311F0FA012E
+:0C1DCA00F8CF9F01281B390BC9010895B8
+:101DD60003020102010253494350415F4153421C31
+:0A1DE6000B313233340D0606020201
+:101DF00068076C094C836A9074A07AC00080688878
+:061E000000846C820081E9
+:101E06009C01215631092A31310510F48F75992725
+:021E160008952D
+:101E18009C01215431092A31310508F48062089562
+:101E280003D0808199270895FC01E050FC4E089565
+:0E1E3800EC0114D012D0CE0112D0CE0111D088
+:0C1E46009A01AB016FEF7FE779DC089593
+:071E5200286E756C6C29007D
+:061E5900286E696C2900EF
+:021E6000CFC0F1
+:021E62000895E1
+:021E64000895DF
+:021E66000895DD
+:021E680021D186
+:101E6A001A418D204610D90A23086D051204B602BC
+:021E7A005B010A
+:0E1E7C00024124244745544D454D5354530311
+:02000004008278
+:090000000B007E0000F6FF000079
+:02000004008377
+:01000000C53A
+:00000001FF
diff --git a/Version 2.8/Panel_reader_controller.X/dist/default/production/Panel_reader_controller.X.production.map b/Version 2.8/Panel_reader_controller.X/dist/default/production/Panel_reader_controller.X.production.map
new file mode 100644
index 0000000..e9dc118
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/dist/default/production/Panel_reader_controller.X.production.map	
@@ -0,0 +1,1138 @@
+Archive member included to satisfy reference by file (symbol)
+
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+                              build/default/production/main.o (__do_copy_data)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+                              C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o (exit)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+                              build/default/production/main.o (_sprintf_cdopsuxX)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o) (__fmt_d_needed)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_o.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o) (__fmt_o_needed)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o) (__fmt_s_needed)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o) (__cvt_u)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o) (__fmt_x_needed)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__pop_int.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o) (__pop_int_needed)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o) (__pad)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(fputc.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o) (fputc)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strlen.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o) (strlen)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strncpy.o)
+                              build/default/production/main.o (strncpy)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o) (tolower)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o) (toupper)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(errno.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o) (__errno_val)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o) (_Exit)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o) (__vsprintf)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o) (__vsnprintf)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vfprintf.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o) (__vfprintf)
+C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+                              build/default/production/main.o (eeprom_read_byte)
+C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+                              build/default/production/main.o (eeprom_write_byte)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o) (__udivmodsi4)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o) (_exit)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o) (__prologue_saves__)
+c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+                              c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o) (__epilogue_restores__)
+
+Allocating common symbols
+Common symbol       size              file
+
+__errno_val         0x2               c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(errno.o)
+
+Discarded input sections
+
+ .data          0x0000000000000000        0x0 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+ .bss           0x0000000000000000        0x0 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+ .text          0x0000000000000000        0x0 build/default/production/main.o
+ .data          0x0000000000000000        0x0 build/default/production/main.o
+ .bss           0x0000000000000000        0x0 build/default/production/main.o
+ .text.adcInit  0x0000000000000000       0x26 build/default/production/main.o
+ .text.adcGetSample
+                0x0000000000000000       0x26 build/default/production/main.o
+ .text.usart0_write_byte
+                0x0000000000000000        0x6 build/default/production/main.o
+ .text.usart1_write_byte
+                0x0000000000000000        0x6 build/default/production/main.o
+ .text.usart0_available
+                0x0000000000000000        0x6 build/default/production/main.o
+ .text.usart1_available
+                0x0000000000000000        0x6 build/default/production/main.o
+ .bss.debugSerialCounter
+                0x0000000000000000        0x1 build/default/production/main.o
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .text.libgcc.mul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .text.libgcc.div
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .text.libgcc   0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .text.libgcc.prologue
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .text.libgcc.builtins
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .text.libgcc.fmul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .text.libgcc.fixed
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+ .stack.descriptors
+                0x0000000000000000       0x73 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+ .stack.descriptors
+                0x0000000000000000       0x3d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+ .text.__sio_sprintf_dosux
+                0x0000000000000000        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o)
+ .stack.descriptors
+                0x0000000000000000       0x15 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_o.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_o.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_o.o)
+ .stack.descriptors
+                0x0000000000000000       0x15 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_o.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+ .stack.descriptors
+                0x0000000000000000       0x15 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+ .stack.descriptors
+                0x0000000000000000       0x2a c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o)
+ .stack.descriptors
+                0x0000000000000000       0x15 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__pop_int.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__pop_int.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__pop_int.o)
+ .stack.descriptors
+                0x0000000000000000       0x17 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__pop_int.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+ .stack.descriptors
+                0x0000000000000000       0x91 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(fputc.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(fputc.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(fputc.o)
+ .stack.descriptors
+                0x0000000000000000       0x13 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(fputc.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strlen.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strlen.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strlen.o)
+ .stack.descriptors
+                0x0000000000000000       0x14 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strlen.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strncpy.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strncpy.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strncpy.o)
+ .stack.descriptors
+                0x0000000000000000       0x15 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strncpy.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+ .stack.descriptors
+                0x0000000000000000       0x2e c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+ .text.__tolower_l
+                0x0000000000000000        0x4 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+ .stack.descriptors
+                0x0000000000000000       0x2e c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+ .text.__toupper_l
+                0x0000000000000000        0x4 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(errno.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(errno.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(errno.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o)
+ .stack.descriptors
+                0x0000000000000000       0x13 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o)
+ .stack.descriptors
+                0x0000000000000000       0x18 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o)
+ .stack.descriptors
+                0x0000000000000000       0x19 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vfprintf.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vfprintf.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vfprintf.o)
+ .stack.descriptors
+                0x0000000000000000       0x18 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vfprintf.o)
+ .text          0x0000000000000000        0x0 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+ .data          0x0000000000000000        0x0 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+ .bss           0x0000000000000000        0x0 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+ .stack.descriptors
+                0x0000000000000000       0x38 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+ .text          0x0000000000000000        0x0 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+ .data          0x0000000000000000        0x0 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+ .bss           0x0000000000000000        0x0 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+ .stack.descriptors
+                0x0000000000000000       0x3d C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .text.libgcc.mul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .stack.descriptors
+                0x0000000000000000       0x1a c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .text.libgcc   0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .text.libgcc.prologue
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .text.libgcc.builtins
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .text.libgcc.fmul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .text.libgcc.fixed
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .text.libgcc.mul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .text.libgcc.div
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .text.libgcc   0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .text.libgcc.prologue
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .stack.descriptors
+                0x0000000000000000       0x13 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .text.libgcc.builtins
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .text.libgcc.fmul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .text.libgcc.fixed
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+ .text.libgcc.mul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+ .text.libgcc.div
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+ .text.libgcc   0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+ .text.libgcc.builtins
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+ .text.libgcc.fmul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+ .text.libgcc.fixed
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+ .text          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+ .data          0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+ .bss           0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+ .text.libgcc.mul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+ .text.libgcc.div
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+ .text.libgcc   0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+ .text.libgcc.builtins
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+ .text.libgcc.fmul
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+ .text.libgcc.fixed
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+
+Memory Configuration
+
+Name             Origin             Length             Attributes
+text             0x0000000000000000 0x0000000000002000 xr
+data             0x0000000000803c00 0x0000000000000400 rw !x
+eeprom           0x0000000000810000 0x0000000000000080 rw !x
+fuse             0x0000000000820000 0x000000000000000a rw !x
+lock             0x0000000000830000 0x0000000000000400 rw !x
+signature        0x0000000000840000 0x0000000000000400 rw !x
+user_signatures  0x0000000000850000 0x0000000000000400 rw !x
+bootrow          0x0000000000860000 0x0000000000000400 rw !x
+*default*        0x0000000000000000 0xffffffffffffffff
+
+Linker script and memory map
+
+Address of section .data set to 0x803c00
+                0x0000000000008000                __RODATA_PM_OFFSET__ = 0x8000
+LOAD C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+                0x0000000000000001                __MPLAB_BUILD = 0x1
+LOAD build/default/production/main.o
+START GROUP
+LOAD c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libm.a
+END GROUP
+START GROUP
+LOAD c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a
+LOAD c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libm.a
+LOAD c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a
+LOAD C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a
+END GROUP
+                [0x0000000000000000]                __TEXT_REGION_ORIGIN__ = DEFINED (__TEXT_REGION_ORIGIN__)?__TEXT_REGION_ORIGIN__:0x0
+                [0x0000000000803c00]                __DATA_REGION_ORIGIN__ = DEFINED (__DATA_REGION_ORIGIN__)?__DATA_REGION_ORIGIN__:0x802000
+                [0x0000000000002000]                __TEXT_REGION_LENGTH__ = DEFINED (__TEXT_REGION_LENGTH__)?__TEXT_REGION_LENGTH__:0x100000
+                [0x0000000000000400]                __DATA_REGION_LENGTH__ = DEFINED (__DATA_REGION_LENGTH__)?__DATA_REGION_LENGTH__:0xffa0
+                [0x0000000000000080]                __EEPROM_REGION_LENGTH__ = DEFINED (__EEPROM_REGION_LENGTH__)?__EEPROM_REGION_LENGTH__:0x10000
+                [0x000000000000000a]                __FUSE_REGION_LENGTH__ = DEFINED (__FUSE_REGION_LENGTH__)?__FUSE_REGION_LENGTH__:0x400
+                0x0000000000000400                __LOCK_REGION_LENGTH__ = DEFINED (__LOCK_REGION_LENGTH__)?__LOCK_REGION_LENGTH__:0x400
+                0x0000000000000400                __SIGNATURE_REGION_LENGTH__ = DEFINED (__SIGNATURE_REGION_LENGTH__)?__SIGNATURE_REGION_LENGTH__:0x400
+                0x0000000000000400                __USER_SIGNATURE_REGION_LENGTH__ = DEFINED (__USER_SIGNATURE_REGION_LENGTH__)?__USER_SIGNATURE_REGION_LENGTH__:0x400
+                0x0000000000008000                __RODATA_PM_OFFSET__ = DEFINED (__RODATA_PM_OFFSET__)?__RODATA_PM_OFFSET__:0x8000
+                0x0000000000000400                __BOOTROW_REGION_LENGTH__ = DEFINED (__BOOTROW_REGION_LENGTH__)?__BOOTROW_REGION_LENGTH__:0x400
+
+.hash
+ *(.hash)
+
+.dynsym
+ *(.dynsym)
+
+.dynstr
+ *(.dynstr)
+
+.gnu.version
+ *(.gnu.version)
+
+.gnu.version_d
+ *(.gnu.version_d)
+
+.gnu.version_r
+ *(.gnu.version_r)
+
+.rel.init
+ *(.rel.init)
+
+.rela.init
+ *(.rela.init)
+
+.rel.text
+ *(.rel.text)
+ *(.rel.text.*)
+ *(.rel.gnu.linkonce.t*)
+
+.rela.text
+ *(.rela.text)
+ *(.rela.text.*)
+ *(.rela.gnu.linkonce.t*)
+
+.rel.fini
+ *(.rel.fini)
+
+.rela.fini
+ *(.rela.fini)
+
+.rel.rodata
+ *(.rel.rodata)
+ *(.rel.rodata.*)
+ *(.rel.gnu.linkonce.r*)
+
+.rela.rodata
+ *(.rela.rodata)
+ *(.rela.rodata.*)
+ *(.rela.gnu.linkonce.r*)
+
+.rel.data
+ *(.rel.data)
+ *(.rel.data.*)
+ *(.rel.gnu.linkonce.d*)
+
+.rela.data
+ *(.rela.data)
+ *(.rela.data.*)
+ *(.rela.gnu.linkonce.d*)
+
+.rel.ctors
+ *(.rel.ctors)
+
+.rela.ctors
+ *(.rela.ctors)
+
+.rel.dtors
+ *(.rel.dtors)
+
+.rela.dtors
+ *(.rela.dtors)
+
+.rel.got
+ *(.rel.got)
+
+.rela.got
+ *(.rela.got)
+
+.rel.bss
+ *(.rel.bss)
+
+.rela.bss
+ *(.rela.bss)
+
+.rel.plt
+ *(.rel.plt)
+
+.rela.plt
+ *(.rela.plt)
+
+.text           0x0000000000000000       0xb0
+ *(.vectors)
+ .vectors       0x0000000000000000       0x3c C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+                0x0000000000000000                __vector_default
+                0x0000000000000000                __vectors
+ *(.vectors)
+ *(.progmem.gcc*)
+ *(.dinit)
+ .dinit         0x000000000000003c       0x24 data_init
+                0x0000000000000060                . = ALIGN (0x2)
+ *fill*         0x0000000000000060        0x0 
+                0x0000000000000060                __trampolines_start = .
+ *(.trampolines)
+ .trampolines   0x0000000000000060        0x0 linker stubs
+ *(.trampolines*)
+                0x0000000000000060                __trampolines_end = .
+ *libprintf_flt.a:*(.progmem.data)
+ *libc.a:*(.progmem.data)
+                0x0000000000000060                . = ALIGN (0x2)
+ *(.jumptables)
+ *(.jumptables*)
+ *(.lowtext)
+ *(.lowtext*)
+                0x0000000000000060                __ctors_start = .
+ *(.ctors)
+                0x0000000000000060                __ctors_end = .
+                0x0000000000000060                __dtors_start = .
+ *(.dtors)
+                0x0000000000000060                __dtors_end = .
+ SORT(*)(.ctors)
+ SORT(*)(.dtors)
+ *(.init0)
+ .init0         0x0000000000000060        0x0 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+                0x0000000000000060                __init
+ *(.init0)
+ *(.init1)
+ *(.init1)
+ *(.init2)
+ .init2         0x0000000000000060        0xc C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+ *(.init2)
+ *(.init3)
+ *(.init3)
+ *(.init4)
+ .init4         0x000000000000006c       0x3c c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_copy_data.o)
+                0x000000000000006c                __do_copy_data
+                0x000000000000009a                __do_clear_bss
+ *(.init4)
+ *(.init5)
+ *(.init5)
+ *(.init6)
+ *(.init6)
+ *(.init7)
+ *(.init7)
+ *(.init8)
+ *(.init8)
+ *(.init9)
+ .init9         0x00000000000000a8        0x4 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+ *(.init9)
+                0x00000000000000ac                . = ALIGN (0x2)
+ *(.fini9)
+ .fini9         0x00000000000000ac        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+                0x00000000000000ac                _exit
+ *(.fini9)
+ *(.fini8)
+ *(.fini8)
+ *(.fini7)
+ *(.fini7)
+ *(.fini6)
+ *(.fini6)
+ *(.fini5)
+ *(.fini5)
+ *(.fini4)
+ *(.fini4)
+ *(.fini3)
+ *(.fini3)
+ *(.fini2)
+ *(.fini2)
+ *(.fini1)
+ *(.fini1)
+ *(.fini0)
+ .fini0         0x00000000000000ac        0x4 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+ *(.fini0)
+                0x00000000000000b0                _etext = .
+
+.data           0x0000000000803c00        0x0 load address 0x00000000000000b0
+                [!provide]                        PROVIDE (__data_start, .)
+ *(.gnu.linkonce.d*)
+                0x0000000000803c00                . = ALIGN (0x2)
+                0x0000000000803c00                _edata = .
+                [!provide]                        PROVIDE (__data_end, .)
+
+.bss            0x0000000000803c00        0x2
+                [!provide]                        PROVIDE (__bss_start, .)
+ *(COMMON)
+ COMMON         0x0000000000803c00        0x2 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(errno.o)
+                0x0000000000803c00                __errno_val
+                [!provide]                        PROVIDE (__bss_end, .)
+                0x00000000000000b0                __data_load_start = LOADADDR (.data)
+                0x00000000000000b0                __data_load_end = (__data_load_start + SIZEOF (.data))
+
+.noinit         0x0000000000803c02        0x0
+                [!provide]                        PROVIDE (__noinit_start, .)
+ *(.noinit*)
+                [!provide]                        PROVIDE (__noinit_end, .)
+                0x0000000000803c02                _end = .
+
+.eeprom         0x0000000000810000        0x0
+ *(.eeprom*)
+                0x0000000000810000                __eeprom_end = .
+
+.fuse           0x0000000000820000        0x9
+ *(.fuse)
+ .fuse          0x0000000000820000        0x9 build/default/production/main.o
+                0x0000000000820000                __fuse
+ *(.lfuse)
+ *(.hfuse)
+ *(.efuse)
+
+.lock           0x0000000000830000        0x1
+ *(.lock*)
+ .lock          0x0000000000830000        0x1 build/default/production/main.o
+                0x0000000000830000                __lock
+
+.signature
+ *(.signature*)
+
+.user_signatures
+ *(.user_signatures*)
+
+.bootrow
+ *(.bootrow*)
+
+.stab
+ *(.stab)
+
+.stabstr
+ *(.stabstr)
+
+.stab.excl
+ *(.stab.excl)
+
+.stab.exclstr
+ *(.stab.exclstr)
+
+.stab.index
+ *(.stab.index)
+
+.stab.indexstr
+ *(.stab.indexstr)
+
+.comment        0x0000000000000000       0x5b
+ *(.comment)
+ .comment       0x0000000000000000       0x2f build/default/production/main.o
+                                         0x30 (size before relaxing)
+ .comment       0x000000000000002f       0x2c c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+                                         0x2d (size before relaxing)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_o.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__pop_int.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(fputc.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strlen.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strncpy.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(errno.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o)
+ .comment       0x000000000000005b       0x2d c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vfprintf.o)
+
+.stack.descriptors.hdr
+                0x0000000000000000      0x142
+ .stack.descriptors.hdr
+                0x0000000000000000        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+ .stack.descriptors.hdr
+                0x000000000000000e        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+ .stack.descriptors.hdr
+                0x000000000000001c        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o)
+ .stack.descriptors.hdr
+                0x000000000000002a        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_o.o)
+ .stack.descriptors.hdr
+                0x0000000000000038        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+ .stack.descriptors.hdr
+                0x0000000000000046        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+ .stack.descriptors.hdr
+                0x0000000000000054        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o)
+ .stack.descriptors.hdr
+                0x0000000000000062        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__pop_int.o)
+ .stack.descriptors.hdr
+                0x0000000000000070        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+ .stack.descriptors.hdr
+                0x000000000000007e        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(fputc.o)
+ .stack.descriptors.hdr
+                0x000000000000008c        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strlen.o)
+ .stack.descriptors.hdr
+                0x000000000000009a        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strncpy.o)
+ .stack.descriptors.hdr
+                0x00000000000000a8        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+ .stack.descriptors.hdr
+                0x00000000000000b6        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+ .stack.descriptors.hdr
+                0x00000000000000c4        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(errno.o)
+ .stack.descriptors.hdr
+                0x00000000000000d2        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o)
+ .stack.descriptors.hdr
+                0x00000000000000e0        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o)
+ .stack.descriptors.hdr
+                0x00000000000000ee        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o)
+ .stack.descriptors.hdr
+                0x00000000000000fc        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vfprintf.o)
+ .stack.descriptors.hdr
+                0x000000000000010a        0xe C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+ .stack.descriptors.hdr
+                0x0000000000000118        0xe C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+ .stack.descriptors.hdr
+                0x0000000000000126        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+ .stack.descriptors.hdr
+                0x0000000000000134        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_exit.o)
+
+.note.GNU-stack
+                0x0000000000000000        0x0
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_o.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__pop_int.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(fputc.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strlen.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strncpy.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(errno.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o)
+ .note.GNU-stack
+                0x0000000000000000        0x0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vfprintf.o)
+
+.note.gnu.build-id
+ *(.note.gnu.build-id)
+
+.debug
+ *(.debug)
+
+.line
+ *(.line)
+
+.debug_srcinfo
+ *(.debug_srcinfo)
+
+.debug_sfnames
+ *(.debug_sfnames)
+
+.debug_aranges  0x0000000000000000      0x120
+ *(.debug_aranges)
+ .debug_aranges
+                0x0000000000000000       0xe0 build/default/production/main.o
+ .debug_aranges
+                0x00000000000000e0       0x20 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+ .debug_aranges
+                0x0000000000000100       0x20 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+
+.debug_pubnames
+ *(.debug_pubnames)
+
+.debug_info     0x0000000000000000     0x53e5
+ *(.debug_info .gnu.linkonce.wi.*)
+ .debug_info    0x0000000000000000     0x1b97 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+ .debug_info    0x0000000000001b97     0x36d8 build/default/production/main.o
+ .debug_info    0x000000000000526f       0xbb C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+ .debug_info    0x000000000000532a       0xbb C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+
+.debug_abbrev   0x0000000000000000     0x1dff
+ *(.debug_abbrev)
+ .debug_abbrev  0x0000000000000000     0x1a20 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+ .debug_abbrev  0x0000000000001a20      0x3b7 build/default/production/main.o
+ .debug_abbrev  0x0000000000001dd7       0x14 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+ .debug_abbrev  0x0000000000001deb       0x14 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+
+.debug_line     0x0000000000000000     0x1136
+ *(.debug_line .debug_line.* .debug_line_end)
+ .debug_line    0x0000000000000000      0x14e C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+ .debug_line    0x000000000000014e      0xea8 build/default/production/main.o
+ .debug_line    0x0000000000000ff6       0x7c C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+ .debug_line    0x0000000000001072       0xc4 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+
+.debug_frame    0x0000000000000000      0x2b4
+ *(.debug_frame)
+ .debug_frame   0x0000000000000000      0x2b4 build/default/production/main.o
+
+.debug_str      0x0000000000000000      0xc7a
+ *(.debug_str)
+ .debug_str     0x0000000000000000      0xbdd C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+ .debug_str     0x0000000000000bdd       0x9d build/default/production/main.o
+
+.debug_loc      0x0000000000000000     0x1a16
+ *(.debug_loc)
+ .debug_loc     0x0000000000000000     0x1a16 build/default/production/main.o
+
+.debug_macinfo
+ *(.debug_macinfo)
+
+.debug_weaknames
+ *(.debug_weaknames)
+
+.debug_funcnames
+ *(.debug_funcnames)
+
+.debug_typenames
+ *(.debug_typenames)
+
+.debug_varnames
+ *(.debug_varnames)
+
+.debug_pubtypes
+ *(.debug_pubtypes)
+
+.debug_ranges   0x0000000000000000      0x160
+ *(.debug_ranges)
+ .debug_ranges  0x0000000000000000      0x160 build/default/production/main.o
+
+.debug_macro
+ *(.debug_macro)
+OUTPUT(dist/default/production/Panel_reader_controller.X.production.elf elf32-avr)
+LOAD linker stubs
+LOAD data_init
+
+.note.gnu.avr.deviceinfo
+                0x0000000000000000       0x3c
+ .note.gnu.avr.deviceinfo
+                0x0000000000000000       0x3c C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+
+.bss.debugSerialBuffer
+                0x0000000000803e12        0xf
+ .bss.debugSerialBuffer
+                0x0000000000803e12        0xf build/default/production/main.o
+                0x0000000000803e12                debugSerialBuffer
+
+.bss.USART1_counter
+                0x0000000000803e30        0x1
+ .bss.USART1_counter
+                0x0000000000803e30        0x1 build/default/production/main.o
+                0x0000000000803e30                USART1_counter
+
+.bss.USART1_Buffer
+                0x0000000000803c02       0xff
+ .bss.USART1_Buffer
+                0x0000000000803c02       0xff build/default/production/main.o
+                0x0000000000803c02                USART1_Buffer
+
+.bss.USART0_counter
+                0x0000000000803e31        0x1
+ .bss.USART0_counter
+                0x0000000000803e31        0x1 build/default/production/main.o
+                0x0000000000803e31                USART0_counter
+
+.bss.USART0_Buffer
+                0x0000000000803d01       0xff
+ .bss.USART0_Buffer
+                0x0000000000803d01       0xff build/default/production/main.o
+                0x0000000000803d01                USART0_Buffer
+
+.text.main      0x00000000000000b0      0x734
+ .text.main     0x00000000000000b0      0x734 build/default/production/main.o
+                0x00000000000000b0                main
+
+.text.vfpfcnvrt
+                0x00000000000007e4      0x3ce
+ .text.vfpfcnvrt
+                0x00000000000007e4      0x3ce c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+                0x00000000000007e4                vfpfcnvrt
+
+.text.setBluetoothConfiguration
+                0x0000000000000bb2      0x1e0
+ .text.setBluetoothConfiguration
+                0x0000000000000bb2      0x1e0 build/default/production/main.o
+                0x0000000000000bb2                setBluetoothConfiguration
+
+.text.__fmt_x   0x0000000000000d92      0x1d4
+ .text.__fmt_x  0x0000000000000d92      0x1d4 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_x.o)
+                0x0000000000000d92                __fmt_x_needed
+                0x0000000000000d92                __fmt_x
+
+.text.getBluetoothConfiguration
+                0x0000000000000f66      0x1ae
+ .text.getBluetoothConfiguration
+                0x0000000000000f66      0x1ae build/default/production/main.o
+                0x0000000000000f66                getBluetoothConfiguration
+
+.text.controlCfg
+                0x0000000000001114       0xf2
+ .text.controlCfg
+                0x0000000000001114       0xf2 build/default/production/main.o
+                0x0000000000001114                controlCfg
+
+.text.__fmt_d   0x0000000000001206       0xdc
+ .text.__fmt_d  0x0000000000001206       0xdc c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_d.o)
+                0x0000000000001206                __fmt_d
+                0x0000000000001206                __fmt_d_needed
+
+.text.__pop_int
+                0x00000000000012e2       0xd0
+ .text.__pop_int
+                0x00000000000012e2       0xd0 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__pop_int.o)
+                0x00000000000012e2                __pop_int_needed
+                0x00000000000012e2                __pop_int
+
+.text.__cvt_u   0x00000000000013b2       0xc4
+ .text.__cvt_u  0x00000000000013b2       0xc4 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+                0x00000000000013b2                __cvt_u
+
+.text.__fmt_o   0x0000000000001476       0xaa
+ .text.__fmt_o  0x0000000000001476       0xaa c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_o.o)
+                0x0000000000001476                __fmt_o
+                0x0000000000001476                __fmt_o_needed
+
+.text.fputc     0x0000000000001520       0x98
+ .text.fputc    0x0000000000001520       0x98 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(fputc.o)
+                0x0000000000001520                fputc
+                0x0000000000001520                putc
+
+.text.controlRN4678
+                0x00000000000015b8       0x92
+ .text.controlRN4678
+                0x00000000000015b8       0x92 build/default/production/main.o
+                0x00000000000015b8                controlRN4678
+
+.text.__fmt_u   0x000000000000164a       0x86
+ .text.__fmt_u  0x000000000000164a       0x86 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_u.o)
+                0x000000000000164a                __fmt_u_needed
+                0x000000000000164a                __fmt_u
+
+.text.__printf_core
+                0x00000000000016d0       0x72
+ .text.__printf_core
+                0x00000000000016d0       0x72 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+                0x00000000000016d0                __printf_core
+
+.text.__vsnprintf
+                0x0000000000001742       0x6e
+ .text.__vsnprintf
+                0x0000000000001742       0x6e c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsnprintf.o)
+                0x0000000000001742                __vsnprintf
+
+.text.__pad     0x00000000000017b0       0x68
+ .text.__pad    0x00000000000017b0       0x68 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+                0x00000000000017b0                __pad
+
+.rodata         0x0000000000809818       0x67 load address 0x0000000000001818
+ .rodata        0x0000000000809818       0x67 build/default/production/main.o
+
+.data.debugCMD  0x0000000000803e2f        0x1 load address 0x000000000000187f
+ .data.debugCMD
+                0x0000000000803e2f        0x1 build/default/production/main.o
+                0x0000000000803e2f                debugCMD
+
+.text.read_prec_or_width
+                0x0000000000001880       0x5c
+ .text.read_prec_or_width
+                0x0000000000001880       0x5c c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+
+.text.restoreFactoryConfiguration
+                0x00000000000018dc       0x58
+ .text.restoreFactoryConfiguration
+                0x00000000000018dc       0x58 build/default/production/main.o
+                0x00000000000018dc                restoreFactoryConfiguration
+
+.text.readBuffer
+                0x0000000000001934       0x52
+ .text.readBuffer
+                0x0000000000001934       0x52 build/default/production/main.o
+                0x0000000000001934                readBuffer
+
+.text.__fmt_s   0x0000000000001986       0x4c
+ .text.__fmt_s  0x0000000000001986       0x4c c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+                0x0000000000001986                __fmt_s
+                0x0000000000001986                __fmt_0_needed
+                0x0000000000001986                __fmt_s_needed
+
+.text.libgcc.div
+                0x00000000000019d2       0x44
+ .text.libgcc.div
+                0x00000000000019d2       0x44 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_udivmodsi4.o)
+                0x00000000000019d2                __udivmodsi4
+
+.text.writeCommand
+                0x0000000000001a16       0x40
+ .text.writeCommand
+                0x0000000000001a16       0x40 build/default/production/main.o
+                0x0000000000001a16                writeCommand
+
+.text.__fmt_state
+                0x0000000000001a56       0x40
+ .text.__fmt_state
+                0x0000000000001a56       0x40 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+                0x0000000000001a56                __fmt_state
+
+.text.getEEPROMCfg
+                0x0000000000001a96       0x36
+ .text.getEEPROMCfg
+                0x0000000000001a96       0x36 build/default/production/main.o
+                0x0000000000001a96                getEEPROMCfg
+
+.text.numberOfBit
+                0x0000000000001acc       0x36
+ .text.numberOfBit
+                0x0000000000001acc       0x36 build/default/production/main.o
+                0x0000000000001acc                numberOfBit
+
+.text.usart0_read_byte
+                0x0000000000001b02       0x34
+ .text.usart0_read_byte
+                0x0000000000001b02       0x34 build/default/production/main.o
+                0x0000000000001b02                usart0_read_byte
+
+.text.usart1_read_byte
+                0x0000000000001b36       0x34
+ .text.usart1_read_byte
+                0x0000000000001b36       0x34 build/default/production/main.o
+                0x0000000000001b36                usart1_read_byte
+
+.text.__out     0x0000000000001b6a       0x34
+ .text.__out    0x0000000000001b6a       0x34 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+                0x0000000000001b6a                __out
+
+.text.strncpy   0x0000000000001b9e       0x34
+ .text.strncpy  0x0000000000001b9e       0x34 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strncpy.o)
+                0x0000000000001b9e                strncpy
+
+.text.libgcc.prologue
+                0x0000000000001bd2       0x32
+ .text.libgcc.prologue
+                0x0000000000001bd2       0x32 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_prologue.o)
+                0x0000000000001bd2                __prologue_saves__
+
+.text.libgcc.prologue
+                0x0000000000001c04       0x30
+ .text.libgcc.prologue
+                0x0000000000001c04       0x30 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/avrxmega3/short-calls\libgcc.a(_epilogue.o)
+                0x0000000000001c04                __epilogue_restores__
+
+.text.__vector_17
+                0x0000000000001c34       0x2e
+ .text.__vector_17
+                0x0000000000001c34       0x2e build/default/production/main.o
+                0x0000000000001c34                __vector_17
+
+.text.__vector_26
+                0x0000000000001c62       0x2e
+ .text.__vector_26
+                0x0000000000001c62       0x2e build/default/production/main.o
+                0x0000000000001c62                __vector_26
+
+.text.serialDebug
+                0x0000000000001c90       0x2c
+ .text.serialDebug
+                0x0000000000001c90       0x2c build/default/production/main.o
+                0x0000000000001c90                serialDebug
+
+.text.__vfprintf
+                0x0000000000001cbc       0x2a
+ .text.__vfprintf
+                0x0000000000001cbc       0x2a c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vfprintf.o)
+                0x0000000000001cbc                __vfprintf
+
+.text.gotMCUCommand
+                0x0000000000001ce6       0x28
+ .text.gotMCUCommand
+                0x0000000000001ce6       0x28 build/default/production/main.o
+                0x0000000000001ce6                gotMCUCommand
+
+.text.avrlibc   0x0000000000001d0e       0x28
+ .text.avrlibc  0x0000000000001d0e       0x28 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eewr_byte.o)
+                0x0000000000001d0e                eeprom_write_byte
+                0x0000000000001d10                eeprom_write_r18
+
+.text.numberOfParity
+                0x0000000000001d36       0x26
+ .text.numberOfParity
+                0x0000000000001d36       0x26 build/default/production/main.o
+                0x0000000000001d36                numberOfParity
+
+.text.dimmerSetup
+                0x0000000000001d5c       0x24
+ .text.dimmerSetup
+                0x0000000000001d5c       0x24 build/default/production/main.o
+                0x0000000000001d5c                dimmerSetup
+
+.text.__wrap_sprintf
+                0x0000000000001d80       0x1e
+ .text.__wrap_sprintf
+                0x0000000000001d80       0x1e c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__sio_sprintf_dosux.o)
+                0x0000000000001d80                _sprintf_cdopsuxX
+
+.text.clearBuffer
+                0x0000000000001d9e       0x1c
+ .text.clearBuffer
+                0x0000000000001d9e       0x1c build/default/production/main.o
+                0x0000000000001d9e                clearBuffer
+
+.text.strlen    0x0000000000001dba       0x1c
+ .text.strlen   0x0000000000001dba       0x1c c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(strlen.o)
+                0x0000000000001dba                strlen
+
+.rodata.ATtiny826_factory_buffer
+                0x0000000000809dd6       0x1a load address 0x0000000000001dd6
+ .rodata.ATtiny826_factory_buffer
+                0x0000000000809dd6       0x1a build/default/production/main.o
+                0x0000000000809dd6                ATtiny826_factory_buffer
+
+.rodata.state_table
+                0x0000000000809df0       0x16 load address 0x0000000000001df0
+ .rodata.state_table
+                0x0000000000809df0       0x16 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+
+.text.toupper   0x0000000000001e06       0x12
+ .text.toupper  0x0000000000001e06       0x12 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(toupper.o)
+                0x0000000000001e06                toupper
+
+.text.tolower   0x0000000000001e18       0x10
+ .text.tolower  0x0000000000001e18       0x10 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(tolower.o)
+                0x0000000000001e18                tolower
+
+.text.avrlibc   0x0000000000001e28       0x10
+ .text.avrlibc  0x0000000000001e28       0x10 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls\libattiny826.a(eerd_byte.o)
+                0x0000000000001e28                eeprom_read_byte
+                0x0000000000001e30                eeprom_mapen
+
+.text.exit      0x0000000000001e38        0xe
+ .text.exit     0x0000000000001e38        0xe c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+                0x0000000000001e38                exit
+
+.text.__vsprintf
+                0x0000000000001e46        0xc
+ .text.__vsprintf
+                0x0000000000001e46        0xc c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__int_vsprintf.o)
+                0x0000000000001e46                __vsprintf
+
+.rodata.nuls.2781
+                0x0000000000809e52        0x7 load address 0x0000000000001e52
+ .rodata.nuls.2781
+                0x0000000000809e52        0x7 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__fmt_s.o)
+
+.rodata.nilstr.2962
+                0x0000000000809e59        0x6 load address 0x0000000000001e59
+ .rodata.nilstr.2962
+                0x0000000000809e59        0x6 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(__printf_core.o)
+
+.text           0x0000000000001e60        0x2
+ .text          0x0000000000001e60        0x2 C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260/xc8/avr/lib/avrxmega3/short-calls/crtattiny826.o
+                0x0000000000001e60                __vector_22
+                0x0000000000001e60                __vector_28
+                0x0000000000001e60                __vector_1
+                0x0000000000001e60                __vector_24
+                0x0000000000001e60                __vector_12
+                0x0000000000001e60                __bad_interrupt
+                0x0000000000001e60                __vector_6
+                0x0000000000001e60                __vector_3
+                0x0000000000001e60                __vector_23
+                0x0000000000001e60                __vector_25
+                0x0000000000001e60                __vector_11
+                0x0000000000001e60                __vector_13
+                0x0000000000001e60                __vector_19
+                0x0000000000001e60                __vector_7
+                0x0000000000001e60                __vector_27
+                0x0000000000001e60                __vector_5
+                0x0000000000001e60                __vector_4
+                0x0000000000001e60                __vector_9
+                0x0000000000001e60                __vector_2
+                0x0000000000001e60                __vector_21
+                0x0000000000001e60                __vector_15
+                0x0000000000001e60                __vector_29
+                0x0000000000001e60                __vector_8
+                0x0000000000001e60                __vector_14
+                0x0000000000001e60                __vector_10
+                0x0000000000001e60                __vector_16
+                0x0000000000001e60                __vector_18
+                0x0000000000001e60                __vector_20
+
+.text.__dummy_fini
+                0x0000000000001e62        0x2
+ .text.__dummy_fini
+                0x0000000000001e62        0x2 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+                0x0000000000001e62                _fini
+
+.text.__dummy_funcs_on_exit
+                0x0000000000001e64        0x2
+ .text.__dummy_funcs_on_exit
+                0x0000000000001e64        0x2 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+                0x0000000000001e64                __funcs_on_exit
+
+.text.__dummy_simulator_exit
+                0x0000000000001e66        0x2
+ .text.__dummy_simulator_exit
+                0x0000000000001e66        0x2 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(exit.o)
+                0x0000000000001e66                __simulator_exit
+
+.text._Exit     0x0000000000001e68        0x2
+ .text._Exit    0x0000000000001e68        0x2 c:/program files/microchip/xc8/v2.46/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/lib/avrxmega3/short-calls\libc.a(_Exit.o)
+                0x0000000000001e68                _Exit
+
+.data._10MHz_Baud_CFG
+                0x0000000000803e00       0x12 load address 0x0000000000001e6a
+ .data._10MHz_Baud_CFG
+                0x0000000000803e00       0x12 build/default/production/main.o
+                0x0000000000803e00                _10MHz_Baud_CFG
+
+.data.debugStatus_cmd
+                0x0000000000803e21        0xe load address 0x0000000000001e7c
+ .data.debugStatus_cmd
+                0x0000000000803e21        0xe build/default/production/main.o
+                0x0000000000803e21                debugStatus_cmd
diff --git a/Version 2.8/Panel_reader_controller.X/dist/default/production/memoryfile.xml b/Version 2.8/Panel_reader_controller.X/dist/default/production/memoryfile.xml
new file mode 100644
index 0000000..cddbcf6
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/dist/default/production/memoryfile.xml	
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?> 
+<project>                                  
+  <executable name="dist/default/production/Panel_reader_controller.X.production.elf">                 
+    <memory name="program">              
+      <units>bytes</units>                 
+      <length>8192</length>                 
+      <used>7817</used>                     
+      <free>375</free>                     
+    </memory>                              
+    <memory name="data">                 
+      <units>bytes</units>                 
+      <length>1024</length>                 
+      <used>562</used>                     
+      <free>462</free>                     
+    </memory>                              
+  </executable>                            
+</project>                                 
diff --git a/Version 2.8/Panel_reader_controller.X/factory.h b/Version 2.8/Panel_reader_controller.X/factory.h
new file mode 100644
index 0000000..c5fcbcc
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/factory.h	
@@ -0,0 +1,25 @@
+/* 
+ * File: factory.h
+ * Author: Enzo Niro
+ * Comments: Set default factory settings here
+ * Revision history: 1.0
+ */
+
+
+#ifndef FACTORY_SETTINGS_H
+#define	FACTORY_SETTINGS_H
+
+#include <xc.h> // include processor files - each processor file is guarded.  
+
+const uint8_t ATtiny826_factory_buffer[] =
+{
+  0x03, 0x02, 0x01,
+  0x02, 0x01, 0x02,
+  'S', 'I', 'C', 'P', 'A', '_', 'A', 'S', 'B', 0x1C, 0x0B,
+  '1', '2', '3', '4', 0x0D, 0x06,
+  0x06, 0x02, 0x02
+};
+
+
+#endif	/* FACTORY_SETTINGS_H */
+
diff --git a/Version 2.8/Panel_reader_controller.X/main.c b/Version 2.8/Panel_reader_controller.X/main.c
new file mode 100644
index 0000000..de347bf
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/main.c	
@@ -0,0 +1,1122 @@
+/*
+ * File:   main.c
+ * Author: Enzo Niro
+ * Revision history : 2.8
+ *
+ * Created on August 28, 2024, 2:39 PM
+ */
+
+
+#define F_CPU   10000000UL
+
+#include <xc.h>
+#include <stdio.h>
+#include <string.h>
+#include <stdint.h>
+#include <stdbool.h>
+#include <util/delay.h>
+#include <avr/interrupt.h>
+#include <avr/eeprom.h>
+
+#include "factory.h"
+#include "defValues.h"
+#include "configuration.h"
+#include "pins.h"
+#include "moduleCmds.h"
+#include <avr/io.h>
+
+FUSES = {
+	.WDTCFG = 0x0B, // WDTCFG {PERIOD=8KCLK, WINDOW=OFF}
+	.BODCFG = 0x00, // BODCFG {SLEEP=DIS, ACTIVE=DIS, SAMPFREQ=1KHZ, LVL=BODLEVEL0}
+	.OSCCFG = 0x7E, // OSCCFG {FREQSEL=20MHZ, OSCLOCK=CLEAR}
+	.SYSCFG0 = 0xF6, // SYSCFG0 {EESAVE=CLEAR, RSTPINCFG=UPDI, TOUTDIS=SET, CRCSRC=NOCRC}
+	.SYSCFG1 = 0xFF, // SYSCFG1 {SUT=64MS}
+	.APPEND = 0x00, // APPEND {APPEND=User range:  0x0 - 0xFF}
+	.BOOTEND = 0x00, // BOOTEND {BOOTEND=User range:  0x0 - 0xFF}
+};
+
+LOCKBITS = 0xC5; // {LB=NOLOCK}
+
+
+/*
+ TODO list :
+ * ADC for battery
+ * Test setBluetoothConfiguration()
+ * Put method to write bluetooth cfg to MCU EEPROM
+ 
+ */
+
+
+
+
+////////////////////////////////////////////
+//Prototypes & Macros
+
+//USART functions
+void writeCommand(const uint8_t *buf, uint8_t n);                     //Write a buffer on usart 1 port
+void readBuffer(uint8_t *cfg, uint8_t n);
+void usart0_write_byte(uint8_t b);                              //send a single byte to usart 0 port
+void usart1_write_byte(uint8_t b);                              //send a single byte to usart 1 port
+uint8_t usart0_read_byte(void);                                 //read a single byte from usart 0 port
+uint8_t usart1_read_byte(void);                                 //read a single byte from usart 1 port
+uint8_t usart0_available(void);                                 //check number of bytes available into usart 0 buffer
+uint8_t usart1_available(void);                                 //check number of bytes available into usart 1 buffer
+void serialDebug(const char *str, uint8_t n);
+
+//Analog functions
+void dimmerSetup(void);                                         //start dimmer
+void adcInit(void);                                             //Init ADC cfg
+
+//Control functions
+uint8_t numberOfParity(uint8_t *p, uint8_t n);                  //Return the sum of bytes' parity
+uint8_t numberOfBit(uint8_t *p, uint8_t n);                     //Return the total bit at 1 of buffer
+void getEEPROMCfg(uint8_t *cfg);                                //Get EEPROM buffer into RAM
+uint8_t controlCfg(uint8_t *cfg);                               //Control RAM buffer
+void getBluetoothConfiguration(uint8_t *cfg);
+void setBluetoothConfiguration(uint8_t *cfg);
+void restoreFactoryConfiguration(uint8_t *cfg);
+uint8_t controlRN4678(void);
+void clearBuffer(uint8_t *p, uint8_t n);
+
+//MCU Commands functions
+uint8_t gotMCUCommand(uint8_t *buf, uint8_t *frame, uint8_t n); //Method to analyse command
+
+//Macros
+
+#define WATCHDOG_RESET      asm("WDR")
+
+#define ADC_START_CONV          ADC0.COMMAND |= 0x01                //Start conversion
+#define ADC_READ                ADC0.SAMPLE                         //Get sample value
+#define BLUETOOTH_CONNECTED     !((PORTA.IN & STAT2_PIN) >> 4)   //Get Bluetooth connected status
+
+#define SET_DATA_LED            PORTB.OUT |= STATUS_DATA_PIN
+#define CLR_DATA_LED            PORTB.OUT &= ~STATUS_DATA_PIN
+#define SET_CONNECTED_LED       PORTB.OUT |= STATUS_CONNECTED_PIN
+#define CLR_CONNECTED_LED       PORTB.OUT &= ~STATUS_CONNECTED_PIN
+#define SET_POWER_LED           TCA0.SINGLE.CMP1 = 255 //Pin depend on timer
+#define CLR_POWER_LED           TCA0.SINGLE.CMP1 = 0
+
+////////////////////////////////////////////
+
+
+
+/////////////////////////////////////////////////
+//Serial port backend
+enum baudsIndex
+{
+    B2400 = 0,
+    B4800,
+    B9600,
+    B14400,
+    B19200,
+    B28800,
+    B38400,
+    B57600,
+    B115200,
+};
+
+
+enum ATtinyMemAddr
+{
+    AUTH_ADDR = 0x0,
+    BLM_ADDR = 0x3,
+    DEVN_ADDR = 0x6,
+    PINC_ADDR = 0x11,
+    BAUD_ADDR = 0x17,
+    COUNT_ADDR = 0x50, //For error memory count
+    FLAG_WR_ADDR = 0x60, //For memory copy from RN4678 to MCU
+};
+
+
+//Equivalents baudrate at 10MHz of oscillation
+uint16_t _10MHz_Baud_CFG[] = { 16666, 8333, 4166, 2777, 2083, 1389, 1042, 694, 347 };
+
+
+uint8_t USART0_Buffer[255], USART0_counter = 0;
+uint8_t USART1_Buffer[255], USART1_counter = 0;
+
+
+/////////////////////////////////////////////////////////////////////////
+//Special MCU Commands
+
+uint8_t debugSerialBuffer[MAX_WINDOW_BUFFER]; //set window analyse buffer
+uint8_t debugSerialCounter = 0;
+uint8_t debugStatus_cmd[] = { 0x2, 'A', '$', '$', 'G', 'E', 'T', 'M', 'E', 'M', 'S', 'T', 'S', 0x3, }; 
+uint8_t debugCMD = '0';
+
+
+int main(void) {
+    
+    
+    uint8_t ATtiny826_buffer[TOP_CFG_ADDR]; //saved cfg
+    bool serialOk = false; //To find the right baud value
+    uint8_t baudSelector = 0;
+    
+    //Memory corrupt variables
+    uint8_t ATtiny_mem_err = 0x00;
+    uint8_t RN4678_mem_err = 0x00;
+    //Memory corrput counter (for debug, if this is not corrupted...)
+    uint8_t ATtiny_mem_cnt = 0;
+    uint8_t RN4678_mem_cnt = 0;
+    uint8_t EMRG_mem_cnt = 0;
+    
+    uint8_t paramBuffer[32];
+    uint8_t paramBuffer_cnt = 0;
+    uint8_t ackBuffer[3];
+
+    
+    _PROTECTED_WRITE(CLKCTRL.MCLKCTRLB, ENABLE_BIT); //Enable clock prescaler (and divide by 2)
+    
+    WATCHDOG_RESET; //reset wdt here
+    
+    
+    
+    
+    ////////////////////////////////////////////////
+    //Basic pins setup
+    PORTA.OUT = 0x00;
+    PORTA.DIR = BOOT_BL_PIN; //set boot pin as output
+    PORTB.OUT = 0x00;
+    PORTB.DIR = STATUS_POWER_PIN | STATUS_DATA_PIN | STATUS_CONNECTED_PIN; //set all status pins as output
+    ////////////////////////////////////////////////
+    
+    /////////////////////////
+    //Start PWM
+    dimmerSetup();
+    
+    SET_DATA_LED; //display boot status
+    /////////////////////////
+    //Boot Bluetooth module
+    _delay_ms(500);
+    PORTA.OUT |= BOOT_BL_PIN;
+    _delay_ms(50);
+    PORTA.OUT &= ~(BOOT_BL_PIN);
+    _delay_ms(50);
+    PORTA.OUT |= BOOT_BL_PIN;    
+    
+    _delay_ms(2000);
+    CLR_DATA_LED;
+    
+    
+    WATCHDOG_RESET; //reset wdt here
+    
+    /////////////////////////////////////////////////////////////////////
+    //Read EEPROM memory
+    getEEPROMCfg(ATtiny826_buffer); //read EEPROM saved cfg (At first...)    
+    //Get stored baud value
+    baudSelector = eeprom_read_byte(BAUD_ADDR);
+    
+    ////////////////////////////////////////////////
+    //USART Setup
+    #ifdef USE_TWO_SERIAL_PORTS
+    cli();
+    PORTA.DIR |= TX2_PIN; //Only this pin is output, others are input
+    PORTB.DIR |= TX1_PIN; //Add TX1 pin as output on PORTB
+    
+    USART0.CTRLA = USART_RXCIE_bm; // Enable RXCIE -> Receive complete interrupt flag
+    USART0.CTRLB = USART_RXEN_bm | USART_TXEN_bm; //TX and RX enable
+    USART0.CTRLC = USART_CHSIZE_8BIT_gc | USART_CMODE_ASYNCHRONOUS_gc | USART_PMODE_DISABLED_gc | USART_SBMODE_2BIT_gc; // 8 bits + 2 stop bit + No parity (Normal mode)
+    USART0.BAUD = _10MHz_Baud_CFG[baudSelector]; //set baudrate
+    
+    USART1.CTRLA = USART_RXCIE_bm; // Enable RXCIE -> Receive complete interrupt flag
+    USART1.CTRLB = USART_RXEN_bm | USART_TXEN_bm; //TX and RX enable
+    USART1.CTRLC = USART_CHSIZE_8BIT_gc | USART_CMODE_ASYNCHRONOUS_gc | USART_PMODE_DISABLED_gc; // 8 bits + 2 stop bit + No parity (Normal mode)
+    USART1.BAUD = _10MHz_Baud_CFG[baudSelector]; //set baudrate
+    sei();
+    #endif
+    ////////////////////////////////////////////////
+    
+    
+    ////////////////////////////////////////////////
+    //Start ADC
+    //adcInit();
+    
+    
+    
+    ///////////////////////////////////////////////////////////////
+    //Find serial port baud speed
+    
+    WATCHDOG_RESET;
+    
+    baudSelector = 0; //in case of test fail (baud change inside RN4678), do the full test
+    
+    //_delay_ms(1000);
+    //SET_CONNECTED_LED;
+    while(!serialOk)
+    {
+        uint8_t window_analysis[3]; //create window here (to analyse "CMD" command)
+        writeCommand(ENTER_SETUP, 4); //sizeof(ENTER_SETUP)
+        _delay_ms(100); //wait a bit
+        while(usart0_available() > 0)
+        {
+            paramBuffer[paramBuffer_cnt] = usart0_read_byte();
+            paramBuffer_cnt++;
+        }
+        
+        
+        while(paramBuffer_cnt > 0) //Try to reach desired buffer and flush "noise" buffer
+        {
+            //Read 3 first bytes...
+            for(int i = 0; i < 3; i++)
+            {
+                window_analysis[i] = paramBuffer[i];
+            }
+            //Sweep buffer
+            for(int i = 0; i < paramBuffer_cnt-1; i++)
+            {
+                paramBuffer[i] = paramBuffer[i+1];
+            }
+            //Check buffer
+            if(window_analysis[0] == 'C' && window_analysis[1] == 'M' && window_analysis[2] == 'D') //we've got data -> Leave !
+            {
+                debugCMD = '1';
+                serialOk = true;
+            }
+            paramBuffer_cnt--;
+        }
+        
+        
+        if(!serialOk) //if buffer messed up (no "CMD" string found...)
+        {
+            //Go on next baud
+            USART0.BAUD = _10MHz_Baud_CFG[baudSelector]; //set baudrate
+            baudSelector++;
+            _delay_ms(100);
+            //If we've got the last param
+            if(baudSelector >= MAX_BAUD_VALUES)
+            {
+                //send enter command mode and leave loop...
+                writeCommand(ENTER_SETUP, 4); //sizeof(ENTER_SETUP)
+                _delay_ms(100); //wait a bit
+                serialOk = true; //force
+            }
+                
+        }
+    }
+    
+    
+    //serialDebug("Start\n", 6);
+    
+    _delay_ms(500);
+    
+    while(usart0_available() > 0) //flush buffer
+    {
+        usart0_read_byte();
+    }
+    
+    _delay_ms(100); //wait a bit
+    USART1.BAUD = USART0.BAUD; //copy baud to another...
+    
+
+    //serialDebug("Dimst\n", 6);
+    ///////////////////////////////////////////////////////////////
+    //Memory analysis management 
+    
+    WATCHDOG_RESET;
+    
+    ATtiny_mem_err = controlCfg(ATtiny826_buffer); //control ATtiny826 Memory
+    RN4678_mem_err = controlRN4678();              //control RN4678 Memory Status
+    //serialDebug("Cfggt\n", 6);
+    ATtiny_mem_cnt = eeprom_read_byte(COUNT_ADDR);
+    _delay_ms(100);
+    RN4678_mem_cnt = eeprom_read_byte(COUNT_ADDR+1);
+    _delay_ms(100);
+    EMRG_mem_cnt = eeprom_read_byte(COUNT_ADDR+2);
+    _delay_ms(100);
+    
+    if(ATtiny_mem_err == 0x00) //Check if MCU Copy is necessary from RN4678 to MCU
+    {
+        ATtiny_mem_err = eeprom_read_byte(FLAG_WR_ADDR);
+        _delay_ms(100);
+    }
+    
+    if(ATtiny_mem_err != 0x00 && RN4678_mem_err == 0x00) //MCU memory error !
+    {
+        ATtiny_mem_cnt++;
+        /*SET_DATA_LED;
+        _delay_ms(250);
+        CLR_DATA_LED;
+        _delay_ms(250);
+        SET_DATA_LED;
+        _delay_ms(250);
+        CLR_DATA_LED;
+        _delay_ms(250);
+        SET_DATA_LED;
+        _delay_ms(250);
+        CLR_DATA_LED;
+        _delay_ms(250);*/
+        
+        for(uint8_t i = 0; i < 3; i++)
+        {
+            SET_DATA_LED;
+            _delay_ms(250);
+            CLR_DATA_LED;
+            _delay_ms(250);  
+        }
+        
+        getBluetoothConfiguration(ATtiny826_buffer);
+        eeprom_write_byte(FLAG_WR_ADDR, 0x00);
+        _delay_ms(100);
+    }
+    else if(ATtiny_mem_err == 0x00 && RN4678_mem_err != 0x00) // RN4678 memory error !
+    {
+        RN4678_mem_cnt++;
+        /*SET_CONNECTED_LED;
+        _delay_ms(250);
+        CLR_CONNECTED_LED;
+        _delay_ms(250);
+        SET_CONNECTED_LED;
+        _delay_ms(250);
+        CLR_CONNECTED_LED;
+        _delay_ms(250);
+        SET_CONNECTED_LED;
+        _delay_ms(250);
+        CLR_CONNECTED_LED;
+        _delay_ms(250);*/
+        
+        for(uint8_t i = 0; i < 3; i++)
+        {
+            SET_CONNECTED_LED;
+            _delay_ms(250);
+            CLR_CONNECTED_LED;
+            _delay_ms(250);
+        }
+        setBluetoothConfiguration(ATtiny826_buffer);
+    }
+    else if(ATtiny_mem_err != 0x00 && RN4678_mem_err != 0x00)//Emergency case !!! (Twice memory are corrupted...)
+    {
+        EMRG_mem_cnt++;
+        /*SET_POWER_LED;
+        _delay_ms(250);
+        CLR_POWER_LED;
+        _delay_ms(250);
+        SET_POWER_LED;
+        _delay_ms(250);
+        CLR_POWER_LED;
+        _delay_ms(250);
+        SET_POWER_LED;
+        _delay_ms(250);
+        CLR_POWER_LED;
+        _delay_ms(250);*/
+        
+        for(uint8_t i = 0; i < 3; i++)
+        {
+            SET_POWER_LED;
+            _delay_ms(250);
+            CLR_POWER_LED;
+            _delay_ms(250);
+        }
+        
+        restoreFactoryConfiguration(ATtiny826_buffer);
+        eeprom_write_byte(FLAG_WR_ADDR, 0x00);
+        _delay_ms(100);
+    }
+    else
+    {
+        /*SET_DATA_LED;
+        _delay_ms(250);
+        CLR_DATA_LED;
+        SET_CONNECTED_LED;
+        _delay_ms(250);
+        CLR_CONNECTED_LED;
+        SET_POWER_LED; //STATUS_POWER_PIN
+        _delay_ms(250);
+        CLR_POWER_LED; //STATUS_POWER_PIN
+        SET_DATA_LED;
+        _delay_ms(250);
+        CLR_DATA_LED;
+        SET_CONNECTED_LED;
+        _delay_ms(250);
+        CLR_CONNECTED_LED;
+        SET_POWER_LED; //STATUS_POWER_PIN
+        _delay_ms(250);
+        CLR_POWER_LED; //STATUS_POWER_PIN
+        */
+        for(uint8_t i = 0; i < 2; i++)
+        {
+            SET_DATA_LED;
+            _delay_ms(250);
+            CLR_DATA_LED;
+            SET_CONNECTED_LED;
+            _delay_ms(250);
+            CLR_CONNECTED_LED;
+            SET_POWER_LED; //STATUS_POWER_PIN
+            _delay_ms(250);
+            CLR_POWER_LED; //STATUS_POWER_PIN
+        }
+        
+    }
+        
+    
+    WATCHDOG_RESET;
+    
+    if(EMRG_mem_cnt == 0xFF) //if default twice mem.
+    {
+        EMRG_mem_cnt = 0; //clear...
+        //And write to EEPROM...
+        eeprom_write_byte(COUNT_ADDR+2, EMRG_mem_cnt);
+        _delay_ms(100);
+    }
+    if(RN4678_mem_cnt == 0xFF) //if default BL module mem.
+    {
+        RN4678_mem_cnt = 0; //clear...
+        //And write to EEPROM...
+        eeprom_write_byte(COUNT_ADDR+1, RN4678_mem_cnt);
+        _delay_ms(100);
+    }
+    if(ATtiny_mem_cnt == 0xFF) //if default EEPROM mem.
+    {
+        ATtiny_mem_cnt = 0; //clear...
+        //And write to EEPROM...
+        eeprom_write_byte(COUNT_ADDR, ATtiny_mem_cnt);
+        _delay_ms(100);
+    }
+   
+    
+    writeCommand(QUIT_SETUP, sizeof(QUIT_SETUP));
+    _delay_ms(1000); //wait a bit
+    while(usart0_available() > 0) //flush buffer
+    {
+        usart0_read_byte();
+    }
+    
+    
+    
+    
+    while(1)
+    {
+        WATCHDOG_RESET;
+        //Mux USART Management (Put status and switch together)
+        BLUETOOTH_CONNECTED ? (CLR_CONNECTED_LED) : (SET_CONNECTED_LED);
+        //Set USART data flow status
+        
+        //if((PORTA.IN & (STAT1_PIN | STAT_RX_PIN)) == (!STAT1_PIN | STAT_RX_PIN)) 
+        //if((PORTA.IN & STAT1_PIN) == !STAT1_PIN)
+        if((PORTA.IN & STAT_RX_PIN) == !STAT_RX_PIN || (PORTA.IN & STAT1_PIN) == !STAT1_PIN) 
+        {
+            SET_DATA_LED;
+        }
+        else
+        {
+            CLR_DATA_LED;
+        }
+          
+        
+        
+        
+        //Set Power status (Depending on ADC_BAT and SECTOR_STAT)
+        if((PORTC.IN & SECTOR_PIN) == SECTOR_PIN)
+        {
+            SET_POWER_LED;
+        }
+        else //Battery Only
+        {
+            CLR_POWER_LED;
+        }
+        
+        
+
+        
+        ///////////////////////////////////////////////////
+        //Man-in-the-middle script
+        
+        
+        if(usart1_available() > 0)
+        {
+                //usart0_write_byte(usart1_read_byte());
+                /*paramBuffer[paramBuffer_cnt] = usart1_read_byte();
+                usart0_write_byte(paramBuffer[paramBuffer_cnt]);
+                paramBuffer_cnt++;*/
+                //_delay_ms(1);
+                if(BLUETOOTH_CONNECTED)
+                    usart0_write_byte(usart1_read_byte());
+                else
+                {
+                    ///////////////////////////////////////////////////
+                    //Debug Hardware When BL. module disconnected
+                    debugSerialBuffer[MAX_WINDOW_BUFFER-1] = usart1_read_byte(); //get byte into window buffer
+                    //usart1_write_byte(debugSerialBuffer[MAX_WINDOW_BUFFER-1]);
+                    usart0_write_byte(debugSerialBuffer[MAX_WINDOW_BUFFER-1]); //send it to another serial port (just in case)
+                    for(int i = 0; i < MAX_WINDOW_BUFFER-1; i++)
+                    {
+                        debugSerialBuffer[i] = debugSerialBuffer[i+1]; //shift bytes from right to left
+                    }
+
+                    if(gotMCUCommand(debugSerialBuffer, debugStatus_cmd, sizeof(debugStatus_cmd)))
+                    {
+                        //Bad coding...
+                        serialDebug("CNT: ", 7);
+                        usart1_write_byte(ATtiny_mem_cnt);
+                        _delay_ms(1);
+                        usart1_write_byte(' ');
+                        _delay_ms(1);
+                        usart1_write_byte(RN4678_mem_cnt);
+                        _delay_ms(1);
+                        usart1_write_byte(' ');
+                        _delay_ms(1);
+                        usart1_write_byte(EMRG_mem_cnt);
+                        _delay_ms(1);
+                        //clearDebugBuffer(debugSerialBuffer, MAX_WINDOW_BUFFER); //if needed, implement it !
+                    }
+                }
+            
+            
+        }
+        //When buffer is filled, load it to serial port
+        /*for(int i = 0; i < paramBuffer_cnt; i++)
+        {
+            usart0_write_byte(paramBuffer[i]);
+        }
+        paramBuffer_cnt = 0;*/
+        
+        if(usart0_available() > 0)
+        {
+            if(BLUETOOTH_CONNECTED)
+                usart1_write_byte(usart0_read_byte());
+            else
+            {
+                ackBuffer[0] = ackBuffer[1];
+                ackBuffer[1] = ackBuffer[2];
+                ackBuffer[2] = usart0_read_byte();
+                usart1_write_byte(ackBuffer[2]);
+                if(ackBuffer[0] == 'A' && ackBuffer[1] == 'O' && ackBuffer[2] == 'K')
+                {
+                    eeprom_write_byte(FLAG_WR_ADDR, 0xFF);
+                    _delay_ms(100);
+                }
+            }
+        }
+        
+        
+        
+
+        
+        
+        /*
+        if(!BLUETOOTH_CONNECTED) //Check STAT2 pin if not connected 
+        {
+            //Now we accept setup mode
+        }
+        */
+        
+        /*if((PORTA.IN & 0x10) == 0x00) //button pushed
+        {
+            //wait a bit
+            _delay_ms(500);
+            _delay_ms(500);
+            SLPCTRL.CTRLA = (0x01 << 1); //standby sleep mode
+            SLPCTRL.CTRLA |= ENABLE_BIT;
+        }
+        
+        PORTA.OUT ^= 0x20;
+        counter++;
+        _delay_ms(500);*/
+        
+    }
+    
+    return 0;
+}
+
+
+
+
+
+
+
+
+
+
+
+
+////////////////////////////////////////////////////////////////////////////
+//Functions
+
+//Memory configuration functions
+
+//Control RN4678 memory status
+uint8_t controlRN4678(void)
+{
+    uint8_t result = 0x02;
+    uint8_t _name[16];
+    //uint8_t cmd[3];
+    uint8_t devNameTrig[] = {'R','N','4','6','7','8'};
+    
+    
+    //TODO : Add more reading through Bluetooth module
+    //sprintf(cmd, "%s\r", GET_BLM);      //prepare get Bluetooth mode cmd
+    do
+    {
+        writeCommand(GET_DEVN, 3);              //send command
+        _delay_ms(1000); //wait a bit
+    }
+    while(usart0_available() <= 0); //wait until we've got data
+    
+    readBuffer(_name, 16);                 //get request for 16 bytes
+    
+    while(usart0_available() > 0) //flush dust bytes...
+    {
+        usart0_read_byte();
+    }
+    
+    for(uint8_t i = 0; i < 6; i++)
+    {
+        /*usart1_write_byte(_name[i]);
+        _delay_ms(1);
+        usart1_write_byte(' ');
+        _delay_ms(1);
+        usart1_write_byte(devNameTrig[i]);
+        _delay_ms(1);
+        usart1_write_byte('\r');
+        _delay_ms(1);
+        usart1_write_byte('\n');
+        _delay_ms(1);*/
+        result = (_name[i] != devNameTrig[i]) ? 0x00 : result;
+    }
+    if(result == 0x02) //fault detected -> Dev. name = "RN4678-XXXXX" ! 
+        result = 0x01;
+    
+    return result;
+}
+
+
+//Control ATtiny memory CFG
+uint8_t controlCfg(uint8_t *cfg)
+{
+    uint8_t err_code = 0; 
+    uint16_t local_crc;
+
+    
+    //Check Authentification mode
+    local_crc = numberOfBit(&cfg[AUTH_ADDR], 1) << 8 | numberOfParity(&cfg[AUTH_ADDR], 1);
+    if(local_crc != ((cfg[AUTH_ADDR + 1] << 8) | cfg[AUTH_ADDR + 2]))
+    {
+        err_code |= 0x01;
+    }
+    
+    //Check Bluetooth mode
+    local_crc = numberOfBit(&cfg[BLM_ADDR], 1) << 8 | numberOfParity(&cfg[BLM_ADDR], 1);
+    if(local_crc != ((cfg[BLM_ADDR + 1] << 8) | cfg[BLM_ADDR + 2]))
+    {
+        err_code |= 0x02;
+    }
+    
+    //Check Device name (ISSUE HERE)
+    /*local_crc = numberOfBit(&cfg[DEVN_ADDR], 16) << 8 | numberOfParity(&cfg[DEVN_ADDR], 16);
+    if(local_crc != ((cfg[DEVN_ADDR + 16] << 8) | cfg[DEVN_ADDR + 17])) //read CRC at DEVN_ADDR + STR_LENGTH (16 alphanumeric char)
+    {
+        err_code |= 0x04;
+    }*/
+
+    //Check Pincode
+    local_crc = numberOfBit(&cfg[PINC_ADDR], 4) << 8 | numberOfParity(&cfg[PINC_ADDR], 4);
+    if(local_crc != ((cfg[PINC_ADDR + 4] << 8) | cfg[PINC_ADDR + 5])) //read CRC at PINC_ADDR + STR_LENGTH (4 char number)
+    {
+        err_code |= 0x08;
+    }
+    
+    //Check Baud (ISSUE HERE)
+    local_crc = numberOfBit(&cfg[BAUD_ADDR], 1) << 8 | numberOfParity(&cfg[BAUD_ADDR], 1);
+    if(local_crc != ((cfg[BAUD_ADDR + 1] << 8) | cfg[BAUD_ADDR + 2])) 
+    {
+        err_code |= 0x10;
+    }
+    
+    
+    return err_code;
+}
+
+
+
+//Read RN4678 in case of ATtiny826 memory corrupt
+void getBluetoothConfiguration(uint8_t *cfg)
+{
+    
+    char cmd[25];
+    int i;
+    
+    uint8_t buffer[25];
+    
+    
+    //Implement get bluetooth value with index here
+    //Authentification Mode
+    sprintf(cmd, "%s", GET_AUTH);     //prepare get authentification cmd
+    writeCommand(cmd, 25);              //send command
+    _delay_ms(1000);
+    //serialDebug("\r\ncmd : ", 8);
+    //serialDebug(cmd, 25);
+    
+    readBuffer(buffer, 25);                 //get request (for 1 byte here)
+    
+    //serialDebug("\r\nbuf : ", 8);
+    //serialDebug(buffer, 25);
+    
+    cfg[AUTH_ADDR] = buffer[0]-ASCII_NUMBER_CONVERSION;         //store result
+    //crc calcultate
+    cfg[AUTH_ADDR + 1] = numberOfBit(&cfg[AUTH_ADDR], 1);
+    cfg[AUTH_ADDR + 2] = numberOfParity(&cfg[AUTH_ADDR], 1);
+    
+    //Bluetooth Mode
+    sprintf(cmd, "%s", GET_BLM);      //prepare get Bluetooth mode cmd
+    writeCommand(cmd, 25);              //send command
+    _delay_ms(1000);
+    readBuffer(buffer, 25);                 //get request for 1 byte again
+    cfg[BLM_ADDR] = buffer[0]-ASCII_NUMBER_CONVERSION;          //store result
+    //serialDebug("\r\nbuffer[0] : ", 14);
+    //serialDebug(buffer[0], 1);
+    //serialDebug("\r\nbascii[0] : ", 14);
+    //serialDebug(buffer[0]-ASCII_NUMBER_CONVERSION, 1);
+    //crc calcultate
+    cfg[BLM_ADDR + 1] = numberOfBit(&cfg[BLM_ADDR], 1);
+    cfg[BLM_ADDR + 2] = numberOfParity(&cfg[BLM_ADDR], 1);
+    
+    
+    //Device Name (Not used anymore...)
+    /*sprintf(cmd, "%s", GET_DEVN);      //prepare get Bluetooth dev. name
+    
+    //serialDebug("\r\ncmd : ", 8);
+    //serialDebug(cmd, 25);
+    
+    writeCommand(cmd, 25);              //send command
+    _delay_ms(1000);
+    readBuffer(buffer, 25);                 //get request for 16 bytes
+    //serialDebug("\r\nbuf : ", 8);
+    //serialDebug(buffer, 25);
+    i = 15; //max buffer for device name
+    while(buffer[i] != '\r') //clear buffer exclusivity (for name structure)
+    {
+        buffer[i] = 0xFF;
+        i--;
+    }
+    for(i = 0; i < 16; i++)
+    {
+        cfg[DEVN_ADDR + i] = buffer[i]; //store name
+    }
+    cfg[DEVN_ADDR + 16] = numberOfBit(&cfg[DEVN_ADDR], 16);
+    cfg[DEVN_ADDR + 17] = numberOfParity(&cfg[DEVN_ADDR], 16);*/
+    
+    
+    //Pincode
+    sprintf(cmd, "%s", GET_PINC);      //prepare get Bluetooth pin code
+    writeCommand(cmd, 25);              //send command
+    _delay_ms(1000);
+    readBuffer(buffer, 25);                 //get request for 4 bytes
+    for(i = 0; i < 4; i++)
+    {
+        cfg[PINC_ADDR + i] = buffer[i]; //store name
+    }
+    cfg[PINC_ADDR + 4] = numberOfBit(&cfg[PINC_ADDR], 4);
+    cfg[PINC_ADDR + 5] = numberOfParity(&cfg[PINC_ADDR], 4);
+
+    //Baudrate
+    sprintf(cmd, "%s", GET_BAUD);      //prepare get Bluetooth mode cmd
+    writeCommand(cmd, 25);              //send command
+    _delay_ms(1000);
+    readBuffer(buffer, 25);                 //get request for 4 bytes
+    //Buffer will get "0x" -> buffer[0] = '0' and buffer[1] = 'x'
+    cfg[BAUD_ADDR] = (buffer[1] == 'A') ? 0x07 : (buffer[1] == 'B') ? 0x08 : buffer[1] - '3'; //Method conv "03" -> "0B" to 00 -> 07
+    cfg[BAUD_ADDR + 1] = numberOfBit(&cfg[BAUD_ADDR], 1);
+    cfg[BAUD_ADDR + 2] = numberOfParity(&cfg[BAUD_ADDR], 1);
+    
+    //Write into eeprom    
+    for(i = 0; i < TOP_CFG_ADDR; i++)
+    {
+        eeprom_write_byte(i, cfg[i]);
+    }
+}
+
+
+
+//Read ATtiny826 in case of RN4678 memory corrupt
+void setBluetoothConfiguration(uint8_t *cfg)
+{
+    //Implement set bluetooth value with index here
+    char cmd[25];
+    char _name[16];
+    char _pin[4];
+    char _authValues[] = { '1', '2', '3', '4', };
+    char _blmValues[] = { '0', '1', '2', };
+    char *_baudsValues[] = { BAUD_VAL_115200, BAUD_VAL_57600, BAUD_VAL_38400, BAUD_VAL_28800, BAUD_VAL_19200, BAUD_VAL_14400, BAUD_VAL_9600, BAUD_VAL_4800, BAUD_VAL_2400,  };
+    
+    //Write authentification mode
+    sprintf(cmd, "%s%c\r", SET_AUTH, _authValues[cfg[AUTH_ADDR]]);
+    writeCommand(cmd, 25); //always put max buffer value, it stop with chara \r !
+    _delay_ms(1000);
+    //serialDebug(cmd, 25);
+    //Write bluetooth mode
+    sprintf(cmd, "%s%c\r", SET_BLM, _blmValues[cfg[BLM_ADDR]]);
+    writeCommand(cmd, 25); //always put max buffer value, it stop with chara \r !
+    _delay_ms(1000);
+    //serialDebug(cmd, 25);
+    //Write device name
+    /*serialDebug("Copy : ", 7);
+    serialDebug(&cfg[DEVN_ADDR], 16);
+    serialDebug("\r\n", 2);
+    serialDebug("Name : ", 7);*/
+    strncpy(_name, &ATtiny826_factory_buffer[DEVN_ADDR], 9); //exception here (this region of flash is fixed !)
+    /*serialDebug(_name, 16);
+    serialDebug("\r\n", 2);
+    serialDebug("DEVN : ", 7);
+    serialDebug(SET_DEVN, 3);
+    serialDebug("\r\n", 2);*/
+    
+    //Clear buffer !
+    clearBuffer(cmd, 25);    
+    sprintf(cmd, "%s%s\r", SET_DEVN, _name);
+    writeCommand(cmd, 25); //always put max buffer value, it stop with chara \r !
+    _delay_ms(1000);
+    /*serialDebug("cmd : ", 6);
+    serialDebug(cmd, 25);
+    serialDebug("\r\n", 2);*/
+    //Write pin code
+    strncpy(_pin, &cfg[PINC_ADDR], 4);
+    clearBuffer(cmd, 25);
+    sprintf(cmd, "%s%s\r", SET_PINC, _pin);
+    writeCommand(cmd, 25); //always put max buffer value, it stop with chara \r !
+    _delay_ms(1000);
+    //serialDebug(cmd, 25);
+    //Write baudrate
+    
+    clearBuffer(cmd, 25);
+    sprintf(cmd, "%s%s\r", SET_BAUD, _baudsValues[cfg[BAUD_ADDR]]);
+    writeCommand(cmd, 25); //always put max buffer value, it stop with chara \r !
+    _delay_ms(1000);
+    //serialDebug(cmd, 25);
+}
+
+
+
+//Restore Factory setting in ATtiny826 EEPROM and RN4678 EEPROM
+void restoreFactoryConfiguration(uint8_t *cfg)
+{
+    //Write factory settings inside ATtiny826 EEPROM
+    for(int i = 0; i < sizeof(ATtiny826_factory_buffer); i++)
+    {
+        cfg[i] = ATtiny826_factory_buffer[i];
+        eeprom_write_byte(i, cfg[i]);
+    }
+    setBluetoothConfiguration(cfg); //Once we wrote configuration inside ATtiny EEPROM -> Write it on RN4678 EEPROM
+    //serialDebug("FactoryDone\r\n", 13);
+}
+
+
+
+
+void getEEPROMCfg(uint8_t *cfg)
+{
+    for(uint8_t i = 0; i < TOP_CFG_ADDR; i++)
+    {
+        cfg[i] = eeprom_read_byte(i);
+        _delay_ms(10); //wait a bit when reading eeprom... (so slow :'| )
+    }
+}
+
+
+
+
+
+
+
+
+/////////////////////////////////////////////
+//CRC functions
+uint8_t numberOfParity(uint8_t *p, uint8_t n)
+{
+    uint8_t r = 0;
+    for(int i = 0; i < n; i++)
+    {
+       if(p[i] % 2 == 0)
+        r+=2;
+       else // == 1
+        r++;
+    }
+    return r;
+}
+
+uint8_t numberOfBit(uint8_t *p, uint8_t n)
+{
+    uint8_t r = 0;
+    for(int i = 0; i < n; i++)
+    {
+        for(uint8_t j = 1; j != 0; j <<= 1)
+        {
+            if((j & p[i]) != 0)
+                r++;
+        }
+    }
+    return r;
+}
+/////////////////////////////////////////////
+//MCU commands function
+
+//Method to analyse command
+uint8_t gotMCUCommand(uint8_t *buf, uint8_t *frame, uint8_t n)
+{
+    bool result = true;
+
+    for(int i = 0; i < n; i++)
+    {
+        if((buf[i] != frame[i]))
+        {
+            result = false;
+        }
+    }
+    return result;
+}
+
+
+
+
+
+
+//////////////////////////
+//Analog functions
+
+void adcInit(void)
+{
+    ADC0.CTRLA = ENABLE_BIT; //Enable register
+    ADC0.COMMAND = (ADC_SINGLE_12BIT << 4); //Just use 12 bit resolution (no differential mode)
+    ADC0.CTRLB = ADC_PRESCALER; //divide clock for conversion
+    ADC0.CTRLC = (ADC_TIMEBASE << 3) | ADC_REF; //Set analog reference
+    ADC0.PGACTRL = (ADC_PGA_GAIN << 5) | (ADC_PGA_BIAS << 3) | (ADC_PGA_SMD << 1) | ENABLE_BIT; //set PGA cfg
+    ADC0.CTRLE = 0x80; //Set sample duration (SAMPDUR -> p.407)
+    ADC0.MUXPOS = (ADC_VIA_PGA << 6) | (ADC_MUX_AIN12); //PC0 connected to AIN12
+    ADC0.MUXNEG = (ADC_VIA_DIRECT << 6) | (ADC_MUXN_GND); //Set reference in common mode
+}
+
+uint16_t adcGetSample(void)
+{
+    ADC_START_CONV; //as for a conversion
+    _delay_ms(1); //wait a bit
+    while(!ADC0.STATUS); //Wait when conversion is now complete
+    return ADC_READ; //get stored value
+}
+
+
+void dimmerSetup(void)
+{
+    TCA0.SINGLE.CTRLA = (PWM_DIV << 1) | ENABLE_BIT; //enable register set PWM frequency (datasheet p.209)
+    TCA0.SINGLE.CTRLB = 0x13; //set output frequency in Single-slope PWM
+    TCA0.SINGLE.CTRLD = ENABLE_BIT; //enable split mode
+    TCA0.SINGLE.CMP0 = PWM_RATE; //set duty cycle
+    PORTB.DIR |= PWM_DIMMER_PIN;
+}
+
+
+
+/////////////////
+//Usart functions
+
+void serialDebug(const char *str, uint8_t n)
+{
+    for(int i = 0; i < n; i++)
+    {
+        usart1_write_byte(str[i]);
+        _delay_ms(1);
+    }
+}
+
+void readBuffer(uint8_t *cfg, uint8_t n)
+{
+    uint8_t _counter = 0;
+    _delay_ms(50); //force wait to let buffer filling inside interrutp
+    while(usart0_available() > 0 && _counter < n) //ensure not overflow buffer...
+    {
+        cfg[_counter] = usart0_read_byte(); //now read the stuff
+        _counter++;
+    }
+}
+
+void writeCommand(const uint8_t *buf, uint8_t n)
+{
+    int i = 0;
+    while(i < n)
+    {
+        usart0_write_byte(buf[i]); 
+        //serialDebug("\n\rb: ", 5);
+        //usart1_write_byte(buf[i]);
+        if(buf[i] == '\r') //read before and increment after
+        {
+            i = n; //stop right there
+        }
+        i++;
+        _delay_ms(1); //wait a bit...
+    }
+}
+
+//Write on TX0 buffer
+void usart0_write_byte(uint8_t b)
+{
+    USART0.TXDATAL = b;
+}
+
+//Write on TX1 buffer
+void usart1_write_byte(uint8_t b)
+{
+    USART1.TXDATAL = b;
+}
+
+//Read on RX0 FIFO buffer
+uint8_t usart0_read_byte(void)
+{
+    uint8_t r = USART0_Buffer[0];
+    for(int i = 0; i < USART0_counter-1; i++)
+    {
+        USART0_Buffer[i] = USART0_Buffer[i+1];
+    }
+    USART0_counter--;
+    return r;
+}
+
+//Read on RX1 FIFO buffer
+uint8_t usart1_read_byte(void)
+{
+    uint8_t r = USART1_Buffer[0];
+    for(int i = 0; i < USART1_counter-1; i++)
+    {
+        USART1_Buffer[i] = USART1_Buffer[i+1];
+    }
+    USART1_counter--;
+    return r;
+}
+
+
+//Check RX0 FIFO buffer
+uint8_t usart0_available(void)
+{
+    return USART0_counter;
+}
+
+//Check RX1 FIFO buffer
+uint8_t usart1_available(void)
+{
+    return USART1_counter;
+}
+
+
+
+
+void clearBuffer(uint8_t *p, uint8_t n)
+{
+    for(uint8_t i = 0; i < n; i++)
+    {
+        p[i] = 0;
+    }
+}
+
+
+
+//////////
+//ISR part
+
+//When interrupt is occured (Receive complete flag), read RX buffer and store it into the equivalent software buffer
+
+ISR(USART0_RXC_vect)
+{
+    USART0_Buffer[USART0_counter++] = USART0.RXDATAL; 
+}
+
+
+ISR(USART1_RXC_vect)
+{
+    USART1_Buffer[USART1_counter++] = USART1.RXDATAL;
+}
\ No newline at end of file
diff --git a/Version 2.8/Panel_reader_controller.X/moduleCmds.h b/Version 2.8/Panel_reader_controller.X/moduleCmds.h
new file mode 100644
index 0000000..4aeb87f
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/moduleCmds.h	
@@ -0,0 +1,43 @@
+/* 
+ * File: moduleCmds.h
+ * Author: Enzo Niro
+ * Comments: List of Bluetooth module commands
+ * Revision history: 1.0
+ */
+
+// This is a guard condition so that contents of this file are not included
+// more than once.  
+#ifndef MODULE_CMDS_H
+#define	MODULE_CMDS_H
+
+#include <xc.h> // include processor files - each processor file is guarded.  
+
+
+//Set commands
+#define SET_AUTH        "SA,"
+#define SET_BLM         "SG,"
+#define SET_DEVN        "S-,"
+#define SET_PINC        "SP,"
+#define SET_BAUD        "SU,"
+#define ENTER_SETUP     "$$$\r"
+#define QUIT_SETUP      "---\r"
+
+//get commands
+#define GET_AUTH        "GA\r"
+#define GET_BLM         "GG\r"
+#define GET_DEVN        "GN\r"
+#define GET_PINC        "GP\r"
+#define GET_BAUD        "GU\r"
+
+#define BAUD_VAL_115200     "03"
+#define BAUD_VAL_57600      "04"
+#define BAUD_VAL_38400      "05"
+#define BAUD_VAL_28800      "06"
+#define BAUD_VAL_19200      "07"
+#define BAUD_VAL_14400      "08"
+#define BAUD_VAL_9600       "09"
+#define BAUD_VAL_4800       "0A"
+#define BAUD_VAL_2400       "0B"
+
+#endif	/* MODULE_CMDS_H */
+
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-default.mk b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-default.mk
new file mode 100644
index 0000000..ae34513
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-default.mk	
@@ -0,0 +1,154 @@
+#
+# Generated Makefile - do not edit!
+#
+# Edit the Makefile in the project folder instead (../Makefile). Each target
+# has a -pre and a -post target defined where you can add customized code.
+#
+# This makefile implements configuration specific macros and targets.
+
+
+# Include project Makefile
+ifeq "${IGNORE_LOCAL}" "TRUE"
+# do not include local makefile. User is passing all local related variables already
+else
+include Makefile
+# Include makefile containing local settings
+ifeq "$(wildcard nbproject/Makefile-local-default.mk)" "nbproject/Makefile-local-default.mk"
+include nbproject/Makefile-local-default.mk
+endif
+endif
+
+# Environment
+MKDIR=gnumkdir -p
+RM=rm -f 
+MV=mv 
+CP=cp 
+
+# Macros
+CND_CONF=default
+ifeq ($(TYPE_IMAGE), DEBUG_RUN)
+IMAGE_TYPE=debug
+OUTPUT_SUFFIX=elf
+DEBUGGABLE_SUFFIX=elf
+FINAL_IMAGE=${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
+else
+IMAGE_TYPE=production
+OUTPUT_SUFFIX=hex
+DEBUGGABLE_SUFFIX=elf
+FINAL_IMAGE=${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
+endif
+
+ifeq ($(COMPARE_BUILD), true)
+COMPARISON_BUILD=-mafrlcsj
+else
+COMPARISON_BUILD=
+endif
+
+# Object Directory
+OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE}
+
+# Distribution Directory
+DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE}
+
+# Source Files Quoted if spaced
+SOURCEFILES_QUOTED_IF_SPACED=main.c
+
+# Object Files Quoted if spaced
+OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.o
+POSSIBLE_DEPFILES=${OBJECTDIR}/main.o.d
+
+# Object Files
+OBJECTFILES=${OBJECTDIR}/main.o
+
+# Source Files
+SOURCEFILES=main.c
+
+
+
+CFLAGS=
+ASFLAGS=
+LDLIBSOPTIONS=
+
+############# Tool locations ##########################################
+# If you copy a project from one host to another, the path where the  #
+# compiler is installed may be different.                             #
+# If you open this project with MPLAB X in the new host, this         #
+# makefile will be regenerated and the paths will be corrected.       #
+#######################################################################
+# fixDeps replaces a bunch of sed/cat/printf statements that slow down the build
+FIXDEPS=fixDeps
+
+.build-conf:  ${BUILD_SUBPROJECTS}
+ifneq ($(INFORMATION_MESSAGE), )
+	@echo $(INFORMATION_MESSAGE)
+endif
+	${MAKE}  -f nbproject/Makefile-default.mk ${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}
+
+MP_PROCESSOR_OPTION=ATtiny826
+# ------------------------------------------------------------------------------------
+# Rules for buildStep: compile
+ifeq ($(TYPE_IMAGE), DEBUG_RUN)
+${OBJECTDIR}/main.o: main.c  .generated_files/flags/default/5dd84e98093f7971548bf1431a93e252a220bd51 .generated_files/flags/default/da39a3ee5e6b4b0d3255bfef95601890afd80709
+	@${MKDIR} "${OBJECTDIR}" 
+	@${RM} ${OBJECTDIR}/main.o.d 
+	@${RM} ${OBJECTDIR}/main.o 
+	${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c  -D__DEBUG=1 -g -DDEBUG  -gdwarf-2  -x c -D__$(MP_PROCESSOR_OPTION)__   -mdfp="${DFP_DIR}/xc8"  -Wl,--gc-sections -O1 -ffunction-sections -fdata-sections -fshort-enums -fno-common -funsigned-char -funsigned-bitfields -Wall -DXPRJ_default=$(CND_CONF)  $(COMPARISON_BUILD)  -gdwarf-3 -mno-const-data-in-progmem     -MD -MP -MF "${OBJECTDIR}/main.o.d" -MT "${OBJECTDIR}/main.o.d" -MT ${OBJECTDIR}/main.o -o ${OBJECTDIR}/main.o main.c 
+	
+else
+${OBJECTDIR}/main.o: main.c  .generated_files/flags/default/b96fca17d599584f41492ff66125b9a9a0e64339 .generated_files/flags/default/da39a3ee5e6b4b0d3255bfef95601890afd80709
+	@${MKDIR} "${OBJECTDIR}" 
+	@${RM} ${OBJECTDIR}/main.o.d 
+	@${RM} ${OBJECTDIR}/main.o 
+	${MP_CC} $(MP_EXTRA_CC_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -c  -x c -D__$(MP_PROCESSOR_OPTION)__   -mdfp="${DFP_DIR}/xc8"  -Wl,--gc-sections -O1 -ffunction-sections -fdata-sections -fshort-enums -fno-common -funsigned-char -funsigned-bitfields -Wall -DXPRJ_default=$(CND_CONF)  $(COMPARISON_BUILD)  -gdwarf-3 -mno-const-data-in-progmem     -MD -MP -MF "${OBJECTDIR}/main.o.d" -MT "${OBJECTDIR}/main.o.d" -MT ${OBJECTDIR}/main.o -o ${OBJECTDIR}/main.o main.c 
+	
+endif
+
+# ------------------------------------------------------------------------------------
+# Rules for buildStep: assemble
+ifeq ($(TYPE_IMAGE), DEBUG_RUN)
+else
+endif
+
+# ------------------------------------------------------------------------------------
+# Rules for buildStep: assembleWithPreprocess
+ifeq ($(TYPE_IMAGE), DEBUG_RUN)
+else
+endif
+
+# ------------------------------------------------------------------------------------
+# Rules for buildStep: link
+ifeq ($(TYPE_IMAGE), DEBUG_RUN)
+${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES}  nbproject/Makefile-${CND_CONF}.mk    
+	@${MKDIR} ${DISTDIR} 
+	${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.map  -D__DEBUG=1  -DXPRJ_default=$(CND_CONF)  -Wl,--defsym=__MPLAB_BUILD=1   -mdfp="${DFP_DIR}/xc8"   -gdwarf-2 -Wl,--gc-sections -O1 -ffunction-sections -fdata-sections -fshort-enums -fno-common -funsigned-char -funsigned-bitfields -Wall -gdwarf-3 -mno-const-data-in-progmem     $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX}  -o ${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}  ${OBJECTFILES_QUOTED_IF_SPACED}      -Wl,--start-group  -Wl,-lm -Wl,--end-group  -Wl,--defsym=__MPLAB_DEBUG=1,--defsym=__DEBUG=1
+	@${RM} ${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.hex 
+	
+	
+else
+${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${OUTPUT_SUFFIX}: ${OBJECTFILES}  nbproject/Makefile-${CND_CONF}.mk   
+	@${MKDIR} ${DISTDIR} 
+	${MP_CC} $(MP_EXTRA_LD_PRE) -mcpu=$(MP_PROCESSOR_OPTION) -Wl,-Map=${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.map  -DXPRJ_default=$(CND_CONF)  -Wl,--defsym=__MPLAB_BUILD=1   -mdfp="${DFP_DIR}/xc8"  -Wl,--gc-sections -O1 -ffunction-sections -fdata-sections -fshort-enums -fno-common -funsigned-char -funsigned-bitfields -Wall -gdwarf-3 -mno-const-data-in-progmem     $(COMPARISON_BUILD) -Wl,--memorysummary,${DISTDIR}/memoryfile.xml -o ${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX}  -o ${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX}  ${OBJECTFILES_QUOTED_IF_SPACED}      -Wl,--start-group  -Wl,-lm -Wl,--end-group 
+	${MP_CC_DIR}\\avr-objcopy -O ihex "${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.${DEBUGGABLE_SUFFIX}" "${DISTDIR}/Panel_reader_controller.X.${IMAGE_TYPE}.hex"
+	
+endif
+
+
+# Subprojects
+.build-subprojects:
+
+
+# Subprojects
+.clean-subprojects:
+
+# Clean Targets
+.clean-conf: ${CLEAN_SUBPROJECTS}
+	${RM} -r ${OBJECTDIR}
+	${RM} -r ${DISTDIR}
+
+# Enable dependency checking
+.dep.inc: .depcheck-impl
+
+DEPFILES=$(wildcard ${POSSIBLE_DEPFILES})
+ifneq (${DEPFILES},)
+include ${DEPFILES}
+endif
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-genesis.properties b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-genesis.properties
new file mode 100644
index 0000000..125de13
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-genesis.properties	
@@ -0,0 +1,13 @@
+#
+#Wed Nov 27 14:04:22 CET 2024
+default.languagetoolchain.version=2.46
+default.Pack.dfplocation=C\:\\Program Files\\Microchip\\MPLABX\\v6.20\\packs\\Microchip\\ATtiny_DFP\\3.1.260
+default.com-microchip-mplab-mdbcore-PK5Tool-PK5ToolImpl.md5=8ed9aa4326bfc0c1a849e697826741b7
+conf.ids=default
+default.languagetoolchain.dir=C\:\\Program Files\\Microchip\\xc8\\v2.46\\bin
+host.id=18cy-2f4f-c2
+configurations-xml=41b5237117be80148a31ac28cc37ebef
+com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=f612087c95360c842296d189edfe3321
+default.com-microchip-mplab-nbide-toolchain-xc8-XC8LanguageToolchain.md5=bf89cdcdd6c0a49174fe4b605ef2b42d
+proj.dir=C\:\\Users\\eniro\\MPLABXProjects\\Panel_reader_controller.X
+host.platform=windows
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-impl.mk b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-impl.mk
new file mode 100644
index 0000000..d699e4e
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-impl.mk	
@@ -0,0 +1,69 @@
+#
+# Generated Makefile - do not edit!
+#
+# Edit the Makefile in the project folder instead (../Makefile). Each target
+# has a pre- and a post- target defined where you can add customization code.
+#
+# This makefile implements macros and targets common to all configurations.
+#
+# NOCDDL
+
+
+# Building and Cleaning subprojects are done by default, but can be controlled with the SUB
+# macro. If SUB=no, subprojects will not be built or cleaned. The following macro
+# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf
+# and .clean-reqprojects-conf unless SUB has the value 'no'
+SUB_no=NO
+SUBPROJECTS=${SUB_${SUB}}
+BUILD_SUBPROJECTS_=.build-subprojects
+BUILD_SUBPROJECTS_NO=
+BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}}
+CLEAN_SUBPROJECTS_=.clean-subprojects
+CLEAN_SUBPROJECTS_NO=
+CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}}
+
+
+# Project Name
+PROJECTNAME=Panel_reader_controller.X
+
+# Active Configuration
+DEFAULTCONF=default
+CONF=${DEFAULTCONF}
+
+# All Configurations
+ALLCONFS=default 
+
+
+# build
+.build-impl: .build-pre
+	${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-conf
+
+
+# clean
+.clean-impl: .clean-pre
+	${MAKE} -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .clean-conf
+
+# clobber
+.clobber-impl: .clobber-pre .depcheck-impl
+	    ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default clean
+
+
+
+# all
+.all-impl: .all-pre .depcheck-impl
+	    ${MAKE} SUBPROJECTS=${SUBPROJECTS} CONF=default build
+
+
+
+# dependency checking support
+.depcheck-impl:
+#	@echo "# This code depends on make tool being used" >.dep.inc
+#	@if [ -n "${MAKE_VERSION}" ]; then \
+#	    echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \
+#	    echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \
+#	    echo "include \$${DEPFILES}" >>.dep.inc; \
+#	    echo "endif" >>.dep.inc; \
+#	else \
+#	    echo ".KEEP_STATE:" >>.dep.inc; \
+#	    echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \
+#	fi
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-local-default.mk b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-local-default.mk
new file mode 100644
index 0000000..6988143
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-local-default.mk	
@@ -0,0 +1,37 @@
+#
+# Generated Makefile - do not edit!
+#
+#
+# This file contains information about the location of compilers and other tools.
+# If you commmit this file into your revision control server, you will be able to 
+# to checkout the project and build it from the command line with make. However,
+# if more than one person works on the same project, then this file might show
+# conflicts since different users are bound to have compilers in different places.
+# In that case you might choose to not commit this file and let MPLAB X recreate this file
+# for each user. The disadvantage of not commiting this file is that you must run MPLAB X at
+# least once so the file gets created and the project can be built. Finally, you can also
+# avoid using this file at all if you are only building from the command line with make.
+# You can invoke make with the values of the macros:
+# $ makeMP_CC="/opt/microchip/mplabc30/v3.30c/bin/pic30-gcc" ...  
+#
+SHELL=cmd.exe
+PATH_TO_IDE_BIN=C:/Program Files/Microchip/MPLABX/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/
+# Adding MPLAB X bin directory to path.
+PATH:=C:/Program Files/Microchip/MPLABX/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/:$(PATH)
+# Path to java used to run MPLAB X when this makefile was created
+MP_JAVA_PATH="C:\Program Files\Microchip\MPLABX\v6.20\sys\java\zulu8.64.0.19-ca-fx-jre8.0.345-win_x64/bin/"
+OS_CURRENT="$(shell uname -s)"
+MP_CC="C:\Program Files\Microchip\xc8\v2.46\bin\xc8-cc.exe"
+# MP_CPPC is not defined
+# MP_BC is not defined
+MP_AS="C:\Program Files\Microchip\xc8\v2.46\bin\xc8-cc.exe"
+MP_LD="C:\Program Files\Microchip\xc8\v2.46\bin\xc8-cc.exe"
+MP_AR="C:\Program Files\Microchip\xc8\v2.46\bin\xc8-ar.exe"
+DEP_GEN=${MP_JAVA_PATH}java -jar "C:/Program Files/Microchip/MPLABX/v6.20/mplab_platform/platform/../mplab_ide/modules/../../bin/extractobjectdependencies.jar"
+MP_CC_DIR="C:\Program Files\Microchip\xc8\v2.46\bin"
+# MP_CPPC_DIR is not defined
+# MP_BC_DIR is not defined
+MP_AS_DIR="C:\Program Files\Microchip\xc8\v2.46\bin"
+MP_LD_DIR="C:\Program Files\Microchip\xc8\v2.46\bin"
+MP_AR_DIR="C:\Program Files\Microchip\xc8\v2.46\bin"
+DFP_DIR=C:/Program Files/Microchip/MPLABX/v6.20/packs/Microchip/ATtiny_DFP/3.1.260
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-variables.mk b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-variables.mk
new file mode 100644
index 0000000..bcd96f6
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/Makefile-variables.mk	
@@ -0,0 +1,10 @@
+#
+# Generated - do not edit!
+#
+# NOCDDL
+#
+CND_BASEDIR=`pwd`
+# default configuration
+CND_ARTIFACT_DIR_default=dist/default/production
+CND_ARTIFACT_NAME_default=Panel_reader_controller.X.production.hex
+CND_ARTIFACT_PATH_default=dist/default/production/Panel_reader_controller.X.production.hex
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/configurations.xml b/Version 2.8/Panel_reader_controller.X/nbproject/configurations.xml
new file mode 100644
index 0000000..b99ac80
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/configurations.xml	
@@ -0,0 +1,304 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configurationDescriptor version="65">
+  <logicalFolder name="root" displayName="root" projectFiles="true">
+    <logicalFolder name="HeaderFiles"
+                   displayName="Header Files"
+                   projectFiles="true">
+      <itemPath>pins.h</itemPath>
+      <itemPath>defValues.h</itemPath>
+      <itemPath>configuration.h</itemPath>
+      <itemPath>factory.h</itemPath>
+      <itemPath>moduleCmds.h</itemPath>
+    </logicalFolder>
+    <logicalFolder name="ExternalFiles"
+                   displayName="Important Files"
+                   projectFiles="true">
+      <itemPath>Makefile</itemPath>
+    </logicalFolder>
+    <logicalFolder name="LinkerScript"
+                   displayName="Linker Files"
+                   projectFiles="true">
+    </logicalFolder>
+    <logicalFolder name="SourceFiles"
+                   displayName="Source Files"
+                   projectFiles="true">
+      <itemPath>main.c</itemPath>
+    </logicalFolder>
+  </logicalFolder>
+  <projectmakefile>Makefile</projectmakefile>
+  <confs>
+    <conf name="default" type="2">
+      <toolsSet>
+        <developmentServer>localhost</developmentServer>
+        <targetDevice>ATtiny826</targetDevice>
+        <targetHeader></targetHeader>
+        <targetPluginBoard></targetPluginBoard>
+        <platformTool>PK5Tool</platformTool>
+        <languageToolchain>XC8</languageToolchain>
+        <languageToolchainVersion>2.46</languageToolchainVersion>
+        <platform>3</platform>
+      </toolsSet>
+      <packs>
+        <pack name="ATtiny_DFP" vendor="Microchip" version="3.1.260"/>
+      </packs>
+      <ScriptingSettings>
+      </ScriptingSettings>
+      <compileType>
+        <linkerTool>
+          <linkerLibItems>
+          </linkerLibItems>
+        </linkerTool>
+        <archiverTool>
+        </archiverTool>
+        <loading>
+          <useAlternateLoadableFile>false</useAlternateLoadableFile>
+          <parseOnProdLoad>false</parseOnProdLoad>
+          <alternateLoadableFile></alternateLoadableFile>
+        </loading>
+        <subordinates>
+        </subordinates>
+      </compileType>
+      <makeCustomizationType>
+        <makeCustomizationPreStepEnabled>false</makeCustomizationPreStepEnabled>
+        <makeUseCleanTarget>false</makeUseCleanTarget>
+        <makeCustomizationPreStep></makeCustomizationPreStep>
+        <makeCustomizationPostStepEnabled>false</makeCustomizationPostStepEnabled>
+        <makeCustomizationPostStep></makeCustomizationPostStep>
+        <makeCustomizationPutChecksumInUserID>false</makeCustomizationPutChecksumInUserID>
+        <makeCustomizationEnableLongLines>false</makeCustomizationEnableLongLines>
+        <makeCustomizationNormalizeHexFile>false</makeCustomizationNormalizeHexFile>
+      </makeCustomizationType>
+      <HI-TECH-COMP>
+        <property key="additional-warnings" value="true"/>
+        <property key="asmlist" value="true"/>
+        <property key="call-prologues" value="false"/>
+        <property key="default-bitfield-type" value="true"/>
+        <property key="default-char-type" value="true"/>
+        <property key="define-macros" value=""/>
+        <property key="disable-optimizations" value="false"/>
+        <property key="extra-include-directories" value=""/>
+        <property key="favor-optimization-for" value="-speed,+space"/>
+        <property key="garbage-collect-data" value="true"/>
+        <property key="garbage-collect-functions" value="true"/>
+        <property key="identifier-length" value="255"/>
+        <property key="local-generation" value="false"/>
+        <property key="operation-mode" value="free"/>
+        <property key="opt-xc8-compiler-strict_ansi" value="false"/>
+        <property key="optimization-assembler" value="true"/>
+        <property key="optimization-assembler-files" value="true"/>
+        <property key="optimization-debug" value="false"/>
+        <property key="optimization-invariant-enable" value="false"/>
+        <property key="optimization-invariant-value" value="16"/>
+        <property key="optimization-level" value="-O1"/>
+        <property key="optimization-speed" value="false"/>
+        <property key="optimization-stable-enable" value="false"/>
+        <property key="preprocess-assembler" value="true"/>
+        <property key="short-enums" value="true"/>
+        <property key="tentative-definitions" value="-fno-common"/>
+        <property key="undefine-macros" value=""/>
+        <property key="use-cci" value="false"/>
+        <property key="use-iar" value="false"/>
+        <property key="verbose" value="false"/>
+        <property key="warning-level" value="-3"/>
+        <property key="what-to-do" value="ignore"/>
+      </HI-TECH-COMP>
+      <HI-TECH-LINK>
+        <property key="additional-options-checksum" value=""/>
+        <property key="additional-options-checksumAVR" value=""/>
+        <property key="additional-options-code-offset" value=""/>
+        <property key="additional-options-command-line" value=""/>
+        <property key="additional-options-errata" value=""/>
+        <property key="additional-options-extend-address" value="false"/>
+        <property key="additional-options-trace-type" value=""/>
+        <property key="additional-options-use-response-files" value="false"/>
+        <property key="backup-reset-condition-flags" value="false"/>
+        <property key="calibrate-oscillator" value="false"/>
+        <property key="calibrate-oscillator-value" value="0x3400"/>
+        <property key="clear-bss" value="true"/>
+        <property key="code-model-external" value="wordwrite"/>
+        <property key="code-model-rom" value=""/>
+        <property key="create-html-files" value="false"/>
+        <property key="data-model-ram" value=""/>
+        <property key="data-model-size-of-double" value="24"/>
+        <property key="data-model-size-of-double-gcc" value="no-short-double"/>
+        <property key="data-model-size-of-float" value="24"/>
+        <property key="data-model-size-of-float-gcc" value="no-short-float"/>
+        <property key="display-class-usage" value="false"/>
+        <property key="display-hex-usage" value="false"/>
+        <property key="display-overall-usage" value="true"/>
+        <property key="display-psect-usage" value="false"/>
+        <property key="extra-lib-directories" value=""/>
+        <property key="fill-flash-options-addr" value=""/>
+        <property key="fill-flash-options-const" value=""/>
+        <property key="fill-flash-options-how" value="0"/>
+        <property key="fill-flash-options-inc-const" value="1"/>
+        <property key="fill-flash-options-increment" value=""/>
+        <property key="fill-flash-options-seq" value=""/>
+        <property key="fill-flash-options-what" value="0"/>
+        <property key="format-hex-file-for-download" value="false"/>
+        <property key="initialize-data" value="true"/>
+        <property key="input-libraries" value="libm"/>
+        <property key="keep-generated-startup.as" value="false"/>
+        <property key="link-in-c-library" value="true"/>
+        <property key="link-in-c-library-gcc" value=""/>
+        <property key="link-in-peripheral-library" value="false"/>
+        <property key="managed-stack" value="false"/>
+        <property key="opt-xc8-linker-file" value="false"/>
+        <property key="opt-xc8-linker-link_startup" value="false"/>
+        <property key="opt-xc8-linker-serial" value=""/>
+        <property key="program-the-device-with-default-config-words" value="false"/>
+        <property key="remove-unused-sections" value="true"/>
+      </HI-TECH-LINK>
+      <PK5Tool>
+        <property key="AutoSelectMemRanges" value="auto"/>
+        <property key="SecureSegment.SegmentProgramming" value="FullChipProgramming"/>
+        <property key="ToolFirmwareFilePath"
+                  value="Press to browse for a specific firmware version"/>
+        <property key="ToolFirmwareOption.UpdateOptions"
+                  value="ToolFirmwareOption.UseLatest"/>
+        <property key="ToolFirmwareToolPack"
+                  value="Press to select which tool pack to use"/>
+        <property key="communication.activationmode" value="nohv"/>
+        <property key="communication.interface" value="updi"/>
+        <property key="communication.interface.jtag" value="2wire"/>
+        <property key="communication.speed" value="0,500"/>
+        <property key="debugoptions.debug-startup" value="Use system settings"/>
+        <property key="debugoptions.reset-behaviour" value="Use system settings"/>
+        <property key="debugoptions.useswbreakpoints" value="true"/>
+        <property key="event.recorder.debugger.behavior" value="Running"/>
+        <property key="event.recorder.enabled" value="false"/>
+        <property key="event.recorder.scvd.files" value=""/>
+        <property key="hwtoolclock.frcindebug" value="false"/>
+        <property key="lastid" value=""/>
+        <property key="memories.aux" value="false"/>
+        <property key="memories.bootflash" value="true"/>
+        <property key="memories.configurationmemory" value="true"/>
+        <property key="memories.configurationmemory2" value="true"/>
+        <property key="memories.dataflash" value="true"/>
+        <property key="memories.eeprom" value="true"/>
+        <property key="memories.exclude.configurationmemory" value="true"/>
+        <property key="memories.flashdata" value="true"/>
+        <property key="memories.id" value="true"/>
+        <property key="memories.instruction.ram.ranges"
+                  value="${memories.instruction.ram.ranges}"/>
+        <property key="memories.programmemory" value="true"/>
+        <property key="memories.programmemory.ranges" value="0-fff"/>
+        <property key="poweroptions.powerenable" value="false"/>
+        <property key="programmerToGoImageName" value="Panel_reader_controller_ptg"/>
+        <property key="programoptions.donoteraseauxmem" value="false"/>
+        <property key="programoptions.eraseb4program" value="true"/>
+        <property key="programoptions.ledbrightness" value="5"/>
+        <property key="programoptions.pgcconfig" value="pull down"/>
+        <property key="programoptions.pgcresistor.value" value="4.7"/>
+        <property key="programoptions.pgdconfig" value="pull down"/>
+        <property key="programoptions.pgdresistor.value" value="4.7"/>
+        <property key="programoptions.pgmentry.voltage" value="low"/>
+        <property key="programoptions.pgmspeed" value="Med"/>
+        <property key="programoptions.preservedataflash" value="false"/>
+        <property key="programoptions.preserveeeprom" value="true"/>
+        <property key="programoptions.preserveeeprom.ranges" value="1400-147f"/>
+        <property key="programoptions.preserveprogram.ranges" value=""/>
+        <property key="programoptions.preserveprogramrange" value="false"/>
+        <property key="programoptions.preserveuserid" value="false"/>
+        <property key="programoptions.program.otpconfig" value="false"/>
+        <property key="programoptions.programcalmem" value="false"/>
+        <property key="programoptions.programuserotp" value="false"/>
+        <property key="programoptions.smart.program" value="When debugging only"/>
+        <property key="programoptions.testmodeentrymethod" value="VDDFirst"/>
+        <property key="ptgProgramImage" value="true"/>
+        <property key="ptgSendImage" value="true"/>
+        <property key="toolpack.updateoptions"
+                  value="toolpack.updateoptions.uselatestoolpack"/>
+        <property key="toolpack.updateoptions.packversion"
+                  value="Press to select which tool pack to use"/>
+        <property key="voltagevalue" value="5.0"/>
+      </PK5Tool>
+      <Tool>
+        <property key="AutoSelectMemRanges" value="auto"/>
+        <property key="SecureSegment.SegmentProgramming" value="FullChipProgramming"/>
+        <property key="ToolFirmwareFilePath"
+                  value="Press to browse for a specific firmware version"/>
+        <property key="ToolFirmwareOption.UpdateOptions"
+                  value="ToolFirmwareOption.UseLatest"/>
+        <property key="ToolFirmwareToolPack"
+                  value="Press to select which tool pack to use"/>
+        <property key="communication.activationmode" value="nohv"/>
+        <property key="communication.interface" value="updi"/>
+        <property key="communication.interface.jtag" value="2wire"/>
+        <property key="communication.speed" value="0,500"/>
+        <property key="debugoptions.debug-startup" value="Use system settings"/>
+        <property key="debugoptions.reset-behaviour" value="Use system settings"/>
+        <property key="debugoptions.useswbreakpoints" value="true"/>
+        <property key="event.recorder.debugger.behavior" value="Running"/>
+        <property key="event.recorder.enabled" value="false"/>
+        <property key="event.recorder.scvd.files" value=""/>
+        <property key="hwtoolclock.frcindebug" value="false"/>
+        <property key="lastid" value=""/>
+        <property key="memories.aux" value="false"/>
+        <property key="memories.bootflash" value="true"/>
+        <property key="memories.configurationmemory" value="true"/>
+        <property key="memories.configurationmemory2" value="true"/>
+        <property key="memories.dataflash" value="true"/>
+        <property key="memories.eeprom" value="true"/>
+        <property key="memories.exclude.configurationmemory" value="true"/>
+        <property key="memories.flashdata" value="true"/>
+        <property key="memories.id" value="true"/>
+        <property key="memories.instruction.ram.ranges"
+                  value="${memories.instruction.ram.ranges}"/>
+        <property key="memories.programmemory" value="true"/>
+        <property key="memories.programmemory.ranges" value="0-fff"/>
+        <property key="poweroptions.powerenable" value="false"/>
+        <property key="programmerToGoImageName" value="Panel_reader_controller_ptg"/>
+        <property key="programoptions.donoteraseauxmem" value="false"/>
+        <property key="programoptions.eraseb4program" value="true"/>
+        <property key="programoptions.ledbrightness" value="5"/>
+        <property key="programoptions.pgcconfig" value="pull down"/>
+        <property key="programoptions.pgcresistor.value" value="4.7"/>
+        <property key="programoptions.pgdconfig" value="pull down"/>
+        <property key="programoptions.pgdresistor.value" value="4.7"/>
+        <property key="programoptions.pgmentry.voltage" value="low"/>
+        <property key="programoptions.pgmspeed" value="Med"/>
+        <property key="programoptions.preservedataflash" value="false"/>
+        <property key="programoptions.preserveeeprom" value="true"/>
+        <property key="programoptions.preserveeeprom.ranges" value="1400-147f"/>
+        <property key="programoptions.preserveprogram.ranges" value=""/>
+        <property key="programoptions.preserveprogramrange" value="false"/>
+        <property key="programoptions.preserveuserid" value="false"/>
+        <property key="programoptions.program.otpconfig" value="false"/>
+        <property key="programoptions.programcalmem" value="false"/>
+        <property key="programoptions.programuserotp" value="false"/>
+        <property key="programoptions.smart.program" value="When debugging only"/>
+        <property key="programoptions.testmodeentrymethod" value="VDDFirst"/>
+        <property key="ptgProgramImage" value="true"/>
+        <property key="ptgSendImage" value="true"/>
+        <property key="toolpack.updateoptions"
+                  value="toolpack.updateoptions.uselatestoolpack"/>
+        <property key="toolpack.updateoptions.packversion"
+                  value="Press to select which tool pack to use"/>
+        <property key="voltagevalue" value="5.0"/>
+      </Tool>
+      <XC8-CO>
+        <property key="coverage-enable" value=""/>
+        <property key="stack-guidance" value="false"/>
+      </XC8-CO>
+      <XC8-config-global>
+        <property key="advanced-elf" value="true"/>
+        <property key="constdata-progmem" value="false"/>
+        <property key="gcc-opt-driver-new" value="true"/>
+        <property key="gcc-opt-std" value="-std=c99"/>
+        <property key="gcc-output-file-format" value="dwarf-3"/>
+        <property key="mapped-progmem" value="false"/>
+        <property key="omit-pack-options" value="false"/>
+        <property key="omit-pack-options-new" value="1"/>
+        <property key="output-file-format" value="-mcof,+elf"/>
+        <property key="smart-io-format" value=""/>
+        <property key="stack-size-high" value="auto"/>
+        <property key="stack-size-low" value="auto"/>
+        <property key="stack-size-main" value="auto"/>
+        <property key="stack-type" value="compiled"/>
+        <property key="user-pack-device-support" value=""/>
+        <property key="wpo-lto" value="false"/>
+      </XC8-config-global>
+    </conf>
+  </confs>
+</configurationDescriptor>
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/private/SuppressibleMessageMemo.properties b/Version 2.8/Panel_reader_controller.X/nbproject/private/SuppressibleMessageMemo.properties
new file mode 100644
index 0000000..c31051e
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/private/SuppressibleMessageMemo.properties	
@@ -0,0 +1,3 @@
+#
+#Thu Nov 21 08:28:24 CET 2024
+mdbDebugger/SOFTWARE_BREAK_POINT_PREFERENCE=true
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/private/configurations.xml b/Version 2.8/Panel_reader_controller.X/nbproject/private/configurations.xml
new file mode 100644
index 0000000..bd3c2c8
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/private/configurations.xml	
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configurationDescriptor version="65">
+  <projectmakefile>Makefile</projectmakefile>
+  <defaultConf>0</defaultConf>
+  <confs>
+    <conf name="default" type="2">
+      <platformToolSN>:=MPLABComm-USB-Microchip:=&lt;vid>04D8:=&lt;pid>9036:=&lt;rev>0100:=&lt;man>?:=&lt;prod>?:=&lt;sn>020026702RYN001776:=&lt;drv>x:=&lt;xpt>b:=end</platformToolSN>
+      <languageToolchainDir>C:\Program Files\Microchip\xc8\v2.46\bin</languageToolchainDir>
+      <mdbdebugger version="1">
+        <placeholder1>place holder 1</placeholder1>
+        <placeholder2>place holder 2</placeholder2>
+      </mdbdebugger>
+      <runprofile version="6">
+        <args></args>
+        <rundir></rundir>
+        <buildfirst>true</buildfirst>
+        <console-type>0</console-type>
+        <terminal-type>0</terminal-type>
+        <remove-instrumentation>0</remove-instrumentation>
+        <environment>
+        </environment>
+      </runprofile>
+    </conf>
+  </confs>
+</configurationDescriptor>
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/private/private.xml b/Version 2.8/Panel_reader_controller.X/nbproject/private/private.xml
new file mode 100644
index 0000000..4ab7bb3
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/private/private.xml	
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project-private xmlns="http://www.netbeans.org/ns/project-private/1">
+    <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>
+    <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/2">
+        <group>
+            <file>file:/C:/Users/eniro/MPLABXProjects/Panel_reader_controller.X/moduleCmds.h</file>
+            <file>file:/C:/Users/eniro/MPLABXProjects/Panel_reader_controller.X/main.c</file>
+            <file>file:/C:/Users/eniro/MPLABXProjects/Panel_reader_controller.X/defValues.h</file>
+            <file>file:/C:/Users/eniro/MPLABXProjects/Panel_reader_controller.X/pins.h</file>
+            <file>file:/C:/Users/eniro/MPLABXProjects/Panel_reader_controller.X/configuration.h</file>
+            <file>file:/C:/Users/eniro/MPLABXProjects/Panel_reader_controller.X/factory.h</file>
+        </group>
+    </open-files>
+</project-private>
diff --git a/Version 2.8/Panel_reader_controller.X/nbproject/project.xml b/Version 2.8/Panel_reader_controller.X/nbproject/project.xml
new file mode 100644
index 0000000..e8246b7
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/nbproject/project.xml	
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://www.netbeans.org/ns/project/1">
+    <type>com.microchip.mplab.nbide.embedded.makeproject</type>
+    <configuration>
+        <data xmlns="http://www.netbeans.org/ns/make-project/1">
+            <name>Panel_reader_controller</name>
+            <creation-uuid>ba41374f-bb39-40ca-a2ff-584cb265d591</creation-uuid>
+            <make-project-type>0</make-project-type>
+            <sourceEncoding>ISO-8859-1</sourceEncoding>
+            <make-dep-projects/>
+            <sourceRootList/>
+            <confList>
+                <confElem>
+                    <name>default</name>
+                    <type>2</type>
+                </confElem>
+            </confList>
+            <formatting>
+                <project-formatting-style>false</project-formatting-style>
+            </formatting>
+        </data>
+    </configuration>
+</project>
diff --git a/Version 2.8/Panel_reader_controller.X/pins.h b/Version 2.8/Panel_reader_controller.X/pins.h
new file mode 100644
index 0000000..087f4e8
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/pins.h	
@@ -0,0 +1,61 @@
+/* Microchip Technology Inc. and its subsidiaries.  You may use this software 
+ * and any derivatives exclusively with Microchip products. 
+ * 
+ * THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS".  NO WARRANTIES, WHETHER 
+ * EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE, INCLUDING ANY IMPLIED 
+ * WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A 
+ * PARTICULAR PURPOSE, OR ITS INTERACTION WITH MICROCHIP PRODUCTS, COMBINATION 
+ * WITH ANY OTHER PRODUCTS, OR USE IN ANY APPLICATION. 
+ *
+ * IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, 
+ * INCIDENTAL OR CONSEQUENTIAL LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND 
+ * WHATSOEVER RELATED TO THE SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS 
+ * BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE.  TO THE 
+ * FULLEST EXTENT ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS 
+ * IN ANY WAY RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF 
+ * ANY, THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
+ *
+ * MICROCHIP PROVIDES THIS SOFTWARE CONDITIONALLY UPON YOUR ACCEPTANCE OF THESE 
+ * TERMS. 
+ */
+
+/* 
+ * File:   pins.h
+ * Author: Enzo Niro
+ * Comments: Pins listing
+ * Revision history: 1.0
+ */
+
+// This is a guard condition so that contents of this file are not included
+// more than once.  
+#ifndef APP_PINS_DEFENITIONS
+#define	APP_PINS_DEFENITIONS
+
+#include <xc.h> // include processor files - each processor file is guarded.  
+
+
+//Port A
+#define TX2_PIN                     0x02
+#define RX2_PIN                     0x04
+#define STAT2_PIN                   0x10
+#define STAT1_PIN                   0x20
+#define STAT_RX_PIN                 0x40
+#define BOOT_BL_PIN                 0x80
+
+
+//Port B
+#define PWM_DIMMER_PIN              0x01
+#define STATUS_POWER_PIN            0x02
+#define TX1_PIN                     0x04
+#define RX1_PIN                     0x08
+#define STATUS_CONNECTED_PIN        0x10
+#define STATUS_DATA_PIN             0x20
+
+
+//Port C
+#define ADC_BAT                     0x01
+#define SECTOR_PIN                  0x02
+
+
+#endif	/* XC_HEADER_TEMPLATE_H */
+
diff --git a/Version 2.8/Panel_reader_controller.X/queuelogs/debugtool.txt b/Version 2.8/Panel_reader_controller.X/queuelogs/debugtool.txt
new file mode 100644
index 0000000..c50b82c
--- /dev/null
+++ b/Version 2.8/Panel_reader_controller.X/queuelogs/debugtool.txt	
@@ -0,0 +1,901 @@
+739 1737359307955 GEN4_CONNECT_DIAGNOSTICS:MPLABCommTool is null
+
+739 1737359307955 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:GetFirmwareInfo
+739 1737359307955 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+739 1737359307955 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 null
+739 1737359307955 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+739 1737359307957 XXXX 1737359307957, Thread 739: com.Send returned false 
+739 1737359307959 XXXX 1737359307959, Thread 739: execCommand: exception after writeSideChanel null 
+739 1737359307959 GEN4_CONNECT_DIAGNOSTICS:Removing plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@6304909e
+739 1737359307959 GEN4_CONNECT_DIAGNOSTICS:Begin PlugNPlayObservers list dump:
+739 1737359307959 GEN4_CONNECT_DIAGNOSTICS:End PlugNPlayObservers list dump:
+739 1737359308009 GEN4_CONNECT_DIAGNOSTICS:Calling RIDbgToolCom.Disconnect
+739 1737359308009 GEN4_CONNECT_DIAGNOSTICS:Calling MPLABCommTool.Detach to remove tool from plug and play list
+739 1737359308009 GEN4_CONNECT_DIAGNOSTICS:Calling RIDbgToolCom.DisconnectFromMPlabComm
+739 1737359308009 GEN4_CONNECT_DIAGNOSTICS:Calling MPLABCommTool.Disconnect
+752 1737359328147 GEN4_CONNECT_DIAGNOSTICS:MPLABCommTool is NOT null
+752 1737359328147 GEN4_CONNECT_DIAGNOSTICS:AttachedToolPID = 9036, AttachedToolVID = 4d8
+752 1737359328147 GEN4_CONNECT_DIAGNOSTICS:transport type = USB
+752 1737359328147 GEN4_CONNECT_DIAGNOSTICS:AttachedToolPID = 9036, AttachedToolVID = 4d8
+752 1737359328163 com.microchip.mplab.mdbcore.RealICETool.RIDbgToolCom
+752 1737359328163 GEN4_CONNECT_DIAGNOSTICS:Before MPLABCommTool.Connect()
+752 1737359328175 GEN4_CONNECT_DIAGNOSTICS:After MPLABCommTool.Connect()
+752 1737359328175 GEN4_CONNECT_DIAGNOSTICS:MPLABCommTool.Connect() returned MPLABCOMM_NO_ERROR
+752 1737359328175 GEN4_CONNECT_DIAGNOSTICS:Attaching to MPLABCommTool plugnplay
+752 1737359328175 GEN4_CONNECT_DIAGNOSTICS:Adding new plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@1724aa03
+752 1737359328175 GEN4_CONNECT_DIAGNOSTICS:Begin PlugNPlayObservers list dump:
+752 1737359328175 GEN4_CONNECT_DIAGNOSTICS:com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@1724aa03
+752 1737359328175 GEN4_CONNECT_DIAGNOSTICS:End PlugNPlayObservers list dump:
+752 1737359328175 GEN4_CONNECT_DIAGNOSTICS:Registering for alternate PNP notifications. CommPnPCriteria.cPIDList = [9035], CommPnPCriteria.cSerialNumber = 020026702ryn001776
+
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:init
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: Values:
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: pcAddress = 7fffffffffffffff, Vpp = 5,00, useRowEraseIfVoltageIsLow = false, voltageBelowWhichUseRowErase = 0,00, deviceName = ATtiny826, programmerType = AVR
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: MemInfo values:
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = ffff, exists = true, startAddr = 00000000, endAddr = 00001fff, rowSize = 0040, rowEraseSize = 0040, addrInc = 0001, widthProgram = 0001
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 00ff, exists = true, startAddr = 00821280, endAddr = 0083128a, rowSize = 0001, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 00ff, exists = true, startAddr = 00001400, endAddr = 0000147f, rowSize = 0020, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 00ff, exists = true, startAddr = 00001300, endAddr = 0000131f, rowSize = 0020, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0040, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 7fffffff, exists = true, startAddr = 00001100, endAddr = 0000113f, rowSize = 0001, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: CfgRequiredBitsMask Values:
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001100, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001101, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001102, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001103, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001104, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001105, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001106, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001107, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001108, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001109, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000110a, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000110b, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000110c, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001118, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001119, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000111a, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000111b, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001120, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001121, Mask = 00000000
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821280, Mask = 000000ff
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821281, Mask = 000000ff
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821282, Mask = 00000083
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821285, Mask = 000000dd
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821286, Mask = 00000007
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821287, Mask = 000000ff
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821288, Mask = 000000ff
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0083128a, Mask = 000000ff
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 BasicInfo: Values:
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 BasicInfo: InputStream = com.microchip.mplab.libs.toolpacksupport.EquatableFileInputStream@cc306916, ToolFlavor = PIC32C
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:init
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 none
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4DebugInterface
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.RI4DebugInterfaceImpl@8c4eabf
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4ProgramInterface
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.RI4ProgramInterfaceImpl@3cffdbdf
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4ConnectInterface
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.PK4ToolsController.PK4ConnectInterfaceImpl@eb90af1
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4ControllerDiagnosticsInterface
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.RI4ControllerDiagnosticsInterfaceImpl@56bc9852
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 ProgrammerToGo
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.ProgrammerToGoImpl@79020128
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Status
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 null
+752 1737359328194 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:EstablishCommunincations
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@13c0e70f
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:EstablishCommunincations
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 true
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:GetFirmwareInfo
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 null
+752 1737359328227 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+752 1737359328234 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:GetFirmwareInfo
+752 1737359328234 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+752 1737359328234 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: Values:
+752 1737359328234 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.01.38, fpgaVer = ff.ff.ff, scriptVer = 00.06.71, macAddress = 0504883548174844849485151485150, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN001776, appCommitID = null, scriptCommitID = 74cdf38a4d, PCB_ID = 2
+752 1737359328234 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+752 1737359328234 XXXX 1737359328234, Thread 752: XXXX 1737359328234, Entering Thread 752: Commands::runScriptWithUpload with script contents. contents[0] = 0x5e, ...  
+752 1737359328234 XXXX 1737359328234, Thread 752: XXXX 1737359328234, Entering Thread 752: ToolCommUsb::readTransfer, sideData is 0xd bytes long, transferDataLength is 0x4 bytes long  
+752 1737359328237 XXXX 1737359328237, Thread 752: XXXX 1737359328237, Exiting Thread 752: ToolCommUsb::readTransfer,  cr.status = 0x0  
+752 1737359328237 XXXX 1737359328237, Thread 752: XXXX 1737359328237, Exiting Thread 752: Commands::runScriptWithUpload  
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.ConnectionHandler.CheckForFWUpdates()
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:Created FirmwareUpdateHandler com.microchip.mplab.mdbcore.PK5Tool.PK5FirmwareUpdateHandler@3b611cf4
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.GetUpdateInfo()
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:Parsing file  for firmware updates
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.ri4ParseSelectedVersionsFromJamFile()
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:Jame file line = app.hex,020138
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:Jame file line = boot.hex,000010
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:Jame file line = scripts.xml,000671
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:Selected firmware version for Boot = 00.00.10
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:Selected firmware version for ap = 02.01.38
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.ri4ParseSelectedVersionsFromJamFile()
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.GetUpdateInfo()
+752 1737359328237 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.updateRI4ToolsFirmware(FirmwareInfo, UpdateMessage)
+752 1737359328271 GEN4_CONNECT_DIAGNOSTICS:appNeedsUpdate returned false
+752 1737359328271 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.updateRI4ToolsFirmware(FirmwareInfo, UpdateMessage)
+752 1737359328271 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.ConnectionHandler.CheckForFWUpdates()
+
+752 1737359328271 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetPowerInfo
+752 1737359328271 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+752 1737359328271 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: Values:
+752 1737359328271 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: shotDownSystem = false, isToolPower = false, voltage = 5,000000, useVppFirst = false, useLowVoltageProgramming = true, useMaintainActivePower = false
+752 1737359328271 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+752 1737359328271 XXXX 1737359328271, Thread 752: XXXX 1737359328271, Entering Thread 752: Commands::runScriptBasic with script contents. contents[0] = 0x39, ...  
+752 1737359328272 XXXX 1737359328272, Thread 752: XXXX 1737359328272, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359328272 XXXX 1737359328272, Thread 752: XXXX 1737359328272, Entering Thread 752: Commands::runScriptBasic with script contents. contents[0] = 0x46, ...  
+752 1737359328273 XXXX 1737359328273, Thread 752: XXXX 1737359328273, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359328273 XXXX 1737359328273, Thread 752: XXXX 1737359328273, Entering Thread 752: Commands::runScriptBasic with script contents. contents[0] = 0x44, ...  
+752 1737359328286 XXXX 1737359328286, Thread 752: XXXX 1737359328286, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359328286 XXXX 1737359328286, Thread 752: XXXX 1737359328286, Entering Thread 752: Commands::runScriptBasic with script contents. contents[0] = 0xef, ...  
+752 1737359328296 XXXX 1737359328296, Thread 752: XXXX 1737359328296, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359328296 XXXX 1737359328296, Thread 752: XXXX 1737359328296, Entering Thread 752: Commands::runScriptBasic with script contents. contents[0] = 0x40, ...  
+752 1737359328692 XXXX 1737359328692, Thread 752: XXXX 1737359328692, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359328692 XXXX 1737359328692, Thread 752: XXXX 1737359328692, Entering Thread 752: Commands::runScriptBasic with script contents. contents[0] = 0x47, ...  
+752 1737359328698 XXXX 1737359328698, Thread 752: XXXX 1737359328698, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359328698 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetPowerInfo
+752 1737359328698 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+752 1737359328698 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+752 1737359328698 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+752 1737359328698 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetLEDBrightness
+752 1737359328698 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+752 1737359328698 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 5
+752 1737359328698 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+752 1737359328698 XXXX 1737359328698, Thread 752: XXXX 1737359328698, Entering Thread 752: Commands::runScriptBasic with script contents. contents[0] = 0xcf, ...  
+752 1737359328699 XXXX 1737359328699, Thread 752: XXXX 1737359328699, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359328699 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetLEDBrightness
+752 1737359328699 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+752 1737359328699 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+752 1737359328699 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+752 1737359328699 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetToolInfo
+752 1737359328699 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+752 1737359328699 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 ToolInfo: Values:
+752 1737359328699 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 ToolInfo: speedLevel = 1, PGCResistance = 4700, PGDResistance = 4700, PGCPullDir = PullDown, PGDPullDir = PullDown, ICSPSelected = Wire2
+752 1737359328699 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+752 1737359328699 XXXX 1737359328699, Thread 752: XXXX 1737359328699, Entering Thread 752: Commands::runScriptBasic, script name = SetSpeed, timeOut = -1 ms  
+752 1737359328699 XXXX 1737359328699, Thread 752: XXXX 1737359328699, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359328699 XXXX 1737359328699, Thread 752: XXXX 1737359328699, Entering Thread 752: Commands::runScriptBasic, script name = EnterProgMode, timeOut = -1 ms  
+752 1737359329206 XXXX 1737359329206, Thread 752: XXXX 1737359329206, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359329206 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetToolInfo
+752 1737359329206 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+752 1737359329206 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+752 1737359329206 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+752 1737359329214 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:GetTargetIDInfo
+752 1737359329214 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+752 1737359329214 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 null
+752 1737359329214 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+752 1737359329245 XXXX 1737359329245, Thread 752: XXXX 1737359329245, Entering Thread 752: Commands::runScriptBasic, script name = GetDeviceID, timeOut = -1 ms  
+752 1737359329246 XXXX 1737359329246, Thread 752: XXXX 1737359329246, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359329246 XXXX 1737359329246, Thread 752: XXXX 1737359329246, Entering Thread 752: Commands::runScriptBasic, script name = ExitProgMode, timeOut = -1 ms  
+752 1737359329247 XXXX 1737359329247, Thread 752: XXXX 1737359329247, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359329247 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:GetTargetIDInfo
+752 1737359329247 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+752 1737359329247 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 TargetIDInfo: Values:
+752 1737359329247 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 TargetIDInfo: DeviceID = 001e9328
+752 1737359329247 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+752 1737359329276 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Pre:SendOperation
+752 1737359329276 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload
+752 1737359329276 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Values:
+752 1737359329276 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Type = read, Mask = 00000000, Erase = false, Production Mode = true
+752 1737359329276 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 1400, End = 147f, Buffer Length = 128, Type = EEData, Mask = 00000000
+752 1737359329276 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload End
+752 1737359329276 XXXX 1737359329276, Thread 752: XXXX 1737359329276, Entering Thread 752: Commands::runScriptBasic, script name = EnterProgMode, timeOut = -1 ms  
+752 1737359329475 XXXX 1737359329475, Thread 752: XXXX 1737359329475, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359329475 XXXX 1737359329475, Thread 752: XXXX 1737359329475, Entering Thread 752: Commands::runScriptWithUpload, script name = ReadDataEEmem  
+752 1737359329475 XXXX 1737359329475, Thread 752: XXXX 1737359329475, Entering Thread 752: ToolCommUsb::readTransfer, sideData is 0x53 bytes long, transferDataLength is 0x80 bytes long  
+752 1737359329519 XXXX 1737359329519, Thread 752: XXXX 1737359329519, Exiting Thread 752: ToolCommUsb::readTransfer,  cr.status = 0x0  
+752 1737359329519 XXXX 1737359329519, Thread 752: XXXX 1737359329519, Exiting Thread 752: Commands::runScriptWithUpload  
+752 1737359329519 XXXX 1737359329519, Thread 752: XXXX 1737359329519, Entering Thread 752: Commands::runScriptBasic, script name = ExitProgMode, timeOut = -1 ms  
+752 1737359329521 XXXX 1737359329521, Thread 752: XXXX 1737359329521, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359329521 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Post:SendOperation
+752 1737359329521 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return Value
+752 1737359329521 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 None
+752 1737359329521 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return End
+
+752 1737359329531 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Pre:SendOperation
+752 1737359329531 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload
+752 1737359329532 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Values:
+752 1737359329532 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true
+752 1737359329532 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000
+752 1737359329532 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 1280, End = 1288, Buffer Length = 0, Type = Cfg, Mask = 00000000
+752 1737359329532 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 128a, End = 128a, Buffer Length = 0, Type = Cfg, Mask = 00000000
+752 1737359329532 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 1400, End = 147f, Buffer Length = 0, Type = EEData, Mask = 00000000
+752 1737359329532 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 1300, End = 131f, Buffer Length = 0, Type = UserID, Mask = 00000000
+752 1737359329532 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload End
+752 1737359329532 XXXX 1737359329532, Thread 752: XXXX 1737359329532, Entering Thread 752: Commands::runScriptBasic, script name = EnterProgMode, timeOut = -1 ms  
+752 1737359329730 XXXX 1737359329730, Thread 752: XXXX 1737359329730, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359329730 XXXX 1737359329730, Thread 752: XXXX 1737359329730, Entering Thread 752: Commands::runScriptBasic, script name = EraseChip, timeOut = -1 ms  
+752 1737359329931 XXXX 1737359329931, Thread 752: XXXX 1737359329931, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359329931 XXXX 1737359329931, Thread 752: XXXX 1737359329931, Entering Thread 752: Commands::runScriptBasic, script name = ExitProgMode, timeOut = -1 ms  
+752 1737359329966 XXXX 1737359329966, Thread 752: XXXX 1737359329966, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359329967 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Post:SendOperation
+752 1737359329967 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return Value
+752 1737359329967 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 None
+752 1737359329967 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return End
+
+752 1737359329979 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Pre:SendOperation
+752 1737359329979 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload
+752 1737359329979 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Values:
+752 1737359329979 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Type = write, Mask = 00000000, Erase = false, Production Mode = true
+752 1737359329979 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 0, End = 1fff, Buffer Length = 8192, Type = Pgm, Mask = 00000000
+752 1737359329979 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 1400, End = 147f, Buffer Length = 128, Type = EEData, Mask = 00000000
+752 1737359329979 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload End
+752 1737359329979 XXXX 1737359329979, Thread 752: XXXX 1737359329979, Entering Thread 752: Commands::runScriptBasic, script name = EnterProgMode, timeOut = -1 ms  
+752 1737359330178 XXXX 1737359330178, Thread 752: XXXX 1737359330178, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359330178 XXXX 1737359330178, Thread 752: XXXX 1737359330178, Entering Thread 752: Commands::runScriptWithDownload, script name = WriteProgmem  
+752 1737359332095 XXXX 1737359332095, Thread 752: XXXX 1737359332095, Exiting Thread 752: Commands::runScriptWithDownload(WriteProgmem)  
+752 1737359332095 XXXX 1737359332095, Thread 752: XXXX 1737359332095, Entering Thread 752: Commands::runScriptWithUpload, script name = ReadProgmem  
+752 1737359332095 XXXX 1737359332095, Thread 752: XXXX 1737359332095, Entering Thread 752: ToolCommUsb::readTransfer, sideData is 0x59 bytes long, transferDataLength is 0x2000 bytes long  
+752 1737359332338 XXXX 1737359332338, Thread 752: XXXX 1737359332338, Exiting Thread 752: ToolCommUsb::readTransfer,  cr.status = 0x0  
+752 1737359332338 XXXX 1737359332338, Thread 752: XXXX 1737359332338, Exiting Thread 752: Commands::runScriptWithUpload  
+752 1737359332338 XXXX 1737359332338, Thread 752: XXXX 1737359332338, Entering Thread 752: Commands::runScriptWithDownload, script name = WriteDataEEmem  
+752 1737359332398 XXXX 1737359332398, Thread 752: XXXX 1737359332398, Exiting Thread 752: Commands::runScriptWithDownload(WriteDataEEmem)  
+752 1737359332398 XXXX 1737359332398, Thread 752: XXXX 1737359332398, Entering Thread 752: Commands::runScriptWithUpload, script name = ReadDataEEmem  
+752 1737359332398 XXXX 1737359332398, Thread 752: XXXX 1737359332398, Entering Thread 752: ToolCommUsb::readTransfer, sideData is 0x53 bytes long, transferDataLength is 0x80 bytes long  
+752 1737359332406 XXXX 1737359332406, Thread 752: XXXX 1737359332406, Exiting Thread 752: ToolCommUsb::readTransfer,  cr.status = 0x0  
+752 1737359332406 XXXX 1737359332406, Thread 752: XXXX 1737359332406, Exiting Thread 752: Commands::runScriptWithUpload  
+752 1737359332406 XXXX 1737359332406, Thread 752: XXXX 1737359332406, Entering Thread 752: Commands::runScriptBasic, script name = ExitProgMode, timeOut = -1 ms  
+752 1737359332407 XXXX 1737359332407, Thread 752: XXXX 1737359332407, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Post:SendOperation
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return Value
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 None
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return End
+
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Pre:endOfOperations
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 null
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload End
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Post:endOfOperations
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return Value
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 None
+752 1737359332407 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return End
+
+752 1737359332416 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Pre:SendOperation
+752 1737359332416 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload
+752 1737359332416 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Values:
+752 1737359332416 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Type = releasefromreset, Mask = 00000000, Erase = false, Production Mode = true
+752 1737359332416 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload End
+752 1737359332416 XXXX 1737359332416, Thread 752: XXXX 1737359332416, Entering Thread 752: Commands::runScriptBasic, script name = ReleaseFromReset, timeOut = -1 ms  
+752 1737359332428 XXXX 1737359332428, Thread 752: XXXX 1737359332428, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359332428 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Post:SendOperation
+752 1737359332428 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return Value
+752 1737359332428 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 None
+752 1737359332428 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return End
+752 1737359332428 GEN4_CONNECT_DIAGNOSTICS:MPLABCommTool is null
+
+752 1737359332428 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:GetFirmwareInfo
+752 1737359332428 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+752 1737359332428 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 null
+752 1737359332428 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:GetFirmwareInfo
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: Values:
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.01.38, fpgaVer = ff.ff.ff, scriptVer = 00.06.71, macAddress = 0504883548174844849485151485150, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN001776, appCommitID = null, scriptCommitID = 74cdf38a4d, PCB_ID = 2
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetPowerInfo
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: Values:
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: shotDownSystem = true, isToolPower = false, voltage = 0,000000, useVppFirst = false, useLowVoltageProgramming = true, useMaintainActivePower = false
+752 1737359332436 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+752 1737359332436 XXXX 1737359332436, Thread 752: XXXX 1737359332436, Entering Thread 752: Commands::runScriptBasic with script contents. contents[0] = 0x39, ...  
+752 1737359332436 XXXX 1737359332436, Thread 752: XXXX 1737359332436, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359332436 XXXX 1737359332436, Thread 752: XXXX 1737359332436, Entering Thread 752: Commands::runScriptBasic with script contents. contents[0] = 0x44, ...  
+752 1737359332448 XXXX 1737359332448, Thread 752: XXXX 1737359332448, Exiting Thread 752: Commands::runScriptBasic  
+752 1737359332448 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetPowerInfo
+752 1737359332448 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+752 1737359332448 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+752 1737359332448 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+752 1737359332448 GEN4_CONNECT_DIAGNOSTICS:Removing plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@1724aa03
+752 1737359332448 GEN4_CONNECT_DIAGNOSTICS:Begin PlugNPlayObservers list dump:
+752 1737359332448 GEN4_CONNECT_DIAGNOSTICS:End PlugNPlayObservers list dump:
+752 1737359332498 GEN4_CONNECT_DIAGNOSTICS:Calling RIDbgToolCom.Disconnect
+752 1737359332498 GEN4_CONNECT_DIAGNOSTICS:Calling MPLABCommTool.Detach to remove tool from plug and play list
+752 1737359332498 GEN4_CONNECT_DIAGNOSTICS:Calling RIDbgToolCom.DisconnectFromMPlabComm
+752 1737359332498 GEN4_CONNECT_DIAGNOSTICS:Calling MPLABCommTool.Disconnect
+767 1737359379098 GEN4_CONNECT_DIAGNOSTICS:MPLABCommTool is NOT null
+767 1737359379098 GEN4_CONNECT_DIAGNOSTICS:AttachedToolPID = 9036, AttachedToolVID = 4d8
+767 1737359379098 GEN4_CONNECT_DIAGNOSTICS:transport type = USB
+767 1737359379098 GEN4_CONNECT_DIAGNOSTICS:AttachedToolPID = 9036, AttachedToolVID = 4d8
+767 1737359379107 com.microchip.mplab.mdbcore.RealICETool.RIDbgToolCom
+767 1737359379107 GEN4_CONNECT_DIAGNOSTICS:Before MPLABCommTool.Connect()
+767 1737359379107 GEN4_CONNECT_DIAGNOSTICS:After MPLABCommTool.Connect()
+767 1737359379107 GEN4_CONNECT_DIAGNOSTICS:MPLABCommTool.Connect() returned MPLABCOMM_NO_ERROR
+767 1737359379107 GEN4_CONNECT_DIAGNOSTICS:Attaching to MPLABCommTool plugnplay
+767 1737359379107 GEN4_CONNECT_DIAGNOSTICS:Adding new plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@59be6e93
+767 1737359379107 GEN4_CONNECT_DIAGNOSTICS:Begin PlugNPlayObservers list dump:
+767 1737359379107 GEN4_CONNECT_DIAGNOSTICS:com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@59be6e93
+767 1737359379107 GEN4_CONNECT_DIAGNOSTICS:End PlugNPlayObservers list dump:
+767 1737359379108 GEN4_CONNECT_DIAGNOSTICS:Registering for alternate PNP notifications. CommPnPCriteria.cPIDList = [9035], CommPnPCriteria.cSerialNumber = 020026702ryn001776
+
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:init
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: Values:
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: pcAddress = 7fffffffffffffff, Vpp = 5,00, useRowEraseIfVoltageIsLow = false, voltageBelowWhichUseRowErase = 0,00, deviceName = ATtiny826, programmerType = AVR
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: MemInfo values:
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = ffff, exists = true, startAddr = 00000000, endAddr = 00001fff, rowSize = 0040, rowEraseSize = 0040, addrInc = 0001, widthProgram = 0001
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 00ff, exists = true, startAddr = 00821280, endAddr = 0083128a, rowSize = 0001, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 00ff, exists = true, startAddr = 00001400, endAddr = 0000147f, rowSize = 0020, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 00ff, exists = true, startAddr = 00001300, endAddr = 0000131f, rowSize = 0020, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0040, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 7fffffff, exists = true, startAddr = 00001100, endAddr = 0000113f, rowSize = 0001, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: CfgRequiredBitsMask Values:
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001100, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001101, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001102, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001103, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001104, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001105, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001106, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001107, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001108, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001109, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000110a, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000110b, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000110c, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001118, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001119, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000111a, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000111b, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001120, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001121, Mask = 00000000
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821280, Mask = 000000ff
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821281, Mask = 000000ff
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821282, Mask = 00000083
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821285, Mask = 000000dd
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821286, Mask = 00000007
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821287, Mask = 000000ff
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821288, Mask = 000000ff
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0083128a, Mask = 000000ff
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 BasicInfo: Values:
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 BasicInfo: InputStream = com.microchip.mplab.libs.toolpacksupport.EquatableFileInputStream@cc306916, ToolFlavor = PIC32C
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:init
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 none
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4DebugInterface
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.RI4DebugInterfaceImpl@3ba5622e
+767 1737359379125 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4ProgramInterface
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.RI4ProgramInterfaceImpl@7710e10b
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4ConnectInterface
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.PK4ToolsController.PK4ConnectInterfaceImpl@5df0d38c
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4ControllerDiagnosticsInterface
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.RI4ControllerDiagnosticsInterfaceImpl@23438169
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 ProgrammerToGo
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.ProgrammerToGoImpl@3367233d
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Status
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 null
+767 1737359379126 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:EstablishCommunincations
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@8e24eca
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:EstablishCommunincations
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 true
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:GetFirmwareInfo
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 null
+767 1737359379164 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+767 1737359379172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:GetFirmwareInfo
+767 1737359379172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+767 1737359379172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: Values:
+767 1737359379172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.01.38, fpgaVer = ff.ff.ff, scriptVer = 00.06.71, macAddress = 0504883548174844849485151485150, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN001776, appCommitID = null, scriptCommitID = 74cdf38a4d, PCB_ID = 2
+767 1737359379172 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+767 1737359379172 XXXX 1737359379172, Thread 767: XXXX 1737359379172, Entering Thread 767: Commands::runScriptWithUpload with script contents. contents[0] = 0x5e, ...  
+767 1737359379172 XXXX 1737359379172, Thread 767: XXXX 1737359379172, Entering Thread 767: ToolCommUsb::readTransfer, sideData is 0xd bytes long, transferDataLength is 0x4 bytes long  
+767 1737359379174 XXXX 1737359379174, Thread 767: XXXX 1737359379174, Exiting Thread 767: ToolCommUsb::readTransfer,  cr.status = 0x0  
+767 1737359379174 XXXX 1737359379174, Thread 767: XXXX 1737359379174, Exiting Thread 767: Commands::runScriptWithUpload  
+767 1737359379174 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.ConnectionHandler.CheckForFWUpdates()
+767 1737359379174 GEN4_CONNECT_DIAGNOSTICS:Created FirmwareUpdateHandler com.microchip.mplab.mdbcore.PK5Tool.PK5FirmwareUpdateHandler@438f94e3
+767 1737359379175 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.GetUpdateInfo()
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:Parsing file  for firmware updates
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.ri4ParseSelectedVersionsFromJamFile()
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:Jame file line = app.hex,020138
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:Jame file line = boot.hex,000010
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:Jame file line = scripts.xml,000671
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:Selected firmware version for Boot = 00.00.10
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:Selected firmware version for ap = 02.01.38
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.ri4ParseSelectedVersionsFromJamFile()
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.GetUpdateInfo()
+767 1737359379176 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.updateRI4ToolsFirmware(FirmwareInfo, UpdateMessage)
+767 1737359379209 GEN4_CONNECT_DIAGNOSTICS:appNeedsUpdate returned false
+767 1737359379209 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.updateRI4ToolsFirmware(FirmwareInfo, UpdateMessage)
+767 1737359379209 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.ConnectionHandler.CheckForFWUpdates()
+
+767 1737359379209 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetPowerInfo
+767 1737359379209 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+767 1737359379210 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: Values:
+767 1737359379210 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: shotDownSystem = false, isToolPower = false, voltage = 5,000000, useVppFirst = false, useLowVoltageProgramming = true, useMaintainActivePower = false
+767 1737359379210 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+767 1737359379210 XXXX 1737359379210, Thread 767: XXXX 1737359379210, Entering Thread 767: Commands::runScriptBasic with script contents. contents[0] = 0x39, ...  
+767 1737359379210 XXXX 1737359379210, Thread 767: XXXX 1737359379210, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379210 XXXX 1737359379210, Thread 767: XXXX 1737359379210, Entering Thread 767: Commands::runScriptBasic with script contents. contents[0] = 0x46, ...  
+767 1737359379211 XXXX 1737359379211, Thread 767: XXXX 1737359379211, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379211 XXXX 1737359379211, Thread 767: XXXX 1737359379211, Entering Thread 767: Commands::runScriptBasic with script contents. contents[0] = 0x44, ...  
+767 1737359379224 XXXX 1737359379224, Thread 767: XXXX 1737359379224, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379224 XXXX 1737359379224, Thread 767: XXXX 1737359379224, Entering Thread 767: Commands::runScriptBasic with script contents. contents[0] = 0xef, ...  
+767 1737359379234 XXXX 1737359379234, Thread 767: XXXX 1737359379234, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379234 XXXX 1737359379234, Thread 767: XXXX 1737359379234, Entering Thread 767: Commands::runScriptBasic with script contents. contents[0] = 0x40, ...  
+767 1737359379633 XXXX 1737359379633, Thread 767: XXXX 1737359379633, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379633 XXXX 1737359379633, Thread 767: XXXX 1737359379633, Entering Thread 767: Commands::runScriptBasic with script contents. contents[0] = 0x47, ...  
+767 1737359379637 XXXX 1737359379637, Thread 767: XXXX 1737359379637, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379637 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetPowerInfo
+767 1737359379637 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+767 1737359379637 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+767 1737359379637 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+767 1737359379637 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetLEDBrightness
+767 1737359379637 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+767 1737359379637 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 5
+767 1737359379637 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+767 1737359379638 XXXX 1737359379638, Thread 767: XXXX 1737359379638, Entering Thread 767: Commands::runScriptBasic with script contents. contents[0] = 0xcf, ...  
+767 1737359379639 XXXX 1737359379639, Thread 767: XXXX 1737359379639, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379639 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetLEDBrightness
+767 1737359379639 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+767 1737359379639 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+767 1737359379639 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+767 1737359379639 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetToolInfo
+767 1737359379639 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+767 1737359379639 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 ToolInfo: Values:
+767 1737359379639 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 ToolInfo: speedLevel = 1, PGCResistance = 4700, PGDResistance = 4700, PGCPullDir = PullDown, PGDPullDir = PullDown, ICSPSelected = Wire2
+767 1737359379639 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+767 1737359379639 XXXX 1737359379639, Thread 767: XXXX 1737359379639, Entering Thread 767: Commands::runScriptBasic, script name = SetSpeed, timeOut = -1 ms  
+767 1737359379639 XXXX 1737359379639, Thread 767: XXXX 1737359379639, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379639 XXXX 1737359379639, Thread 767: XXXX 1737359379639, Entering Thread 767: Commands::runScriptBasic, script name = EnterProgMode, timeOut = -1 ms  
+767 1737359379837 XXXX 1737359379837, Thread 767: XXXX 1737359379837, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379837 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetToolInfo
+767 1737359379837 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+767 1737359379837 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+767 1737359379837 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+767 1737359379842 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:GetTargetIDInfo
+767 1737359379842 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+767 1737359379842 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 null
+767 1737359379842 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+767 1737359379844 XXXX 1737359379844, Thread 767: XXXX 1737359379844, Entering Thread 767: Commands::runScriptBasic, script name = GetDeviceID, timeOut = -1 ms  
+767 1737359379846 XXXX 1737359379846, Thread 767: XXXX 1737359379846, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379846 XXXX 1737359379846, Thread 767: XXXX 1737359379846, Entering Thread 767: Commands::runScriptBasic, script name = ExitProgMode, timeOut = -1 ms  
+767 1737359379847 XXXX 1737359379847, Thread 767: XXXX 1737359379847, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359379847 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:GetTargetIDInfo
+767 1737359379847 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+767 1737359379847 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 TargetIDInfo: Values:
+767 1737359379847 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 TargetIDInfo: DeviceID = 001e9328
+767 1737359379847 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+767 1737359379894 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Pre:SendOperation
+767 1737359379894 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload
+767 1737359379894 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Values:
+767 1737359379894 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Type = read, Mask = 00000000, Erase = false, Production Mode = true
+767 1737359379894 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 1400, End = 147f, Buffer Length = 128, Type = EEData, Mask = 00000000
+767 1737359379894 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload End
+767 1737359379894 XXXX 1737359379894, Thread 767: XXXX 1737359379894, Entering Thread 767: Commands::runScriptBasic, script name = EnterProgMode, timeOut = -1 ms  
+767 1737359380094 XXXX 1737359380094, Thread 767: XXXX 1737359380094, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359380094 XXXX 1737359380094, Thread 767: XXXX 1737359380094, Entering Thread 767: Commands::runScriptWithUpload, script name = ReadDataEEmem  
+767 1737359380094 XXXX 1737359380094, Thread 767: XXXX 1737359380094, Entering Thread 767: ToolCommUsb::readTransfer, sideData is 0x53 bytes long, transferDataLength is 0x80 bytes long  
+767 1737359380101 XXXX 1737359380101, Thread 767: XXXX 1737359380101, Exiting Thread 767: ToolCommUsb::readTransfer,  cr.status = 0x0  
+767 1737359380101 XXXX 1737359380101, Thread 767: XXXX 1737359380101, Exiting Thread 767: Commands::runScriptWithUpload  
+767 1737359380101 XXXX 1737359380101, Thread 767: XXXX 1737359380101, Entering Thread 767: Commands::runScriptBasic, script name = ExitProgMode, timeOut = -1 ms  
+767 1737359380103 XXXX 1737359380103, Thread 767: XXXX 1737359380103, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359380103 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Post:SendOperation
+767 1737359380103 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return Value
+767 1737359380103 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 None
+767 1737359380103 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return End
+
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Pre:SendOperation
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Values:
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 OperationInfo: Type = erase, Mask = 00000000, Erase = false, Production Mode = true
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 0, End = 1fff, Buffer Length = 0, Type = Pgm, Mask = 00000000
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 1280, End = 1288, Buffer Length = 0, Type = Cfg, Mask = 00000000
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 128a, End = 128a, Buffer Length = 0, Type = Cfg, Mask = 00000000
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 1400, End = 147f, Buffer Length = 0, Type = EEData, Mask = 00000000
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 TransferInfo: Start = 1300, End = 131f, Buffer Length = 0, Type = UserID, Mask = 00000000
+767 1737359380114 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload End
+767 1737359380114 XXXX 1737359380114, Thread 767: XXXX 1737359380114, Entering Thread 767: Commands::runScriptBasic, script name = EnterProgMode, timeOut = -1 ms  
+767 1737359380514 XXXX 1737359380514, Thread 767: XXXX 1737359380514, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359380514 XXXX 1737359380514, Thread 767: XXXX 1737359380514, Entering Thread 767: Commands::runScriptBasic, script name = EraseChip, timeOut = -1 ms  
+767 1737359380629 XXXX 1737359380629, Thread 767: Type = runScript, Script name = EraseChip, Status = 0x100
+ 
+
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Pre:endOfOperations
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 null
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Payload End
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Post:endOfOperations
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return Value
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 None
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_PROGRAM_INT_LOG_ATtiny826 Return End
+767 1737359380646 GEN4_CONNECT_DIAGNOSTICS:MPLABCommTool is null
+
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:GetFirmwareInfo
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 null
+767 1737359380646 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:GetFirmwareInfo
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: Values:
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.01.38, fpgaVer = ff.ff.ff, scriptVer = 00.06.71, macAddress = 0504883548174844849485151485150, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN001776, appCommitID = null, scriptCommitID = 74cdf38a4d, PCB_ID = 2
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetPowerInfo
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: Values:
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: shotDownSystem = true, isToolPower = false, voltage = 0,000000, useVppFirst = false, useLowVoltageProgramming = true, useMaintainActivePower = false
+767 1737359380655 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+767 1737359380655 XXXX 1737359380655, Thread 767: XXXX 1737359380655, Entering Thread 767: Commands::runScriptBasic with script contents. contents[0] = 0x39, ...  
+767 1737359380656 XXXX 1737359380656, Thread 767: XXXX 1737359380656, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359380656 XXXX 1737359380656, Thread 767: XXXX 1737359380656, Entering Thread 767: Commands::runScriptBasic with script contents. contents[0] = 0x44, ...  
+767 1737359380668 XXXX 1737359380668, Thread 767: XXXX 1737359380668, Exiting Thread 767: Commands::runScriptBasic  
+767 1737359380668 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetPowerInfo
+767 1737359380668 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+767 1737359380668 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+767 1737359380668 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+767 1737359380668 GEN4_CONNECT_DIAGNOSTICS:Removing plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@59be6e93
+767 1737359380668 GEN4_CONNECT_DIAGNOSTICS:Begin PlugNPlayObservers list dump:
+767 1737359380668 GEN4_CONNECT_DIAGNOSTICS:End PlugNPlayObservers list dump:
+767 1737359380718 GEN4_CONNECT_DIAGNOSTICS:Calling RIDbgToolCom.Disconnect
+767 1737359380718 GEN4_CONNECT_DIAGNOSTICS:Calling MPLABCommTool.Detach to remove tool from plug and play list
+767 1737359380718 GEN4_CONNECT_DIAGNOSTICS:Calling RIDbgToolCom.DisconnectFromMPlabComm
+767 1737359380718 GEN4_CONNECT_DIAGNOSTICS:Calling MPLABCommTool.Disconnect
+781 1737359390402 GEN4_CONNECT_DIAGNOSTICS:MPLABCommTool is NOT null
+781 1737359390402 GEN4_CONNECT_DIAGNOSTICS:AttachedToolPID = 9036, AttachedToolVID = 4d8
+781 1737359390402 GEN4_CONNECT_DIAGNOSTICS:transport type = USB
+781 1737359390402 GEN4_CONNECT_DIAGNOSTICS:AttachedToolPID = 9036, AttachedToolVID = 4d8
+781 1737359390414 com.microchip.mplab.mdbcore.RealICETool.RIDbgToolCom
+781 1737359390414 GEN4_CONNECT_DIAGNOSTICS:Before MPLABCommTool.Connect()
+781 1737359390415 GEN4_CONNECT_DIAGNOSTICS:After MPLABCommTool.Connect()
+781 1737359390415 GEN4_CONNECT_DIAGNOSTICS:MPLABCommTool.Connect() returned MPLABCOMM_NO_ERROR
+781 1737359390415 GEN4_CONNECT_DIAGNOSTICS:Attaching to MPLABCommTool plugnplay
+781 1737359390415 GEN4_CONNECT_DIAGNOSTICS:Adding new plug and play observer com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@6bf3dab0
+781 1737359390415 GEN4_CONNECT_DIAGNOSTICS:Begin PlugNPlayObservers list dump:
+781 1737359390415 GEN4_CONNECT_DIAGNOSTICS:com.microchip.mplab.mdbcore.RI4Tool.RI4ToolBase$RI4PlugNPlayObserver@6bf3dab0
+781 1737359390415 GEN4_CONNECT_DIAGNOSTICS:End PlugNPlayObservers list dump:
+781 1737359390415 GEN4_CONNECT_DIAGNOSTICS:Registering for alternate PNP notifications. CommPnPCriteria.cPIDList = [9035], CommPnPCriteria.cSerialNumber = 020026702ryn001776
+
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:init
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: Values:
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: pcAddress = 7fffffffffffffff, Vpp = 5,00, useRowEraseIfVoltageIsLow = false, voltageBelowWhichUseRowErase = 0,00, deviceName = ATtiny826, programmerType = AVR
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: MemInfo values:
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = ffff, exists = true, startAddr = 00000000, endAddr = 00001fff, rowSize = 0040, rowEraseSize = 0040, addrInc = 0001, widthProgram = 0001
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 00ff, exists = true, startAddr = 00821280, endAddr = 0083128a, rowSize = 0001, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 00ff, exists = true, startAddr = 00001400, endAddr = 0000147f, rowSize = 0020, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 00ff, exists = true, startAddr = 00001300, endAddr = 0000131f, rowSize = 0020, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+781 1737359390432 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0040, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 7fffffff, exists = true, startAddr = 00001100, endAddr = 0000113f, rowSize = 0001, rowEraseSize = 0000, addrInc = 0001, widthProgram = 0001
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: mask = 0000, exists = false, startAddr = 00000000, endAddr = 00000000, rowSize = 0000, rowEraseSize = 0000, addrInc = 0000, widthProgram = 0000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 DeviceInfo: CfgRequiredBitsMask Values:
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001100, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001101, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001102, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001103, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001104, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001105, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001106, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001107, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001108, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001109, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000110a, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000110b, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000110c, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001118, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001119, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000111a, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0000111b, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001120, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00001121, Mask = 00000000
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821280, Mask = 000000ff
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821281, Mask = 000000ff
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821282, Mask = 00000083
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821285, Mask = 000000dd
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821286, Mask = 00000007
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821287, Mask = 000000ff
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 00821288, Mask = 000000ff
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Address = 0083128a, Mask = 000000ff
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 BasicInfo: Values:
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 BasicInfo: InputStream = com.microchip.mplab.libs.toolpacksupport.EquatableFileInputStream@cc306916, ToolFlavor = PIC32C
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:init
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 none
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4DebugInterface
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.RI4DebugInterfaceImpl@4cf77070
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4ProgramInterface
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.RI4ProgramInterfaceImpl@1a6eba5d
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4ConnectInterface
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.PK4ToolsController.PK4ConnectInterfaceImpl@6fbdc5fa
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 RI4ControllerDiagnosticsInterface
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.RI4ControllerDiagnosticsInterfaceImpl@72aef5e7
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 ProgrammerToGo
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 com.microchip.mplab.libs.RI4ToolsController.implementations.ProgrammerToGoImpl@52d6f32
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Pre:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Status
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Payload End
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Post:GetInterfaceProvider
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return Value
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 null
+781 1737359390433 GEN4_TO_CONTROLLER_LOG:GEN4_INIT_INT_LOG_ATtiny826 Return End
+
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:EstablishCommunincations
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 com.microchip.mplab.mdbcore.PK5Tool.PK5Com@3a1d0d0e
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:EstablishCommunincations
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 true
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:GetFirmwareInfo
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 null
+781 1737359390472 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+781 1737359390480 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:GetFirmwareInfo
+781 1737359390480 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+781 1737359390480 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: Values:
+781 1737359390480 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 FirmwareInfo: boot = false, bootVer = 00.00.10, apVer = 02.01.38, fpgaVer = ff.ff.ff, scriptVer = 00.06.71, macAddress = 0504883548174844849485151485150, devID = a1020e01, devID1 = 2, devSN0 = ffffffff, devSN1 = ffffffff, serialNumber = 020026702RYN001776, appCommitID = null, scriptCommitID = 74cdf38a4d, PCB_ID = 2
+781 1737359390480 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+781 1737359390480 XXXX 1737359390480, Thread 781: XXXX 1737359390480, Entering Thread 781: Commands::runScriptWithUpload with script contents. contents[0] = 0x5e, ...  
+781 1737359390480 XXXX 1737359390480, Thread 781: XXXX 1737359390480, Entering Thread 781: ToolCommUsb::readTransfer, sideData is 0xd bytes long, transferDataLength is 0x4 bytes long  
+781 1737359390481 XXXX 1737359390481, Thread 781: XXXX 1737359390481, Exiting Thread 781: ToolCommUsb::readTransfer,  cr.status = 0x0  
+781 1737359390481 XXXX 1737359390481, Thread 781: XXXX 1737359390481, Exiting Thread 781: Commands::runScriptWithUpload  
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.ConnectionHandler.CheckForFWUpdates()
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:Created FirmwareUpdateHandler com.microchip.mplab.mdbcore.PK5Tool.PK5FirmwareUpdateHandler@6afe8198
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.GetUpdateInfo()
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:Parsing file  for firmware updates
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.ri4ParseSelectedVersionsFromJamFile()
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:Jame file line = app.hex,020138
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:Jame file line = boot.hex,000010
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:Jame file line = scripts.xml,000671
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:Selected firmware version for Boot = 00.00.10
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:Selected firmware version for ap = 02.01.38
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.ri4ParseSelectedVersionsFromJamFile()
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.GetUpdateInfo()
+781 1737359390481 GEN4_CONNECT_DIAGNOSTICS:ENTERING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.updateRI4ToolsFirmware(FirmwareInfo, UpdateMessage)
+781 1737359390512 GEN4_CONNECT_DIAGNOSTICS:appNeedsUpdate returned false
+781 1737359390512 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.FirmwareUpdateHandler.updateRI4ToolsFirmware(FirmwareInfo, UpdateMessage)
+781 1737359390512 GEN4_CONNECT_DIAGNOSTICS:EXITING: com.microchip.mplab.mdbcore.RI4Tool.ConnectionHandler.CheckForFWUpdates()
+
+781 1737359390512 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetPowerInfo
+781 1737359390512 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+781 1737359390512 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: Values:
+781 1737359390513 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 PowerInfo: shotDownSystem = false, isToolPower = false, voltage = 5,000000, useVppFirst = false, useLowVoltageProgramming = true, useMaintainActivePower = false
+781 1737359390513 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+781 1737359390513 XXXX 1737359390513, Thread 781: XXXX 1737359390513, Entering Thread 781: Commands::runScriptBasic with script contents. contents[0] = 0x39, ...  
+781 1737359390514 XXXX 1737359390514, Thread 781: XXXX 1737359390514, Exiting Thread 781: Commands::runScriptBasic  
+781 1737359390514 XXXX 1737359390514, Thread 781: XXXX 1737359390514, Entering Thread 781: Commands::runScriptBasic with script contents. contents[0] = 0x46, ...  
+781 1737359390515 XXXX 1737359390515, Thread 781: XXXX 1737359390515, Exiting Thread 781: Commands::runScriptBasic  
+781 1737359390515 XXXX 1737359390515, Thread 781: XXXX 1737359390515, Entering Thread 781: Commands::runScriptBasic with script contents. contents[0] = 0x44, ...  
+781 1737359390527 XXXX 1737359390527, Thread 781: XXXX 1737359390527, Exiting Thread 781: Commands::runScriptBasic  
+781 1737359390527 XXXX 1737359390527, Thread 781: XXXX 1737359390527, Entering Thread 781: Commands::runScriptBasic with script contents. contents[0] = 0xef, ...  
+781 1737359390538 XXXX 1737359390538, Thread 781: XXXX 1737359390538, Exiting Thread 781: Commands::runScriptBasic  
+781 1737359390538 XXXX 1737359390538, Thread 781: XXXX 1737359390538, Entering Thread 781: Commands::runScriptBasic with script contents. contents[0] = 0x40, ...  
+781 1737359390926 XXXX 1737359390926, Thread 781: XXXX 1737359390926, Exiting Thread 781: Commands::runScriptBasic  
+781 1737359390926 XXXX 1737359390926, Thread 781: XXXX 1737359390926, Entering Thread 781: Commands::runScriptBasic with script contents. contents[0] = 0x47, ...  
+781 1737359390931 XXXX 1737359390931, Thread 781: XXXX 1737359390931, Exiting Thread 781: Commands::runScriptBasic  
+781 1737359390931 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetPowerInfo
+781 1737359390931 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+781 1737359390931 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+781 1737359390931 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+781 1737359390931 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetLEDBrightness
+781 1737359390931 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+781 1737359390931 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 5
+781 1737359390931 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+781 1737359390931 XXXX 1737359390931, Thread 781: XXXX 1737359390931, Entering Thread 781: Commands::runScriptBasic with script contents. contents[0] = 0xcf, ...  
+781 1737359390932 XXXX 1737359390932, Thread 781: XXXX 1737359390932, Exiting Thread 781: Commands::runScriptBasic  
+781 1737359390932 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetLEDBrightness
+781 1737359390932 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+781 1737359390932 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+781 1737359390932 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+781 1737359390932 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:SetToolInfo
+781 1737359390932 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+781 1737359390932 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 ToolInfo: Values:
+781 1737359390932 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 ToolInfo: speedLevel = 1, PGCResistance = 4700, PGDResistance = 4700, PGCPullDir = PullDown, PGDPullDir = PullDown, ICSPSelected = Wire2
+781 1737359390932 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+781 1737359390933 XXXX 1737359390933, Thread 781: XXXX 1737359390933, Entering Thread 781: Commands::runScriptBasic, script name = SetSpeed, timeOut = -1 ms  
+781 1737359390933 XXXX 1737359390933, Thread 781: XXXX 1737359390933, Exiting Thread 781: Commands::runScriptBasic  
+781 1737359390933 XXXX 1737359390933, Thread 781: XXXX 1737359390933, Entering Thread 781: Commands::runScriptBasic, script name = EnterProgMode, timeOut = -1 ms  
+781 1737359391445 XXXX 1737359391445, Thread 781: XXXX 1737359391445, Exiting Thread 781: Commands::runScriptBasic  
+781 1737359391445 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Post:SetToolInfo
+781 1737359391445 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return Value
+781 1737359391445 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 none
+781 1737359391445 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Return End
+
+781 1737359391450 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Pre:GetTargetIDInfo
+781 1737359391450 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload
+781 1737359391450 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 null
+781 1737359391450 GEN4_TO_CONTROLLER_LOG:GEN4_CONNECT_INT_LOG_ATtiny826 Payload End
+781 1737359391451 XXXX 1737359391451, Thread 781: XXXX 1737359391451, Entering Thread 781: Commands::runScriptBasic, script name = EnterProgMode, timeOut = -1 ms  
+781 1737359391962 XXXX 1737359391962, Thread 781: XXXX 1737359391962, Exiting Thread 781: Commands::runScriptBasic  
