> For the complete documentation index, see [llms.txt](https://inacks.gitbook.io/inacks-is3720-i2c-dmx+rdm-receiver-ic/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://inacks.gitbook.io/inacks-is3720-i2c-dmx+rdm-receiver-ic/datasheet/usage/troubleshooting.md).

# Troubleshooting

> This page is not the authoritative source for design information. The official [IS3720 datasheet](https://www.inacks.com/is3720) published on [www.inacks.com](http://www.inacks.com) is the authoritative reference: always consult it for the latest information.

For proper operation, first ensure that both hardware and firmware are correctly configured by following the next validation steps. Once validated, you can begin reading DMX Channels and mapping them to the LEDs from your firmware.

**Hardware Validation**

First, ensure you have a proper hardware design by:

1. The VDD pin is supplied with 3.3 V.
2. Having an RS485 transceiver connected to RX/TX and DIR pins. The RX/TX pin must be pulled up with a 1 kΩ resistor to the transceiver supply voltage (either 3.3 V or 5 V).
3. Having your microcontroller connected via I2C on the SCL and SDA pins, with pull-up resistors to 3.3 V or 5 V.
4. Having the I2CSPD pin to VSS for 100 kHz, or any other configuration.

Refer to chapter Hardware Examples for more information about hardware design.

**Firmware Validation**

Before starting with your firmware, it is good practice to first validate that your microcontroller can properly communicate via I2C.

The simplest way to do this is to scan the I2C‑Serial interface and confirm that the IS3720 is detected on the bus.

Refer to application note *ISAN0001-How to scan I2C Serial Interface* for instructions on scanning the I2C-Serial interface.

Once the IS3720 is detected on the bus, you can be confident that the I2C‑serial interface is working correctly, and that any remaining issues will come from your firmware code.

At this point, you can implement your I2C read and write routine. The IS3720 uses **16-bit register addressing size with 8-bit data size**. Understanding this is crucial for proper implementation of read and write routines.

To verify your read routine, read the CHIP\_ID register at address 513. This register is read-only and always returns the fixed value 152. If you obtain this value, communication is validated and you can safely begin your firmware.

Refer to Firmware Examples chapter for example codes in STM32, Arduino and Raspberry Pi platforms.
