Difference between revisions of "KONNEKTING Protocol Specification 0x01"

From KONNEKTING Wiki
Jump to navigation Jump to search
Line 1: Line 1:
 
= Message Types for Protocol-Version 0x01 =
 
= Message Types for Protocol-Version 0x01 =
  
--- DRAFT ---
+
--- DRAFT ---<br>
This is the second protocol version.  
+
This is the second protocol version. <br>
--- DRAFT ---
+
--- DRAFT ---<br>
 
 
 
 
ETS MemoryWrite:
 
 
 
* 1 byte: Count
 
* 2 byte: address
 
* n byte: memory data
 
 
 
for konnekting this would mean:
 
 
 
2 byte header, 1 byte length, 2 byte address = 9 byte for memory data per telegram :(
 
 
 
 
    
 
    
 
== 0x00 Acknowledge ==
 
== 0x00 Acknowledge ==
Line 46: Line 34:
  
  
== 0x01 ReadDeviceInfo ==
+
== 0x01 DeviceInfoRead ==
  
* '''Message Name:''' ReadDeviceInfo 
+
* '''Message Name:''' DeviceInfoRead
 
* '''MsgID:''' 1 dec / 0x01 hex   
 
* '''MsgID:''' 1 dec / 0x01 hex   
 
* '''Description:''' Initiates reading general device information     
 
* '''Description:''' Initiates reading general device information     
Line 69: Line 57:
  
  
== 0x02 AnswerDeviceInfo ==
+
== 0x02 DeviceInfoResponse ==
  
* '''Message Name:''' AnswerDeviceInfo  
+
* '''Message Name:''' DeviceInfoResponse  
 
* '''MsgID:''' 2 dec / 0x02 hex   
 
* '''MsgID:''' 2 dec / 0x02 hex   
* '''Description:''' Answers a ReadDeviceInfo message   
+
* '''Description:''' Response to a DeviceInfoRead message   
 
* '''Requires Programming Mode:''' n/a
 
* '''Requires Programming Mode:''' n/a
  
Line 132: Line 120:
  
  
== 0x0A WriteProgrammingMode ==
+
== 0x0A ProgrammingModeWrite ==
  
* '''Message Name:''' WriteProgrammingMode  
+
* '''Message Name:''' ProgrammingModeWrite  
 
* '''MsgID:''' 10 dec / 0x0A hex   
 
* '''MsgID:''' 10 dec / 0x0A hex   
 
* '''Description:''' Sets/Unsets Programming-Mode for device with given individual address. Device will respond with a "Acknowledge" message.   
 
* '''Description:''' Sets/Unsets Programming-Mode for device with given individual address. Device will respond with a "Acknowledge" message.   
Line 160: Line 148:
  
  
== 0x0B ReadProgrammingMode ==
+
== 0x0B ProgrammingModeRead ==
  
* '''Message Name:''' ReadProgrammingMode  
+
* '''Message Name:''' ProgrammingModeRead  
 
* '''MsgID:''' 11 dec / 0x10 hex   
 
* '''MsgID:''' 11 dec / 0x10 hex   
 
* '''Description:''' Reads current programming mode of all listening devices. If more than one device is in programming-mode, you will get more then one AnswerProgrammingMode messages.     
 
* '''Description:''' Reads current programming mode of all listening devices. If more than one device is in programming-mode, you will get more then one AnswerProgrammingMode messages.     
Line 177: Line 165:
  
  
== 0x0C AnswerProgrammingMode ==
+
== 0x0C ProgrammingModeResponse ==
  
* '''Message Name:''' AnswerProgrammingMode  
+
* '''Message Name:''' ProgrammingModeResponse  
 
* '''MsgID:''' 12 dec / 0x11 hex   
 
* '''MsgID:''' 12 dec / 0x11 hex   
* '''Description:''' Answers a ReadDeviceInfo message with the device's individual address.   
+
* '''Description:''' Response to ProgrammingModeRead message.   
 
* '''Requires Programming Mode:''' n/a
 
* '''Requires Programming Mode:''' n/a
  
Line 200: Line 188:
  
  
== 0x14 WriteIndividualAddress ==
+
== 0x14 IndividualAddressWrite ==
  
* '''Message Name:''' WriteProgrammingMode  
+
* '''Message Name:''' IndividualAddressWrite  
 
* '''MsgID:''' 20 dec / 0x14 hex   
 
* '''MsgID:''' 20 dec / 0x14 hex   
 
* '''Description:''' Writes the individual address the device should use. Device will respond with a "Acknowledge" message.    
 
* '''Description:''' Writes the individual address the device should use. Device will respond with a "Acknowledge" message.    
Line 223: Line 211:
  
  
== 0x15 ReadIndividualAddress ==
+
== 0x15 IndividualAddressRead ==
  
* '''Message Name:''' ReadIndividualAddress  
+
* '''Message Name:''' IndividualAddressRead  
 
* '''MsgID:''' 21 dec / 0x15 hex   
 
* '''MsgID:''' 21 dec / 0x15 hex   
 
* '''Description:''' Each device in programming mode will respond with its individual address      
 
* '''Description:''' Each device in programming mode will respond with its individual address      
Line 240: Line 228:
  
  
== 0x16 AnswerIndividualAddress ==
+
== 0x16 IndividualAddressResponse ==
  
* '''Message Name:''' AnswerIndividualAddress  
+
* '''Message Name:''' IndividualAddressResponse  
 
* '''MsgID:''' 22 dec / 0x16 hex   
 
* '''MsgID:''' 22 dec / 0x16 hex   
* '''Description:''' Answers a ReadIndividualAddress message with the device's individual address.   
+
* '''Description:''' Response to a IndividualAddressRead message with the device's individual address.   
 
* '''Requires Programming Mode:''' n/a
 
* '''Requires Programming Mode:''' n/a
  
Line 267: Line 255:
 
* '''Message Name:''' MemoryWrite
 
* '''Message Name:''' MemoryWrite
 
* '''MsgID:''' ?? dec / 0x?? hex   
 
* '''MsgID:''' ?? dec / 0x?? hex   
* '''Description:'''  
+
* '''Description:''' Write data to device memory
 
* '''Requires Programming Mode:''' yes
 
* '''Requires Programming Mode:''' yes
  
Line 275: Line 263:
 
|-
 
|-
 
|2
 
|2
|
+
|Count: Number of bytes to write to memory, starting at "Address"
 
|-
 
|-
|3..13
+
|3
|
+
|Address HI
 +
|-
 +
|4
 +
|Address LO
 +
|-
 +
|5..13
 +
|1..9 bytes of Data, depends on "Count". Remaining bytes: 0xFF
 
|}
 
|}
  
Line 287: Line 281:
 
* '''Message Name:''' MemoryRead   
 
* '''Message Name:''' MemoryRead   
 
* '''MsgID:''' ?? dec / 0x?? hex   
 
* '''MsgID:''' ?? dec / 0x?? hex   
* '''Description:'''  
+
* '''Description:''' Reads data from device memory
 
* '''Requires Programming Mode:''' yes
 
* '''Requires Programming Mode:''' yes
  
Line 295: Line 289:
 
|-
 
|-
 
|2
 
|2
|
+
|Count: Number of bytes to read from address
 
|-
 
|-
|3..13
+
|3
|
+
|Address HI
 +
|-
 +
|4
 +
|Address LO
 +
|-
 +
|5..13
 +
|0xFF, unused
 
|}
 
|}
  
Line 307: Line 307:
 
* '''Message Name:''' MemoryResponse   
 
* '''Message Name:''' MemoryResponse   
 
* '''MsgID:''' ?? dec / 0x?? hex   
 
* '''MsgID:''' ?? dec / 0x?? hex   
* '''Description:'''  
+
* '''Description:''' Response to MemoryRead
 
* '''Requires Programming Mode:''' yes
 
* '''Requires Programming Mode:''' yes
  
Line 315: Line 315:
 
|-
 
|-
 
|2
 
|2
|
+
|Count: Number of bytes that have been read from address
 +
|-
 +
|3
 +
|Address HI
 
|-
 
|-
|3..13
+
|4
|
+
|Address LO
 +
|-
 +
|5..13
 +
|1..9 bytes of Data, depends on "Count". Remaining bytes: 0xFF
 
|}
 
|}

Revision as of 20:27, 5 March 2018

Message Types for Protocol-Version 0x01

--- DRAFT ---
This is the second protocol version.
--- DRAFT ---

0x00 Acknowledge

  • Message Name: Acknowledge
  • MsgID: 0 dec / 0x00 hex
  • Description: Acknowledge a previous received WRITE message
  • Requires Programming Mode: n/a
Byte no# Description
2 Acknowledge type:

0x00: ACK
0xFF: NACK

3 Error-Code (only NACK):

0x00: no error / no error code available
0x01: ???
0xFE: ???
0xFF: ???

4..13 0x00, unused


0x01 DeviceInfoRead

  • Message Name: DeviceInfoRead
  • MsgID: 1 dec / 0x01 hex
  • Description: Initiates reading general device information
  • Requires Programming Mode: no
Byte no# Description
2 IndividualAddress HI
3 IndividualAddress LO
4..13 0x00, unused


0x02 DeviceInfoResponse

  • Message Name: DeviceInfoResponse
  • MsgID: 2 dec / 0x02 hex
  • Description: Response to a DeviceInfoRead message
  • Requires Programming Mode: n/a
Byte no# Description
2 Manufacturer-ID HI
3 Manufacturer-ID LO
4 Device-ID
5 RevisionID
6 Device Flags

Flag masks:
0x80: Factory-Flag: 1 = factory sttings, 0 = stored settings

7 IndividualAddress HI
8 IndividualAddress LO
9..13 0x00, unused


0x09 Restart

  • Message Name: Restart
  • MsgID: 9 dec / 0x09 hex
  • Description: Restart device (device reboot, no memory reset)
  • Requires Programming Mode: no
Byte no# Description
2 IndividualAddress HI
3 IndividualAddress LO
4..13 0x00, unused


0x0A ProgrammingModeWrite

  • Message Name: ProgrammingModeWrite
  • MsgID: 10 dec / 0x0A hex
  • Description: Sets/Unsets Programming-Mode for device with given individual address. Device will respond with a "Acknowledge" message.
  • Requires Programming Mode: no
Byte no# Description
2 IndividualAddress HI
3 IndividualAddress LO
4 Mode:

0x00 = OFF
0x01 = ON

5..13 0x00, unused


0x0B ProgrammingModeRead

  • Message Name: ProgrammingModeRead
  • MsgID: 11 dec / 0x10 hex
  • Description: Reads current programming mode of all listening devices. If more than one device is in programming-mode, you will get more then one AnswerProgrammingMode messages.
  • Requires Programming Mode: no
Byte no# Description
2..13 0x00, unused


0x0C ProgrammingModeResponse

  • Message Name: ProgrammingModeResponse
  • MsgID: 12 dec / 0x11 hex
  • Description: Response to ProgrammingModeRead message.
  • Requires Programming Mode: n/a
Byte no# Description
2 IndividualAddress HI
3 IndividualAddress LO
4..13 0x00, unused


0x14 IndividualAddressWrite

  • Message Name: IndividualAddressWrite
  • MsgID: 20 dec / 0x14 hex
  • Description: Writes the individual address the device should use. Device will respond with a "Acknowledge" message.
  • Requires Programming Mode: yes
Byte no# Description
2 IndividualAddress HI
3 IndividualAddress LO
4..13 0x00, unused


0x15 IndividualAddressRead

  • Message Name: IndividualAddressRead
  • MsgID: 21 dec / 0x15 hex
  • Description: Each device in programming mode will respond with its individual address
  • Requires Programming Mode: yes
Byte no# Description
2..13 0x00, unused


0x16 IndividualAddressResponse

  • Message Name: IndividualAddressResponse
  • MsgID: 22 dec / 0x16 hex
  • Description: Response to a IndividualAddressRead message with the device's individual address.
  • Requires Programming Mode: n/a
Byte no# Description
2 IndividualAddress HI
3 IndividualAddress LO
4..13 0x00, unused


0x?? MemoryWrite

  • Message Name: MemoryWrite
  • MsgID: ?? dec / 0x?? hex
  • Description: Write data to device memory
  • Requires Programming Mode: yes
Byte no# Description
2 Count: Number of bytes to write to memory, starting at "Address"
3 Address HI
4 Address LO
5..13 1..9 bytes of Data, depends on "Count". Remaining bytes: 0xFF


0x?? MemoryRead

  • Message Name: MemoryRead
  • MsgID: ?? dec / 0x?? hex
  • Description: Reads data from device memory
  • Requires Programming Mode: yes
Byte no# Description
2 Count: Number of bytes to read from address
3 Address HI
4 Address LO
5..13 0xFF, unused


0x?? MemoryResponse

  • Message Name: MemoryResponse
  • MsgID: ?? dec / 0x?? hex
  • Description: Response to MemoryRead
  • Requires Programming Mode: yes
Byte no# Description
2 Count: Number of bytes that have been read from address
3 Address HI
4 Address LO
5..13 1..9 bytes of Data, depends on "Count". Remaining bytes: 0xFF