We will be continuing maintenance on the wiki starting this Saturday at 9 am (UTC) to Sunday at 7PM (UTC).

There is a possibility of long maintenance-breaks and downtime during this time.

For more information contact us in the wiki Discord or by email at: unto@fighttorepair.org

Raspberry Pi

From Repair Wiki
Jump to navigation Jump to search

The Raspberry Pi is an inexpensive single-board computer with an ARM CPU.


Components used in one Raspberry Pi model are often reused in the next model, which is why many solutions work for multiple models.

Problems[edit | edit source]

Problem Affected models Solution

Power issues like the following:

  • System doesn't turn on or turns off immediately after turning on
  • System runs fine for 10 minutes, then turns off and won't turn on again for some time.
  • Red PWR LED flickers or turns off completely (if present)
  • 5V present at GPIO 2, but no 3.3V on GPIO 1
  • Pi 1 (A+ and B+)
  • Pi 2 (all)
  • Pi 3 (B only)
  • Pi Zero (all)

See PAM2306 (Raspberry Pi)

  • The red PWR LED illuminates, but the system doesn't turn on
  • There is a faint buzzing sound when power is supplied to the PCB
  • 5V present at GPIO 2, but no 3.3V on GPIO 1
  • Pi 3 (A+ and B+)
  • Pi 4 (all)

See MXL7704 (Raspberry Pi)

System runs fine, but the USB ports have no 5V power.

  • Pi 1 (B+ only)
  • Pi 2 (all)
  • Pi 3 (B only)

This problem may be caused by faulty ferrite beads next to the LAN9514 chip.

The ferrite beads next to the LAN9514 chip

Remove all power from the Pi and measure the resistance of the ferrite beads (especially the one highlighted red in the image). The resistance should be below 1 Ohm.

Broken ferrite beads need to be replaced. The part number of the original part is BLM18AG601.

If the original part is not available, the ferrite bead next to the WiFi chip on a Raspberry Pi Zero W can be used as a replacement. It should also be possible to bridge broken ferrite beads with a wire, although doing so will increase electromagnetic interference.

Also see LAN9514 (Raspberry Pi).

System runs fine, but there is no picture on the HDMI port.

  • Pi 1 (A+ and B+)
  • Pi 2 (all)
  • Pi 3 (B only)
The relevant HDMI circuitry
  • Test the internal flyback diodes of transistors Q2 and Q5 with a multimeter. Activate the multimeter's diode testing mode, and connect its two leads as indicated by the arrows in the picture. The voltage drop should be in the range of 500 to 700mV. If there is a short (0V), the respective transistor needs to be replaced. Its part number is DMG1012T.
  • Use the diode testing mode of a multimeter, and connect the black lead to GND (e.g. the metal part of the micro USB socket). Use the red lead to probe the contacts on top of L4 to L7 (highlighted pink in the image). There should be no reading. If any value is shown while touching any of the four coils (e.g. 1100mV), the HDMI circuitry inside the CPU is probably broken. This fault can not be repaired.

Issues with the SD card like the following:

  • The error Failed to open device: 'sdcard' (cmd 371a0010 status 1fff0001) appears in the boot screen
  • The system fails to read data from the SD card
  • The system boots only after a weak bending force is exerted on the PCB
  • The system freezes randomly, or after a weak bending force is exerted on the PCB
  • Pi 4
  • Maybe other models too
  • Test the SD card in another Pi to make sure that it's actually working
  • Check the condition of the SD card slot. Fix any issues with it, and reflow the solder of the SD card slot.
  • Reflow the solder underneath the CPU using hot air at 350°C / 660°F

The WiFi antenna has broken off the board.

  • Pi 3 (B only)

Replace with one of the following parts:

  • SLDA52-2R450G-S1


Tests[edit | edit source]

PSU test[edit | edit source]

To test if a Raspberry Pi is receiving enough power, the stress package can be installed:

sudo apt update && sudo apt install stress

Let the following command run for a minute, then quit it with ctrl+C:

watch timeout 1s stress -m 4 --vm-bytes 50

Finally, check if the Pi has received enough power:

vcgencmd get_throttled

If the above command returns anything other than throttled=0x0, the Pi is not receiving enough power. This can be caused by a weak power supply, a bad cable (too long, to thin...), or a faulty Pi.


RAM test[edit | edit source]

To test that the RAM is working correctly, the memtester package can be installed:

sudo apt update && sudo apt install memtester

Check how much RAM is available with the free command:

free

This produces the following output:

                total        used        free      shared  buff/cache   available
Mem:          945292       64212      609464         696      271616      824816
Swap:         102396           0      102396

In the above example, 824MB are available. To test those 824MB two times, run the following command:

sudo memtester 824M 2
  • If the command gets killed by the OOM killer, try testing a smaller amount of RAM.
  • To test more than 3GB of RAM, a 64 bit version of Raspberry Pi OS must be used.
  • To increase the amount of available RAM, close all other programs. You can also boot the Pi in console mode (sudo raspi-config, choose options 1, S5, and B2) to test the maximum amount of RAM possible.


Resources[edit | edit source]

Raspberry Pi 1[edit | edit source]

Raspberry Pi 2[edit | edit source]

Raspberry Pi 3[edit | edit source]

Raspberry Pi 4[edit | edit source]

Raspberry Pi Zero[edit | edit source]

Raspberry Pi Zero 2[edit | edit source]