Skip to content

Commit a254b46

Browse files
committed
use new OnDiskBitmap API
1 parent 60d17f1 commit a254b46

File tree

6 files changed

+33
-84
lines changed
  • Feather_RP2040_ThinkInk_Examples
    • CircuitPython_ACeP_Example
    • CircuitPython_Tri-Color_Example
  • MagTag/MagTag_Dishwasher_Status
  • Magic_Nine_Ball
  • Matrix_Portal/MatrixPortal_S3_Flight_Proximity_Tracker

6 files changed

+33
-84
lines changed

Feather_RP2040_ThinkInk_Examples/CircuitPython_ACeP_Example/code.py

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,16 +30,13 @@
3030

3131
g = displayio.Group()
3232

33-
fn = "/display-ruler-720p.bmp"
33+
pic = displayio.OnDiskBitmap("/display-ruler-720p.bmp")
34+
t = displayio.TileGrid(pic, pixel_shader=pic.pixel_shader)
35+
g.append(t)
3436

35-
with open(fn, "rb") as f:
36-
pic = displayio.OnDiskBitmap(f)
37-
t = displayio.TileGrid(pic, pixel_shader=pic.pixel_shader)
38-
g.append(t)
37+
display.root_group = g
3938

40-
display.root_group = g
41-
42-
display.refresh()
39+
display.refresh()
4340

4441
while True:
4542
pass

Feather_RP2040_ThinkInk_Examples/CircuitPython_Tri-Color_Example/code.py

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -37,20 +37,17 @@
3737

3838
g = displayio.Group()
3939

40-
with open("/display-ruler.bmp", "rb") as f:
41-
pic = displayio.OnDiskBitmap(f)
4240

43-
t = displayio.TileGrid(
44-
pic, pixel_shader=getattr(pic, "pixel_shader", displayio.ColorConverter())
45-
)
41+
pic = displayio.OnDiskBitmap("/display-ruler.bmp")
42+
t = displayio.TileGrid(pic, pixel_shader=pic.pixel_shader)
4643

47-
g.append(t)
44+
g.append(t)
4845

49-
display.root_group = g
46+
display.root_group = g
5047

51-
display.refresh()
48+
display.refresh()
5249

53-
print("refreshed")
50+
print("refreshed")
5451

5552
while True:
5653
pass

MagTag/MagTag_Dishwasher_Status/wake_on_button/code.py

Lines changed: 9 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -22,31 +22,15 @@
2222
bmp_file = "/images/clean.bmp" if alarm.sleep_memory[0] else "/images/dirty.bmp"
2323

2424
# show bitmap
25-
26-
# CircuitPython 6 & 7 compatible
27-
with open(bmp_file, "rb") as fp:
28-
bitmap = displayio.OnDiskBitmap(fp)
29-
tile_grid = displayio.TileGrid(
30-
bitmap, pixel_shader=getattr(bitmap, 'pixel_shader', displayio.ColorConverter())
31-
)
32-
group = displayio.Group()
33-
group.append(tile_grid)
34-
epd.root_group = group
35-
time.sleep(epd.time_to_refresh + 0.01)
36-
epd.refresh()
37-
while epd.busy:
38-
pass
39-
40-
# # CircuitPython 7+ compatible
41-
# bitmap = displayio.OnDiskBitmap(bmp_file)
42-
# tile_grid = displayio.TileGrid(bitmap, pixel_shader=bitmap.pixel_shader)
43-
# group = displayio.Group()
44-
# group.append(tile_grid)
45-
# epd.root_group = group
46-
# time.sleep(epd.time_to_refresh + 0.01)
47-
# epd.refresh()
48-
# while epd.busy:
49-
# pass
25+
bitmap = displayio.OnDiskBitmap(bmp_file)
26+
tile_grid = displayio.TileGrid(bitmap, pixel_shader=bitmap.pixel_shader)
27+
group = displayio.Group()
28+
group.append(tile_grid)
29+
epd.root_group = group
30+
time.sleep(epd.time_to_refresh + 0.01)
31+
epd.refresh()
32+
while epd.busy:
33+
pass
5034

5135
# go to sleep
5236
alarm.exit_and_deep_sleep_until_alarms(*pin_alarms)

MagTag/MagTag_Dishwasher_Status/wake_on_flip/code.py

Lines changed: 9 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -51,31 +51,15 @@
5151
epd.rotation = rotation
5252

5353
# show bitmap
54-
55-
# CircuitPython 6 & 7 compatible
56-
with open(bmp_file, "rb") as fp:
57-
bitmap = displayio.OnDiskBitmap(fp)
58-
tile_grid = displayio.TileGrid(
59-
bitmap, pixel_shader=getattr(bitmap, 'pixel_shader', displayio.ColorConverter())
60-
)
61-
group = displayio.Group()
62-
group.append(tile_grid)
63-
epd.root_group = group
64-
time.sleep(epd.time_to_refresh + 0.01)
65-
epd.refresh()
66-
while epd.busy:
67-
pass
68-
69-
# # CircuitPython 7+ compatible
70-
# bitmap = displayio.OnDiskBitmap(bmp_file)
71-
# tile_grid = displayio.TileGrid(bitmap, pixel_shader=bitmap.pixel_shader)
72-
# group = displayio.Group()
73-
# group.append(tile_grid)
74-
# epd.root_group = group
75-
# time.sleep(epd.time_to_refresh + 0.01)
76-
# epd.refresh()
77-
# while epd.busy:
78-
# pass
54+
bitmap = displayio.OnDiskBitmap(bmp_file)
55+
tile_grid = displayio.TileGrid(bitmap, pixel_shader=bitmap.pixel_shader)
56+
group = displayio.Group()
57+
group.append(tile_grid)
58+
epd.root_group = group
59+
time.sleep(epd.time_to_refresh + 0.01)
60+
epd.refresh()
61+
while epd.busy:
62+
pass
7963

8064

8165
# config accelo irq

Magic_Nine_Ball/code.py

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -33,24 +33,13 @@
3333
shaken = False
3434

3535
print("Image load {}".format(images[i]))
36-
# CircuitPython 6 & 7 compatible
3736
try:
38-
f = open(images[i], "rb")
39-
odb = displayio.OnDiskBitmap(f)
37+
odb = displayio.OnDiskBitmap(images[i])
4038
except ValueError:
4139
print("Image unsupported {}".format(images[i]))
4240
del images[i]
4341
continue
44-
face = displayio.TileGrid(odb, pixel_shader=getattr(odb, 'pixel_shader', displayio.ColorConverter()))
45-
46-
# # CircuitPython 7+ compatible
47-
# try:
48-
# odb = displayio.OnDiskBitmap(images[i])
49-
# except ValueError:
50-
# print("Image unsupported {}".format(images[i]))
51-
# del images[i]
52-
# continue
53-
# face = displayio.TileGrid(odb, pixel_shader=odb.pixel_shader)
42+
face = displayio.TileGrid(odb, pixel_shader=odb.pixel_shader)
5443

5544
splash.append(face)
5645
# Wait for the image to load.

Matrix_Portal/MatrixPortal_S3_Flight_Proximity_Tracker/code.py

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -218,12 +218,10 @@ def create_icon_tilegrid(ident):
218218
icon_path = f"/airline_logos/{airline_code}.bmp"
219219

220220
try:
221-
file = open(icon_path, "rb")
222-
icon_bitmap = OnDiskBitmap(file)
221+
icon_bitmap = OnDiskBitmap(icon_path)
223222
except OSError:
224223
print(f"Icon for {airline_code} not found. Using placeholder.")
225-
file = open(PLACEHOLDER_ICON_PATH, "rb")
226-
icon_bitmap = OnDiskBitmap(file)
224+
icon_bitmap = OnDiskBitmap(PLACEHOLDER_ICON_PATH)
227225

228226
icon_tilegrid = TileGrid(icon_bitmap, pixel_shader=icon_bitmap.pixel_shader, x=0, y=0)
229227
return icon_tilegrid

0 commit comments

Comments
 (0)