SD card: missing signal series resistors and no power-down control
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- embedded-iot
- Área
- embedded-iot
Línea de trabajo
Start by locating the SD card slot, SD_CS, SCK/SCL, MOSI, MISO, and SD card VCC in the hardware design. Review the existing MCU GPIO assignments before assessing the proposed signal resistors and separate power-enable control. Done means the schematic and PCB reflect the agreed SD interface protection and card power-control changes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
The SD card interface has two related issues:
1. No series resistors on SD card signal lines
Standard practice for SD/SPI interfaces is to place 22–33 Ω series resistors on CLK, MOSI, CS, and MISO between the MCU and SD card. These resistors:
- Limit edge rates, reducing EMI radiation from fast SPI clock edges
- Protect the MCU GPIO pins if the card is accidentally hot-plugged or the card internal ESD clamp fires
- Prevent overshoot/undershoot on long traces (a data logger PCB may have several centimeters of trace between the MCU and the card slot)
Without series resistors, the SPI edges are limited only by the MCU drive strength and PCB trace inductance, which on a 2-layer board can cause significant ringing on CLK especially.
Recommended fix: Add 22 Ω 0402 resistors on CLK, MOSI, and CS (MISO typically does not need one as it is driven by the card). Place them at the MCU end of the trace, before the signal runs to the card slot.
2. No power switch on SD card VCC
The SD card supply (typically 3.3 V) is permanently connected. This prevents a known-good recovery technique: power-cycling the SD card to clear a stuck state (infinite loop in card initialization, unresponsive after a failed write, etc.).
Long-duration field data loggers are especially dependent on SD card reliability. A card that enters an unresponsive state cannot be reset without cycling board power, which may cause other system disruptions.
Recommended fix: Add a load switch (e.g., AP2112K, TPS22810, or similar small PFET/load-switch IC) on the SD card 3.3 V supply, controlled by a MCU GPIO. The firmware can then:
- Power-cycle the card as part of a robust initialization sequence
- Power down the card during deep sleep to save ~100 µA quiescent from the card's standby current
- Recover from card errors without a full board reset
The existing MCU GPIO (e.g., SD_CS = IC1 pin) can coexist with a separate power-enable GPIO — these serve different purposes.
Affected components
- SD card slot (verify designator)
- SPI signals: SD_CS, SCK/SCL (shared), MOSI, MISO
- SD card VCC net
🤖 Generated with Claude Code
- Lenguaje dominante
- G-code
- Estrellas
- 8
- Forks
- 2
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de NorthernWidget/Project-Okapi
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
IC1 AREF tied directly to AVCC (5V_AUX) with no bypass cap — internal reference conflict riskAbiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
bug
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
-
Re-land the charger's !FAULT trace on !SHDN so the firmware can detect a LiPo cell under sunAbiertoenhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
-
enhancement
Dificultad 4/5 3-5 días Aptitud para principiantes 42/100
Todos los issues de NorthernWidget/Project-Okapi
Issues similares
-
followup Prio 📌
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 1 día
-
bot: confirmed bug likely easy fix possible bug Tuya
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
zigpy/zha-device-handlers#5639 · 2 comentarios ·
Los mantenedores suelen responder en 2 días
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
iamankushpandit/Gume#231 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
DasBasti/IndiaNavi_Firmware#92 ·
Los mantenedores suelen responder en 1 día