I found a thread and a comment saying:

(... omitted ...)
only GPIOs 28,29 44 & 45 float. 0-8 have default internal 50k pulls high, the rest default pull low. Additionally, there are strong pulls up for whichever I2C peripheral appears at pins 3 & 5 on the GPIO header (GPIOs 2&3 on the majority of Pi models.
(... omitted ...)

But, Raspberry Pi doesn't have a pin numbered larger than 40!

I wonder if it is true or not, and if available, I want to see the (official) reference.

1 Answer 1


Yes, it is true.

The Pi has 54 GPIO numbered 0 to 53. GPIO 0-27 are brought out to pins on the current 40-pin expansion header. The other GPIO are generally inaccessible.

See BCM2835 ARM Peripherals page 102 first column in table for the power-up GPIO pull state.

In addition GPIO 2/3 used for I2C have hard-wired 1k8 pull-ups to 3V3 fitted. A fact you can confirm by examining the board and the schematics.

  • Thanks. I need to use floating pin. According to the datasheet, 28, 29, 44, and 45 are floating, but they are inaccessible. Then, Raspberry Pi isn't suitable for my purpose?
    – Jeon
    Aug 8, 2017 at 10:38
  • 1
    @Jeon - those are the default power-up pulls. You can change the settings in software (apart from the hard-wired GPIO 2/3). E.g. pigs pud 4 o switches off the pull on GPIO 4.
    – joan
    Aug 8, 2017 at 11:12
  • That's great. I am using wiringPi instead of pigpio. I found the same functionality pullUpDnControl(). Many thanks!
    – Jeon
    Aug 8, 2017 at 11:22

This site is temporarily in read-only mode and not accepting new answers.

Not the answer you're looking for? Browse other questions tagged .