0

On the below diagram I understand what position (on the board), GPIO (abstract Pi GPIO numbers) and BCM (SoC pin numbers) pin numbers mean, but what's the meaning of the "wiring"?

Pi Zero Wiring diagram

axk
  • 103
  • 3
  • The BEST option is to ignore them. It was a misguided idea in the first place and is not supported. Use BCM like every other library. – Milliways May 22 '21 at 23:07

2 Answers2

2

"Wiring" refers to the wiring pi library, and its associated command line utility - gpio.

If you have installed Wiring Pi, you may list/print the relationship between the various RPi GPIO designations as follows:

$ gpio readall

The result on my RPi 4B is:

 +-----+-----+---------+------+---+---Pi 4B--+---+------+---------+-----+-----+  
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |  
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+  
 |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |  
 |   2 |   8 |   SDA.1 |   IN | 1 |  3 || 4  |   |      | 5v      |     |     |  
 |   3 |   9 |   SCL.1 |   IN | 1 |  5 || 6  |   |      | 0v      |     |     |  
 |   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 1 | IN   | TxD     | 15  | 14  |  
 |     |     |      0v |      |   |  9 || 10 | 1 | IN   | RxD     | 16  | 15  |
 |  17 |   0 | GPIO. 0 |   IN | 0 | 11 || 12 | 0 | IN   | GPIO. 1 | 1   | 18  |
 |  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |
 |  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO. 4 | 4   | 23  |
 |     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |
 |  10 |  12 |    MOSI |   IN | 0 | 19 || 20 |   |      | 0v      |     |     |
 |   9 |  13 |    MISO |   IN | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |
 |  11 |  14 |    SCLK |   IN | 0 | 23 || 24 | 1 | IN   | CE0     | 10  | 8   |
 |     |     |      0v |      |   | 25 || 26 | 1 | IN   | CE1     | 11  | 7   |
 |   0 |  30 |   SDA.0 |   IN | 1 | 27 || 28 | 1 | IN   | SCL.0   | 31  | 1   |
 |   5 |  21 | GPIO.21 |   IN | 1 | 29 || 30 |   |      | 0v      |     |     |
 |   6 |  22 | GPIO.22 |   IN | 1 | 31 || 32 | 0 | IN   | GPIO.26 | 26  | 12  |
 |  13 |  23 | GPIO.23 |   IN | 0 | 33 || 34 |   |      | 0v      |     |     |
 |  19 |  24 | GPIO.24 |   IN | 0 | 35 || 36 | 0 | IN   | GPIO.27 | 27  | 16  |
 |  26 |  25 | GPIO.25 |   IN | 0 | 37 || 38 | 0 | IN   | GPIO.28 | 28  | 20  |
 |     |     |      0v |      |   | 39 || 40 | 0 | IN   | GPIO.29 | 29  | 21  |
 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |
 +-----+-----+---------+------+---+---Pi 4B--+---+------+---------+-----+-----+

ICYI:

The original wiring Pi library was developed by Gordon Henderson, and maintained by him until August, 2019. Wiring Pi remains available through GitHub, but its future is not entirely clear. As the current maintainers have indicated:

... this repository has become a mirror of the last "official" source release, plus a fork facilitating updates to support newer hardware (primarily for use by the ports) and fix bugs.

Seamus
  • 18,728
  • 2
  • 27
  • 57
  • Thanks! Already installed wiring pi and ran this command. Really confusing with 2 different GPIO pin numberings on the diagram from the datasheet and these. I guess they had a reason. – axk May 22 '21 at 21:12
  • 1
    Yes - it can be a bit confusing. The sources for GPIO documentation that I've found most useful are the [RPi Pinout Page](https://pinout.xyz/#), and the `gpio readall` output. The RPi Pinout especially so as you can 'click' a pin & get useful details that you might have to search for somewhere else. And here's [another answer](https://raspberrypi.stackexchange.com/a/120013/83790) that may have useful info. – Seamus May 22 '21 at 22:05
  • I have written a few replacements for `gpio readall` using various libraries.[GPIOreadall](https://raspberrypi.stackexchange.com/a/123749/8697) shows the ACTUAL configured function (rather than the default), including pullup and works on Raspberry Pi OS (Stretch & Buster) without any additional libraries. – Milliways May 23 '21 at 05:35
1

They are numbers which may be used by the wiringPi C library and some software built on that library.

See http://wiringpi.com/pins/

joan
  • 67,803
  • 5
  • 67
  • 102