A71CH on Raspberry Pi3: I2C errors

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

A71CH on Raspberry Pi3: I2C errors

1,521 Views
quentincabrol
Contributor III

Hello to the NXP Community team,

I am reaching you because I am running into troubles while trying to interface the A71CHARD demo board to my Raspberry Pi3.

Here is what I did already:

  • modified the A71CH Makefile to build for the Raspberry Pi
  • deactivated the i2c interface of the Pi3 which yielded a 'Read Block not supported' upon launching the demos
  • installed pigpio to run i2c as a bit-banged bus
  • modified /boot/config.txt with the following 

    dtoverlay=i2c-gpio,i2c_gpio_sda=2,i2c_gpio_scl=3,i2c_gpio_delay_us=4

Details on the Config:

Linux <GATEWAY_NAME> 4.14.98-v7+ #1200 SMP Tue Feb 12 20:27:48 GMT 2019 armv7l GNU/Linux

pigpio V64 

I could compile the following examples:

  • A71CH_i2c_native
  • A71CHlight_i2c_native
  • a71chConfig_i2c_native

Now I am running into issues with some of the simple commands responding correctly (e.g. info device, info cnt, info pairs) but most of them return a 0x7011 or 0x7010 (Write or Read error code), including the i2c native demo, the light i2c native demo and info status, info objects called from the config interactive console. After an error code, the normally operational commands return Protocol exception 01 A7 and the A71CH required a softReset to be issued (device hanging). I have tried to look directly at the bus with a logic analyzer but the results are not quite clear.

I have attached in the following zip:

  • the console logs for the different run cases
  • the Saleae analyzer outputs and decoded messages in Hex format (.csv files)

I have already tried to change the gpio delay & timeout parameters in the dtoverlay as I think it is certainly related to the implementation of the i2c bus on the Raspberry Pi3 side but without success that far. Do you have any idea what the source of the issue might be?

Thank you in advance for your help

Best Regards

Labels (1)
0 Kudos
2 Replies

1,149 Views
estephania_mart
NXP TechSupport
NXP TechSupport

hello, 

I believe that the problem you are experiencing it's similar to this one 

 https://community.nxp.com/thread/477378 

Could you please check that thread and verify if that it's helpful for you? 

Regards, 

Estephania 

1,149 Views
quentincabrol
Contributor III

Hello,

Indeed I first followed these steps but in addition to that, the makefile points to an /rsp folder that is not present in the package and must contain:

- i2c_a7.c leveraging pigpio (not the same as the i2c_a7 provided for the imx platform)

- pigpio.h/c

- types.h

The pigpio standard library files (on pigpio github) were missing some undeclared defines and I add to edit them so for it to be operational on the pi. 

The Raspberry allows for a fast and easy testing of the IC that does not require to rebuild a full Yocto (we are working with the i.Mx7 platform). Also it might be helpful for all the A71CH users that the adapted files for a build on Pi be added to one of your future A71CH Software Package releases.

Here are the compilation issues observed when using the standard pigpio files:

Aperçu de image.png

It is operational now and I was able to test the different A71CH features.

Thank you for your support

Best Regards

Quentin

0 Kudos