element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Avnet Boards Forums
  • Products
  • Dev Tools
  • Avnet & Tria Boards Community
  • Avnet Boards Forums
  • More
  • Cancel
Avnet Boards Forums
Avnet Boards General 7" zed touch display kit
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Avnet Boards Forums to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 4 replies
  • Subscribers 366 subscribers
  • Views 390 views
  • Users 0 members are here
Related

7" zed touch display kit

Former Member
Former Member over 12 years ago

I have been trying to run the tutorial programs for the 7" zed touch display kit but I have been facing this problem where I get the following error:

ERROR : Failed to write Touch Controller

I have narrowed down the error to the point where the program attempts to send 2 bytes of data using IIC. Specifically at the final few lines of the program. I'm not sure what exactly it is writing to, I can only guess that it's writing something to the ALI3 sharp interface or the LCD interface, but I'm not sure what it is trying to trigger with the final write.

int zed_ali3_controller_demo_init( zed_ali3_controller_demo_t *pDemo )
{
   int ret;

   xil_printf("
r");
   xil_printf("------------------------------------------------------
r");
   xil_printf("--              ZedBoard Display Kit                --
r");
   xil_printf("--           ALI3 Controller Demonstration          --
r");
   xil_printf("--             Standalone Application               --
r");
   xil_printf("------------------------------------------------------
r");
   xil_printf("
r");

   // Fill frame stores with color bars
   xil_printf( "Video Frame Buffer Initialization ...
r" );
   int32u frame, row, col;
   int32u pixel;
   volatile int32u *pStorageMem = (int32u *)pDemo->uBaseAddr_MEM_FrameBuffer;
   for ( frame = 0; frame < pDemo->uNumFrames_FrameBuffer; frame++ )
   {
      for ( row = 0; row < pDemo->ali3_height; row++ )
      {
         for ( col = 0; col < pDemo->ali3_width; col++ )
         {
             pixel = 0x00000000; // Black
             //pixel = 0x00FFFFFF; // White
             *pStorageMem++ = pixel;
          }
       }
    }

    // Wait for DMA to synchronize.
    Xil_DCacheFlush();

   // Initialize Output Side of AXI VDMA
   xil_printf( "Video DMA (Output Side) Initialization ...
r" );
   vfb_common_init(
      pDemo->uDeviceId_VDMA_FrameBuffer, // uDeviceId
      &(pDemo->vdma_ali3)                // pAxiVdma
      );
   vfb_tx_init(
      &(pDemo->vdma_ali3),               // pAxiVdma
      &(pDemo->vdmacfg_ali3_read),       // pReadCfg
      pDemo->ali3_resolution,            // uVideoResolution
      pDemo->ali3_resolution,            // uStorageResolution
      pDemo->uBaseAddr_MEM_FrameBuffer,  // uMemAddr
      pDemo->uNumFrames_FrameBuffer      // uNumFrames
      );

   // IIC Initialization for touch controller
   xil_printf( "I2C Touch Controller Initialization ...
r");
   ret = zed_iic_axi_init(&(pDemo->touch_iic),"ALI3 Touch I2C Controller0", pDemo->uBaseAddr_IIC_Touch);
   if ( !ret )
   {
      xil_printf("ERROR : Failed to open ZED-IIC driver
r");
      return -1;
   }

   pDemo->touch_irqs   = 0;
   pDemo->touch_events = 0;
   pDemo->touch_posx   = 0x0000;
   pDemo->touch_posy   = 0x0000;

   zed_ali3_controller_demo_SetupInterruptSystem( pDemo );


      int8u ChipAddress = 0x20;
      int8u RegAddress  = 0x00;
      int8u RegData     = 0x11; // [4] = INT enabled, [0] = Touch enabled
      int8u ByteCount   = 1;
      ret = pDemo->touch_iic.fpIicWrite( &(pDemo->touch_iic), ChipAddress, RegAddress, &RegData, ByteCount );
      if ( !ret )
      {
          xil_printf( "ERROR : Failed to write Touch Controller
r" );
          return -1;
      }


   return 0;

}

Any help would be appreciated thanks =)

  • Sign in to reply
  • Cancel
Parents
  • zedhed
    0 zedhed over 12 years ago

    Hi discmon,

    I have encountered this issue four times before with the display kit.  In all cases, that error message "ERROR : Failed to write Touch Controller" indicates that something is breaking the communications path with the touch controller.

    In two cases, a loose or broken touch FPC cable was the culprit (this is the short 8 conductor wire between the touch controller and the Adapter board mounted to the reverse side of the acrylic).  Sometimes removing and re-seating the cable resolved the problems and the touch calibration was able to proceed.

    In the other two cases, we found that components were dislodged from the surface of the touch controller board.

    If you have some time to work through this with me, I would like to take this offline and try to narrow this down to whether it is a handling issue (improperly packed in shipping box) or whether there is some sort of mechanical design problem (plastic backing breaking components off) on this kit. 

    This appears to have happened on least four more instances than we would have liked and if there is an easy way to resolve this, I would really like to try and identify that.

    Regards,

    -Kevin

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Reply
  • zedhed
    0 zedhed over 12 years ago

    Hi discmon,

    I have encountered this issue four times before with the display kit.  In all cases, that error message "ERROR : Failed to write Touch Controller" indicates that something is breaking the communications path with the touch controller.

    In two cases, a loose or broken touch FPC cable was the culprit (this is the short 8 conductor wire between the touch controller and the Adapter board mounted to the reverse side of the acrylic).  Sometimes removing and re-seating the cable resolved the problems and the touch calibration was able to proceed.

    In the other two cases, we found that components were dislodged from the surface of the touch controller board.

    If you have some time to work through this with me, I would like to take this offline and try to narrow this down to whether it is a handling issue (improperly packed in shipping box) or whether there is some sort of mechanical design problem (plastic backing breaking components off) on this kit. 

    This appears to have happened on least four more instances than we would have liked and if there is an easy way to resolve this, I would really like to try and identify that.

    Regards,

    -Kevin

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Children
  • Former Member
    0 Former Member over 10 years ago in reply to zedhed

    Was this issue ever resolved?  I purchased a display kit with the same result.  The interrupt appears to be working, as I see a new message appear when I touch the screen.  However, I always get Failed to write Touch Controller or Failed to read Touch Controller.  I probed the IRQ, and it is toggling. I also probed SCL and SDA. Both of them appear to be toggling, but apparently there is some issue with the IIC communications.  Any help would be greatly appreciated.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube