`OnDiskBitmap` Issue on UM FeatherS3 While Connected to PC With SD Card Inserted
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- python
- Ambito
- embedded-iot
Direzione di ricerca
Start with the displayio.OnDiskBitmap and TileGrid calls in the reproducer, then run it on the FeatherS3 with the SD card inserted while connected to a PC and with the PC off. Compare those results with the reported working cases on CP9.2.9 and PyPortal; done means identifying why the map fails to render only in the reported FeatherS3 setup and confirming the behavior with the reproducer.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
CircuitPython version and board name
Adafruit CircuitPython 10.2.1 on 2026-05-13; FeatherS3 with ESP32S3
Board ID:unexpectedmaker_feathers3
Code/REPL
import displayio
import time
from adafruit_featherwing import tft_featherwing_35
DEFAULT_BASE_MAP = "./assets/default_map.bmp"
class FeatherS3:
def __init__(self):
self._fw = tft_featherwing_35.TFTFeatherWing35V2()
self.display = self._fw.display
self.display.rotation = 180
@property
def width(self):
return self.display.width
@property
def height(self):
return self.display.height
class SkyPortalUI:
def __init__(self, device):
self.device = device
self.display = self.device.display
# Set up main display element
self.main_display_group = displayio.Group()
self.display.root_group = self.main_display_group
def set_base_map(self):
map_img = displayio.OnDiskBitmap(DEFAULT_BASE_MAP)
map_group = displayio.Group()
map_sprite = displayio.TileGrid(map_img, pixel_shader=map_img.pixel_shader)
map_group.append(map_sprite)
self.main_display_group.append(map_group)
feather = FeatherS3()
print("Initialized feather")
main_ui = SkyPortalUI(feather)
print("Initialized UI")
main_ui.set_base_map()
print("Base map set?")
print("Looping forever")
while True:
time.sleep(1)
feather.display.refresh()
Behavior
Description
Continuation of our chat from Discord!
Hardware:
- FeatherS3 - ESP32-S3 Development Board by Unexpected Maker
- Adafruit TFT FeatherWing - 3.5" 480x320 Touchscreen for Feathers - V2 with TSC2007
- 32GB SD card, FAT32
With the reproducer above, also uses this default map (saved as ./assets/default_map.bmp), and vendored CP10.2.1 libraries. The vendored libraries are sourced from adafruit-circuitpython-bundle-10.x-mpy-20260815 and circuitpython-community-bundle-10.x-mpy-20260806.
With CP10.2.1 the following behavior is observed using a powered USB hub connected to my Windows PC:
- Computer on, SD card inserted - Map not rendered as expected
- Computer on, SD card removed - Map renders as expected
- Computer off, SD card inserted - Map renders as expected
- Computer off, SD card removed - Map renders as expected
Also reported by folks trying out in Discord, not sure if they were connected to a computer or just power:
- UM FS3[D] and Featherwing V2, no SD card, both 10.2.1 and 10.3.0.alpha.4 - Map renders as expected
- Feather S3 8mb flash no psram, no SD card - Map renders as expected
The sample code renders the map image on CP9.2.9 as expected. The sample code also works as expected using my PyPortal on CP10.2.1. Both scenarios are with SD card inserted & computer on.
Additional debug tasks:
- Set
CIRCUITPY_SDCARD_USB=falseinsettings.toml - Try Macbook Pro
Additional information
No response
- Lingua principale
- C
- Stelle
- 4.6k
- Fork
- 1.4k
- Merge medio
- 1g 7h
- PR unite (30g)
- 147
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di adafruit/circuitpython
-
board breaks api
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
adafruit/circuitpython#11099 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
adafruit/circuitpython#11515 ·
I maintainer di solito rispondono entro 1 giorno
-
Tags and BranchesApertabug
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
adafruit/circuitpython#11514 ·
I maintainer di solito rispondono entro 1 giorno
-
Move silabs to ZephyrApertasilabs
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
adafruit/circuitpython#11507 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
circuitpython api enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
adafruit/circuitpython#11505 · 4 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di adafruit/circuitpython
Issue simili
-
Discover carries headerEdges that nothing reads since #1914 moved E0507/E0517 to the compiler graphApertatech-debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno
-
2个显示的问题Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
coolsnowwolf/lede#14209 ·
-
Cannot run pico-hsm-tool.pyAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 75/100
polhenarejos/pico-hsm#147 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
OpenPrinting/cups#1746 ·
I maintainer di solito rispondono entro 1 giorno
-
Status: Opened
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno