im using a raspberry pi pico that has micropython installed with an spi screen (driver ili9341).
im trying to play bad apple on it but i only have ~ 1mb left on the pi pico.
the images are 16x12 and take up 630bytes by themselves but, despite the small file size, not all of them can fit on the pico due to its 4kb minimum per file. is there any way to fit all 1000 images onto the pi pico to be able to draw them on the screen?.
im not too knowledgeable in micropython so please excuse me if i don't understand some things
Hi, i am 15 year old student i was always interested in technologies more on the software side i did some web dev (JavaScript, Go, PHP) i really like GO and i would like to stick with it ik that Pico supports TinyGo but is that a good fit for me I want to do some simple stuff to learn the basics because i no longer do anything software and i thought this would spark things out or do you have any other recommendations?
I'm trying to interface a Waveshare ADS1263 High-Precision AD HAT with a Raspberry Pi Pico W using the Waveshare Pico-to-HAT adapter, without jumper wires.
I'm porting the official Waveshare Raspberry Pi Python driver to MicroPython.
Hardware setup:
Raspberry Pi Pico W
Waveshare ADS1263 High-Precision AD HAT
Waveshare Pico-to-HAT adapter
SPI1: SCK=GP10, MOSI=GP11, MISO=GP12
RESET=GP18, CS=GP22, DRDY=GP17
SPI mode: CPOL=0, CPHA=1
SPI frequency: 100 kHz
What works:
Power supply and RESET appear normal.
CS can be controlled between HIGH and LOW.
DRDY transitions from HIGH to LOW after starting ADC conversion.
Chip ID reads successfully.
Several configuration registers can be read back correctly.
The problem:
When I send the RDATA1 (0x12) command to read ADC1 conversion data, the response contains only zeros.
I've verified the power rails, RESET, CS, and DRDY using a multimeter. I've also reduced SPI frequency from 1 MHz to 100 kHz, but the problem persists.
My questions:
Is there a difference between MicroPython's machine.SPI.read() and the SPI behavior expected by the original Raspberry Pi driver?
Could the ADS1263 require a specific SPI transaction sequence, CS behavior, or dummy clocks that I'm missing
I'm trying to get a 1.3-inch, 128×64 I²C OLED working with a Raspberry Pi Pico W using the Pico SDK and C, but I'm stuck with a strange display issue.
Hardware and setup
Raspberry Pi Pico W
1.3-inch, 128×64 monochrome OLED
Four pins: GND, VCC, SCL, SDA
I²C address: 0x3C
I²C0, SDA @ GPIO 4 and SCL @ GPIO 5
SSD1306 driver library (this is a try, see ahead)
The controller chip is not identified on the PCB. The back is marked 1.3" OLED IIC, but I haven't been able to confirm whether it uses an SSD1306, SH1106, or another controller.
What I've tried
An I²C scanner detects the device at 0x3C.
Tried clearing the frame-buffer, drawing shapes, and sending the frame-buffer using ssd1306_show().
Tested a full-screen filled rectangle and page-by-page horizontal bands.
Confirmed that the framebuffer I²C write returns all 1025 bytes (one control byte plus 1024 bytes of pixel data).
Tested contrast commands. Changing the contrast affects the whole display.
The problem
Only one horizontal bar responds correctly to framebuffer writes. The rest of the screen displays random-looking pixels or appears not to update properly. The same bar remains responsive even when I change the drawing coordinates. The attached photos show the current output and the back of the module.
What could cause this?
Is this symptom consistent with using an SSD1306 driver on an SH1106 or another controller?
Is there a reliable way to identify the controller from the module or its markings?
Could this instead indicate a defective OLED panel or controller?
Is there a specific test or command sequence I should try before replacing the module?
This project shows how the BleuIO Bluetooth Low Energy USB dongle can add BLE communication to an Adafruit Fruit Jam powered by the RP2350 to access BLE air quality data.