Every pin, explained
Pick a board and click its pins. You'll see what each one does, get warned about clashes and boot-sensitive pins, and get setup code ready to paste into Arduino IDE or MPLAB.
Pin information
Pin notes
Setup code
Arduino-style for most boards, MPLAB XC8 for PIC. Change a pin's mode with the menu next to it.
// Select pins to generate pin definitions
Logic levels at a glance
Check this before you connect a sensor or another board. A 5 V signal on a 3.3 V pin can damage it.
| BOARD | LOGIC LEVEL | 5 V ON AN INPUT? |
|---|---|---|
| Arduino Uno, Nano, Mega, Leonardo, Micro | 5 V | Yes |
| Arduino Due, SAMD21 (Arduino Zero) | 3.3 V | No, 3.3 V only |
| ESP32, ESP32-S3, C3, C6, ESP8266 | 3.3 V | No, use a level shifter or divider |
| Raspberry Pi Pico / Pico W | 3.3 V | No |
| STM32 Blue Pill, Black Pill, F407 | 3.3 V | Only pins marked FT in the datasheet |
| Teensy 3.2 | 3.3 V | Yes, digital pins are 5 V tolerant |
| Teensy 4.0 / 4.1 | 3.3 V | No |
| PIC16F877A, PIC18F452, PIC18F4520 | Supply (usually 5 V) | Yes, at a 5 V supply |
| ATtiny85 | Supply (1.8–5.5 V) | Up to its supply voltage |
How to use PickettPin
Four steps from a blank board to working setup code.
Choose your board. PickettPin remembers it for next time.
Click the pins you plan to use. Search finds pins by name or by function, like PWM, SDA or ADC.
Set each pin to INPUT, OUTPUT, INPUT_PULLUP, ANALOG or PWM with the menu beside it. Warnings flag clashes and boot-sensitive pins.
Copy the setup code or download it as a file, then paste it into your sketch.