Arduino BETA5 Startup Log explained

From KONNEKTING Wiki
Revision as of 13:37, 26 September 2020 by Konnekting (talk | contribs)
Jump to navigation Jump to search
DEBUG! free ram: 27475 bytes 
Test-Suite:  M0dularis+ v1.0 @ beta5 build date=Sep 26 2020 time=15:17:01

Right at startup, the log shows free memory (RAM) and the build version and date. If you face any errors and want to report an issue, it's always a good idea to copy&paste the complete log. That helps to identify the version you're using.

Setup Memory ...
SPI Flash initialized
--> DONE
Setup Memory Fctptr ...
--> DONE
Initialize KonnektingDevice (build date=Sep 26 2020 time=15:16:46)
setProgLed=0
setProgState=0
Manufacturer: 0xdead Device: 0xff Revision: 0x00

Here you see which manufacturer, device and revision you set in your setch.

memRead: index=0x0000 using fctptr data=0x00
memRead: index=0x0001 using fctptr data=0x00
version: 0x0000 expected: 0x0000

Here the system tries to read the KONNEKTING version from the internal memory (EEPROM, SPI flash, internal flash, whatever you have configured). At the time beeing, the version counter is "0". If you upgrade an "old" device with a new KONNEKTING Version which has a incompatible memory layout, the memory has to be re-formatted (cleared to new layout). For the time beeing, this is not automatically handled by KONNEKTING. You have to format the memory on your own.

comobjs in sketch: 2

The log will tell you how many communication objects are found in the sketch. This must match the number of objects the KONNEKTING Suite knows from kdevice.xml or kconfig.xml.

memRead: index=0x0002 using fctptr data=0x0f
_deviceFlags: (bin)00001111

It's reading the device flags from memory. Check the explanation of device flags here: KONNEKTING_Protocol_Specification_0x01#Device_Flags In our case hrer, we have:

  • stored settings (=no factory settings)
  • stored IA
  • stored ComObjs
  • stored params
  • no data storage (=data storage factory settings)

The right most 3 bits are "unused".


->MEMORY

<syntaxhighlight line>

This means, the device is reading it's configureation from memory. A newly flashed device with empty flash/eeprom will show "->FACTORY"

memRead: index=0x0010 using fctptr data=0x11 memRead: index=0x0011 using fctptr data=0x01 ia=0x1101 Reading commobj table...memRead: index=0x041e using fctptr data=0x02 2 entries memRead: index=0x041f using fctptr data=0x2a

 ComObj #0 config: hex=0x2a bin=00101010

memRead: index=0x0420 using fctptr data=0x34

 ComObj #1 config: hex=0x34 bin=00110100

Reading commobj table...*done* Reading address table...memRead: index=0x0020 using fctptr data=0x05 5 entries memRead: index=0x0021 using fctptr data=0x3f memRead: index=0x0022 using fctptr data=0x07

 index=0 GA: hex=0x3f07

memRead: index=0x0023 using fctptr data=0x3f memRead: index=0x0024 using fctptr data=0x08

 index=1 GA: hex=0x3f08

memRead: index=0x0025 using fctptr data=0x3f memRead: index=0x0026 using fctptr data=0x09

 index=2 GA: hex=0x3f09

memRead: index=0x0027 using fctptr data=0x3f memRead: index=0x0028 using fctptr data=0x0a

 index=3 GA: hex=0x3f0a

memRead: index=0x0029 using fctptr data=0x3f memRead: index=0x002a using fctptr data=0x0b

 index=4 GA: hex=0x3f0b

Reading address table...*done* Reading association table...memRead: index=0x021f using fctptr data=0x06 6 entries memRead: index=0x0220 using fctptr data=0x00 memRead: index=0x0221 using fctptr data=0x00

 index=0 ComObj=0 ga=0x3f07

memRead: index=0x0222 using fctptr data=0x01 memRead: index=0x0223 using fctptr data=0x01

 index=1 ComObj=1 ga=0x3f08

memRead: index=0x0224 using fctptr data=0x02 memRead: index=0x0225 using fctptr data=0x01

 index=2 ComObj=1 ga=0x3f09

memRead: index=0x0226 using fctptr data=0x03 memRead: index=0x0227 using fctptr data=0x00

 index=3 ComObj=0 ga=0x3f0a

memRead: index=0x0228 using fctptr data=0x03 memRead: index=0x0229 using fctptr data=0x01

 index=4 ComObj=1 ga=0x3f0a

memRead: index=0x022a using fctptr data=0x04 memRead: index=0x022b using fctptr data=0x01

 index=5 ComObj=1 ga=0x3f0b

Reading association table...*done* _assocMaxTableEntries=2 IA: 0x1101 Malloc maxaddressedComObj: 2 Reset triggered! Reset attempts: 9 Data available: 1 Reset successful Init : Normal mode started

Init successful KnxDevice startup status: 0x00 --> setup() DONE </syntaxhighlight>