Getting Started – Piksey Pico, Nano
This post will walk you through everything you need to start programming the Piksey Pico and Nano.
Default Firmware Test
The Piksey Pico and Nano are shipped with pre-loaded firmware to toggle the green (user) LED every second. When you power either of the boards for the first time, the green LED will blink similar to what is shown below:
Installing the board support package
Before you can program the boards with the Arduino IDE, you need to install the Piksey board support package. The following guide will help you through the process.
You should have also received a pinout card for the Piksey Pico and Nano, similar to what is shown below:
The cards can be used to quickly reference the pin out and capabilities of each board. A common naming convention has been used across both the boards which is similar to the Arduino naming convention.
Here’s a quick summary of the pin names:
1. Power Pins:
- 5V0: 5V output from the voltage regulator, ~250mA (max).
- 3V3: 3.3V output from USB-serial converter, ~70mA (max). The Pico has a test pad on the reverse.
- VIN: External input supply, 7V – 18V (max).
- REF: ADC reference pin. The Pico has a test pad on the bottom.
- GND: Ground pins.
2. Dx Arduino Pins:
These are the digital pins – D0…D19. The Arduino naming convention does not have the prefix – D. D0 is the same as the Arduino pin 0, the same is true for all the other pins. i.e. D1 = pin 1, D2 = pin 2 etc.
3. Ax Arduino Pins:
These are the analog pins – A0…A7 and follow the same convention as the analog Arduino pins.
4. Pxy Pins:
These are the standard port pins which are referenced in the datasheet and other technical documents. Port B consists of pins PB0…PB5, port C consists of pins PC0…PC6, port D consists of pins PD0…PD7 and port E consists of pins PE0…PE3.
Pins PE0 and PE1 are new pins and are not found in the older ATmega328P microcontroller. Consequently, they don’t have any Arduino mappings yet. The Pico has both these pins as test pads on the reverse.
5. Communication Interfaces:
Both the Piksey Pico and Nano have 2 UART, 2 SPI and 2 I2C ports each.
- TX0, TX1 – Transmit pins for channels 0 & 1
- RX0, RX1 – Receive pins for channels 0 & 1
- SC0 (CL0), SC1 (CL1) – Serial Clock (SCLK) pins for channels 0 & 1. PB5 & PC1 respectively.
- MO0, MO1 – Master Out Slave In (MOSI) pins for channels 0 & 1
- MI0, MI1 – Master In, Slave Out (MISO) pins for channels 0 & 1
- SS0, SS1 – Slave Select (SS) pins for channels 0 & 1
- SD0, SD1 – Serial Data Lines (SDA) for channels 0 & 1. PC5 & PE1 respectively.
- SC0, SC1 – Serial Clock Lines (SCL) for channels 0 & 1
6. Interrupts, Clocks, LEDs, Reset pins:
- IN0, IN1 – External Interrupt pins
- AI0 – Analog comparator positive input
- AI1 – Analog comparator negative input
- CKO – System clock output (divided)
- GRN – Green (user) LED
- RED – Red (power) LED
- RST – System reset pin