Compare commits

...

270 commits

Author SHA1 Message Date
Dan Halbert
9d601f43c0
Merge pull request #122 from cbc02009/Python3Update
Python3 update
2020-06-14 12:07:53 -04:00
Christopher Conroy
907ace489f Fix python3 compatibility 2020-06-14 08:34:37 -04:00
Christopher Conroy
bfe6eb363a Update UF2 submodule to latest version. 2020-06-14 08:26:15 -04:00
Dan Halbert
97f6be6ab6
Merge pull request #120 from deshipu/master
Add bootloader for Fluff M0
2020-05-26 15:45:53 -04:00
Radomir Dopieralski
6651f9558c Add bootloader for Fluff M0
This is a minimal board documented at
https://hackaday.io/project/171381
2020-05-22 18:46:09 +02:00
Dan Halbert
6785401969
Merge pull request #115 from deshipu/master
Add configuration for PewPew M4 board
2020-05-17 17:01:21 -04:00
Dan Halbert
87214f13bd
Merge pull request #118 from keith-packard/snekboard-neopixel
boards/snekboard: Enable neopixel pair
2020-05-14 21:33:10 -04:00
Dan Halbert
66b69dd388
Merge pull request #117 from keith-packard/no-application-neopixel
Don't touch neopixels when booting application
2020-05-14 21:32:48 -04:00
Keith Packard
7ccb9f2bd6 Don't touch neopixels when booting application
The neopixel code only works when we've got the clocks running at the
expected speed.

Signed-off-by: Keith Packard <keithp@keithp.com>
2020-05-14 17:49:35 -07:00
Keith Packard
646381978b boards/snekboard: Enable neopixel pair
Snekboard has two neopixels on PB11. Enable them so that the
boot loader can present status information.

Signed-off-by: Keith Packard <keithp@keithp.com>
2020-05-14 17:43:42 -07:00
Radomir Dopieralski
62114694ce Add configuration for PewPew M4 board
Information about the board: https://hackaday.io/project/165032

(cherry picked from commit c08c68a16af35ffc2fa22f2a0b68f16134ff751d)
2020-04-15 22:58:44 +02:00
Dan Halbert
d00e77dba4
Merge pull request #105 from burtyb/commander-1
Add support for Commander board
2020-04-10 12:57:04 -04:00
Dan Halbert
bb87d43ba1
Merge pull request #109 from NightSkySK/UARTlogger2
Adding UARTLogger II board
2020-04-10 12:56:41 -04:00
Dan Halbert
c05ce500cb
Merge pull request #113 from dhalbert/fuse-repair-fixes
SAMD21 fixes
2020-04-10 12:55:57 -04:00
Dan Halbert
03e62e7f2d add samd21 fuse repair to regular bootloader 2020-04-09 13:58:33 -04:00
Dan Halbert
6947ffca8b clean up and simplify fuse repair code; fix samd21 bug 2020-04-09 11:42:11 -04:00
Scott Shawcroft
b3e13dfbe0
Merge pull request #111 from dhalbert/spurious-writes
fix SAMD51 spurious writes; allow gcc9 compilation; improve delay() calibration
2020-04-02 10:21:57 -07:00
Dan Halbert
acdf9fba4f BOD33 register sync 2020-04-01 21:40:47 -04:00
Dan Halbert
291610433b address review comments; avoid affecting double-click 2020-04-01 17:15:54 -04:00
Dan Halbert
a346c82e2d merge 2020-03-29 18:47:00 -04:00
Dan Halbert
cff6957ca3 cleanup of sketch.cpp 2020-03-29 17:01:04 -04:00
Dan Halbert
39d1033f4c Don't generate .ino's for SAMD51; they don't work 2020-03-28 19:21:27 -04:00
Dan Halbert
96ff48dc9b Don't generate .ino's for SAMD51; they don't work 2020-03-28 19:17:14 -04:00
Dan Halbert
a9a42f2af4 squeeze some code out of M0 builds; update travis to use gcc 9; add .gitignore 2020-03-28 15:24:51 -04:00
Dan Halbert
246e826e91 fix spurious writes; allow gcc9 compilation; improve delay() calibration 2020-03-28 12:30:29 -04:00
Limor "Ladyada" Fried
c78cd6f2dd
Merge pull request #110 from theacodes/add-winterbloom-honk
Add support for Winterbloom Big Honking Button
2020-03-19 11:18:32 -04:00
Thea Flowers
32c4433628 Add support for Winterbloom Big Honking Button 2020-03-18 16:34:17 -07:00
Szymon Klause
70b7c881bb Adding UARTLogger II board 2020-03-14 16:32:20 +01:00
Chris Burton
71dfe62ff6 Add support for Commander 2020-03-01 19:21:39 +00:00
Limor "Ladyada" Fried
5ebe947a43
Merge pull request #102 from maholli/master
Adding PyCubed board
2020-02-08 22:17:14 -05:00
Max Holliday
70bcb3af4d Adding PyCubed board 2020-02-08 17:07:23 -08:00
Limor "Ladyada" Fried
d2bb4865ac
Merge pull request #101 from neubauek/master
Added CircuitBrains Basic and Deluxe Boards
2020-02-05 16:22:07 -05:00
neubauek
3d1607e782 Added CircuitBrains Basic and Deluxe Boards 2020-02-05 15:16:18 -06:00
Dan Halbert
52b1656fa2
Merge pull request #100 from joeycastillo/openbook
Add board configuration for the Open Book
2020-01-21 12:20:49 -05:00
Joey Castillo
99b6683a6e add bootloader for Open Book 2020-01-14 17:01:53 -05:00
Dan Halbert
e50b44a836
Merge pull request #90 from keith-packard/selfmain-changes
Selfmain changes
2019-12-22 10:49:54 -05:00
Dan Halbert
0ae9e5a7fa
Merge pull request #94 from ndGarage/ndbit6
Ndbit6
2019-12-22 10:45:53 -05:00
ndgarage
69afdc9270 ndbit6-no-flash 2019-12-02 10:01:42 -07:00
Keith Packard
feb8ed3c25 Fix fuses writing code [v2]
Avoid running off the end of the array on SAMD21. The 'fuses' array is
only 8 bytes long on SAMD21, don't write 16 bytes. As the SAMD21
version always writes 8 bytes, create code for that which is not a loop.

Signed-off-by: Keith Packard <keithp@keithp.com>

---

v2:
	Squash the two patches togther.

	Split out the SAMD21 version into a separate, non looping version.
2019-11-26 21:44:47 -08:00
Dan Halbert
6997c56f2d
Merge pull request #91 from sarfata/sarfata/add-board-shirtty
feature: add board shirtty
2019-11-26 15:04:17 -05:00
Dan Halbert
445c3ada36
Merge pull request #93 from theacodes/master
Add Winterbloom Sol board configuration
2019-11-26 15:03:40 -05:00
Thea Flowers
561596b4f0
Add Winterbloom Sol board configuration 2019-11-26 11:11:20 -08:00
ndgarage
9a019664e2 rm-build 2019-11-26 10:48:58 -07:00
ndgarage
dd4c4ce33c correct-pid 2019-11-26 10:48:15 -07:00
Thomas Sarlandie
aa52a8c29b feature: add board shirtty
- with adafruit provided PID
 - with red channel of the rgb led (circuitpython is blue on boot so
 we can differentiate them)
2019-11-25 22:08:48 +01:00
ndgarage
ce8a3923e1 add-ndbit6 2019-11-25 13:16:55 -07:00
Dan Halbert
5ffa584702
Merge pull request #89 from keith-packard/nano33iot
Add Arduino NANO 33 IoT
2019-11-19 20:37:21 -05:00
Keith Packard
82cd95d3c5 Add Arduino NANO 33 IoT
Pretty basic SAMD21G18A port with a single LED on PA17

https://store.arduino.cc/usa/nano-33-iot

Signed-off-by: Keith Packard <keithp@keithp.com>
2019-11-09 15:17:10 -08:00
Dan Halbert
63b4c6f529
Merge pull request #88 from ladyada/master
add m4 hallowing & m4sk + fixes UART defs on pygamer/pybadge
2019-10-28 18:01:42 -04:00
Dan Halbert
5f3168c4da
Merge pull request #74 from GMagician/fix-user-mem-lost
Save all user page in samd51
2019-10-28 17:18:21 -04:00
Scott Shawcroft
06c6126f60
Merge pull request #87 from wallarug/master
Robo HAT MM1 Production Bootloader
2019-10-10 12:45:04 -07:00
ladyada
2a38099130 https://github.com/adafruit/uf2-samdx1/issues/72 fix for pybadge LC 2019-10-05 14:26:48 -04:00
ladyada
df1c6c838b https://github.com/adafruit/uf2-samdx1/issues/72 for pybadge 2019-10-05 14:26:48 -04:00
ladyada
c50bb52c01 fix arcada rx/tx as well 2019-10-05 14:26:47 -04:00
ladyada
c7949999ed pygamer fix for https://github.com/adafruit/uf2-samdx1/issues/72 2019-10-05 14:26:47 -04:00
ladyada
e2938da1e2 add hallowing mask define 2019-10-05 14:26:47 -04:00
ladyada
2a71824446 hallowing m4 with correct uart sercom deets 2019-10-05 14:26:46 -04:00
wallarug
7c8134edd5 uart with rpi instead of gps port 2019-10-04 22:36:04 +10:00
wallarug
af0416c8ec updated name 2019-10-04 22:20:39 +10:00
wallarug
b6aa95c6a3 updated bootloader config to be more descriptive. 2019-10-04 22:16:58 +10:00
wallarug
82694d12e9
Merge pull request #1 from adafruit/master
Merge in Adafruit Fork
2019-10-04 22:09:46 +10:00
Dan Halbert
c23e123618
Merge pull request #85 from ademuri/master
Reset watchdog on startup for SAMD21/51 boards.
2019-09-21 13:44:14 -07:00
Adam Demuri
5729d9c93f Reset watchdog on startup for SAMD21/51 boards.
This is needed if the application enables the watchdog. With this
change and the application enabling and failing to feed the watchdog, I
can successfully get into the bootloader, although it may take a few
tries. Without this change, I could not.
2019-09-21 08:30:48 -06:00
Limor "Ladyada" Fried
b7dffef38b
Merge pull request #84 from arturo182/master
Add Serpente board
2019-09-16 15:55:15 -04:00
arturo182
56ce473c04 Add Serpente board 2019-09-16 21:49:50 +02:00
Scott Shawcroft
a0c198afe4
Merge pull request #83 from GMagician/fix-neopixel-left-on
Turn off neopixel on app start
2019-09-04 11:27:40 -07:00
GMagician
fc0acb0c50 Turn off neopixel on app start 2019-08-29 12:17:29 +02:00
Giuliano Zaro
164ac15919
Fix sizeof in for 2019-08-22 22:05:57 +02:00
GMagician
c2bf7622b8 Fix makefile
Makefile is not propagating status correctly then some compile errors are not reported.
Fix reported by @dhalbert
2019-08-22 19:09:10 +02:00
Giuliano Zaro
c4b557e226
Fix wrong cost use 2019-08-15 22:15:44 +01:00
Scott Shawcroft
a89ceb7f27
Merge pull request #78 from keith-packard/snekboard
Snekboard
2019-07-30 13:25:03 -07:00
Keith Packard
accf14e78d Update snekboard PID to official snekboard bootloader value
Snekboard has been assigned the following PIDs:

	PID 0x004D  # bootloader
	PID 0x804D  # arduino
	PID 0x804E  # circuitpython

Signed-off-by: Keith Packard <keithp@keithp.com>
2019-07-28 14:06:05 -07:00
Giuliano Zaro
62e7c4b15b
Don't restore user lost fuse 2019-07-27 21:55:06 +02:00
Giuliano Zaro
602b05ab04
Fix typo 2019-07-27 21:47:58 +02:00
Limor "Ladyada" Fried
2030810878
Merge pull request #77 from wallarug/master
Robo HAT MM1 updates v1.8 board
2019-07-27 13:11:36 -04:00
GMagician
401ac6953e Fixed fuses programming
Changed fixed newfuses value with real "brand new SoC" defaults
2019-07-27 11:06:08 +02:00
wallarug
b3291f4500 changed name of robohatmm1 boards to reflect naming schema 2019-07-27 18:45:00 +10:00
wallarug
4260c08e09 final board changes 2019-07-27 18:44:25 +10:00
wallarug
75c330ed49 updated both robohatmm1 m0 and m4 2019-07-27 18:43:13 +10:00
wallarug
52424257d9 updated M4 robohatmm1 2019-07-27 18:42:03 +10:00
Limor "Ladyada" Fried
cc71ede119
Merge pull request #75 from bwshockley/bwshockley-mini-sam-m0
Add Mini SAM M0 Board Definition
2019-07-18 11:20:32 -04:00
Benjamin Shockley
4f513fee2a
Create board_config.h 2019-07-18 07:47:49 -05:00
Benjamin Shockley
23d5a57653
Create board.mk 2019-07-18 07:44:09 -05:00
Giuliano Zaro
74cc3b30ab
Update selfmain.c 2019-07-16 09:17:32 +02:00
Giuliano Zaro
6a35639103
Some fix (left over parts) 2019-07-02 10:04:51 +02:00
GMagician
708dd9d5a0 Save all user page in samd51 2019-06-30 09:52:15 +02:00
Keith Packard
1013bc682e add snekboard
Another samd21g18a board developed for snek and legos

Signed-off-by: Keith Packard <keithp@keithp.com>
2019-06-27 23:50:04 -07:00
Dan Halbert
6ef421ecc4
Merge pull request #71 from dhalbert/pid-vid-bootloader_board_id
Change BOOTLOADER_BOARD_ID to be USB VID+PID
2019-06-23 17:22:58 -04:00
Dan Halbert
6c33d79e9d Change BOOTLOADER_BOARD_ID to be VID+PID 2019-06-23 15:09:35 -04:00
Dan Halbert
93da06e93d
Merge pull request #70 from mmoskal/arcadebl
Update config: accelerometer type in pybadge
2019-06-23 15:02:17 -04:00
Michal Moskal
65b220d1dd Update config: accelerometer type in pybadge
Also get random board ids for all arcades
2019-06-22 20:41:07 -07:00
Limor "Ladyada" Fried
fcae2760be
Merge pull request #68 from GMagician/GMagician-patch-1
Update readme to samd51 release
2019-06-18 13:33:50 -04:00
Giuliano Zaro
96c7aaa40f
Update readme to samd51 release
Added some references specific to samd51 boards
2019-06-18 14:13:55 +02:00
wallarug
8816ca26c6 need serial 2019-06-18 20:53:41 +10:00
wallarug
28ef110f7d no serial 2 2019-06-18 20:52:18 +10:00
wallarug
0358e3735a we need serial 2019-06-18 20:48:48 +10:00
wallarug
1f86cd3f60 no serial 2019-06-18 20:48:17 +10:00
wallarug
a6c2ac3114 cleaned 2019-06-18 20:47:58 +10:00
wallarug
a796181a24 build 2019-06-18 20:40:49 +10:00
wallarug
7186df5512 changed usart_mask to match sercom5 2019-06-18 20:40:04 +10:00
wallarug
9517dd2a36 uploading build 2019-06-18 20:36:07 +10:00
wallarug
42c41a07c3 updated uart - APBDMASK 2019-06-18 20:35:31 +10:00
wallarug
1eaee86a28 updated uart 2019-06-18 20:31:08 +10:00
wallarug
a7a454132f updated uart port 2019-06-18 20:30:03 +10:00
wallarug
09c839bacc added build director 2019-06-18 15:57:48 +10:00
wallarug
e88dd3a523 removed git ignore 2019-06-18 15:57:36 +10:00
wallarug
4fdf0fece2 robohatmm1 samd51: tested build settings. UART enabled on UART header 2019-06-14 23:30:56 +10:00
Limor "Ladyada" Fried
926fb6e726
Merge pull request #66 from GMagician/fix
Address #21
2019-06-13 14:37:16 -04:00
GMagician
fc07de0ffd Fix
Fix #21
Fix comment
2019-06-13 20:23:48 +02:00
wallarug
efdf9b63b1 robohatmm1: samd51 varient added. 2019-06-13 22:19:21 +10:00
Dan Halbert
49723b4a25
Merge pull request #64 from adafruit/pybadge_lc
Small change to avoid compiler warning
2019-05-17 11:52:17 -04:00
Dan Halbert
855dbb8f43 Move decl to avoid unused variable warning 2019-05-17 09:59:27 -04:00
Limor "Ladyada" Fried
52bb46c379
Merge pull request #63 from adafruit/pybadge_lc
Improve screen text writing; add pybadge_lc; add light sensor config
2019-05-17 00:02:45 -04:00
Dan Halbert
572caca483 Merge remote-tracking branch 'microsoft/master' into pybadge_lc 2019-05-16 23:08:04 -04:00
Michal Moskal
fe9b8b4088 Only check CRCs in update on D21 to allow patcher usage 2019-05-16 17:35:15 -07:00
Michal Moskal
94cb0fa441 Merge branch 'master' of https://github.com/Microsoft/uf2-samd21 2019-05-16 17:25:06 -07:00
Michal Moskal
1c026815b6 Simplify debug tool.js 2019-05-16 17:24:56 -07:00
Michal Moskal
fa80209eaf Enable tpwr on BMP 2019-05-16 17:24:38 -07:00
Dan Halbert
e1d727f860 fix line endings on capablerobot_usbhub/ files 2019-05-16 16:11:57 -04:00
Dan Halbert
f5f7461a0c Merge remote-tracking branch 'origin/master' into pybadge_lc 2019-05-16 16:11:12 -04:00
Dan Halbert
b8e5b80dae
Merge pull request #62 from CapableRobot/capablerobot-usbhub
Added definition for Capable Robot USB Hub
2019-05-16 16:10:00 -04:00
Dan Halbert
3e6e7c0ff4 add light sensor to pygamer 2019-05-16 15:03:33 -04:00
Dan Halbert
545ddacc50 add PIN_LIGHT (light sensor) to pybadge and pybadge_lc 2019-05-13 11:40:22 -04:00
Dan Halbert
f435a9c016 Merge branch 'master' into pybadge_lc 2019-05-09 22:02:16 -04:00
Dan Halbert
6011ff06ed Merge remote-tracking branch 'microsoft/master' 2019-05-09 22:00:08 -04:00
Dan Halbert
3b8f9b6313 add arcade_pybadge_lc; improve screen text writing 2019-05-09 21:58:58 -04:00
Michał Moskal
3caf280e24
Merge pull request #67 from atoomnetmarc/master
Added support for ATSAME54
2019-05-09 17:44:33 -07:00
Dan Halbert
9d9a8a88e3 touch up version location 2019-05-07 21:24:20 -04:00
Dan Halbert
a4d8af3d4f
Merge pull request #61 from adafruit/move-version-print
Make more room for version number on screen
2019-05-07 20:17:35 -04:00
Dan Halbert
a1bd1a8ba7 Make more room for version number on screen 2019-05-07 20:07:56 -04:00
Dan Halbert
865da2fd31 Merge remote-tracking branch 'microsoft/master' 2019-05-07 18:34:19 -04:00
Dan Halbert
586d4b3a25
Merge pull request #59 from ladyada/master
Fix arcade support for both pybadge/pygamer
2019-05-07 17:05:51 -04:00
ladyada
885954dc8d fix speaker and add jacdac on pin 13 2019-05-05 00:02:24 -04:00
ladyada
f1504a316d add audio amp enable to bootloader def 2019-05-02 16:10:52 -04:00
ladyada
93cbf96cd1 fix analog joystick to work with arcade 2019-05-01 14:44:15 -04:00
ladyada
565042c513 try telling arcade to use analog stick 2019-04-29 21:30:42 -04:00
Dan Halbert
c92c7d5987
Merge pull request #52 from alexwhittemore/master
Fix compilation error if #define USE_FAT 0
2019-04-29 20:26:36 -04:00
Dan Halbert
6e768a4fe4
Merge pull request #55 from robotics-masters/master
added board robohatmm1 board defs.
2019-04-29 16:59:21 -04:00
Chris Osterwood
1aa63e6b4f Added board definition for Capable Robot USB Hub 2019-04-29 10:53:24 -04:00
Chris Osterwood
44185f98c7 Added flashing via JLink to Makefile 2019-04-29 10:53:03 -04:00
Dan Halbert
18a14fdc56
Merge pull request #57 from ladyada/master
Pybadge bootlder w/A+B button fix
2019-04-28 15:26:35 -04:00
ladyada
322ffca5cb removing confusing pybadge bootloader - use 'arcade' one instead! 2019-04-28 15:06:02 -04:00
wallarug
1097814e5e updated PID/VID 2019-04-28 00:19:29 +10:00
ladyada
fea6552608 use all 11 characters (text needed a little moving) 2019-04-26 20:45:41 -04:00
ladyada
dc9d022662 Add initial pygamer definition. **note** doesn't support analog joystick yet but will soon (i hope :) 2019-04-26 20:41:50 -04:00
ladyada
47b2b9af62 fix https://github.com/adafruit/uf2-samdx1/issues/56 2019-04-26 20:29:04 -04:00
wallarug
b1c616f103 added board defs for robohatmm1. 2019-04-25 21:46:45 +10:00
Alex Whittemore
c6e4a8e7bc
Fix compilation error if #define USE_FAT 0
NUM_DIRENTRIES is undefined if USE_FAT 0. I'm not quite sure why more of fat.c isn't excluded if USE_FAT 0, but this is the easy way to fix that one particular issue with minimal impact.
2019-04-18 20:42:04 -07:00
ladyada
6404a45b9e rename to final 2019-04-16 12:59:19 -04:00
ladyada
33f1e40553 fix up pybadge def, center name and display drive name 2019-04-16 12:58:48 -04:00
ladyada
edb6eb2a6c fix url and name 2019-04-16 12:42:17 -04:00
ladyada
b7a130b618 oooh new! 2019-04-16 12:42:17 -04:00
Michał Moskal
d8dcad0f98
Merge pull request #71 from adafruit/pr-to-microsoft-2019-04-16
Many new boards and corrections; SAMD fuse repair
2019-04-16 09:32:45 -07:00
Dan Halbert
2e5ac4999a Revert "don't bother yelm-eng@microsoft.com with our travis builds"
This reverts commit 0d796e4c5b.
2019-04-16 10:42:25 -04:00
Dan Halbert
b9e9e70e98
Merge pull request #49 from adafruit/upstream-merge-2019-04
Merge from microsoft/uf2-samdx1; fuse repair
2019-04-14 22:07:15 -04:00
Dan Halbert
a2fa250358 Repair fuses: if they have been set to all 1's, set them to reasonable values 2019-04-14 18:17:35 -04:00
Dan Halbert
19656ba6a3 Merge remote-tracking branch 'microsoft/master' into upstream-merge-2019-04 2019-04-13 22:19:10 -04:00
Michal Moskal
61b7505c0e Make sure startup delay is similar on SAMD51 2019-04-12 06:44:24 -07:00
Michal Moskal
4c2e73e7a0 Use a more reliable and longer USB delay
(this applies to PXT apps which enter the bootloader with single reset)
2019-04-11 15:56:19 -07:00
Michal Moskal
1e9d3f6d14 Add bootloader flashing loop 2019-04-11 15:55:19 -07:00
Dan Halbert
d05db91def Merge remote-tracking branch 'microsoft/master' into upstream-merge-2019-04 2019-04-11 14:19:32 -04:00
Michal Moskal
c0f3813d77 Fix URL to screen mockup script 2019-03-28 17:12:45 -07:00
Michal Moskal
a698ed4ad7 Use ARCADE-D5 as drive label 2019-03-28 16:44:57 -07:00
Michal Moskal
34689e380f Use smaller font, rearragne boot screen a bit 2019-03-28 16:44:43 -07:00
Michal Moskal
cca088cf06 Fix #69 - RootDirEntires computation 2019-03-28 16:38:49 -07:00
Scott Shawcroft
5193a1ab12
Merge pull request #46 from ladyada/master
fix pyportal and add metro m4 wifi
2019-03-20 15:19:26 -07:00
ladyada
84a17bf900 rename party! 2019-03-20 18:12:44 -04:00
ladyada
318ae09410 add beginning of metro m4 wifi (rev B) 2019-03-15 23:15:49 -04:00
ladyada
bc732dc087 fix URL 2019-03-15 23:08:29 -04:00
ladyada
3ebec6bf9c rev C changes 2019-03-15 23:08:29 -04:00
Michał Moskal
25deea9d30
Merge pull request #68 from henrygab/patch-1
Add familyID and fix FAT16 bug
2019-03-14 16:47:00 -07:00
Henry Gabryjelski
17cf5763a9 Add familyID and fix FAT16 bug
Add many comments and static compile-time assertions,
which do not add to code size, but document unwritten
presumptions of the code.

Code changes:
1. Set boot sector .PhysicalDriveNum to 0x80
2. Set a valid date for file creation and update.  This fixes ability to list files in DOS / CMD.
3. Add the family ID to the generated UF2 file.
2019-03-14 16:12:38 -07:00
marc
d03ea2cf84 Added support for ATSAME54 2019-03-01 13:19:50 +01:00
Limor "Ladyada" Fried
1b32e2512e
Merge pull request #45 from maholli/master
adding SAM32 uf2 bootloader
2019-02-05 21:02:49 -05:00
Max Holliday
aa533190e8 adding SAM32 uf2 bootloader
SAMD51 running circuitpython talking to an ESP32 running micropython.

Full board details at: https://github.com/maholli/SAM32
2019-02-05 17:42:29 -08:00
Dan Halbert
54521e1809
Merge pull request #44 from bwshockley/bwshockley-mini-sam-m4
Mini Sam M4
2019-02-03 16:42:26 -05:00
Benjamin Shockley
7678bf03b1
Create board_config.h for Mini SAM M4
Added the board_config file for Mini SAM M4
2019-02-03 08:45:55 -06:00
Benjamin Shockley
328e5da918
Create board.mk for Mini SAM M4
Adding Mini SAM M4 board definition.
2019-02-03 08:44:35 -06:00
Sabas
dec2fb702c add arduino mkr1300 (#66) 2019-01-31 08:24:59 -08:00
Limor "Ladyada" Fried
1e0d5530ad
Merge pull request #42 from ShawnHymel/master
Updated VID/PID for SparkFun SAMD21 Dev breakout
2019-01-25 13:30:15 -05:00
ShawnHymel
84b2ba9aa9 Updated VID/PID for SparkFun SAMD21 Dev breakout 2019-01-25 09:26:22 -06:00
Michal Moskal
fc4760b351 Fix format of CF2 data 2019-01-23 16:42:39 +00:00
Michał Moskal
5cc2bd2f11
Merge pull request #65 from Microsoft/arcade
Arcade/CF2 support
2019-01-23 16:39:12 +00:00
Michal Moskal
43d2e442b1 Revert accidentail version change 2019-01-17 22:31:19 +00:00
Michal Moskal
7f6f361e41 Fix config entry 2019-01-17 22:29:27 +00:00
Teddy Seyed
310e335e60 Adding jacdac pin to bootloader 2019-01-15 10:39:37 -08:00
Dan Halbert
79065b96b0
Merge pull request #41 from ladyada/master
fixes & pyportal bootloader
2019-01-13 18:12:53 -05:00
ladyada
cfdd5baeb1 bump up FS size for 1MB flash chip (and beyond) 2019-01-13 14:02:58 -05:00
Michal Moskal
b977d70c04 Speed up screen refresh 2019-01-10 21:44:10 +00:00
Dan Halbert
0d0115a644
Merge pull request #39 from ShawnHymel/master
Updated SparkFun SAMD21 Mini PID
2019-01-09 21:21:04 -05:00
ShawnHymel
f061870c84 Changed volume label to match other SparkFun boards 2019-01-09 16:14:24 -06:00
Michal Moskal
5c7bf80cbb Account for CPU speed 2019-01-09 14:26:07 +00:00
Michal Moskal
98c2743a9a Send out UF2 family in HF2_CMD_BININFO 2019-01-09 13:24:49 +00:00
Michal Moskal
6098ca498e Fix key codes for BTNMX 2019-01-07 22:20:13 +00:00
Michal Moskal
4c9dfd1fd1 Add screen support 2019-01-07 20:35:12 +00:00
Michal Moskal
27f21856e0 Remove --warn-unresolved-symbols - it should be error not warning 2019-01-07 20:33:57 +00:00
Michal Moskal
889385d13d Use different encoding for multiplexed buttons 2019-01-07 16:57:32 +00:00
Michal Moskal
9b5d358a32 Use CF2 patcher for configuration data 2019-01-07 16:52:33 +00:00
Michal Moskal
209d795792 Tweak DeviceInterfaceGUIDs a bit 2019-01-06 14:06:16 +00:00
ladyada
797305f59b fix URL 2018-12-30 21:23:30 -05:00
ladyada
b444a0913a all samd51 are xtalless but might as well 2018-12-30 21:23:30 -05:00
ladyada
200da5b71e rev A hardware 2018-12-30 21:23:30 -05:00
ladyada
ac223d3852 https://github.com/adafruit/uf2-samdx1/issues/36 2018-12-30 21:23:29 -05:00
Teddy Seyed
c1df3a53e9 Adding alternate config for non adafruit screens for arcade, and an arcade bootloader for the Feather 2018-12-29 20:33:47 -08:00
Dan Halbert
0d796e4c5b don't bother yelm-eng@microsoft.com with our travis builds 2018-12-27 15:10:18 -05:00
Michal Moskal
e0dfbe4877 Check familyID before other stuff 2018-11-30 19:24:27 -08:00
Michal Moskal
201566000b Check optional familyID field when flashing 2018-11-30 18:49:10 -08:00
Michal Moskal
4bf0d7b465 Add support for another arcade board 2018-11-30 17:59:35 -08:00
Michal Moskal
f65c3238fc Add alternative button mapping 2018-11-30 17:55:14 -08:00
Limor "Ladyada" Fried
c44317fb10
Merge pull request #34 from ShawnHymel/master
MKRZero board support
2018-11-13 20:05:39 -08:00
ShawnHymel
c9bad99f2c Updated UF2 VID/PID on MKRZero 2018-11-13 17:04:46 -06:00
ShawnHymel
9c88421a1a Added MKRZero board 2018-11-13 14:06:06 -06:00
Dan Halbert
f0258fe1fd
Merge pull request #33 from ladyada/master
trellis m4 shipping boot
2018-11-02 22:47:22 -04:00
ladyada
e4478e316b trellis m4 shipping boot 2018-11-02 20:30:35 -04:00
Dan Halbert
cb6ce4a23a
Merge pull request #31 from ladyada/master
A range of small fixes + Hallowing UF2
2018-10-03 15:07:41 -04:00
ladyada
7d17cf4b9f requested changes! 2018-10-03 14:41:33 -04:00
Michal Moskal
7c2f33d3d1 Add Itsy-based Arcade board 2018-09-26 12:47:58 -07:00
Michal Moskal
f5fd25e9f7 Allow for storing configuration in the bootloader area 2018-09-26 12:47:47 -07:00
ladyada
ebe34f660b Merge branch 'master' of github.com:ladyada/uf2-samd21 2018-09-13 21:06:23 -04:00
ladyada
458205cc26 this is halloween this is halloween 2018-09-13 21:04:04 -04:00
ladyada
56abc28c58 correct feather m4 url 2018-09-13 21:04:03 -04:00
ladyada
ee5bd3c2cd update & finalize feather m4 2018-09-13 21:04:03 -04:00
ladyada
32e8aae2be generic feather m0 2018-09-13 21:04:03 -04:00
ladyada
16f7be6940 rename express 2018-09-13 21:04:03 -04:00
ladyada
4ce22c7c6a added correct url for pirkey 2018-09-13 21:04:03 -04:00
Limor "Ladyada" Fried
3f4c7c5d9d
Merge pull request #30 from tannewt/grandcentral
Add Grand Central support.
2018-09-06 16:21:41 -07:00
Scott Shawcroft
ebdadb0573
Add Grand Central support. 2018-09-06 15:10:37 -07:00
Michał Moskal
2d4ec73596
Merge pull request #54 from PTS93/patch-1
Added link to ARM Toolchain download page
2018-07-31 10:24:33 -07:00
PTS93
aa3e166332
Added link to ARM Toolchain download page
This is causing quite a bit of confusion as versions coming with the OS is often outdated and does not work with the latest git state.
F.e. https://github.com/Microsoft/uf2-samdx1/issues/24 and https://github.com/Microsoft/uf2-samdx1/issues/50
2018-07-31 18:05:15 +02:00
ladyada
887cc309fc this is halloween this is halloween 2018-07-29 19:32:33 -04:00
ladyada
f356c879e7 correct feather m4 url 2018-07-27 21:51:42 -04:00
ladyada
d6d3f14659 update & finalize feather m4 2018-07-27 21:51:42 -04:00
ladyada
fa9ef5823d generic feather m0 2018-07-27 21:51:42 -04:00
ladyada
e9eda4a001 rename express 2018-07-27 21:51:42 -04:00
ladyada
a26dd19b30 added correct url for pirkey 2018-07-27 21:51:42 -04:00
Michał Moskal
888044a5a7
Merge pull request #51 from xinabox/master
Add new XinaBox boards
2018-07-24 18:13:20 -07:00
dean
0a2294c8a2 DM: remove unused board 2018-07-19 17:27:01 -04:00
deanm1278
e24af36ec5
Merge pull request #25 from adafruit/dm-samr21
Dm samr21
2018-07-19 17:26:09 -04:00
dean
0aa0c6319a DM: rename radiofruit 2018-07-19 17:16:42 -04:00
dean
7429335756 DM: add feather radio 2018-07-19 17:00:54 -04:00
brendanvanbreda
3d28a31356
Update README.md 2018-07-10 14:25:24 +02:00
Michał Moskal
c92ac1db1a
Merge pull request #46 from stevenj/master
Allowed Bootloader to build WITHOUT a LED_PIN defined.
2018-06-08 20:47:55 -07:00
Steven Johnson
e915f77a18 Allowed Bootloader to build WITHOUT a LED_PIN defined. 2018-06-09 11:10:22 +08:00
Dan Halbert
db34342304
Merge pull request #20 from ladyada/master
crickit & itsybitsy m4
2018-04-21 22:39:59 -04:00
Michał Moskal
b29e00cd58
Merge pull request #40 from adafruit/master
Add Adafruit Feather M4; add needed board.mk files; improve Metro M0 double-click
2018-04-20 18:32:12 -07:00
brendanvanbreda
9a319c005d
Update README.md 2018-04-18 09:33:04 +02:00
brendanvanbreda
df9936d8e0
Create board_config.h 2018-04-18 09:31:49 +02:00
brendanvanbreda
349664da9b
Create board.mk 2018-04-18 09:30:52 +02:00
brendanvanbreda
a10516ec1e
Create board_config.h 2018-04-18 09:30:18 +02:00
brendanvanbreda
24c994647e
Create board.mk 2018-04-18 09:29:38 +02:00
ladyada
3178c06507 woops fix part # 2018-04-16 14:51:44 -04:00
ladyada
da0c4c5997 crickit & itsybitsy m4 2018-04-14 23:18:24 -04:00
Dan Halbert
f966246f38
Merge pull request #19 from ladyada/master
fix metro m4 URL & name
2018-04-08 14:44:48 -04:00
ladyada
a04c6632df fix metro m4 URL & name 2018-04-08 14:00:35 -04:00
Dan Halbert
c0214879d1 add needed board.mk files 2018-04-07 19:18:53 -04:00
Dan Halbert
07f1c54a97
Merge pull request #18 from ladyada/master
reduce by experiment to slowest before SWD on teensy burner stops working
2018-04-07 19:06:57 -04:00
ladyada
8a798db800 reduce by experiement to slowest before SWD on teensy burner stops working https://github.com/adafruit/uf2-samd21/issues/16 2018-04-07 17:23:02 -04:00
Dan Halbert
c91ce29a48
Merge pull request #17 from tannewt/feather_m4
Add support for Feather M4 Express
2018-03-23 12:46:54 -04:00
Scott Shawcroft
1933b8cf5c
Update USB PID 2018-03-23 09:33:07 -07:00
Scott Shawcroft
bdcd5b3f31 Add support for Feather M4 Express 2018-03-23 09:30:28 -07:00
Michał Moskal
7e6819e218
Merge pull request #39 from adafruit/master
shumatech stack corruption fix; metro m4 updates; CPX neopixel glitch fix
2018-03-21 15:18:07 +00:00
Scott Shawcroft
509d60db6d
Merge pull request #15 from dhalbert/microsoft-merge-2018-03-20
Microsoft merge 2018 03 20
2018-03-20 16:18:00 -07:00
Dan Halbert
bfc2ca5333 Makefile did not end with a newline 2018-03-20 14:06:22 -04:00
Dan Halbert
8a2bfea981 Merge remote-tracking branch 'microsoft/master' into microsoft-merge-2018-03-20 2018-03-20 14:04:55 -04:00
Dan Halbert
82bda093a6
Merge pull request #14 from dhalbert/metro_m4_revf
Update metro_m4 to rev F pins. Save rev B in metro_m4_revb.
2018-03-20 13:58:14 -04:00
Dan Halbert
8c98abd6b0 Update metro_m4 to rev F pins. Save rev B in metro_m4_revb. 2018-03-20 13:19:37 -04:00
Michal Moskal
1f706a115c Automatically init submodules if needed 2018-03-09 10:39:54 -08:00
Michał Moskal
414d1eb6e5
Merge pull request #31 from dhalbert/microsoft_update_20180205
SAMD51 support and other changes from adafruit version of uf2-samd21.
2018-03-08 19:09:37 -08:00
Michał Moskal
5abc3553ef
Merge pull request #37 from awatterott/new-boards
New Boards
2018-03-08 18:46:27 -08:00
Andreas Watterott
fd6b9027a4 new boards 2018-03-07 09:11:54 +01:00
303 changed files with 298722 additions and 246 deletions

1
.gitignore vendored
View file

@ -7,3 +7,4 @@ Makefile.user
node_modules
scripts/clean-ifaces/*.plist
.vscode/c_cpp_properties.json
TAGS

10
.gitignore.bk Normal file
View file

@ -0,0 +1,10 @@
build/
.vs/
uf2-bootloader.elf
tmp
*.sw?
Makefile.user
node_modules
scripts/clean-ifaces/*.plist
.vscode/c_cpp_properties.json
TAGS

View file

@ -15,12 +15,12 @@ node_js:
cache:
directories:
- $HOME/gcc-arm-none-eabi-6-2017-q1-update
- $HOME/gcc-arm-none-eabi-9-2019-q4-major
install:
- export GCC_DIR=$HOME/gcc-arm-none-eabi-6-2017-q1-update
- export GCC_ARCHIVE=$HOME/gcc-arm-none-eabi-6-2017-q1-update-linux.tar.bz2
- export GCC_URL=https://developer.arm.com/-/media/Files/downloads/gnu-rm/6_1-2017q1/gcc-arm-none-eabi-6-2017-q1-update-linux.tar.bz2?product=GNU%20ARM%20Embedded%20Toolchain,64-bit,,Linux,6-2017-q1-update
- export GCC_DIR=$HOME/gcc-arm-none-eabi-9-2019-q4-major
- export GCC_ARCHIVE=$HOME/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
- export GCC_URL=https://developer.arm.com/-/media/Files/downloads/gnu-rm/9-2019q4/gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2
- if [ ! -e $GCC_DIR/bin/arm-none-eabi-g++ ]; then wget $GCC_URL -O $GCC_ARCHIVE; tar xfj $GCC_ARCHIVE -C $HOME; fi
- export PATH=$PATH:$GCC_DIR/bin

58
Makefile Normal file → Executable file
View file

@ -42,7 +42,7 @@ endif
LDFLAGS= $(COMMON_FLAGS) \
-Wall -Wl,--cref -Wl,--check-sections -Wl,--gc-sections -Wl,--unresolved-symbols=report-all -Wl,--warn-common \
-Wl,--warn-section-align -Wl,--warn-unresolved-symbols \
-Wl,--warn-section-align \
-save-temps -nostartfiles \
--specs=nano.specs --specs=nosys.specs
BUILD_PATH=build/$(BOARD)
@ -56,14 +56,20 @@ INCLUDES += -Ilib/samd21/samd21a/include/
endif
ifeq ($(CHIP_FAMILY), samd51)
ifeq ($(findstring SAME54,$(CHIP_VARIANT)),SAME54)
INCLUDES += -Ilib/same54/include/
else
INCLUDES += -Ilib/samd51/include/
endif
endif
COMMON_SRC = \
src/flash_$(CHIP_FAMILY).c \
src/init_$(CHIP_FAMILY).c \
src/startup_$(CHIP_FAMILY).c \
src/usart_sam_ba.c \
src/screen.c \
src/images.c \
src/utils.c
SOURCES = $(COMMON_SRC) \
@ -86,7 +92,9 @@ EXECUTABLE=$(BUILD_PATH)/$(NAME).bin
SELF_EXECUTABLE=$(BUILD_PATH)/update-$(NAME).uf2
SELF_EXECUTABLE_INO=$(BUILD_PATH)/update-$(NAME).ino
all: dirs $(EXECUTABLE) $(SELF_EXECUTABLE)
SUBMODULES = lib/uf2/README.md
all: $(SUBMODULES) dirs $(EXECUTABLE) $(SELF_EXECUTABLE)
r: run
b: burn
@ -98,6 +106,40 @@ burn: all
run: burn wait logs
# This currently only works on macOS with a BMP debugger attached.
# It's meant to flash the bootloader in a loop.
BMP = $(shell ls -1 /dev/cu.usbmodem* | head -1)
BMP_ARGS = --nx -ex "set mem inaccessible-by-default off" -ex "set confirm off" -ex "target extended-remote $(BMP)" -ex "mon tpwr enable" -ex "mon swdp_scan" -ex "attach 1"
GDB = arm-none-eabi-gdb
bmp-flash: $(BUILD_PATH)/$(NAME).bin
@test "X$(BMP)" != "X"
$(GDB) $(BMP_ARGS) -ex "load" -ex "quit" $(BUILD_PATH)/$(NAME).elf | tee build/flash.log
@grep -q "Transfer rate" build/flash.log
bmp-flashone:
while : ; do $(MAKE) bmp-flash && exit 0 ; sleep 1 ; done
afplay /System/Library/PrivateFrameworks/ScreenReader.framework/Versions/A/Resources/Sounds/Error.aiff
bmp-loop:
while : ; do $(MAKE) bmp-flashone ; sleep 5 ; done
bmp-gdb: $(BUILD_PATH)/$(NAME).bin
$(GDB) $(BMP_ARGS) $(BUILD_PATH)/$(NAME).elf
$(BUILD_PATH)/flash.jlink: $(BUILD_PATH)/$(NAME).bin
echo " \n\
r \n\
h \n\
loadbin \"$(BUILD_PATH)/$(NAME).bin\", 0x0 \n\
verifybin \"$(BUILD_PATH)/$(NAME).bin\", 0x0 \n\
r \n\
qc \n\
" > $(BUILD_PATH)/flash.jlink
jlink-flash: $(BUILD_PATH)/$(NAME).bin $(BUILD_PATH)/flash.jlink
jlinkexe -if swd -device AT$(CHIP_VARIANT) -speed 4000 -CommanderScript $(BUILD_PATH)/flash.jlink
wait:
sleep 5
@ -128,7 +170,7 @@ $(SELF_EXECUTABLE): $(SELF_OBJECTS)
-T$(SELF_LINKER_SCRIPT) \
-Wl,-Map,$(BUILD_PATH)/update-$(NAME).map -o $(BUILD_PATH)/update-$(NAME).elf $(SELF_OBJECTS)
arm-none-eabi-objcopy -O binary $(BUILD_PATH)/update-$(NAME).elf $(BUILD_PATH)/update-$(NAME).bin
python2 lib/uf2/utils/uf2conv.py -b $(BOOTLOADER_SIZE) -c -o $@ $(BUILD_PATH)/update-$(NAME).bin
python3 lib/uf2/utils/uf2conv.py -b $(BOOTLOADER_SIZE) -c -o $@ $(BUILD_PATH)/update-$(NAME).bin
$(BUILD_PATH)/%.o: src/%.c $(wildcard inc/*.h boards/*/*.h) $(BUILD_PATH)/uf2_version.h
echo "$<"
@ -138,7 +180,7 @@ $(BUILD_PATH)/%.o: $(BUILD_PATH)/%.c
$(CC) $(CFLAGS) $(BLD_EXTA_FLAGS) $(INCLUDES) $< -o $@
$(BUILD_PATH)/selfdata.c: $(EXECUTABLE) scripts/gendata.py src/sketch.cpp
python2 scripts/gendata.py $(BOOTLOADER_SIZE) $(EXECUTABLE)
python3 scripts/gendata.py $(BOOTLOADER_SIZE) $(EXECUTABLE)
clean:
rm -rf build
@ -165,8 +207,11 @@ drop-board: all
mkdir -p build/drop/$(BOARD)
cp $(SELF_EXECUTABLE) build/drop/$(BOARD)/
cp $(EXECUTABLE) build/drop/$(BOARD)/
# .ino works only for SAMD21 right now; suppress for SAMD51
ifeq ($(CHIP_FAMILY),samd21)
cp $(SELF_EXECUTABLE_INO) build/drop/$(BOARD)/
cp boards/$(BOARD)/board_config.h build/drop/$(BOARD)/
endif
drop-pkg:
mv build/drop build/uf2-samd21-$(UF2_VERSION_BASE)
@ -175,6 +220,9 @@ drop-pkg:
rm -rf build/uf2-samd21-$(UF2_VERSION_BASE)
all-boards:
for f in `cd boards; ls` ; do "$(MAKE)" BOARD=$$f drop-board || break; done
for f in `cd boards; ls` ; do "$(MAKE)" BOARD=$$f drop-board || break -1; done
drop: all-boards drop-pkg
$(SUBMODULES):
git submodule update --init --recursive

View file

@ -117,7 +117,7 @@ to temporarily turn off the protection. In gdb the command is:
* `make` and an Unix environment
* `node`.js in path (optional)
* `arm-none-eabi-gcc` in the path (the one coming with Yotta will do just fine)
* `arm-none-eabi-gcc` in the path (the one coming with Yotta will do just fine). You can get the latest version from ARM: https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads
* `openocd` - you can use the one coming with Arduino (after your install the M0 board support)
Atmel Studio is not supported.
@ -132,7 +132,7 @@ Otherwise, you can use other SAMD21 board and an external `openocd` compatible
debugger. IBDAP is cheap and seems to work just fine. Another option is to use
Raspberry Pi and native bit-banging.
`openocd` will flash 16k, meaning the beginning of user program (if any) will
`openocd` will flash 16k, meaning that on SAMD21 the beginning of user program (if any) will
be overwritten with `0xff`. This also means that after fresh flashing of bootloader
no double-tap reset is necessary, as the bootloader will not try to start application
at `0xffffffff`.
@ -167,8 +167,8 @@ There is a number of configuration parameters at the top of `uf2.h` file.
Adjust them to your liking.
By default, you cannot enable all the features, as the bootloader would exceed
the 8k allocated to it by Arduino etc. It will assert on startup that it's not bigger
than 8k. Also, the linker script will not allow it.
the 8k(SAMD21)/16k(SAMD51) allocated to it by Arduino etc. It will assert on startup that it's not bigger
than 8k(SAMD21)/16k(SAMD51). Also, the linker script will not allow it.
Three typical configurations are:
@ -186,7 +186,7 @@ then CDC might work and MSC will not work;
otherwise, if you have no drivers, MSC will work, and CDC will work on Windows 10 only.
Thus, it's best to set the USB ID to one for which there are no drivers.
The bootloader sits at 0x00000000, and the application starts at 0x00002000.
The bootloader sits at 0x00000000, and the application starts at 0x00002000 (SAMD21) or 0x00004000 (SAMD51).
## Code of Conduct

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,17 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "8086 Consultancy"
#define PRODUCT_NAME "COMMANDER"
#define VOLUME_LABEL "CMDBOOT"
#define INDEX_URL "https://8086.net/p/commander"
#define BOARD_ID "SAMD21G18A-Commander-v0"
#define USB_VID 0x3171
#define USB_PID 0x0100
#define LED_PIN PIN_PA06
#endif

2
boards/CC03/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,16 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "XinaBox Limited"
#define PRODUCT_NAME "CC03"
#define VOLUME_LABEL "CC03"
#define INDEX_URL "https://xinabox.cc/products/cc03"
#define BOARD_ID "SAMD21G18A-CC03-v0"
//#define USB_VID 0x2341
//#define USB_PID 0x024D
#define LED_PIN PIN_PA07
#endif

2
boards/CS11/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,16 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "XinaBox Limited"
#define PRODUCT_NAME "CS11"
#define VOLUME_LABEL "CS11"
#define INDEX_URL "https://xinabox.cc/products/cc11"
#define BOARD_ID "SAMD21G18A-CS11-v0"
//#define USB_VID 0x2341
//#define USB_PID 0x024D
#define LED_PIN PIN_PA08
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,103 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Feather Arcade D51"
#define VOLUME_LABEL "ARCADE-D5"
#define INDEX_URL "https://arcade.makecode.com/"
#define BOARD_ID "SAMD51J19A-Feather-Arcade-D51"
#define USB_VID 0x239A
#define USB_PID 0x0022
#define LED_PIN PIN_PA23
#define BOARD_NEOPIXEL_PIN PIN_PB03
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM0
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBAMASK_SERCOM0
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD3_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_PA07D_SERCOM0_PAD3
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_UNUSED
#define BOOT_USART_PAD0 PINMUX_PA04D_SERCOM0_PAD0
#define BOOT_GCLK_ID_CORE SERCOM0_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM0_GCLK_ID_SLOW
#define HAS_CONFIG_DATA 1
#define BOARD_SCREEN 1
// This configuration data should be edited at https://microsoft.github.io/uf2/patcher/
// Just drop this file there.
// Alternatively, it can be also binary edited there after the bootloader is compiled.
#ifdef DEFINE_CONFIG_DATA
const uint32_t config_data[] = {
/* CF2 START */
513675505, 539130489, // magic
53, 100, // used entries, total entries
4, 0xd, // PIN_BTN_A = PIN_SCL
5, 0x12, // PIN_BTN_B = PIN_D6
13, 0x17, // PIN_LED = PIN_D13
18, 0x36, // PIN_MISO = PB22
19, 0x37, // PIN_MOSI = PB23
20, 0x23, // PIN_NEOPIXEL = PB03
21, 0x31, // PIN_RX = PB17
23, 0x11, // PIN_SCK = PA17
24, 0xd, // PIN_SCL = PA13
25, 0xc, // PIN_SDA = PA12
26, 0xe, // PIN_SPEAKER_AMP = PIN_D4
28, 0x30, // PIN_TX = PB16
32, 0x11, // PIN_DISPLAY_SCK = PIN_SCK
33, 0x36, // PIN_DISPLAY_MISO = PIN_MISO
34, 0x37, // PIN_DISPLAY_MOSI = PIN_MOSI
35, 0x28, // PIN_DISPLAY_CS = PIN_A2
36, 0x29, // PIN_DISPLAY_DC = PIN_A3
37, 0xa0, // DISPLAY_WIDTH = 160
38, 0x80, // DISPLAY_HEIGHT = 128
39, 0x90, // DISPLAY_CFG0 = 0x90
40, 0xe14ff, // DISPLAY_CFG1 = 0xe14ff
41, 0x18, // DISPLAY_CFG2 = 0x18
43, 0x4, // PIN_DISPLAY_RST = PIN_A4
44, 0x6, // PIN_DISPLAY_BL = PIN_A5
47, 0x15, // PIN_BTN_LEFT = PIN_D11
48, 0x13, // PIN_BTN_RIGHT = PIN_D9
49, 0x14, // PIN_BTN_UP = PIN_D10
50, 0x16, // PIN_BTN_DOWN = PIN_D12
51, 0xc, // PIN_BTN_MENU = PIN_SDA
59, 0x200, // SPEAKER_VOLUME = 512
60, 0x30, // PIN_JACK_TX = PIN_D1
100, 0x2, // PIN_A0 = PA02
101, 0x5, // PIN_A1 = PA05
102, 0x28, // PIN_A2 = PB08
103, 0x29, // PIN_A3 = PB09
104, 0x4, // PIN_A4 = PA04
105, 0x6, // PIN_A5 = PA06
150, 0x31, // PIN_D0 = PB17
151, 0x30, // PIN_D1 = PB16
154, 0xe, // PIN_D4 = PA14
155, 0x10, // PIN_D5 = PA16
156, 0x12, // PIN_D6 = PA18
159, 0x13, // PIN_D9 = PA19
160, 0x14, // PIN_D10 = PA20
161, 0x15, // PIN_D11 = PA21
162, 0x16, // PIN_D12 = PA22
163, 0x17, // PIN_D13 = PA23
200, 0x1, // NUM_NEOPIXELS = 1
204, 0x80000, // FLASH_BYTES = 0x80000
205, 0x30000, // RAM_BYTES = 0x30000
208, 0x239a0022, // BOOTLOADER_BOARD_ID = 0x239a0022
209, 0x55114460, // UF2_FAMILY = ATSAMD51
210, 0x20, // PINS_PORT_SIZE = PA_32
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* CF2 END */
};
#endif
#endif

View file

@ -0,0 +1,7 @@
PIN_BTN_A = PIN_D10
PIN_BTN_B = PIN_D11
PIN_BTN_LEFT = PIN_SDA
PIN_BTN_UP = PIN_D7
PIN_BTN_RIGHT = PIN_SCL
PIN_BTN_DOWN = PIN_D9
PIN_BTN_MENU = PIN_D12

View file

@ -0,0 +1,2 @@
DISPLAY_CFG0 = 0x01000080
DISPLAY_CFG1 = 0x00000603

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51G19A

View file

@ -0,0 +1,108 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Itsy Arcade D51"
#define VOLUME_LABEL "ARCADE-D5"
#define INDEX_URL "https://arcade.makecode.com/"
#define BOARD_ID "SAMD51G19A-Itsy-Arcade-D51"
#define USB_VID 0x239A
#define USB_PID 0x002B
#define LED_PIN PIN_PA22
#define BOARD_RGBLED_CLOCK_PIN PIN_PB02
#define BOARD_RGBLED_DATA_PIN PIN_PB03
#define BOOT_USART_MODULE SERCOM3
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBBMASK_SERCOM3
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA22C_SERCOM3_PAD0
#define BOOT_USART_PAD0 PINMUX_PA23C_SERCOM3_PAD1
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#define HAS_CONFIG_DATA 1
#define BOARD_SCREEN 1
// This configuration data should be edited at https://microsoft.github.io/uf2/patcher/
// Just drop this file there.
// Alternatively, it can be also binary edited there after the bootloader is compiled.
#ifdef DEFINE_CONFIG_DATA
const uint32_t config_data[] = {
/* CF2 START */
513675505, 539130489, // magic
60, 100, // used entries, total entries
4, 0xd, // PIN_BTN_A = PIN_SCL
5, 0x12, // PIN_BTN_B = PIN_D7
7, 0x22, // PIN_DOTSTAR_CLOCK = PB02
8, 0x23, // PIN_DOTSTAR_DATA = PB03
9, 0x2b, // PIN_FLASH_CS = PB11
10, 0x9, // PIN_FLASH_MISO = PA09
11, 0x8, // PIN_FLASH_MOSI = PA08
12, 0x2a, // PIN_FLASH_SCK = PB10
13, 0x16, // PIN_LED = PIN_D13
18, 0x37, // PIN_MISO = PB23
19, 0x0, // PIN_MOSI = PA00
21, 0x10, // PIN_RX = PA16
23, 0x1, // PIN_SCK = PA01
24, 0xd, // PIN_SCL = PA13
25, 0xc, // PIN_SDA = PA12
26, 0x7, // PIN_SPEAKER_AMP = PIN_D2
28, 0x11, // PIN_TX = PA17
32, 0x1, // PIN_DISPLAY_SCK = PIN_SCK
33, 0x37, // PIN_DISPLAY_MISO = PIN_MISO
34, 0x0, // PIN_DISPLAY_MOSI = PIN_MOSI
35, 0x28, // PIN_DISPLAY_CS = PIN_A2
36, 0x29, // PIN_DISPLAY_DC = PIN_A3
37, 0xa0, // DISPLAY_WIDTH = 160
38, 0x80, // DISPLAY_HEIGHT = 128
39, 0x90, // DISPLAY_CFG0 = 0x90
40, 0xe14ff, // DISPLAY_CFG1 = 0xe14ff
41, 0x18, // DISPLAY_CFG2 = 0x18
43, 0x4, // PIN_DISPLAY_RST = PIN_A4
44, 0x6, // PIN_DISPLAY_BL = PIN_A5
47, 0x15, // PIN_BTN_LEFT = PIN_D11
48, 0x13, // PIN_BTN_RIGHT = PIN_D9
49, 0x14, // PIN_BTN_UP = PIN_D10
50, 0x17, // PIN_BTN_DOWN = PIN_D12
51, 0xc, // PIN_BTN_MENU = PIN_SDA
59, 0x200, // SPEAKER_VOLUME = 512
60, 0x11, // PIN_JACK_TX = PIN_D1
100, 0x2, // PIN_A0 = PA02
101, 0x5, // PIN_A1 = PA05
102, 0x28, // PIN_A2 = PB08
103, 0x29, // PIN_A3 = PB09
104, 0x4, // PIN_A4 = PA04
105, 0x6, // PIN_A5 = PA06
150, 0x10, // PIN_D0 = PA16
151, 0x11, // PIN_D1 = PA17
152, 0x7, // PIN_D2 = PA07
153, 0x36, // PIN_D3 = PB22
154, 0xe, // PIN_D4 = PA14
155, 0xf, // PIN_D5 = PA15
157, 0x12, // PIN_D7 = PA18
159, 0x13, // PIN_D9 = PA19
160, 0x14, // PIN_D10 = PA20
161, 0x15, // PIN_D11 = PA21
162, 0x17, // PIN_D12 = PA23
163, 0x16, // PIN_D13 = PA22
201, 0x1, // NUM_DOTSTARS = 1
204, 0x80000, // FLASH_BYTES = 0x80000
205, 0x30000, // RAM_BYTES = 0x30000
208, 0x239a002b, // BOOTLOADER_BOARD_ID = 0x239a002b
209, 0x55114460, // UF2_FAMILY = ATSAMD51
210, 0x20, // PINS_PORT_SIZE = PA_32
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* CF2 END */
};
#endif
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,112 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "PyBadge"
#define VOLUME_LABEL "PYBADGEBOOT"
#define INDEX_URL "http://adafru.it/4200"
#define BOARD_ID "SAMD51J19A-PyBadge-M4"
#define USB_VID 0x239A
#define USB_PID 0x0033
#define LED_PIN PIN_PA23
#define BOARD_NEOPIXEL_PIN PIN_PA15
#define BOARD_NEOPIXEL_COUNT 5
#define BOARD_SCREEN 1
#define BOOT_USART_MODULE SERCOM5
#define BOOT_USART_MASK APBDMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBDMASK_SERCOM5
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PB17C_SERCOM5_PAD1
#define BOOT_USART_PAD0 PINMUX_PB16C_SERCOM5_PAD0
#define BOOT_GCLK_ID_CORE SERCOM5_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM5_GCLK_ID_SLOW
#define HAS_CONFIG_DATA 1
// This configuration data should be edited at https://microsoft.github.io/uf2/patcher/
// Just drop this file there.
// Alternatively, it can be also binary edited there after the bootloader is compiled.
#ifdef DEFINE_CONFIG_DATA
const uint32_t config_data[] = {
/* CF2 START */
513675505, 539130489, // magic
62, 100, // used entries, total entries
1, 0x2e, // PIN_ACCELEROMETER_INT = PB14
2, 0xd, // PIN_ACCELEROMETER_SCL = PIN_SCL (PA13)
3, 0xc, // PIN_ACCELEROMETER_SDA = PIN_SDA (PA12)
4, 0x3ee, // PIN_BTN_A = P_1006
5, 0x3ef, // PIN_BTN_B = P_1007
13, 0x17, // PIN_LED = PIN_D13 (PA23)
14, 0x24, // PIN_LIGHT = PB04
18, 0x36, // PIN_MISO = PB22
19, 0x37, // PIN_MOSI = PB23
20, 0xf, // PIN_NEOPIXEL = PA15
21, 0x31, // PIN_RX = PB17
23, 0x11, // PIN_SCK = PA17
24, 0xd, // PIN_SCL = PA13
25, 0xc, // PIN_SDA = PA12
26, 0x1b, // PIN_SPEAKER_AMP = PA27
28, 0x30, // PIN_TX = PB16
32, 0x2d, // PIN_DISPLAY_SCK = PB13
34, 0x2f, // PIN_DISPLAY_MOSI = PB15
35, 0x27, // PIN_DISPLAY_CS = PB07
36, 0x25, // PIN_DISPLAY_DC = PB05
37, 0xa0, // DISPLAY_WIDTH = 160
38, 0x80, // DISPLAY_HEIGHT = 128
39, 0x80, // DISPLAY_CFG0 = 0x80
40, 0x12c2d, // DISPLAY_CFG1 = 0x12c2d
41, 0x18, // DISPLAY_CFG2 = 0x18
43, 0x0, // PIN_DISPLAY_RST = PA00
44, 0x1, // PIN_DISPLAY_BL = PA01
47, 0x3e8, // PIN_BTN_LEFT = P_1000
48, 0x3eb, // PIN_BTN_RIGHT = P_1003
49, 0x3e9, // PIN_BTN_UP = P_1001
50, 0x3ea, // PIN_BTN_DOWN = P_1002
51, 0x3ec, // PIN_BTN_MENU = P_1004
59, 0x40, // SPEAKER_VOLUME = 64
60, 0x17, // PIN_JACK_TX = PIN_D13
65, 0x2, // PIN_JACK_SND = PIN_A0
69, 0x3ed, // PIN_BTN_SOFT_RESET = P_1005
70, 0x30, // ACCELEROMETER_TYPE = 48
71, 0x20, // PIN_BTNMX_LATCH = PB00
72, 0x3f, // PIN_BTNMX_CLOCK = PB31
73, 0x3e, // PIN_BTNMX_DATA = PB30
100, 0x2, // PIN_A0 = PA02
101, 0x5, // PIN_A1 = PA05
102, 0x28, // PIN_A2 = PB08
103, 0x29, // PIN_A3 = PB09
104, 0x4, // PIN_A4 = PA04
105, 0x6, // PIN_A5 = PA06
152, 0x23, // PIN_D2 = PB03
153, 0x22, // PIN_D3 = PB02
154, 0xe, // PIN_D4 = PA14
155, 0x10, // PIN_D5 = PA16
156, 0x12, // PIN_D6 = PA18
159, 0x13, // PIN_D9 = PA19
160, 0x14, // PIN_D10 = PA20
161, 0x15, // PIN_D11 = PA21
162, 0x16, // PIN_D12 = PA22
163, 0x17, // PIN_D13 = PA23
200, 0x5, // NUM_NEOPIXELS = 5
204, 0x80000, // FLASH_BYTES = 0x80000
205, 0x30000, // RAM_BYTES = 0x30000
208, 0x239a0033, // BOOTLOADER_BOARD_ID = 0x239a0033
209, 0x55114460, // UF2_FAMILY = ATSAMD51
210, 0x20, // PINS_PORT_SIZE = PA_32
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* CF2 END */
};
#endif
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,108 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "BadgeLC"
#define VOLUME_LABEL "BADGELCBOOT"
#define INDEX_URL "http://adafru.it/3939"
#define BOARD_ID "SAMD51J19A-PyBadgeLC-M4"
#define USB_VID 0x239A
#define USB_PID 0x0034
#define LED_PIN PIN_PA23
#define BOARD_NEOPIXEL_PIN PIN_PA15
#define BOARD_NEOPIXEL_COUNT 1
#define BOARD_SCREEN 1
#define BOOT_USART_MODULE SERCOM5
#define BOOT_USART_MASK APBDMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBDMASK_SERCOM5
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PB17C_SERCOM5_PAD1
#define BOOT_USART_PAD0 PINMUX_PB16C_SERCOM5_PAD0
#define BOOT_GCLK_ID_CORE SERCOM5_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM5_GCLK_ID_SLOW
#define HAS_CONFIG_DATA 1
// This configuration data should be edited at https://microsoft.github.io/uf2/patcher/
// Just drop this file there.
// Alternatively, it can be also binary edited there after the bootloader is compiled.
#ifdef DEFINE_CONFIG_DATA
const uint32_t config_data[] = {
/* CF2 START */
513675505, 539130489, // magic
58, 100, // used entries, total entries
4, 0x3ee, // PIN_BTN_A = P_1006
5, 0x3ef, // PIN_BTN_B = P_1007
13, 0x17, // PIN_LED = PIN_D13 (PA23)
14, 0x24, // PIN_LIGHT = PB04
18, 0x36, // PIN_MISO = PB22
19, 0x37, // PIN_MOSI = PB23
20, 0xf, // PIN_NEOPIXEL = PA15
21, 0x31, // PIN_RX = PB17
23, 0x11, // PIN_SCK = PA17
24, 0xd, // PIN_SCL = PA13
25, 0xc, // PIN_SDA = PA12
26, 0x1b, // PIN_SPEAKER_AMP = PA27
28, 0x30, // PIN_TX = PB16
32, 0x2d, // PIN_DISPLAY_SCK = PB13
34, 0x2f, // PIN_DISPLAY_MOSI = PB15
35, 0x27, // PIN_DISPLAY_CS = PB07
36, 0x25, // PIN_DISPLAY_DC = PB05
37, 0xa0, // DISPLAY_WIDTH = 160
38, 0x80, // DISPLAY_HEIGHT = 128
39, 0x80, // DISPLAY_CFG0 = 0x80
40, 0x12c2d, // DISPLAY_CFG1 = 0x12c2d
41, 0x18, // DISPLAY_CFG2 = 0x18
43, 0x0, // PIN_DISPLAY_RST = PA00
44, 0x1, // PIN_DISPLAY_BL = PA01
47, 0x3e8, // PIN_BTN_LEFT = P_1000
48, 0x3eb, // PIN_BTN_RIGHT = P_1003
49, 0x3e9, // PIN_BTN_UP = P_1001
50, 0x3ea, // PIN_BTN_DOWN = P_1002
51, 0x3ec, // PIN_BTN_MENU = P_1004
59, 0x40, // SPEAKER_VOLUME = 64
60, 0x17, // PIN_JACK_TX = PIN_D13
65, 0x2, // PIN_JACK_SND = PIN_A0
69, 0x3ed, // PIN_BTN_SOFT_RESET = P_1005
71, 0x20, // PIN_BTNMX_LATCH = PB00
72, 0x3f, // PIN_BTNMX_CLOCK = PB31
73, 0x3e, // PIN_BTNMX_DATA = PB30
100, 0x2, // PIN_A0 = PA02
101, 0x5, // PIN_A1 = PA05
102, 0x28, // PIN_A2 = PB08
103, 0x29, // PIN_A3 = PB09
104, 0x4, // PIN_A4 = PA04
105, 0x6, // PIN_A5 = PA06
152, 0x23, // PIN_D2 = PB03
153, 0x22, // PIN_D3 = PB02
154, 0xe, // PIN_D4 = PA14
155, 0x10, // PIN_D5 = PA16
156, 0x12, // PIN_D6 = PA18
159, 0x13, // PIN_D9 = PA19
160, 0x14, // PIN_D10 = PA20
161, 0x15, // PIN_D11 = PA21
162, 0x16, // PIN_D12 = PA22
163, 0x17, // PIN_D13 = PA23
200, 0x1, // NUM_NEOPIXELS = 1
204, 0x80000, // FLASH_BYTES = 0x80000
205, 0x30000, // RAM_BYTES = 0x30000
208, 0x239a0034, // BOOTLOADER_BOARD_ID = 0x239a0034
209, 0x55114460, // UF2_FAMILY = ATSAMD51
210, 0x20, // PINS_PORT_SIZE = PA_32
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* CF2 END */
};
#endif
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,112 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "PyGamer"
#define VOLUME_LABEL "PYGAMERBOOT"
#define INDEX_URL "http://adafru.it/4242"
#define BOARD_ID "SAMD51J19A-PyGamer-M4"
#define USB_VID 0x239A
#define USB_PID 0x003D
#define LED_PIN PIN_PA23
#define BOARD_NEOPIXEL_PIN PIN_PA15
#define BOARD_NEOPIXEL_COUNT 5
#define BOARD_SCREEN 1
#define BOOT_USART_MODULE SERCOM5
#define BOOT_USART_MASK APBDMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBDMASK_SERCOM5
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PB17C_SERCOM5_PAD1
#define BOOT_USART_PAD0 PINMUX_PB16C_SERCOM5_PAD0
#define BOOT_GCLK_ID_CORE SERCOM5_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM5_GCLK_ID_SLOW
#define HAS_CONFIG_DATA 1
// This configuration data should be edited at https://microsoft.github.io/uf2/patcher/
// Just drop this file there.
// Alternatively, it can be also binary edited there after the bootloader is compiled.
#ifdef DEFINE_CONFIG_DATA
const uint32_t config_data[] = {
/* CF2 START */
513675505, 539130489, // magic
62, 100, // used entries, total entries
1, 0x2e, // PIN_ACCELEROMETER_INT = PB14
2, 0xd, // PIN_ACCELEROMETER_SCL = PIN_SCL (PA13)
3, 0xc, // PIN_ACCELEROMETER_SDA = PIN_SDA (PA12)
4, 0x3ee, // PIN_BTN_A = P_1006
5, 0x3ef, // PIN_BTN_B = P_1007
13, 0x17, // PIN_LED = PIN_D13 (PA23)
14, 0x24, // PIN_LIGHT = PB04
18, 0x36, // PIN_MISO = PB22
19, 0x37, // PIN_MOSI = PB23
20, 0xf, // PIN_NEOPIXEL = PA15
21, 0x31, // PIN_RX = PB17
23, 0x11, // PIN_SCK = PA17
24, 0xd, // PIN_SCL = PA13
25, 0xc, // PIN_SDA = PA12
26, 0x1b, // PIN_SPEAKER_AMP = PA27
28, 0x30, // PIN_TX = PB16
32, 0x2d, // PIN_DISPLAY_SCK = PB13
34, 0x2f, // PIN_DISPLAY_MOSI = PB15
35, 0x2c, // PIN_DISPLAY_CS = PB12
36, 0x25, // PIN_DISPLAY_DC = PB05
37, 0xa0, // DISPLAY_WIDTH = 160
38, 0x80, // DISPLAY_HEIGHT = 128
39, 0x80, // DISPLAY_CFG0 = 0x80
40, 0x12c2d, // DISPLAY_CFG1 = 0x12c2d
41, 0x18, // DISPLAY_CFG2 = 0x18
43, 0x0, // PIN_DISPLAY_RST = PA00
44, 0x1, // PIN_DISPLAY_BL = PA01
47, 0x4d7, // PIN_BTN_LEFT = P_1239
48, 0x473, // PIN_BTN_RIGHT = P_1139
49, 0x4d6, // PIN_BTN_UP = P_1238
50, 0x472, // PIN_BTN_DOWN = P_1138
51, 0x3ec, // PIN_BTN_MENU = P_1004
59, 0x40, // SPEAKER_VOLUME = 64
60, 0x17, // PIN_JACK_TX = PIN_D13
65, 0x2, // PIN_JACK_SND = PIN_A0
69, 0x3ed, // PIN_BTN_SOFT_RESET = P_1005
70, 0x32, // ACCELEROMETER_TYPE = LIS3DH
71, 0x20, // PIN_BTNMX_LATCH = PB00
72, 0x3f, // PIN_BTNMX_CLOCK = PB31
73, 0x3e, // PIN_BTNMX_DATA = PB30
100, 0x2, // PIN_A0 = PA02
101, 0x5, // PIN_A1 = PA05
102, 0x28, // PIN_A2 = PB08
103, 0x29, // PIN_A3 = PB09
104, 0x4, // PIN_A4 = PA04
105, 0x6, // PIN_A5 = PA06
152, 0x23, // PIN_D2 = PB03
153, 0x22, // PIN_D3 = PB02
154, 0xe, // PIN_D4 = PA14
155, 0x10, // PIN_D5 = PA16
156, 0x12, // PIN_D6 = PA18
159, 0x13, // PIN_D9 = PA19
160, 0x14, // PIN_D10 = PA20
161, 0x15, // PIN_D11 = PA21
162, 0x16, // PIN_D12 = PA22
163, 0x17, // PIN_D13 = PA23
200, 0x5, // NUM_NEOPIXELS = 5
204, 0x80000, // FLASH_BYTES = 0x80000
205, 0x30000, // RAM_BYTES = 0x30000
208, 0x239a003d, // BOOTLOADER_BOARD_ID = 0x239a003d
209, 0x55114460, // UF2_FAMILY = ATSAMD51
210, 0x20, // PINS_PORT_SIZE = PA_32
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* CF2 END */
};
#endif
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51G19A

View file

@ -0,0 +1,29 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Capable Robot Components"
#define PRODUCT_NAME "Programmable USB Hub"
#define VOLUME_LABEL "USBHUBBOOT"
#define INDEX_URL "http://capablerobot.com"
#define BOARD_ID "SAMD51G19A-USBHub-v0"
// VID & PID obtained from Microchip
#define USB_VID 0x04D8
#define USB_PID 0xEDB3
#define LED_PIN PIN_PA19
#define BOOT_USART_MODULE SERCOM1
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBAMASK_SERCOM1
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA17C_SERCOM1_PAD1
#define BOOT_USART_PAD0 PINMUX_PA16C_SERCOM1_PAD0
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21E18A

View file

@ -0,0 +1,17 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Kevin Neubauer"
#define PRODUCT_NAME "CircuitBrains Basic"
#define VOLUME_LABEL "BOOT"
#define INDEX_URL "https://kevinneubauer.com/portfolio/circuitbrains-basic/"
#define BOARD_ID "SAMD21E18A-SOM-v1"
#define LED_PIN PIN_PA14
#define USB_VID 0x04D8
#define USB_PID 0xEC63
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,26 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Kevin Neubauer"
#define PRODUCT_NAME "CircuitBrains Deluxe"
#define VOLUME_LABEL "BOOT"
#define INDEX_URL "https://kevinneubauer.com/portfolio/circuitbrains-deluxe/"
#define BOARD_ID "SAMD51J19A-SOM-v1.3"
#define LED_PIN PIN_PB13
#define USB_VID 0x04D8
#define USB_PID 0xEC64
#define BOOT_USART_MODULE SERCOM3
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBBMASK_SERCOM3
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA22C_SERCOM3_PAD0
#define BOOT_USART_PAD0 PINMUX_PA23C_SERCOM3_PAD1
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#endif

2
boards/crickit/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,19 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "crickit"
#define VOLUME_LABEL "CRICKITBOOT"
#define INDEX_URL "http://adafru.it/"
#define BOARD_ID "SAMD21G18A-crickit-v0"
#define USB_VID 0x239A
#define USB_PID 0x002D
#define LED_PIN PIN_PB22
#define BOARD_NEOPIXEL_PIN PIN_PA27
#define BOARD_NEOPIXEL_COUNT 1
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,20 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define __SAMD21G18A__ 1
#define VENDOR_NAME "dadamachines"
#define PRODUCT_NAME "automat"
#define VOLUME_LABEL "AUTOMAT"
#define INDEX_URL "http://dadamachines.com/"
#define BOARD_ID "SAMD21G18A-dadamachines-automat-v0"
#define USB_VID 0x16D0
#define USB_PID 0x0CDA
#define USB_POWER_MA 20
#define LED_PIN PIN_PA17
//#define LED_TX_PIN PIN_PA27
//#define LED_RX_PIN PIN_PB03
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,17 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define __SAMD21G18A__ 1
#define VENDOR_NAME "Eitech"
#define PRODUCT_NAME "Robotics"
#define VOLUME_LABEL "ROBOTICS"
#define INDEX_URL "http://www.eitech.de/"
#define BOARD_ID "SAMD21G18A-Eitech-Robotics-v0"
#define USB_VID 0x1D50
#define USB_PID 0x6110 // PID from Openmoko Project
#define LED_PIN PIN_PA30
#endif

View file

@ -4,16 +4,12 @@
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Feather M0"
#define VOLUME_LABEL "FEATHERBOOT"
#define INDEX_URL "http://adafru.it/3403"
#define INDEX_URL "http://adafru.it/"
#define BOARD_ID "SAMD21G18A-Feather-v0"
#define USB_VID 0x239A
#define USB_PID 0x001B
#define USB_PID 0x0015
#define LED_PIN PIN_PA17
#define BOARD_NEOPIXEL_PIN PIN_PA06
#define BOARD_NEOPIXEL_COUNT 1
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,19 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Feather M0 Express"
#define VOLUME_LABEL "FEATHERBOOT"
#define INDEX_URL "http://adafru.it/3403"
#define BOARD_ID "SAMD21G18A-Feather-M0-Express-v0"
#define USB_VID 0x239A
#define USB_PID 0x001B
#define LED_PIN PIN_PA17
#define BOARD_NEOPIXEL_PIN PIN_PA06
#define BOARD_NEOPIXEL_COUNT 1
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,29 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Feather M4 Express"
#define VOLUME_LABEL "FEATHERBOOT"
#define INDEX_URL "http://adafru.it/3857"
#define BOARD_ID "SAMD51J19A-FeatherM4-v0"
#define USB_VID 0x239A
#define USB_PID 0x0022
#define LED_PIN PIN_PA23
#define BOARD_NEOPIXEL_PIN PIN_PB03
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM0
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBAMASK_SERCOM0
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD3_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_PA07D_SERCOM0_PAD3
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_UNUSED
#define BOOT_USART_PAD0 PINMUX_PA04D_SERCOM0_PAD0
#define BOOT_GCLK_ID_CORE SERCOM0_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM0_GCLK_ID_SLOW
#endif

2
boards/fluff_m0/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21E18A

View file

@ -0,0 +1,15 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Radomir Dopieralski"
#define PRODUCT_NAME "Fluff M0"
#define VOLUME_LABEL "FLUFFBOOT"
#define INDEX_URL "https://hackaday.io/project/171381"
#define BOARD_ID "SAMD21E18A-Fluff-v0"
#define USB_VID 0x239A
#define USB_PID 0x00AF
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAME54N20A

View file

@ -0,0 +1,26 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Generic Corp."
#define PRODUCT_NAME "SAME54 Board"
#define VOLUME_LABEL "SAME54"
#define USB_VID 0x03EB // Atmel
#define USB_PID 0x2402 // Generic HID device
#define BOARD_ID "SAME54N20A-Generic"
#define LED_PIN PIN_PB31
#define BOOT_USART_MODULE SERCOM4
#define BOOT_USART_MASK APBDMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBDMASK_SERCOM4
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PB09D_SERCOM4_PAD1
#define BOOT_USART_PAD0 PINMUX_PB08D_SERCOM4_PAD0
#define BOOT_GCLK_ID_CORE SERCOM4_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM4_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51P20A

View file

@ -0,0 +1,31 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Grand Central M4 Express"
#define VOLUME_LABEL "GCM4BOOT"
#define INDEX_URL "http://adafru.it/4064"
#define BOARD_ID "SAMD51P20A-GrandCentral-v0"
#define USB_VID 0x239A
#define USB_PID 0x0031
#define LED_PIN PIN_PB01
#define LED_TX_PIN PIN_PC30
#define LED_RX_PIN PIN_PC31
#define BOARD_NEOPIXEL_PIN PIN_PC24
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM0
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBAMASK_SERCOM0
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PB25C_SERCOM0_PAD1
#define BOOT_USART_PAD0 PINMUX_PB24C_SERCOM0_PAD0
#define BOOT_GCLK_ID_CORE SERCOM0_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM0_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,19 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Hallowing M0"
#define VOLUME_LABEL "HALLOWBOOT"
#define INDEX_URL "http://adafru.it/3900"
#define BOARD_ID "SAMD21G18A-Hallowing-v0"
#define USB_VID 0x239A
#define USB_PID 0xB000
#define LED_PIN PIN_PA23
#define BOARD_NEOPIXEL_PIN PIN_PA12
#define BOARD_NEOPIXEL_COUNT 1
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,31 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "HalloWing M4"
#define VOLUME_LABEL "HALLOM4BOOT"
#define INDEX_URL "http://adafru.it/"
#define BOARD_ID "SAMD51J19A-HalloM4-v0"
#define USB_VID 0x239A
#define USB_PID 0x0049
#define LED_PIN PIN_PA23
#define BOARD_NEOPIXEL_PIN PIN_PB16
#define BOARD_NEOPIXEL_COUNT 4
#define BOOT_USART_MODULE SERCOM4
#define BOOT_USART_MASK APBDMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBDMASK_SERCOM4
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PB13C_SERCOM4_PAD1
#define BOOT_USART_PAD0 PINMUX_PB12C_SERCOM4_PAD0
#define BOOT_GCLK_ID_CORE SERCOM4_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM4_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51G19A

View file

@ -0,0 +1,29 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Hallowing Mask M4"
#define VOLUME_LABEL "MASKM4BOOT"
#define INDEX_URL "http://adafru.it/"
#define BOARD_ID "SAMD51G19A-Mask-v0"
#define USB_VID 0x239A
#define USB_PID 0x0047
#define LED_PIN PIN_PA27
// There isnt a clear UART but we can make one on the D2/D3 ports
#define BOOT_USART_MODULE SERCOM4
#define BOOT_USART_MASK APBDMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBDMASK_SERCOM4
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PB09D_SERCOM4_PAD1
#define BOOT_USART_PAD0 PINMUX_PB08D_SERCOM4_PAD0
#define BOOT_GCLK_ID_CORE SERCOM4_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM4_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51G19A

View file

@ -0,0 +1,31 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "ItsyBitsy M4 Express"
#define VOLUME_LABEL "ITSYM4BOOT"
#define INDEX_URL "http://adafru.it/"
#define BOARD_ID "SAMD51G19A-Itsy-v0"
#define USB_VID 0x239A
#define USB_PID 0x002B
#define LED_PIN PIN_PA22
#define BOARD_RGBLED_CLOCK_PIN PIN_PB02
#define BOARD_RGBLED_DATA_PIN PIN_PB03
#define BOOT_USART_MODULE SERCOM3
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBBMASK_SERCOM3
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA22C_SERCOM3_PAD0
#define BOOT_USART_PAD0 PINMUX_PA23C_SERCOM3_PAD1
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#endif

View file

@ -2,30 +2,30 @@
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Metro M4"
#define PRODUCT_NAME "Metro M4 Express"
#define VOLUME_LABEL "METROM4BOOT"
#define INDEX_URL "http://adafru.it/3505"
#define INDEX_URL "http://adafru.it/3382"
#define BOARD_ID "SAMD51J19A-Metro-v0"
#define USB_VID 0x239A
#define USB_PID 0x0021
#define LED_PIN PIN_PA21
#define LED_PIN PIN_PA16
#define LED_TX_PIN PIN_PA27
#define LED_RX_PIN PIN_PB06
#define BOARD_NEOPIXEL_PIN PIN_PB17
#define BOARD_NEOPIXEL_PIN PIN_PB22
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM0
#define BOOT_USART_MODULE SERCOM3
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBAMASK_SERCOM0
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD3_TX_PAD2
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBBMASK_SERCOM3
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA10C_SERCOM0_PAD2
#define BOOT_USART_PAD0 PINMUX_PA11C_SERCOM0_PAD3
#define BOOT_GCLK_ID_CORE SERCOM0_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM0_GCLK_ID_SLOW
#define BOOT_USART_PAD1 PINMUX_PA22C_SERCOM3_PAD0
#define BOOT_USART_PAD0 PINMUX_PA23C_SERCOM3_PAD1
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,31 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Metro M4 AirLift"
#define VOLUME_LABEL "METROM4BOOT"
#define INDEX_URL "http://adafru.it/"
#define BOARD_ID "SAMD51J19A-Metro-AirLift-v0"
#define USB_VID 0x239A
#define USB_PID 0x0037
#define LED_PIN PIN_PA16
#define LED_TX_PIN PIN_PB07
#define LED_RX_PIN PIN_PB06
#define BOARD_NEOPIXEL_PIN PIN_PB22
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM3
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBBMASK_SERCOM3
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA22C_SERCOM3_PAD0
#define BOOT_USART_PAD0 PINMUX_PA23C_SERCOM3_PAD1
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,31 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Metro M4 Rev B"
#define VOLUME_LABEL "METROM4BOOT"
#define INDEX_URL "http://adafru.it/3505"
#define BOARD_ID "SAMD51J19A-Metro-v0"
#define USB_VID 0x239A
#define USB_PID 0x0021
#define LED_PIN PIN_PA21
#define LED_TX_PIN PIN_PA27
#define LED_RX_PIN PIN_PB06
#define BOARD_NEOPIXEL_PIN PIN_PB17
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM0
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBAMASK_SERCOM0
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD3_TX_PAD2
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA10C_SERCOM0_PAD2
#define BOOT_USART_PAD0 PINMUX_PA11C_SERCOM0_PAD3
#define BOOT_GCLK_ID_CORE SERCOM0_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM0_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,20 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Benjamin Shockley"
#define PRODUCT_NAME "Mini SAM M0"
#define VOLUME_LABEL "MINISAMBOOT"
#define INDEX_URL "httpw://www.minifigboards.com"
#define BOARD_ID "SAMD21G18A-MiniSAMM0-v0"
#define USB_VID 0x1209
#define USB_PID 0x7102
#define LED_PIN PIN_PA15
#define BOARD_RGBLED_CLOCK_PIN PIN_PB02
#define BOARD_RGBLED_DATA_PIN PIN_PA00
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51G19A

View file

@ -0,0 +1,29 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Benjamin Shockley"
#define PRODUCT_NAME "Mini SAM M4"
#define VOLUME_LABEL "MINISAMBOOT"
#define INDEX_URL "https://minisam.cc"
#define BOARD_ID "SAMD51G19A-MiniSamM4-v0"
#define USB_VID 0x1209
#define USB_PID 0x2017
#define LED_PIN PIN_PA15
#define BOARD_RGBLED_CLOCK_PIN PIN_PB02
#define BOARD_RGBLED_DATA_PIN PIN_PB03
#define BOOT_USART_MODULE SERCOM3
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBBMASK_SERCOM3
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA22C_SERCOM3_PAD0
#define BOOT_USART_PAD0 PINMUX_PA23C_SERCOM3_PAD1
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#endif

2
boards/mkr1300/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,15 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Arduino LLC"
#define PRODUCT_NAME "Arduino MKR1300"
#define VOLUME_LABEL "MKR1300"
#define BOARD_ID "SAMD21G18A-MKR1300-v0"
#define USB_VID 0x2341
#define USB_PID 0x8053
#define LED_PIN PIN_PA20
#endif

2
boards/mkrzero/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,16 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Arduino LLC"
#define PRODUCT_NAME "Arduino MKRZero"
#define VOLUME_LABEL "MKRZEROBOOT"
#define BOARD_ID "SAMD21G18A-MKRZero-v0"
// Adafruit VID/PID assigned to MKRZero for hobby use
#define USB_VID 0x239A
#define USB_PID 0x0035
#define LED_PIN PIN_PB08
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,17 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Arduino SA"
#define PRODUCT_NAME "Arduino NANO 33 IoT"
#define VOLUME_LABEL "NANOBOOT"
#define INDEX_URL "https://store.arduino.cc/usa/nano-33-iot"
#define BOARD_ID "SAMD21G18A-NANO-33"
#define USB_VID 0x2341
#define USB_PID 0x0057
#define LED_PIN PIN_PA17
#endif

2
boards/ndbit6/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21E18A

View file

@ -0,0 +1,17 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "ndGarage"
#define PRODUCT_NAME "ndBit6"
#define VOLUME_LABEL "ND6BOOT"
#define INDEX_URL "https://ndgarage.github.io/"
#define BOARD_ID "SAMD21E18A-ND6"
#define USB_VID 0x239A
#define USB_PID 0x0065
#define LED_PIN PIN_PA23
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,31 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Oddly Specific Objects"
#define PRODUCT_NAME "The Open Book Feather"
#define VOLUME_LABEL "BOOKBOOT"
#define INDEX_URL "https://github.com/joeycastillo/The-Open-Book"
#define BOARD_ID "OSO-BOOK-A1-04"
#define USB_VID 0x239A
#define USB_PID 0x007D
#define LED_PIN PIN_PA23
#define BOARD_NEOPIXEL_PIN PIN_PA15
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM5
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBDMASK_SERCOM5
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PB17C_SERCOM5_PAD1
#define BOOT_USART_PAD0 PINMUX_PB16C_SERCOM5_PAD0
#define BOOT_GCLK_ID_CORE SERCOM5_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM5_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,74 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Radomir Dopieralski"
#define PRODUCT_NAME "PewPew"
#define VOLUME_LABEL "PEWBOOT"
#define INDEX_URL "http://pewpew.rtfd.io"
#define BOARD_ID "SAMD51J19A-PewPew-M4"
#define USB_VID 0x239A
#define USB_PID 0x0034
#define BOARD_NEOPIXEL_COUNT 0
#define BOARD_SCREEN 1
#define BOOT_USART_MODULE SERCOM3
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBBMASK_SERCOM3
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA22C_SERCOM3_PAD0
#define BOOT_USART_PAD0 PINMUX_PA23C_SERCOM3_PAD1
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#define HAS_CONFIG_DATA 1
// This configuration data should be edited at https://microsoft.github.io/uf2/patcher/
// Just drop this file there.
// Alternatively, it can be also binary edited there after the bootloader is compiled.
#ifdef DEFINE_CONFIG_DATA
const uint32_t config_data[] = {
/* CF2 START */
513675505, 539130489, // magic
23, 100, // used entries, total entries
4, 0xa, // PIN_BTN_A = PA10
5, 0x9, // PIN_BTN_B = PA09
26, 0x2, // PIN_SPEAKER_AMP = PA02
32, 0xd, // PIN_DISPLAY_SCK = PA13
34, 0xf, // PIN_DISPLAY_MOSI = PA15
35, 0xb, // PIN_DISPLAY_CS = PA11
36, 0x10, // PIN_DISPLAY_DC = PA16
37, 0xa0, // DISPLAY_WIDTH = 160
38, 0x80, // DISPLAY_HEIGHT = 128
39, 0x20180, // DISPLAY_CFG0 = 0x20180
40, 0x12c2d, // DISPLAY_CFG1 = 0x12c2d
41, 0x18, // DISPLAY_CFG2 = 0x18
43, 0x11, // PIN_DISPLAY_RST = PA17
47, 0x37, // PIN_BTN_LEFT = PB23
48, 0x36, // PIN_BTN_RIGHT = PB22
49, 0x17, // PIN_BTN_UP = PA23
50, 0x1b, // PIN_BTN_DOWN = PA27
51, 0x16, // PIN_BTN_MENU = PA22
204, 0x80000, // FLASH_BYTES = 0x80000
205, 0x30000, // RAM_BYTES = 0x30000
208, 0x470c08e2, // BOOTLOADER_BOARD_ID = 0x470c08e2
209, 0x55114460, // UF2_FAMILY = ATSAMD51
210, 0x20, // PINS_PORT_SIZE = PA_32
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
/* CF2 END */
};
#endif
#endif

View file

@ -4,9 +4,9 @@
#define CRYSTALLESS 1
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "pIRKey"
#define PRODUCT_NAME "pIRKey M0"
#define VOLUME_LABEL "PIRKEYBOOT"
#define INDEX_URL "http://adafru.it/"
#define INDEX_URL "http://adafru.it/3364"
#define BOARD_ID "SAMD21E18A-pIRKey-v0"
#define USB_VID 0x239A

2
boards/pycubed/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J19A

View file

@ -0,0 +1,28 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "maholli"
#define PRODUCT_NAME "PyCubedv04"
#define VOLUME_LABEL "PYCUBEDBOOT"
#define INDEX_URL "http://pycubed.org"
#define BOARD_ID "PYCUBED"
#define USB_VID 0x04D8
#define USB_PID 0xEC44 // PID sublicensed from Microchip
#define LED_PIN PIN_PA16 // not actually used, but build fails without it?
#define BOARD_NEOPIXEL_PIN PIN_PA21
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM0
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBAMASK_SERCOM0
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD3_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_PA07D_SERCOM0_PAD3
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_UNUSED
#define BOOT_USART_PAD0 PINMUX_PA04D_SERCOM0_PAD0
#define BOOT_GCLK_ID_CORE SERCOM0_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM0_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J20A

View file

@ -0,0 +1,31 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "PyPortal M4 Express"
#define VOLUME_LABEL "PORTALBOOT"
#define INDEX_URL "http://adafru.it/4116"
#define BOARD_ID "SAMD51J20A-PyPortal-v0"
#define CRYSTALLESS 1
#define USB_VID 0x239A
#define USB_PID 0x0035
#define LED_PIN PIN_PB23
#define BOARD_NEOPIXEL_PIN PIN_PB22
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM5
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBDMASK_SERCOM5
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PB03D_SERCOM5_PAD1
#define BOOT_USART_PAD0 PINMUX_PB02D_SERCOM5_PAD0
#define BOOT_GCLK_ID_CORE SERCOM0_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM0_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,19 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Radiofruit M0"
#define VOLUME_LABEL "RADIOBOOT"
#define INDEX_URL "http://adafru.it/3403"
#define BOARD_ID "SAMR21G18A-Radiofruit-v0"
#define USB_VID 0x239A
#define USB_PID 0x0024
#define LED_PIN PIN_PA27
#define BOARD_NEOPIXEL_PIN PIN_PA22
#define BOARD_NEOPIXEL_COUNT 1
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,17 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Robotics Masters"
#define PRODUCT_NAME "Robo HAT MM1"
#define VOLUME_LABEL "ROBOM0BOOT"
#define INDEX_URL "https://roboticsmasters.co"
#define BOARD_ID "SAMD21G18A-robohat-v8"
#define USB_VID 0x1209
#define USB_PID 0x4D44
#define LED_PIN PIN_PB22
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51G19A

View file

@ -0,0 +1,28 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "Robotics Masters"
#define PRODUCT_NAME "Robo HAT MM1 M4"
#define VOLUME_LABEL "ROBOM4BOOT"
#define INDEX_URL "https://roboticsmasters.co"
#define BOARD_ID "SAMD51G19A-RoboHATMM1-v24"
#define USB_VID 0x1209
#define USB_PID 0x4D44
#define LED_PIN PIN_PB22
#define BOOT_USART_MODULE SERCOM1
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBAMASK_SERCOM1
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA17C_SERCOM1_PAD1
#define BOOT_USART_PAD0 PINMUX_PA16C_SERCOM1_PAD0
#define BOOT_GCLK_ID_CORE SERCOM1_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM1_GCLK_ID_SLOW
#endif

2
boards/sam32/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51J20A

View file

@ -0,0 +1,29 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "maholli"
#define PRODUCT_NAME "SAM32"
#define VOLUME_LABEL "SAM32BOOT"
#define INDEX_URL "https://github.com/maholli"
#define BOARD_ID "SAM32"
#define USB_VID 0x04D8
#define USB_PID 0xEDBE // PID sublicensed from Microchip
#define LED_PIN PIN_PA27
#define BOARD_NEOPIXEL_PIN PIN_PA15
#define BOARD_NEOPIXEL_COUNT 1
#define BOOT_USART_MODULE SERCOM3
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBBMASK_SERCOM3
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA22C_SERCOM3_PAD0
#define BOOT_USART_PAD0 PINMUX_PA23C_SERCOM3_PAD1
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,18 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define __SAMD21G18A__ 1
#define VENDOR_NAME "eduSense"
#define PRODUCT_NAME "senseBox MCU"
#define VOLUME_LABEL "SENSEBOX"
#define INDEX_URL "http://www.sensebox.de"
#define BOARD_ID "SAMD21G18A-senseBox-MCU-v0"
#define USB_VID 0x04D8
#define USB_PID 0xEF66 // PID sublicensed from Microchip
#define USB_POWER_MA 20
#define LED_PIN PIN_PA27 // red LED
#endif

2
boards/serpente/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21E18A

View file

@ -0,0 +1,17 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "arturo182"
#define PRODUCT_NAME "Serpente"
#define VOLUME_LABEL "SERPENTBOOT"
#define INDEX_URL "https://serpente.solder.party/"
#define BOARD_ID "SAMD21E18A-Serpente"
#define USB_VID 0x239A
#define USB_PID 0x0057
#define LED_PIN PIN_PA23
#endif

2
boards/shirtty/board.mk Normal file
View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21E18A

View file

@ -0,0 +1,17 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define CRYSTALLESS 1
#define VENDOR_NAME "@sarfata"
#define PRODUCT_NAME "shIRtty"
#define VOLUME_LABEL "shIRtty"
#define INDEX_URL "https://github.com/sarfata/shirtty-addon"
#define BOARD_ID "shIRtty"
#define USB_VID 0x239A
#define USB_PID 0x006B
#define LED_PIN PIN_PA14
#endif

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd21
CHIP_VARIANT = SAMD21G18A

View file

@ -0,0 +1,18 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "keithp.com"
#define PRODUCT_NAME "snekboard"
#define VOLUME_LABEL "SNEKBOOT"
#define INDEX_URL "https://keithp.com/snek"
#define BOARD_ID "SAMD21G18A-snekboard"
#define USB_VID 0x239A
#define USB_PID 0x004D
#define LED_PIN PIN_PA02
#define BOARD_NEOPIXEL_PIN PIN_PB11
#define BOARD_NEOPIXEL_COUNT 2
#endif

View file

@ -8,7 +8,7 @@
#define BOARD_ID "SAMD21G18A-Dev-Sparkfun-v0"
#define USB_VID 0x1B4F
#define USB_PID 0x0D21
#define USB_PID 0x0D23
#define LED_PIN PIN_PA17

View file

@ -8,7 +8,7 @@
#define BOARD_ID "SAMD21G18A-Mini-Sparkfun-v0"
#define USB_VID 0x1B4F
#define USB_PID 0x0D21
#define USB_PID 0x0D22
#define LED_PIN PIN_PA17

View file

@ -0,0 +1,2 @@
CHIP_FAMILY = samd51
CHIP_VARIANT = SAMD51G19A

View file

@ -0,0 +1,29 @@
#ifndef BOARD_CONFIG_H
#define BOARD_CONFIG_H
#define VENDOR_NAME "Adafruit Industries"
#define PRODUCT_NAME "Trellis M4 Express"
#define VOLUME_LABEL "TRELM4BOOT"
#define INDEX_URL "http://adafru.it/3938"
#define BOARD_ID "SAMD51G19A-Trellis-v0"
#define USB_VID 0x239A
#define USB_PID 0x002F
#define LED_PIN PIN_PA31
#define BOARD_RGBLED_CLOCK_PIN PIN_PB02
#define BOARD_RGBLED_DATA_PIN PIN_PB03
#define BOOT_USART_MODULE SERCOM3
#define BOOT_USART_MASK APBAMASK
#define BOOT_USART_BUS_CLOCK_INDEX MCLK_APBBMASK_SERCOM3
#define BOOT_USART_PAD_SETTINGS UART_RX_PAD1_TX_PAD0
#define BOOT_USART_PAD3 PINMUX_UNUSED
#define BOOT_USART_PAD2 PINMUX_UNUSED
#define BOOT_USART_PAD1 PINMUX_PA22C_SERCOM3_PAD0
#define BOOT_USART_PAD0 PINMUX_PA23C_SERCOM3_PAD1
#define BOOT_GCLK_ID_CORE SERCOM3_GCLK_ID_CORE
#define BOOT_GCLK_ID_SLOW SERCOM3_GCLK_ID_SLOW
#endif

Some files were not shown because too many files have changed in this diff Show more