Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
arduino-pico
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
xpstem
arduino-pico
Commits
91b4bdb5
Unverified
Commit
91b4bdb5
authored
Sep 09, 2022
by
Pontus Oldberg
Committed by
GitHub
Sep 09, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Adds Challenger RP2040 NFC board (#846)
parent
d6628972
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
748 additions
and
0 deletions
+748
-0
boards.txt
boards.txt
+589
-0
package/package_pico_index.template.json
package/package_pico_index.template.json
+3
-0
tools/json/challenger_2040_nfc.json
tools/json/challenger_2040_nfc.json
+54
-0
tools/makeboards.py
tools/makeboards.py
+1
-0
variants/challenger_2040_nfc/board_init.cpp
variants/challenger_2040_nfc/board_init.cpp
+34
-0
variants/challenger_2040_nfc/pins_arduino.h
variants/challenger_2040_nfc/pins_arduino.h
+67
-0
No files found.
boards.txt
View file @
91b4bdb5
This diff is collapsed.
Click to expand it.
package/package_pico_index.template.json
View file @
91b4bdb5
...
...
@@ -86,6 +86,9 @@
{
"name"
:
"iLabs Challenger 2040 SD/RTC"
},
{
"name"
:
"iLabs Challenger 2040 NFC"
},
{
"name"
:
"iLabs RPICO32"
},
...
...
tools/json/challenger_2040_nfc.json
0 → 100644
View file @
91b4bdb5
{
"build"
:
{
"arduino"
:
{
"earlephilhower"
:
{
"boot2_source"
:
"boot2_w25q080_2_padded_checksum.S"
,
"usb_vid"
:
"0x2E8A"
,
"usb_pid"
:
"0x1036"
}
},
"core"
:
"earlephilhower"
,
"cpu"
:
"cortex-m0plus"
,
"extra_flags"
:
"-D ARDUINO_CHALLENGER_NB_2040_NFC_RP2040 -DARDUINO_ARCH_RP2040 -DUSBD_MAX_POWER_MA=250"
,
"f_cpu"
:
"133000000L"
,
"hwids"
:
[
[
"0x2E8A"
,
"0x00C0"
],
[
"0x2E8A"
,
"0x1036"
]
],
"mcu"
:
"rp2040"
,
"variant"
:
"challenger_2040_nfc"
},
"debug"
:
{
"jlink_device"
:
"RP2040_M0_0"
,
"openocd_target"
:
"rp2040.cfg"
,
"svd_path"
:
"rp2040.svd"
},
"frameworks"
:
[
"arduino"
],
"name"
:
"Challenger 2040 NFC"
,
"upload"
:
{
"maximum_ram_size"
:
270336
,
"maximum_size"
:
8388608
,
"require_upload_port"
:
true
,
"native_usb"
:
true
,
"use_1200bps_touch"
:
true
,
"wait_for_upload_port"
:
false
,
"protocol"
:
"picotool"
,
"protocols"
:
[
"cmsis-dap"
,
"jlink"
,
"raspberrypi-swd"
,
"picotool"
,
"picoprobe"
]
},
"url"
:
"https://www.raspberrypi.org/products/raspberry-pi-pico/"
,
"vendor"
:
"iLabs"
}
tools/makeboards.py
View file @
91b4bdb5
...
...
@@ -326,6 +326,7 @@ MakeBoard("challenger_2040_wifi", "iLabs", "Challenger 2040 WiFi", "0x2e8a", "0x
MakeBoard
(
"challenger_2040_wifi_ble"
,
"iLabs"
,
"Challenger 2040 WiFi/BLE"
,
"0x2e8a"
,
"0x102C"
,
500
,
"CHALLENGER_2040_WIFI_BLE_RP2040"
,
8
,
"boot2_w25q080_2_padded_checksum"
,
[
"WIFIESPAT2"
])
MakeBoard
(
"challenger_nb_2040_wifi"
,
"iLabs"
,
"Challenger NB 2040 WiFi"
,
"0x2e8a"
,
"0x100d"
,
500
,
"CHALLENGER_NB_2040_WIFI_RP2040"
,
8
,
"boot2_w25q080_2_padded_checksum"
,
[
"WIFIESPAT2"
])
MakeBoard
(
"challenger_2040_sdrtc"
,
"iLabs"
,
"Challenger 2040 SD/RTC"
,
"0x2e8a"
,
"0x102d"
,
250
,
"CHALLENGER_NB_2040_SDRTC_RP2040"
,
8
,
"boot2_w25q080_2_padded_checksum"
)
MakeBoard
(
"challenger_2040_nfc"
,
"iLabs"
,
"Challenger 2040 NFC"
,
"0x2e8a"
,
"0x1036"
,
250
,
"CHALLENGER_NB_2040_NFC_RP2040"
,
8
,
"boot2_w25q080_2_padded_checksum"
)
MakeBoard
(
"ilabs_rpico32"
,
"iLabs"
,
"RPICO32"
,
"0x2e8a"
,
"0x1010"
,
250
,
"ILABS_2040_RPICO32_RP2040"
,
8
,
"boot2_w25q080_2_padded_checksum"
)
# Melopera
...
...
variants/challenger_2040_nfc/board_init.cpp
0 → 100644
View file @
91b4bdb5
/*
Board init for the Challenger RP2040 NFC
Copyright (c) 2022 P. Oldberg <pontus@ilabs.se>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include <Arduino.h>
/**
* Setup control pins for the NFC chip.
*/
void
initVariant
()
{
// Initialize the interrupt pin to be an input.
// Setting it to an interrupt and connecting a call back is up to the app.
pinMode
(
PIN_PN7150_IRQ_B
,
INPUT
);
// Initialize the reset pin to an output and hold the device in reset.
// It is up to the application to release it.
pinMode
(
PIN_PN7150_RST_B
,
OUTPUT
);
digitalWrite
(
PIN_PN7150_RST_B
,
LOW
);
}
variants/challenger_2040_nfc/pins_arduino.h
0 → 100644
View file @
91b4bdb5
#pragma once
#define PINS_COUNT (26u)
#define NUM_DIGITAL_PINS (26u)
#define NUM_ANALOG_INPUTS (4u)
#define NUM_ANALOG_OUTPUTS (0u)
#define ADC_RESOLUTION (12u)
// LEDs
#define PIN_LED (24u)
#define NEOPIXEL (14u)
#define PIN_NEOPIXEL NEOPIXEL
// Serial
#define PIN_SERIAL1_TX (16u)
#define PIN_SERIAL1_RX (17u)
// SPI
#define PIN_SPI0_MISO (20u)
#define PIN_SPI0_MOSI (23u)
#define PIN_SPI0_SCK (22u)
#define PIN_SPI0_SS (21u)
// Wire
#define PIN_WIRE0_SDA (0u)
#define PIN_WIRE0_SCL (1u)
// Connected to PN7150 NFC controller on I2C channel 2
#define PIN_WIRE1_SDA (10u)
#define PIN_WIRE1_SCL (11u)
#define PIN_PN7150_IRQ_B (9u)
#define PIN_PN7150_RST_B (12u)
#define PN7150_I2C_ADDR (0x28)
// Not pinned out
#define PIN_SERIAL2_RX (31u)
#define PIN_SERIAL2_TX (31u)
#define SERIAL_HOWMANY (1u)
#define SPI_HOWMANY (1u)
#define WIRE_HOWMANY (2u)
#define LED_BUILTIN PIN_LED
static
const
uint8_t
D0
=
(
16u
);
static
const
uint8_t
D1
=
(
17u
);
static
const
uint8_t
D2
=
(
20u
);
static
const
uint8_t
D3
=
(
23u
);
static
const
uint8_t
D4
=
(
22u
);
static
const
uint8_t
D5
=
(
2u
);
static
const
uint8_t
D6
=
(
3u
);
static
const
uint8_t
D7
=
(
0u
);
static
const
uint8_t
D8
=
(
1u
);
static
const
uint8_t
D9
=
(
4u
);
static
const
uint8_t
D10
=
(
5u
);
static
const
uint8_t
D11
=
(
6u
);
static
const
uint8_t
D12
=
(
7u
);
static
const
uint8_t
D13
=
(
8u
);
static
const
uint8_t
D14
=
(
13u
);
static
const
uint8_t
D18
=
(
24u
);
static
const
uint8_t
A0
=
(
26u
);
static
const
uint8_t
A1
=
(
27u
);
static
const
uint8_t
A2
=
(
28u
);
static
const
uint8_t
A3
=
(
29u
);
static
const
uint8_t
A4
=
(
19u
);
static
const
uint8_t
A5
=
(
21u
);
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment