ATmega32U4 Differential Output!? Hooking Displayport AUX

Hello. I started a personal project where i design a device that includes these 2 functions:

  1. Read/sniff the EDID data of a Displayport downsteam device (i.e. a PC monitor)
  2. Emulate the EDID data to the upstream device (i.e. a GPU)

I plan on using an Arduino Micro for several reasons:

  • Cheap, readily available and easy to program
  • Built-in USB so a PC can be used to read/write data to without any extra components
  • Has ADC0/ADC1 pins exposed unlike Pro Micro explained below

From what i understand so far EDID data on Displayport are transmitted via the AUX Differential Pair of which has 2 available modes for operation (page 329):

  • 1Mbps Manchester-II code
  • 720Mbps FAUX 8B10B encoding

For snooping, i just hook the AUX pair from the Monitor to the Arduino using the dedicated differential pair input available on: ADC0/ADC1 negative, ADC4..13 positive (that's why i need ADC0/1 exposed, page 298).

My question is if the ATmega32U4 is suitable in terms of processing speed in order to sample and decode the signal, and if it is able to generate/output a 1Mbps Manchester-II code differential signal.

Otherwise i'll probably use a Teensy3.2/LC or a Blackpill

Kind regards

Datasheets:

Displayport v1.2 standard:

ATmega32U4:

Arduino Micro:

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.