- Joined
- Aug 7, 2013
- Messages
- 48
- Motherboard
- Asus rog strix z370-g gaming (wi-fi ac)
- CPU
- Intel Core i7 8700k
- Graphics
- Asus ROG STRIX-GTX1070-O8G-GAMING
- Mac
- Classic Mac
- Mobile Phone
Here i found the printed paper with the data:
I manually typed all of the hex numbers in the image into a hex editor and saved it to a file called 1280x960.bin
I then used edid-decode and it passed the test.
here's an image
I think this can be easily coded into an arduino sketch.
View attachment 230070
I actually started coding it last night but I still need to test it. I have a day off today so I might work on it some more later on.
#include <Wire.h>
const int i2c_port = 0x50;
byte edid[] =
{ 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x06, 0x10, 0x07, 0x9d, 0x01, 0x01, 0x01, 0x01,
0x00, 0x1a, 0x01, 0x03, 0x68, 0x21, 0x18, 0x6f, 0x08, 0xf6, 0x29, 0xa2, 0x53, 0x47, 0x99, 0x25,
0x10, 0x48, 0x4c, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xc0, 0x2f, 0x00, 0xa0, 0x51, 0xc0, 0x2a, 0x30, 0x30, 0x60,
0x13, 0x00, 0x40, 0xf0, 0x10, 0x00, 0x00, 0x1e, 0xbf, 0x26, 0x00, 0x60, 0x41, 0x00, 0x2a, 0x30,
0x30, 0x60, 0x13, 0x00, 0x40, 0xf0, 0x10, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x46,
0x8c, 0x47, 0x49, 0x0d, 0x00, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0xfc,
0x00, 0x65, 0x4d, 0x61, 0x63, 0x20, 0x43, 0x52, 0x54, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x00, 0x2e
};
void setup() {
pinMode(2, OUTPUT);
pinMode(4, OUTPUT);
digitalWrite(2, LOW);
digitalWrite(4, LOW);
digitalWrite(2, HIGH);
digitalWrite(4, HIGH);
Serial.begin(9600);
Serial.write("initiating\n");
Wire.begin(i2c_port); // join i2c bus (address optional for master)
Wire.onRequest(requestEvent);
}
void loop() {
delay(100);
}
void writeToIvad(int address, int message) {
Wire.beginTransmission(address);
Wire.write(message);
Wire.endTransmission();
}//end method
void readFromIvad(int address, int bytes) {
char buf[bytes + 1];
int bytesRead = 0;
Wire.requestFrom(address, bytes);
while (Wire.available())
{
char c = Wire.read();
buf[bytesRead++] = c;
}
buf[bytesRead] = '\0';
//return buf;
}//end method
void sendEdid() {
for (int i = 0 ; i < 128 ; i++) {
Wire.write(edid);
//readFromIvad(i2c_port,1);
}//end for
}//end
// function that executes whenever data is requested by master
// this function is registered as an event, see setup()
void requestEvent() {
Serial.write("request received\n");
sendEdid();
}