AnsweredAssumed Answered

A71CH on Raspberry Pi3: I2C errors

Question asked by Quentin Cabrol on Apr 23, 2019
Latest reply on May 2, 2019 by Quentin Cabrol

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

Attachments

Outcomes