DAMN-I2C-LOGO

DAMN I2C Non Volatile Ferroelectric Ram Breakout

DAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-PRODUCT

Specifications

  • Device: DamnI2C USB Dongle
  • Operating Voltage: 3.3V
  • Application Pins: SCL, SDA, GND
  • Software: Windows application for I2C operations
  • API Support: Python and other languages with Serial Communications
  • Interface: USB Serial Device (COMx)

Product Usage Instructions

Setting up DamnI2C Dongle

  1. Connect the DamnI2C Dongle to your PC via USB.
  2. Connect the application pins (SCL, SDA, GND) to your target circuit.
  3. Use the provided software or API to control the dongle.

Using DamnI2C Software

  1. Download the software from www.damntools.com.
  2. Launch the software on your Windows PC.
  3. Perform various I2C operations like Bus Scan, Register Read/Write, etc.

API Guide for Custom Applications

Refer to the API Guide for detailed information on integrating DamnI2C with Python or other supported programming languages.

Frequently Asked Questions

Q: What is the operating voltage of the DamnI2C Dongle?

A: The DamnI2C Dongle operates at 3.3V.

Q: Where can I download the DamnI2C software?

A: You can download the software from www.damntools.com.

General Description

  • DamnI2C is a PC-controlled I2C-Master device consisting of a USB dongle and accompanying PC software.
  • The DamnI2C Dongle has three application pins that should be connected to your target circuit: SCL, SDA, and GND. It operates at 3.3V and includes two jumpers to pull up the SCL and SDA lines if needed.DAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-1
  • The PC software is an extremely user-friendly Windows application that allows you to perform various I2C operations such as Bus Scan, Single Register Read/Write, Register Block Read/Write, and more.
  • Customers can either use the provided software or the API documented here to create their applications using Python or any programming language that supports Serial Communications. The dongle appears as a USB Serial Device (COMx).
  • The software can be downloaded from www.damntools.com.DAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-2

API Guide

Important considerations

Number Notation

  • All the number notations are in decimal except the ones beginning with the notation “0x” which are in hexadecimal.

I2C Device Address Byte Notation

  • All references to the I2C Device Addresses are ‘shifted,’ meaning the R/W bit (LSB) is not included in the Device Address. The Device Address is shifted one position to the right to avoid confusion between read and write operations.
  • Example: An EEPROM with a Read Address of 160 and a Write Address of 161 has a Shifted I2C Device Address of 80.
I2C Device Address Byte
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
1010000R/W
80 

I2C Charts Legend

The API Guide includes I2C frame captures showing the results of the operations described in each section.

The I2C chart legend is as follows:DAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-4

Read Operations

Single Register Read  Description

  • The Single Register Read operation reads a specific register. The PC must specify the I2C Device Address, the Register to Read, and whether the Register address is 16-bit or 8-bit. A 16-bit Register Addressing is used for EEPROM memories with more than 255 registers, as more than one byte is required to address registers higher than 255. An 8-bit addressing is used for EEPROMs with 255 or fewer registers.
  • The DamnI2C dongle can respond with two different function codes: Function Code 2, which returns the read value if the operation is successful, or Function Code 3 if an error occurs. The Error ID is also provided in the event of an error.

For both Request and Response, the frame structure includes:

  • Frame Start: Represented by the value 1.
  • Frame End: Represented by the value 4.
  • Frame Size: A 24-bit value indicating the total number of bytes in the frame.
  • These values help identify the start and end of the frame.

Request

Byte index: Byte description Byte value

0123456789
Frame StartFrame Size (24-bit)Frame TypeI2C Device AddressRegister to ReadFrame End
HiMidLoHiLoHiLo
100101 = Random Read Request

(8-bit Addressing)

XXXX4
 10 = Random Read Request

(16-bit Addressing)

 

Responses

Response 1: Single Register Read Operation Succeed

Byte index:0123456
Byte Description:Frame StartFrame Size (24-bit)Frame TypeRead ValueFrame End
HiMidLo
Byte value:10072 = Random Read Answer Okx4

Response 2: Single Register Read Operation Error

Byte index:0123456
Byte Description:Frame StartFrame Size (24-bit)Frame TypeID ErrorFrame End
HiMidLo
 Byte value: 1 0 0 7 3 = Random Read Answer Error1: General error

2: Busy

3: Timeout

 4

Example: 16-bit addressing Read

  • The PC wants to read from a 16-bit addressing EEPROM with the address 0x80 the register 3.

Request

  • 1, 0, 0, 10, 10, 0, 80, 0, 3, 4

Response

  • 1, 0, 0, 7, 2, 149, 4
  • The read value is 149.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-5

Example: 8-bit addressing Read

  • The PC wants to read from an 8-bit addressing EEPROM with the address 0x80 the register 3.

Request

  • 1, 0, 0, 10, 1, 0, 80, 0, 3, 4

Answer

  • 1, 0, 0, 7, 2, 59, 4
  • The read value is 59.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-6

Block Read Description

  • The Block Read operation performs a massive read of the contiguous number of registers. The PC must specify the I2C Device ID, the starting register, the total amount of registers to read (1 to 2000), and whether the register addressing is 16-bit or 8-bit.
  • A 16-bit register address is used for EEPROM memories with more than 255 registers, as more than one byte is required to address registers higher than 255. An 8-bit address is used for EEPROMs with 255 or fewer registers.
  • The DamnI2C dongle can respond with two different function codes: Function Code 8, which returns the read value if the operation is successful, or Function Code 9 if an error occurs. The Error ID is also provided in the event of an error.

For both Request and Response, the frame structure includes:

  • Frame Start: Represented by the value 1.
  • Frame End: Represented by the value 4.
  • Frame Size: A 24-bit value indicating the total number of bytes in the frame.
  • These values help identify the start and end of the frame.

Request

Byte index:01234567891011
 Byte Description: Frame StartFrame Size (24-bit) Frame TypeI2C Device Address 

Start Register

Quantity of Registers

(1 to 2000)

 Frame End
 HiMidLoHiLoHiLoHiLo
Byte value:100127 = Block Read Request

(8-bit Addressing)

xxxxxx4
  12 = Block Read Request

(16-bit Addressing)

 
 41 = Block Read In Bus Stress Mode

(8-bit Addressing)

 42 = Block Read In Bus Stress Mode

(16-bit Addressing)

 43 = Stop Bus Stress Mode

Responses

Response 1: Block Read Operation Succeed

Byte index:01234567Last
Byte Description:Frame StartFrame Size (24-bit)Frame TypeStart RegisterDataFrame End
HiMidLoHiLo
Byte value:1[Quantity of Registers of the Bloc

Read Request] + 8

8 = Block Read Answer OkxxRead

Value 1

Read

Value n

4

Response 2: Block Read Operation Error

Byte index:0123456
Byte Description:Frame StartFrame Size (24-bit)Frame TypeID ErrorFrame End
HiMidLo
 Byte value: 1 0 0 7 9 = Block Read Answer Error1: General error

2: Busy

3: Timeout

 

4

Example: 16-bit addressing Block Read

  • The PC wants to read from a 16-bit addressing EEPROM with the address 0x80, the registers 300, 301, 302.

Request

  • To perform the operation, we should indicate the start address is 300 and that the number of bytes to read is 3:
  • 1, 0, 0, 12, 12, 0, 80, 1, 44, 0, 3, 4

Response

  • 1, 0, 0, 11, 8, 1, 44, 94, 59, 96, 4
  • The read values are 94, 59, and 96.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-7

Example: 8-bit addressing Block Read

  • The PC wants to read from a 16-bit addressing EEPROM with the address 0x80, the registers 20, 21, 22.

Request

  • 1, 0, 0, 12, 7, 0, 80, 0, 20, 0, 3, 4

Response

  • 1, 0, 0, 11, 8, 0, 20, 255, 255, 255, 4
  • The read values are 255, 255, 255.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-8

Current Address Read Description

  • The Current Address Read operation performs a read wherever the register addressing pointer is. The PC must specify only the I2C Device ID and whether the register addressing is 16-bit or 8-bit. A 16-bit register address is used for EEPROM memories with more than 255 registers, as more than one byte is required to address registers higher than 255. An 8-bit address is used for EEPROMs with 255 or fewer registers.
  • The DamnI2C dongle can respond with two different function codes: Function Code 34, which returns the read value if the operation is successful, or Function Code 35 if an error occurs. The Error ID is also provided in the event of an error.

For both Request and Response, the frame structure includes:

  • Frame Start: Represented by the value 1.
  • Frame End: Represented by the value 4.
  • Frame Size: A 24-bit value indicating the total number of bytes in the frame.
  • These values help identify the start and end of the frame.

Request

Byte index: Byte description Byte value

01234567
Frame StartFrame Size (24-bit)Frame TypeI2C Device AddressFrame End
HiMidLoHiLo
100826 = Current Address Read Request

(8-bit Addressing)

XX4
 27 = Current Address Read Request

(16-bit Addressing)

 

Response

Response 1: Current Address Read Operation Succeed

Byte index: Byte description Byte value

0123456
Frame StartFrame Size (24-bit)Frame TypeRead ValueFrame End
HiMidLo
100734 = Current Address Read Answer Okx4

Response 2: Current Address Read Operation Error

Byte index: Byte description Byte value

0123456
Frame StartFrame Size (24-bit)Frame TypeID ErrorFrame End
HiMidLo
 

1

 

0

 

0

 

7

 

35 = Current Address Read Answer Error

1: General error

2: Busy

3: Timeout

 4

Example: Current Address Read

  • The PC wants to read the current address from an EEPROM with the address 0x80.

Request

  • 1, 0, 0, 8, 27, 0, 80, 4

Response

  • 1, 0, 0, 7, 34, 255, 4
  • The read value is 255.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-9

Write Operations

Single Register Write Description

  • Single Register Write operation performs a write of a specific value. The PC must specify the I2C Device Address, the Register to Write, and whether the Register address is 16-bit or 8-bit. A 16-bit Register Addressing is used for EEPROM memories with more than 255 registers, as more than one byte is required to address registers higher than 255. An 8-bit addressing is used for EEPROMs with 255 or fewer registers.
  • The DamnI2C dongle can respond with two different function codes: Function Code 5, which returns the read value if the operation is successful, or Function Code 6 if an error occurs.
  • The Error ID is also provided in the event of an error.

For both Request and Response, the frame structure includes:

  • Frame Start: Represented by the value 1.
  • Frame End: Represented by the value 4.
  • Frame Size: A 24-bit value indicating the total number of bytes in the frame.
  • These values help identify the start and end of the frame.

Request

Byte index: Byte description Byte value

0123456789
 

Frame Start

Frame Size (24-bit) 

Frame Type

I2C Device AddressRegister to

Write

 

Frame End

HiMidLoHiLoHiLo
100114 = Random Write Request

(8-bit Addressing)

XXXX4
 11 = Random Write Request

(16-bit Addressing)

 

Response

Response 1: Single Register Write Operation Succeeds

Byte index:0123456
Byte Description:Frame StartFrame Size (24-bit)Frame TypeDataFrame End
HiMidLo
Byte value:10075 = Random Write Answer OKDon’t care4

Response 2: Single Register Write Operation Error

Byte index:0123456
Byte Description:Frame StartFrame Size (24-bit)Frame TypeID ErrorFrame End
HiMidLo
 Byte value: 1 

0

 

0

 

7

 6 = Random Write Answer Error1: General error

2: Busy

3: Timeout

 4

Example: 16-bit addressing Single Register Write

  • The PC wants to write the value 12 to address 300 of a 16-bit addressing EEPROM with a Device Address of 80.

Request

  • 1, 0, 0, 11, 11, 0, 80, 1, 44, 12, 4

Answer

  • 1, 0, 0, 7, 5, 0, 4
  • Operation Succeed.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-10

Example: 8-bit addressing Single Register Write

  • The PC wants to write the value 12 to address 50 of an 8-bit addressing EEPROM with a Device Address of 80.

Request

  • 1, 0, 0, 11, 4, 0, 80, 0, 50, 12, 4

Response

  • 1, 0, 0, 7, 5, 0, 4
  • Operation Succeed.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-11

Block Write Description

  • The Block Write operation performs a massive write of the contiguous number of registers. The PC must specify the I2C Device ID, the starting register, the register values to write (1 to XXX), and whether the register addressing is 16-bit or 8-bit.
  • A 16-bit register address is used for EEPROM memories with more than 255 registers, as more than one byte is required to address registers higher than 255. An 8-bit address is used for EEPROMs with 255 or fewer registers.
  • The DamnI2C dongle can respond with two different function codes: Function Code 24, which returns the read value if the operation is successful, or Function Code 25 if an error occurs. The Error ID is also provided in the event of an error.

For both Request and Response, the frame structure includes:

  • Frame Start: Represented by the value 1.
  • Frame End: Represented by the value 4.
  • Frame Size: A 24-bit value indicating the total number of bytes in the frame.
  • These values help identify the start and end of the frame.

Request

Byte index: Byte description Byte value

012345678910nLast
Frame StartFrame Size (24-bit) 

Frame Type

I2C Device

Address

Starting RegisterValuesFrame End
HiMidLoHiLoHiLo1st2ndn
1001020 = Block Write Request

(8-bit Addressing)

xxxxxxx4
 21 = Block Write Request

(16-bit Addressing)

 

Response

Response 1: Bloc Write Operation Succeed

Byte index:0123456
Byte Description:Frame StartFrame Size (24-bit)Frame TypeRead ValueFrame End
HiMidLo
Byte value:100724 = Block Write Answer Okx4

Response 2: Block Write Operation Error

Byte index:0123456
Byte Description:Frame StartFrame Size (24-bit)Frame TypeID ErrorFrame End
HiMidLo
 

Byte value:

 

1

 

0

 

0

 

7

 

25 = Block Write Answer Error

1: General error

2: Busy

3: Timeout

 

4

Example: 16-bit addressing Block Write

  • The PC wants to write the values 12, 13, 14, and 15 to the Starting Address 300 of a 16-bit addressing EEPROM with a Device Address of 80.

Request

  • 1, 0, 0, 14, 21, 0, 80, 1, 44, 12, 13, 14, 15, 4

Response

  • 1, 0, 0, 7, 24, 0, 4
  • Operation Succeed.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-12

Example: 16-bit addressing Block Write

  • The PC wants to write the values 12, 13, 14, and 15 to the Starting Address 300 of an 8-bit addressing EEPROM with a Device Address of 80.

Request

  • 1, 0, 0, 14, 20, 0, 80, 0, 50, 12, 13, 14, 15, 4

Response

  • 1, 0, 0, 7, 24, 0, 4
  • Operation Succeed.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-13

Current Address Write Description

  • The Current Address Write operation performs a write where the register addressing pointer is. The PC must specify the I2C Device ID, the data to write, and whether the register addressing is 16-bit or 8-bit.
  • A 16-bit register address is used for EEPROM memories with more than 255 registers, as more than one byte is required to address registers higher than 255. An 8-bit address is used for EEPROMs with 255 or fewer registers.
  • The DamnI2C dongle can respond with two different function codes: Function Code 36, which returns the read value if the operation is successful, or Function Code 37 if an error occurs. The Error ID is also provided in the event of an error.

For both Request and Response, the frame structure includes:

  • Frame Start: Represented by the value 1.
  • Frame End: Represented by the value 4.
  • Frame Size: A 24-bit value indicating the total number of bytes in the frame.
  • These values help identify the start and end of the frame.

Request

Byte index: Byte description Byte value

012345678
 Frame StartFrame Size

(24-bit)

 Frame TypeI2C Device AddressData to Write Frame End
HiMidLoHiLo
1001230 = Current Address Write Request

(8-bit Addressing)

xxx4
 31 = Current Address Write Request

(16-bit Addressing)

 

Responses

Response 1: Current Address Write Operation Succeed

Byte index:01234567nLast Byte
Byte Description:Frame StartFrame Size (24-bit)Frame TypeStart RegisterDataFrame End
HiMidLoHiLo
Byte value:1[Quantity of Registers of

the Bloc Read Request] + 8

36 = Current Address Write Answer OkxxRead

Value 1

Read

Value n

4

Response 2: Current Address Write Operation Error

Byte index:0123456
Byte Description:Frame StartFrame Size (24-bit)Frame TypeID ErrorFrame End
HiMidLo
 

Byte value:

 

1

 

0

 

0

 

7

 

37 = Current Address Write Answer Error

1: General error

2: Busy

3: Timeout

 

4

Example: Current Address Write

  • The PC wants to write the value 15 to the current location of the address pointer. This operation is risky because the exact write location is not explicitly known. Additionally, EEPROMs do not support this type of operation.

Request

  • 1, 0, 0, 9, 30, 0, 80, 15, 4

Response

  • 1, 0, 0, 7, 36, 0, 4
  • Operation Succeed.

I2C OutputDAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-14

Other Operations

I2C Bus Scan Description

This operation scans the I2C Device Addresses from 0 to 127 to check for available chips on the bus.

The DamnI2C Dongle can respond with two different function codes:

  1. Function Code 18: This code indicates that the operation succeeded and returns an array of 127 bytes, each representing one of the 127 possible I2C device addresses on the bus. The first byte corresponds to I2C device address 0, the second byte to address 1, and so on. A value of 1 in the array indicates an error, meaning the device was not detected, while a value of 0 means the device was detected.
  2. Function Code 19: This code indicates that the bus scan operation could not be completed. Note that Function Code 19 should not be confused with a successful bus scan that found no I2C devices; in the latter case, the scan operation succeeds, but no devices are detected.

For both Request and Response, the frame structure includes:

  • Frame Start: Represented by the value 1.
  • Frame End: Represented by the value 4.
  • Frame Size: A 24-bit value indicating the total number of bytes in the frame.

These values help identify the start and end of the frame.

Request

Byte index:0123456
Byte Description:Frame StartFrame Size (24-bit)Frame TypeDataFrame End
HiMidLo
Byte value:100717 = Bus Scan RequestDon’t care4

Responses

Response 1: Bus Scan Operation Succeeds

012345678910nLast byte
Frame StartFrame Size (24-bit) 

Frame Type

I2C Device

Address

Start RegisterI2C Device Detected Value Frame End
HiMidLoHiLoHiLoDevice 0Device 1Device N
10013418 = Bus Scan

Answer Ok

xxxx0: I2C Device ID Detected

1: I2C Device ID Not Detected

4

Response 2: Bus Scan Operation Error

Byte index:012345Last byte
Byte Description:Frame StartFrame Size (24-bit)Frame TypeError IDFrame End
HiMidLo
 

Byte value:

 

1

 

0

 

0

 

7

 

19 = Bus Scan Answer Error

1: General error

2: Busy

3: Timeout

 

4

Example I2C Bus Scan

  • The PC wants to discover which I2C devices are present on the bus.

Request

  • 1, 0, 0, 7, 17, 0, 4

Response

  • 1, 0, 0, 134, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
  • 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4
  • All the ‘ones’ after the number 18 in the response correspond to the tested I2C device addresses that did not respond to the call, indicating they were not present on the bus.
  • A ‘zero’ appears at position 80, indicating that a chip is responding at I2C device address 80. Therefore, only one chip is present on the bus at that address.

I2C Output

  • The full frame capture is not shown due to the large amount of data. Instead, only the relevant part of the frame where address 80 is detected is shown.
  • I2C devices at addresses 79 and 81 are not detected, making it highly likely that there are no chips with those addresses. The device at I2C address 80 is detected, indicating that a chip with this address exists on the bus.DAMN-I2C-Non-Volatile-Ferroelectric-Ram-Breakout-FIG-15

Get DamnI2C Dongle Status Description

  • This operation checks if the DamnI2C Dongle is responding or not. It can be understood as the ping command in the networking world.

For both Request and Response, the frame structure includes:

  • Frame Start: Represented by the value 1.
  • Frame End: Represented by the value 4.
  • Frame Size: A 24-bit value indicating the total number of bytes in the frame.
  • These values help identify the start and end of the frame.

Request

Byte index: Byte description Byte value

0123456
Frame StartFrame Size (24-bit)Frame TypeDataFrame End
HiMidLo
100715 = DamnI2C Dongle Status RequestDon’t care4

Response

Byte index:012345678 to 1920
Byte Description:Frame StartFrame Size (24-bit)Frame TypeDataFrame End
HiMidLoStateFW VersionHW VersionNot used
Byte value:1002116 = DamnI2C Dongle status

Request

0: ReadyxxDon’t care4

Example DamnI2C Dongle Status Request

  • 1, 0, 0, 7, 15, 0, 4

Response

  • 1, 0, 0, 7, 16, 0, 4
  • A dongle is Ready.

I2C Output

  • This operation does not perform any I2C action.

Configure I2C Speed Description

  • This operation changes the I2C Bus speed.
  • The DamnI2C dongle can respond with two different function codes: Function Code 39, which returns the read value if the operation is successful, or Function Code 40 if an error occurs. The Error ID is also provided in the event of an error.

For both Request and Response, the frame structure includes:

  • Frame Start: Represented by the value 1.
  • Frame End: Represented by the value 4.
  • Frame Size: A 24-bit value indicating the total number of bytes in the frame.
  • These values help identify the start and end of the frame.

Request

Byte index: Byte description Byte value

0123456
Frame StartFrame Size (24-bit)Frame TypeDataFrame End
HiMidLo
100738 = Configure I2C Speed0: 100kHz

1: 400kHz

2: 1000kHz

4

Response

Response 1: Configure I2C Bus Speed Operation Succeed

Byte index: Byte description Byte value

0123456
Frame StartFrame Size (24-bit)Frame TypeDataFrame End
HiMidLo
 

1

 

0

 

0

 

7

 

39 = Configure I2C Speed Answer Ok

0: 100kHz

1: 400kHz

2: 1000kHz

 

4

Response 2: Configure I2C Bus Speed Operation Error

Byte index: Byte description Byte value

0123456
Frame StartFrame Size (24-bit)Frame TypeDataFrame End
HiMidLo
100740 = Configure I2C Speed Answer ErrorDon’t care4

Example DamnI2C Dongle Status Request

  • 1, 0, 0, 7, 38, 1, 4

Response

  • 1, 0, 0, 7, 39, 1, 4
  • Operation Succeed.

I2C Output

  • This operation does not perform any I2C action.

Operation Codes

CodeDescription
1Random Read Request (8-bit Address)
2Random Read Answer Ok
3Random Read Answer Error
4Random Write Request (8-bit Register Address)
5Random Write Answer OK
6Random Write Answer Error
7Block Read Request (8-bit Device Address, 8-bit Register Address)
8Block Read Answer Ok
9Block Read Answer Error
10Random Read Request (16-bit Register Address)
11Random Write Request (16-bit Register Address)
12Block Read Request (8-bit Device Address, 16-bit Register Address)
13Block Read Request (10-bit Device Address, 8-bit Register Address) NOT IMPLEMENTED
14Block Read Request (10-bit Device Address, 16-bit Register Address) NOT IMPLEMENTED
15DamnI2C Status Request
16DamnI2C Status Answer
17Bus Scan Request
18Bus Scan Answer Ok
19Bus Scan Answer Error
20Block Write Request (8-bit Device Address, 8-bit Register Address)
21Block Write Request (8-bit Device Address, 16-bit Register Address)
22Block Write Request (10-bit Device Address, 8-bit Register Address) NOT IMPLEMENTED
23Block Write Request (10-bit Device Address, 16-bit Register Address) NOT IMPLEMENTED
24Block Write Answer Ok
25Block Write Answer Error
26Current Address Read Request (8-bit Register Address)
27Current Address Read Request (16-bit Register Address)
28Current Address Read Request (10-bit Device Address, 8-bit Register Address) NOT IMPLEMENTED
29Current Address Read Request (10-bit Device Address, 16-bit Register Address) NOT IMPLEMENTED
30Current Address Write Request (8-bit Device Address, 8-bit Register Address)
31Current Address Write Request (8-bit Device Address, 16-bit Register Address)
32Current Address Write Request (10-bit Device Address, 8-bit Register Address) NOT IMPLEMENTED
33Current Address Write Request (10-bit Device Address, 16-bit Register Address) NOT IMPLEMENTED
34Current Address Read Answer Ok
35Current Address Read Answer Error
36Current Address Write Answer Ok
37Current Address Write Answer Error
38Configure I2C Speed Request
39Configure I2C Speed Response Ok
40Configure I2C Speed Response Error
41Block Read In Bus Stress Mode (8-bit Device Address, 8-bit Register Address)
42Block Read In Bus Stress Mode (8-bit Device Address, 16-bit Register Address)
43Stop Bus Stress Mode

Documents / Resources

DAMN I2C Non Volatile Ferroelectric Ram Breakout [pdf] Instruction Manual
I2C Non Volatile Ferroelectric Ram Breakout, I2C, Non Volatile Ferroelectric Ram Breakout, Ferroelectric Ram Breakout, Ram Breakout

References

Leave a comment

Your email address will not be published. Required fields are marked *