diff --git a/.gitignore b/.gitignore
index 3a2be50..4a75bb0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,6 @@
_build
app.uvguix.*
-app.uvoptx
\ No newline at end of file
+JLinkLog.txt
+JLinkSettings.ini
+RTE_Components.h
+EventRecorderStub.scvd
diff --git a/app/app.uvoptx b/app/app.uvoptx
new file mode 100644
index 0000000..9f77843
--- /dev/null
+++ b/app/app.uvoptx
@@ -0,0 +1,1156 @@
+
+
+
+ 1.0
+
+ ### uVision Project, (C) Keil Software
+
+
+ *.c
+ *.s*; *.src; *.a*
+ *.obj; *.o
+ *.lib
+ *.txt; *.h; *.inc; *.md
+ *.plm
+ *.cpp; *.cc; *.cxx
+ 0
+
+
+
+ 0
+ 0
+
+
+
+ nrf52833_xxaa
+ 0x4
+ ARM-ADS
+
+ 64000000
+
+ 1
+ 1
+ 0
+ 1
+ 0
+
+
+ 1
+ 65535
+ 0
+ 0
+ 0
+
+
+ 79
+ 66
+ 8
+ .\_build\
+
+
+ 1
+ 1
+ 1
+ 0
+ 1
+ 1
+ 0
+ 1
+ 0
+ 0
+ 0
+ 0
+
+
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 0
+ 0
+
+
+ 0
+ 0
+ 0
+
+ 0
+
+ 0
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 0
+ 1
+ 1
+ 1
+ 1
+ 0
+ 0
+ 1
+ 0
+ 0
+ 4
+
+
+
+
+
+
+
+
+
+
+ Segger\JL2CM3.dll
+
+
+
+ 0
+ JL2CM3
+ -U685384569 -O78 -S2 -ZTIFSpeedSel5000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC4000 -FN2 -FF0nrf52xxx.flm -FS00 -FL0200000 -FP0($$Device:nRF52833_xxAA$Flash\nrf52xxx.flm) -FF1nrf52xxx_uicr.flm -FS110001000 -FL11000 -FP1($$Device:nRF52833_xxAA$Flash\nrf52xxx_uicr.flm)
+
+
+ 0
+ UL2CM3
+ UL2CM3(-S0 -C0 -P0 -FD20000000 -FC4000 -FN2 -FF0nrf52xxx -FS00 -FL0200000 -FF1nrf52xxx_uicr -FS110001000 -FL11000 -FP0($$Device:nRF52833_xxAA$Flash\nrf52xxx.flm) -FP1($$Device:nRF52833_xxAA$Flash\nrf52xxx_uicr.flm))
+
+
+
+
+ 0
+
+
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+
+
+
+ 0
+ 0
+ 0
+
+
+
+
+
+
+
+
+
+ 1
+ 1
+ 0
+ 2
+ 10000000
+
+
+
+
+
+ flash_s140_nrf52_7.2.0_softdevice
+ 0x4
+ ARM-ADS
+
+ 64000000
+
+ 1
+ 1
+ 0
+ 1
+ 0
+
+
+ 1
+ 65535
+ 0
+ 0
+ 0
+
+
+ 79
+ 66
+ 8
+ .\_build\
+
+
+ 1
+ 1
+ 1
+ 0
+ 1
+ 1
+ 0
+ 1
+ 0
+ 0
+ 0
+ 0
+
+
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 0
+ 0
+
+
+ 0
+ 0
+ 1
+
+ 0
+
+ 0
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 1
+ 0
+ 1
+ 1
+ 1
+ 1
+ 0
+ 0
+ 1
+ 0
+ 0
+ 4
+
+
+
+
+
+
+
+
+
+
+ Segger\JL2CM3.dll
+
+
+
+ 0
+ JL2CM3
+ -U685384569 -O78 -S2 -ZTIFSpeedSel5000 -A0 -C0 -JU1 -JI127.0.0.1 -JP0 -RST0 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -TB1 -TFE0 -FO15 -FD20000000 -FC4000 -FN2 -FF0nrf52xxx.flm -FS00 -FL0200000 -FP0($$Device:nRF52833_xxAA$Flash\nrf52xxx.flm) -FF1nrf52xxx_uicr.flm -FS110001000 -FL11000 -FP1($$Device:nRF52833_xxAA$Flash\nrf52xxx_uicr.flm)
+
+
+ 0
+ UL2CM3
+ UL2CM3(-S0 -C0 -P0 -FD20000000 -FC4000 -FN2 -FF0nrf52xxx -FS00 -FL0200000 -FF1nrf52xxx_uicr -FS110001000 -FL11000 -FP0($$Device:nRF52833_xxAA$Flash\nrf52xxx.flm) -FP1($$Device:nRF52833_xxAA$Flash\nrf52xxx_uicr.flm))
+
+
+
+
+ 0
+
+
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+
+
+
+ 0
+ 0
+ 0
+
+
+
+
+
+
+
+
+
+ 1
+ 1
+ 0
+ 2
+ 10000000
+
+
+
+
+
+ Application
+ 0
+ 0
+ 0
+ 0
+
+ 1
+ 1
+ 5
+ 0
+ 0
+ 0
+ .\config\sdk_config.h
+ sdk_config.h
+ 0
+ 0
+
+
+ 1
+ 2
+ 1
+ 0
+ 0
+ 0
+ main.c
+ main.c
+ 0
+ 0
+
+
+
+
+ Board Definition
+ 0
+ 0
+ 0
+ 0
+
+ 2
+ 3
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\boards\boards.c
+ boards.c
+ 0
+ 0
+
+
+
+
+ Board Support
+ 0
+ 0
+ 0
+ 0
+
+ 3
+ 4
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\bsp\bsp.c
+ bsp.c
+ 0
+ 0
+
+
+ 3
+ 5
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\bsp\bsp_btn_ble.c
+ bsp_btn_ble.c
+ 0
+ 0
+
+
+
+
+ UTF8/UTF16 converter
+ 0
+ 0
+ 0
+ 0
+
+ 4
+ 6
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\external\utf_converter\utf.c
+ utf.c
+ 0
+ 0
+
+
+
+
+ nRF_BLE
+ 0
+ 0
+ 0
+ 0
+
+ 5
+ 7
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\ble\common\ble_advdata.c
+ ble_advdata.c
+ 0
+ 0
+
+
+ 5
+ 8
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\ble\ble_advertising\ble_advertising.c
+ ble_advertising.c
+ 0
+ 0
+
+
+ 5
+ 9
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\ble\common\ble_conn_params.c
+ ble_conn_params.c
+ 0
+ 0
+
+
+ 5
+ 10
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\ble\common\ble_conn_state.c
+ ble_conn_state.c
+ 0
+ 0
+
+
+ 5
+ 11
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\ble\ble_link_ctx_manager\ble_link_ctx_manager.c
+ ble_link_ctx_manager.c
+ 0
+ 0
+
+
+ 5
+ 12
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\ble\common\ble_srv_common.c
+ ble_srv_common.c
+ 0
+ 0
+
+
+ 5
+ 13
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\ble\nrf_ble_gatt\nrf_ble_gatt.c
+ nrf_ble_gatt.c
+ 0
+ 0
+
+
+ 5
+ 14
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\ble\nrf_ble_qwr\nrf_ble_qwr.c
+ nrf_ble_qwr.c
+ 0
+ 0
+
+
+
+
+ nRF_BLE_Services
+ 0
+ 0
+ 0
+ 0
+
+ 6
+ 15
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\ble\ble_services\ble_nus\ble_nus.c
+ ble_nus.c
+ 0
+ 0
+
+
+
+
+ nRF_Drivers
+ 0
+ 0
+ 0
+ 0
+
+ 7
+ 16
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\integration\nrfx\legacy\nrf_drv_clock.c
+ nrf_drv_clock.c
+ 0
+ 0
+
+
+ 7
+ 17
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\integration\nrfx\legacy\nrf_drv_uart.c
+ nrf_drv_uart.c
+ 0
+ 0
+
+
+ 7
+ 18
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\modules\nrfx\soc\nrfx_atomic.c
+ nrfx_atomic.c
+ 0
+ 0
+
+
+ 7
+ 19
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\modules\nrfx\drivers\src\nrfx_clock.c
+ nrfx_clock.c
+ 0
+ 0
+
+
+ 7
+ 20
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\modules\nrfx\drivers\src\nrfx_gpiote.c
+ nrfx_gpiote.c
+ 0
+ 0
+
+
+ 7
+ 21
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\modules\nrfx\drivers\src\prs\nrfx_prs.c
+ nrfx_prs.c
+ 0
+ 0
+
+
+ 7
+ 22
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\modules\nrfx\drivers\src\nrfx_uart.c
+ nrfx_uart.c
+ 0
+ 0
+
+
+ 7
+ 23
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\modules\nrfx\drivers\src\nrfx_uarte.c
+ nrfx_uarte.c
+ 0
+ 0
+
+
+
+
+ nRF_Libraries
+ 0
+ 0
+ 0
+ 0
+
+ 8
+ 24
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\button\app_button.c
+ app_button.c
+ 0
+ 0
+
+
+ 8
+ 25
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\util\app_error.c
+ app_error.c
+ 0
+ 0
+
+
+ 8
+ 26
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\util\app_error_handler_keil.c
+ app_error_handler_keil.c
+ 0
+ 0
+
+
+ 8
+ 27
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\util\app_error_weak.c
+ app_error_weak.c
+ 0
+ 0
+
+
+ 8
+ 28
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\fifo\app_fifo.c
+ app_fifo.c
+ 0
+ 0
+
+
+ 8
+ 29
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\scheduler\app_scheduler.c
+ app_scheduler.c
+ 0
+ 0
+
+
+ 8
+ 30
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\timer\app_timer2.c
+ app_timer2.c
+ 0
+ 0
+
+
+ 8
+ 31
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\uart\app_uart_fifo.c
+ app_uart_fifo.c
+ 0
+ 0
+
+
+ 8
+ 32
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\util\app_util_platform.c
+ app_util_platform.c
+ 0
+ 0
+
+
+ 8
+ 33
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\timer\drv_rtc.c
+ drv_rtc.c
+ 0
+ 0
+
+
+ 8
+ 34
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\hardfault\hardfault_implementation.c
+ hardfault_implementation.c
+ 0
+ 0
+
+
+ 8
+ 35
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\util\nrf_assert.c
+ nrf_assert.c
+ 0
+ 0
+
+
+ 8
+ 36
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\atomic_fifo\nrf_atfifo.c
+ nrf_atfifo.c
+ 0
+ 0
+
+
+ 8
+ 37
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\atomic_flags\nrf_atflags.c
+ nrf_atflags.c
+ 0
+ 0
+
+
+ 8
+ 38
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\atomic\nrf_atomic.c
+ nrf_atomic.c
+ 0
+ 0
+
+
+ 8
+ 39
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\balloc\nrf_balloc.c
+ nrf_balloc.c
+ 0
+ 0
+
+
+ 8
+ 40
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\external\fprintf\nrf_fprintf.c
+ nrf_fprintf.c
+ 0
+ 0
+
+
+ 8
+ 41
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\external\fprintf\nrf_fprintf_format.c
+ nrf_fprintf_format.c
+ 0
+ 0
+
+
+ 8
+ 42
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\memobj\nrf_memobj.c
+ nrf_memobj.c
+ 0
+ 0
+
+
+ 8
+ 43
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\pwr_mgmt\nrf_pwr_mgmt.c
+ nrf_pwr_mgmt.c
+ 0
+ 0
+
+
+ 8
+ 44
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\ringbuf\nrf_ringbuf.c
+ nrf_ringbuf.c
+ 0
+ 0
+
+
+ 8
+ 45
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\experimental_section_vars\nrf_section_iter.c
+ nrf_section_iter.c
+ 0
+ 0
+
+
+ 8
+ 46
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\sortlist\nrf_sortlist.c
+ nrf_sortlist.c
+ 0
+ 0
+
+
+ 8
+ 47
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\strerror\nrf_strerror.c
+ nrf_strerror.c
+ 0
+ 0
+
+
+ 8
+ 48
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\uart\retarget.c
+ retarget.c
+ 0
+ 0
+
+
+
+
+ nRF_Log
+ 0
+ 0
+ 0
+ 0
+
+ 9
+ 49
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\log\src\nrf_log_backend_rtt.c
+ nrf_log_backend_rtt.c
+ 0
+ 0
+
+
+ 9
+ 50
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\log\src\nrf_log_backend_serial.c
+ nrf_log_backend_serial.c
+ 0
+ 0
+
+
+ 9
+ 51
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\log\src\nrf_log_default_backends.c
+ nrf_log_default_backends.c
+ 0
+ 0
+
+
+ 9
+ 52
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\log\src\nrf_log_frontend.c
+ nrf_log_frontend.c
+ 0
+ 0
+
+
+ 9
+ 53
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\libraries\log\src\nrf_log_str_formatter.c
+ nrf_log_str_formatter.c
+ 0
+ 0
+
+
+
+
+ nRF_Segger_RTT
+ 0
+ 0
+ 0
+ 0
+
+ 10
+ 54
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\external\segger_rtt\SEGGER_RTT.c
+ SEGGER_RTT.c
+ 0
+ 0
+
+
+ 10
+ 55
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\external\segger_rtt\SEGGER_RTT_Syscalls_KEIL.c
+ SEGGER_RTT_Syscalls_KEIL.c
+ 0
+ 0
+
+
+ 10
+ 56
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\external\segger_rtt\SEGGER_RTT_printf.c
+ SEGGER_RTT_printf.c
+ 0
+ 0
+
+
+
+
+ nRF_SoftDevice
+ 0
+ 0
+ 0
+ 0
+
+ 11
+ 57
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\softdevice\common\nrf_sdh.c
+ nrf_sdh.c
+ 0
+ 0
+
+
+ 11
+ 58
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\softdevice\common\nrf_sdh_ble.c
+ nrf_sdh_ble.c
+ 0
+ 0
+
+
+ 11
+ 59
+ 1
+ 0
+ 0
+ 0
+ ..\sdk\components\softdevice\common\nrf_sdh_soc.c
+ nrf_sdh_soc.c
+ 0
+ 0
+
+
+
+
+ ::CMSIS
+ 0
+ 0
+ 0
+ 1
+
+
+
+ ::Device
+ 0
+ 0
+ 0
+ 1
+
+
+
diff --git a/app/app.uvprojx b/app/app.uvprojx
index 613c8a5..18310ec 100644
--- a/app/app.uvprojx
+++ b/app/app.uvprojx
@@ -3649,7 +3649,7 @@
flash_s140_nrf52_7.2.0_softdevice
0x4
ARM-ADS
- 8
+ 0
nRF52833_xxAA
@@ -3671,7 +3671,7 @@
-
+ $$Device:nRF52833_xxAA$SVD\nrf52833.svd
0
0
@@ -3775,7 +3775,7 @@
4099
1
- Segger\JL2CM3.dll
+ BIN\UL2CM3.DLL