Skip to content

Commit 4ca97b1

Browse files
Merge pull request #1076 from iabdalkader/fix_h7_video
Fix video for USB-C displays.
2 parents bfadb39 + 924a976 commit 4ca97b1

File tree

4 files changed

+43
-12
lines changed

4 files changed

+43
-12
lines changed

libraries/Arduino_H7_Video/examples/ArduinoLogo/ArduinoLogo.ino

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,23 @@ Arduino_H7_Video Display(800, 480, GigaDisplayShield);
2222

2323
Image img_arduinologo(ENCODING_RGB16, (uint8_t *) texture_raw, 300, 300);
2424

25+
void error() {
26+
while (true) {
27+
digitalWrite(LEDR, LOW);
28+
delay(500);
29+
digitalWrite(LEDR, HIGH);
30+
delay(500);
31+
}
32+
}
33+
2534
void setup() {
26-
Display.begin();
35+
if (Display.begin()) {
36+
error();
37+
}
2738

2839
Display.beginDraw();
2940
Display.image(img_arduinologo, (Display.width() - img_arduinologo.width())/2, (Display.height() - img_arduinologo.height())/2);
3041
Display.endDraw();
3142
}
3243

33-
void loop() { }
44+
void loop() { }

libraries/Arduino_H7_Video/examples/ArduinoLogoDrawing/ArduinoLogoDrawing.ino

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,20 @@
1111
Arduino_H7_Video Display(800, 480, GigaDisplayShield);
1212
//Arduino_H7_Video Display(1024, 768, USBCVideo);
1313

14+
void error() {
15+
while (true) {
16+
digitalWrite(LEDR, LOW);
17+
delay(500);
18+
digitalWrite(LEDR, HIGH);
19+
delay(500);
20+
}
21+
}
22+
1423
void setup() {
15-
Display.begin();
16-
24+
if (Display.begin()) {
25+
error();
26+
}
27+
1728
Display.beginDraw();
1829
Display.background(255, 255, 255);
1930
Display.clear();
@@ -34,4 +45,4 @@ void setup() {
3445
Display.endDraw();
3546
}
3647

37-
void loop() { }
48+
void loop() { }

libraries/Arduino_H7_Video/examples/LVGLDemo/LVGLDemo.ino

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,22 @@ static void set_slider_val(void * bar, int32_t val) {
2828
lv_bar_set_value((lv_obj_t *)bar, val, LV_ANIM_ON);
2929
}
3030

31+
void error() {
32+
while (true) {
33+
digitalWrite(LEDR, LOW);
34+
delay(500);
35+
digitalWrite(LEDR, HIGH);
36+
delay(500);
37+
}
38+
}
39+
3140
void setup() {
3241
Serial.begin(115200);
3342

34-
Display.begin();
43+
if (Display.begin()) {
44+
error();
45+
}
46+
3547
TouchDetector.begin();
3648

3749
/* Create a container with grid 2x2 */
@@ -140,4 +152,4 @@ void setup() {
140152
void loop() {
141153
/* Feed LVGL engine */
142154
lv_timer_handler();
143-
}
155+
}

libraries/Arduino_H7_Video/src/H7DisplayShield.cpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,7 @@ int USBCVideoClass::init(int edidmode) {
4141
}
4242

4343
//Read EDID
44-
err_code = anx7625_dp_get_edid(0, &recognized_edid);
45-
if(err_code < 0) {
46-
return err_code;
47-
}
44+
anx7625_dp_get_edid(0, &recognized_edid);
4845

4946
//DSI Configuration
5047
err_code = anx7625_dp_start(0, &recognized_edid, (enum edid_modes) edidmode);
@@ -68,4 +65,4 @@ int USBCVideoClass::getStatus() {
6865
}
6966

7067
GigaDisplayShieldClass GigaDisplayShield;
71-
USBCVideoClass USBCVideo;
68+
USBCVideoClass USBCVideo;

0 commit comments

Comments
 (0)