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.


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.

| improve this answer | |
  • 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 '17 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 '17 at 11:12
  • That's great. I am using wiringPi instead of pigpio. I found the same functionality pullUpDnControl(). Many thanks! – Jeon Aug 8 '17 at 11:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.