DcAN I/O Interface

From eMDeeWiki
Jump to navigationJump to search

Data can be passed between a client and a DcAN I/O device through the DcAN I/O Interface. Packets are sent through a TCP/IP port. The following rules apply:

  • The I/O device shall listen for TCP/IP connections on IP port number 33001
  • A maximum of 3 clients can simultaneously connect to the DcAN I/O Interface port
  • All elements of each packet shall be in network byte order

The following sections define the packets that are valid for the DcAN I/O Interface


I2C Read Request

  • Each element of the I2C Read Request Packet is a 16 bit unsigned integer
  • The first 16 bit word of the packet represents the unique identifier and must be equal to 0x301
  • An I2C Read Response Packet with the requested data will be sent back to the client in response to each I2C Read Request


Byte Offset Element Notes
0 0x301
2 Request ID Arbitrary value that will be sent back in the response
4 I2C Bus ID 0=I2C Bus 'A'
1=I2C Bus 'B'
6 # Bytes to Read
8 I2C Address
10 Read Mode 0=One-time read
1=Periodic
2=On Change + Periodic
12 Periodic Read Frequency millseconds

I2C Read Response

  • Each element of the I2C Read Response Packet is a 16 bit unsigned integer
  • The first 16 bit word of the packet represents the unique identifier and must be equal to 0x302
  • An I2C Read Response Packet is sent to the client in response to an I2C Read Request


Byte Offset Element
0 0x302
2 Request ID
4 I2C Bus ID
6 # Bytes Returned
8 Data Returned from I2C

I2C Write

  • The first 10 bytes of the I2C Write Packet are 16 bit unsigned integers
  • The first 16 bit word of the packet represents the unique identifier and must be equal to 0x303


Byte Offset Element
0 0x303
2 Request ID
4 I2C Bus ID
6 # Bytes to Write
8 I2C Address
10... Bytes to be Written

Write Display Pixel Data

  • The first 14 bytes of the Write Display Data Packet are 16 bit unsigned integers
  • The first 16 bit word of the packet represents the unique identifier and must be equal to 0x304


Byte Offset Element
0 0x304
2 I2C Bus ID
4 I2C Address
6 Beginning Pixel Column
8 Beginning Pixel Row
10 Total Number of Pixel Columns
12 Total Number of Pixel Rows
14... Array of Pixel Columns and Rows (8 pixels per byte)