this post was submitted on 12 Jul 2023
4 points (83.3% liked)

Embedded

443 readers
1 users here now

This sub is dedicated to discussion and questions about embedded systems: "a controller programmed and controlled by a real-time operating system (RTOS) with a dedicated function within a larger mechanical or electrical system, often with real-time computing constraints."

founded 1 year ago
MODERATORS
 

The hardware team needed to make some modifications to our prototype PCBs. Unfortunately resulting in two cold solder joints. The board worked for a while but then had issues after a few thermal cycles. Debugged the code for hours before realizing it was a hardware issue.

top 1 comments
sorted by: hot top controversial new old
[–] ttmrichter 3 points 1 year ago

Debugged the code for hours before realizing it was a hardware issue.

Hoo boy do I hear this one.

I had two devices on an SPI peripheral. Shared CLK, MISO, MOSI and separate CS- (of course).

One of the devices (an SX1268) worked fine.

The other (a W25Q128) ... didn't.

Scoping it out saw MISO with signals that looked like the attached photo: a weird thing that looked like experimental trinary logic or something.

Problem was something in the SX1268 module we're using: something in the tin-canned module was screwing with CS-. The fix was to put a pull-up on CS- or it would float (the GPIO drivers on the MCU didn't push/pull hard enough apparently), periodically activating the SX1268 and having it talk on MOSI.

Cursed scope trace.

Guess how many hours of careful code inspection I put in before realizing it was a hardware error?