This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TFP410: Unable to get any output from a TFP410

Part Number: TFP410

Tool/software:

Hello, folks. I'm currently trying to get any output or signs of life from a TFP410, hooked up to an HDMI connector. Here's how it appears on my schematic:

All of those HDMI_ pins are hooked up to 3.3V IOs on an Artix 7 FPGA. So far I haven't been able to get anything to work. I'm currently trying:

assign HDMI_ISEL = 1'b0; // Use pin configuration mode, not I2C
assign HDMI_BSEL = 1'b1; // 24-bit single-edge mode
assign HDMI_DSEL = 1'b0; // Single-ended mode
assign HDMI_PD   = 1'b1; // Normal operation (not powered down)
assign HDMI_DKEN = 1'b0; // De-skew disabled
assign HDMI_EDGE = 1'b0; // Latch on falling edge
And then I generate a signal on DE, HSYNC, VSYNC, and DATA[23:0] that should be 640x480 60Hz, by producing a 800x525 image, and appropriate blanking intervals (I have tried HSYNC/VSYNC active low and high), using a 25.17MHz pixel clock, and I can't get anything to work at all.
The monitor that's plugged in shows absolutely nothing, and just says "no signal". I've tried two different monitors from different manufacturers. I got so desperate that I even hooked up all of the above configuration lines to a counter that adjusts once per second, to brute-force all of the configuration settings, and I still see nothing.
What am I missing?
Thanks,
-Peter
  • Peter

    I just want to double check here. TDP410 has multiple DVDD, TVDD, and GND pins which I do not see in your schematic, are they being hidden by the schematic tool?

    Have you probe the IDCK+ and TXC+ and verified that there is a clock output?

    Thanks
    David

  • Reasonable question on the power pins, I'm not exactly sure why kicad isn't showing those additional power pins, but I can confirm that they're all hooked up. I have 3.3V on pins 1, 3, 12, 18, 23, 29, and 33, and I have ground on 16, 17, 20, 26, 32, 48, 56, and 64.

    I probed pin 57 (IDCK+), and I see my 25.17 MHz clock input (frequency confirmed by my oscope), and it looks fine, with a nice 3.3V range. I probed TXC+ and TXC-, and some of the data outputs, and they're all always low.

  • Peter

    Is the ISEL low and PD# high?

    If ISEL is low, then I2C is disabled and the chip configuration is specified by the configuration pins (BSEL, DSEL, EDGE, VREF) and state pins (PD, DKEN).

    When I2C is disabled (ISEL = low), a high level selects the normal operating mode. A low level selects the powerdown mode.

    If you also probe the MSEN pin, do you see it high or low? If you see it low, can you please check the HDMI_HPD_PIN to see if it is high or low?

    Any way you can monitor the current draw on the +3V3 supply?

    Thanks

    David

  • Thanks for the further follow up, I realize it's very hard to debug remotely.

    Yes, ISEL is low, and PD# is high — the configuration of pins i as I show above, in the little snippet of Verilog (although I have tried many other configurations too, none of which has worked).

    I see HDMI_HPD_PIN being pulled high when the HDMI cable is plugged in, and low otherwise. I haven't checked MSEN, but I could check that soon too.

    I unfortunately have no real way of measuring the current draw, as this part is just one of many on the 3V3 rail, and the power plane is internal, so there's no easy way to cut things up and have it be separate.

    Is there some sort of breakout board for the TFP410 or something, or some known working design I can compare to? I'm quite surprised how hard it has been to get any signs of life. I found another person online who recently did a TFP410 board on reddit, and messaged — this person also had no luck getting any output whatsoever.

    Thanks,

    -Peter

  • I got everything working!! It seems the issue was I was missing the TFADJ resistor. I figured that it was optional if I didn't want to adjust the output voltage range, and leaving it open was acceptable (as "open" is listed as valid under absolute maximum ratings on the datasheet). But once I soldered down ~500 ohms I started getting output!