* Update to Pico-SDK v1.5 * Hook in pico_rand, use ioctl to set ipv6 allmulti * Move into PicoSDK LWIP mutex, hack timer sizes * Utilize much of the PicoSDK infrastructure for WiFi * Add WiFi::begin(ssid, pass, bssid) * WiFiMulti to use BSSID, make more robust WiFiMulti will now be more aggressive and try all matching SSIDs, in order of RSSI, using the BSSID to identify individual APs in a mesh. Before, if the highest RSSI AP didn't connect, it would fail immediately. Now, it will go down the list, ordered by RSSI, to attempt to get a link. * Add Bluetooth support from Pico-SDK Able to build and run the HID Keyboard Demo from the Arduino IDE, almost as-is. Will probably need to make BT configurable. Enabling BT on a plain WiFi sketch uses 50KB of flash and 16KB of RAM even if no BT is used. * Separate picow libs, BT through menus, example Build normal Pico.a and 4 different options for PicoW IP/BT configuration. Use IP=>IP/Bluetooth menu to select between options. * CMakefile rationalization * Move BT TLV(pairing) out of last 2 flash sectors The pairing keys for BT are stored at the end of flash by default, but we use the last sector of flash for EPROM and the penultimate one for the filesystem. Overwriting those in BT could cause some real exciting crashes down the line. Move the store to an app-build specific address using a dummy const array to allocate space in the application image itself. * PicoBluetoothHID with BT Mouse, Joystick, Keyboard Add simple Bluetooth Classic HID helper function and port the existing USB HID devices to it. Port their examples. * Protect BT key storage from multicore * Add short-n-sweet Bluetooth documents * Add Bluetooth Serial port library * Turn off BT when the BT libraries exit
68 lines
1.7 KiB
ReStructuredText
68 lines
1.7 KiB
ReStructuredText
Arduino-Pico
|
|
============
|
|
|
|
This is the documentation for the Raspberry Pi Pico Arduino core,
|
|
Arduino-Pico. Arduino-Pico is a community port of the RP2040
|
|
(Raspberry Pi Pico processor) to the Arduino ecosystem, intended
|
|
to make it easier and more fun to use and program the Raspberry Pi
|
|
Pico / RP2040 based boards.
|
|
|
|
This Arduino core uses a custom toolset with GCC 10.3 and Newlib 4.0.0
|
|
and doesn't require any system-installed prerequisites.
|
|
|
|
For the latest version, always check https://github.com/earlephilhower/arduino-pico
|
|
|
|
.. toctree::
|
|
:maxdepth: 2
|
|
:caption: Contents:
|
|
|
|
Getting Help <help>
|
|
Contributing <contrib>
|
|
|
|
Installation <install>
|
|
IDE Menus <ide>
|
|
|
|
Platform.IO Integration <platformio>
|
|
|
|
Pin (Re)Assignment <pins>
|
|
|
|
RP2040 Helper <rp2040>
|
|
|
|
Analog I/O <analog>
|
|
Digital I/O <digital>
|
|
EEPROM <eeprom>
|
|
I2S Audio <i2s>
|
|
PWM Audio <pwm>
|
|
Microphone (and Analog Sensor) Input <adc>
|
|
Serial USB and UARTs <serial>
|
|
"Software Serial" PIO UART <piouart>
|
|
Servo <servo>
|
|
SPI <spi>
|
|
Wire(I2C) <wire>
|
|
File Systems (SD, SDFS, LittleFS) <fs>
|
|
USB (Arduino and Adafruit_TinyUSB) <usb>
|
|
Multicore Processing <multicore>
|
|
|
|
Bluetooth (Alpha/Beta) <bluetooth>
|
|
|
|
Single File USB Drive <singlefile>
|
|
|
|
FreeRTOS SMP (multicore) <freertos>
|
|
|
|
WiFi (Pico-W Support) <wifi>
|
|
WiFiClient <wificlient>
|
|
WiFiServer <wifiserver>
|
|
WiFiUDP <wifiudp>
|
|
NTP client <wifintp>
|
|
BearSSL Encrypted TLS <bearssl>
|
|
WiFiClientSecure (TLS/SSL/HTTPS) <bearssl-client-secure-class>
|
|
WiFiServerSecure (TLS/SSL/HTTPS) <bearssl-server-secure-class>
|
|
|
|
HTTP/HTTPS Client <httpclient>
|
|
|
|
Over-the-Air (OTA) Updates <ota>
|
|
|
|
Ported/Optimized Libraries <libraries>
|
|
Using Pico-SDK <sdk>
|
|
|
|
Licenses <license>
|