Skip to content

Commit fe03c39

Browse files
authored
feat: added 3.1 inch ePaper Display 320x240 UC8253 SPI E Ink screen, GDEQ031T10 . (#121)
1 parent f56e6f9 commit fe03c39

File tree

5 files changed

+45
-0
lines changed

5 files changed

+45
-0
lines changed
414 KB
Loading

lib/constants/asset_paths.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ class ImageAssets {
55
static const String blackBoard = 'assets/canvas/black.png';
66
static const String epaper37Bwr =
77
'assets/images/displays/epaper_3.7_bwr.webp';
8+
static const String GDEQ031T10Display =
9+
'assets/images/displays/GDEQ031T10_display.png';
810
static const String epaper37Bw = 'assets/images/displays/epaper_3.7_bw.webp';
911
static const String customExport = 'assets/images/displays/export_image.webp';
1012
static const String waveshare2_9 = 'assets/images/displays/waveshare_2.9.png';

lib/image_library/utils/epd_utils.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import 'package:magicepaperapp/util/epd/display_device.dart';
2+
import 'package:magicepaperapp/util/epd/gdeq031t10.dart';
23
import 'package:magicepaperapp/util/epd/gdey037z03.dart';
34
import 'package:magicepaperapp/util/epd/gdey037z03bw.dart';
45
import 'package:magicepaperapp/util/epd/waveshare_2in9.dart';
@@ -18,6 +19,8 @@ class EpdUtils {
1819
return Gdey037z03BW();
1920
case 'waveshare-2.9':
2021
return Waveshare2in9();
22+
case 'GDEQ031T10':
23+
return GDEQ031T10();
2124
default:
2225
return Gdey037z03();
2326
}

lib/util/epd/gdeq031t10.dart

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import 'package:flutter/material.dart';
2+
import 'package:magicepaperapp/constants/asset_paths.dart';
3+
import 'package:magicepaperapp/util/epd/driver/uc8253.dart';
4+
import 'package:magicepaperapp/util/image_processing/image_processing.dart';
5+
import 'package:image/image.dart' as img;
6+
import 'driver/driver.dart';
7+
import 'epd.dart';
8+
9+
class GDEQ031T10 extends Epd {
10+
@override
11+
get width => 320;
12+
13+
@override
14+
get height => 240;
15+
16+
@override
17+
String get name => 'E-Paper 3.1"';
18+
@override
19+
String get modelId => 'GDEQ031T10';
20+
@override
21+
String get imgPath => ImageAssets.GDEQ031T10Display;
22+
23+
@override
24+
get colors => [Colors.white, Colors.black];
25+
26+
@override
27+
get controller => Uc8253() as Driver;
28+
29+
@override
30+
List<img.Image Function(img.Image)> get processingMethods => [
31+
ImageProcessing.bwFloydSteinbergDither,
32+
ImageProcessing.bwFalseFloydSteinbergDither,
33+
ImageProcessing.bwStuckiDither,
34+
ImageProcessing.bwAtkinsonDither,
35+
ImageProcessing.bwHalftoneDither,
36+
ImageProcessing.bwThreshold,
37+
];
38+
}

lib/view/display_selection_screen.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import 'package:magicepaperapp/constants/string_constants.dart';
44
import 'package:magicepaperapp/provider/getitlocator.dart';
55
import 'package:magicepaperapp/util/epd/configurable_editor.dart';
66
import 'package:magicepaperapp/util/epd/display_device.dart';
7+
import 'package:magicepaperapp/util/epd/gdeq031t10.dart';
78
import 'package:magicepaperapp/util/epd/gdey037z03.dart';
89
import 'package:magicepaperapp/util/epd/gdey037z03bw.dart';
910
import 'package:magicepaperapp/util/epd/waveshare_2in9.dart';
@@ -26,6 +27,7 @@ class _DisplaySelectionScreenState extends State<DisplaySelectionScreen> {
2627
Gdey037z03(),
2728
Gdey037z03BW(),
2829
Waveshare2in9(),
30+
GDEQ031T10(),
2931
ConfigurableEpd(
3032
width: 400,
3133
height: 300,

0 commit comments

Comments
 (0)