Skip to content

Commit e766f6e

Browse files
authored
Merge pull request #1 from adafruit/master
Get latest version
2 parents e7fda9c + 57c2c41 commit e766f6e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+44628
-191
lines changed

.gitattributes

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
*.mpy binary
1414
*.deb binary
1515
*.zip binary
16+
*.pdf binary
1617

1718
# These should also not be modified by git.
1819
tests/basics/string_cr_conversion.py -text

.gitmodules

+3
Original file line numberDiff line numberDiff line change
@@ -83,3 +83,6 @@
8383
[submodule "tools/huffman"]
8484
path = tools/huffman
8585
url = https://github.com/tannewt/huffman.git
86+
[submodule "tools/adabot"]
87+
path = tools/adabot
88+
url = https://github.com/adafruit/adabot.git

.travis.yml

+24-10
Original file line numberDiff line numberDiff line change
@@ -21,18 +21,29 @@ git:
2121
# that SDK is shortest and add it there. In the case of major re-organizations,
2222
# just try to make the builds "about equal in run time"
2323
env:
24-
- TRAVIS_TESTS="unix docs translations" TRAVIS_BOARDS="feather_huzzah circuitplayground_express pca10056 pca10059 feather_nrf52832 feather_nrf52840_express makerdiary_nrf52840_mdk" TRAVIS_SDK=arm:nrf:esp8266
24+
- TRAVIS_TESTS="unix docs translations website" TRAVIS_BOARDS="feather_huzzah circuitplayground_express grandcentral_m4_express pca10056 pca10059 feather_nrf52832 feather_nrf52840_express makerdiary_nrf52840_mdk" TRAVIS_SDK=arm:nrf:esp8266
2525
- TRAVIS_BOARDS="metro_m0_express metro_m4_express pirkey_m0 trellis_m4_express trinket_m0" TRAVIS_SDK=arm
2626
- TRAVIS_BOARDS="feather_radiofruit_zigbee gemma_m0 hallowing_m0_express itsybitsy_m0_express itsybitsy_m4_express meowmeow" TRAVIS_SDK=arm
2727
- TRAVIS_BOARDS="feather_m0_express_crickit feather_m0_rfm69 feather_m0_rfm9x feather_m4_express arduino_zero arduino_mkr1300" TRAVIS_SDK=arm
28-
- TRAVIS_BOARDS="circuitplayground_express_crickit feather_m0_adalogger feather_m0_basic feather_m0_express catwan_usbstick" TRAVIS_SDK=arm
28+
- TRAVIS_BOARDS="circuitplayground_express_crickit feather_m0_adalogger feather_m0_basic feather_m0_express catwan_usbstick" TRAVIS_SDK=arm
2929

3030
addons:
3131
artifacts:
3232
paths:
3333
- $(ls -d1 bin/*/* | tr "\n" ":")
3434
target_paths: /
3535

36+
deploy:
37+
provider: releases
38+
api_key:
39+
secure: "jdqVFw6itRY4qwQF4ReXo0uaymT+Mob6RhYX0lw8KWFNqBgHnLVuKmKKcGMEuRvBVMPkvxF7bMuOQzSBOunqwlHFse3oMzdWvQODv1zwV7pSRXGwTdIvTPbBjKWxnBG9uSNRf2R5AMflJFUxy2CbtBpgvNzr+4VLREZDrrjEu8C1iTtXGpSm5AQ5iIp2fkMAWD85FP7CQPpkqRoxhSIFZmTdurfYRmenq1OZ/4SeD5TESKcyvqJNzVT9z210B3cg3eAkP6ukvelW4qE2zgIANqUkGqvDEnAvEII9M89kuwhCMAekdfwnUSPrry+g77i1dUZHoRN1+MFj+waYtPaqxdYo2G1sysa6enxlu4jHMR5MfMk9eKHgaNgL3PiyANusYSS44amh8QIiVaX5nw82myZDCpQOZW7YqJKE6WX70Lbs4mS+wIs+ig4KIXO1B0p9kMb0OeVjHRl+KcXsWGRu/ECG/ExpqlVIssSPU407LohMXT2cJ37CY/R/EeK2XSDsQ2M3L3EAGUjCJdBGuwsOJ+2lG+HQpAVu9vAB4kq5jy9Ye+MG+8Xlkly3XZZ5+FkXyYxKnXb26/QVv0e5sIG5OmdJCPYFaH2J1QdKo7CdhEcBtrf6DMPWaimGMldShFqzLjOz3b3qLysRxFF0aGb7ipKPa57vawNzYHoPAViOcXQ="
40+
file:
41+
- $(ls -d1 bin/*/* | tr "\n" ":")
42+
skip_cleanup: true
43+
draft: true
44+
on:
45+
tags: true
46+
3647
notifications:
3748
webhooks:
3849
urls:
@@ -46,26 +57,28 @@ notifications:
4657
before_script:
4758
# Expand the git tree back to 4.0.0-alpha.1 and then fetch the latest tag.
4859
- LAST_TAG=`git ls-remote --quiet --tags --sort=version:refname | egrep -o "refs/tags/[0-9]+.*\$" | tail -n 1`
49-
- git fetch --shallow-exclude=4.0.0-alpha.1
60+
- git fetch --shallow-exclude=4.0.0-alpha.1 || git fetch --unshallow
5061
- git fetch --depth 1 origin $LAST_TAG:$LAST_TAG
5162
- git describe --dirty --always --tags
5263
- function var_search () { case "$1" in *$2*) true;; *) false;; esac; }
5364
- sudo dpkg --add-architecture i386
5465

66+
5567
- (! var_search "${TRAVIS_SDK-}" arm || (wget https://s3.amazonaws.com/adafruit-circuit-python/gcc-arm-embedded_7-2018q2-1~xenial1_amd64.deb && sudo dpkg -i gcc-arm-embedded*_amd64.deb))
5668

5769
# For nrf builds
5870
- (! var_search "${TRAVIS_SDK-}" nrf || sudo ports/nrf/bluetooth/download_ble_stack.sh)
5971

6072
# For huzzah builds
61-
- (! var_search "${TRAVIS_SDK-}" esp8266 || (wget https://github.com/jepler/esp-open-sdk/releases/download/2018-06-10/xtensa-lx106-elf-standalone.tar.gz && tar -C .. -xavf xtensa-lx106-elf-standalone.tar.gz))
73+
- (! var_search "${TRAVIS_SDK-}" esp8266 || (wget https://github.com/jepler/esp-open-sdk/releases/download/2018-06-10/xtensa-lx106-elf-standalone.tar.gz && tar -C .. -xaf xtensa-lx106-elf-standalone.tar.gz))
6274
- if var_search "${TRAVIS_SDK-}" esp8266 ; then PATH=$(readlink -f ../xtensa-lx106-elf/bin):$PATH; fi
6375

6476
# For coverage testing (upgrade is used to get latest urllib3 version)
65-
- ([[ -z "$TRAVIS_TESTS" ]] || sudo apt-get install -y python3-pip)
77+
- sudo apt-get install -y python3-pip
78+
- pip3 install --user sh click
6679
- ([[ -z "$TRAVIS_TESTS" ]] || sudo pip install --upgrade cpp-coveralls)
67-
- (! var_search "${TRAVIS_TESTS-}" docs || sudo pip install 'Sphinx<1.8.0' sphinx-rtd-theme recommonmark)
68-
- (! var_search "${TRAVIS_TESTS-}" translations || sudo pip3 install polib)
80+
- (! var_search "${TRAVIS_TESTS-}" docs || pip install --user 'Sphinx<1.8.0' sphinx-rtd-theme recommonmark)
81+
- (! var_search "${TRAVIS_TESTS-}" translations || pip3 install --user polib)
6982

7083
# report some good version numbers to the build
7184
- gcc --version
@@ -79,9 +92,8 @@ script:
7992
- make -C mpy-cross -j2
8093
- echo -en 'travis_fold:end:mpy-cross\\r'
8194

82-
- echo 'Building Adafruit binaries' && echo -en 'travis_fold:start:adafruit-bins\\r'
83-
- (for board in $TRAVIS_BOARDS; do TRAVIS_BOARD=$board tools/build_adafruit_bins.sh || exit $?; done)
84-
- echo -en 'travis_fold:end:adafruit-bins\\r'
95+
- cd tools && python3 build_adafruit_bins.py
96+
- cd ..
8597

8698
- echo 'Building unix' && echo -en 'travis_fold:start:unix\\r'
8799
- (! var_search "${TRAVIS_TESTS-}" unix || (make -C ports/unix deplibs -j2 && make -C ports/unix -j2 && make -C ports/unix coverage -j2))
@@ -119,5 +131,7 @@ script:
119131
# run coveralls coverage analysis (try to, even if some builds/tests failed)
120132
#- (cd ports/unix && coveralls --root ../.. --build-root . --gcov $(which gcov) --gcov-options '\-o build-coverage/' --include py --include extmod)
121133

134+
- (! var_search "${TRAVIS_TESTS-}" website || (cd tools && python3 build_board_info.py && cd ..))
135+
122136
after_failure:
123137
- (cd tests && for exp in *.exp; do testbase=$(basename $exp .exp); echo -e "\nFAILURE $testbase"; diff -u $testbase.exp $testbase.out; done)

ports/atmel-samd/boards/grandcentral_m4_express/mpconfigboard.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
#define CIRCUITPY_MCU_FAMILY samd51
55

6-
// This is for Rev A which is green
6+
// This is for Rev B which is green and has the SD card slot at the edge of the board.
77

88
#define MICROPY_HW_LED_TX &(pin_PC30)
99
#define MICROPY_HW_LED_RX &(pin_PC31)

ports/atmel-samd/boards/grandcentral_m4_express/pins.c

+8-6
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ STATIC const mp_map_elem_t board_global_dict_table[] = {
3737
{ MP_OBJ_NEW_QSTR(MP_QSTR_D6), (mp_obj_t)&pin_PD20 },
3838
{ MP_OBJ_NEW_QSTR(MP_QSTR_D7), (mp_obj_t)&pin_PD21 },
3939
{ MP_OBJ_NEW_QSTR(MP_QSTR_D8), (mp_obj_t)&pin_PB18 },
40-
{ MP_OBJ_NEW_QSTR(MP_QSTR_D9), (mp_obj_t)&pin_PB19 },
40+
{ MP_OBJ_NEW_QSTR(MP_QSTR_D9), (mp_obj_t)&pin_PB02 },
4141
{ MP_OBJ_NEW_QSTR(MP_QSTR_D10), (mp_obj_t)&pin_PB22 },
4242
{ MP_OBJ_NEW_QSTR(MP_QSTR_D11), (mp_obj_t)&pin_PB23 },
4343
{ MP_OBJ_NEW_QSTR(MP_QSTR_D12), (mp_obj_t)&pin_PB00 },
@@ -56,13 +56,12 @@ STATIC const mp_map_elem_t board_global_dict_table[] = {
5656
{ MP_OBJ_NEW_QSTR(MP_QSTR_RX1), (mp_obj_t)&pin_PB13 },
5757
{ MP_OBJ_NEW_QSTR(MP_QSTR_D19), (mp_obj_t)&pin_PB13 },
5858
{ MP_OBJ_NEW_QSTR(MP_QSTR_D20), (mp_obj_t)&pin_PB20 },
59-
{ MP_OBJ_NEW_QSTR(MP_QSTR_D21), (mp_obj_t)&pin_PB21 },
6059
{ MP_OBJ_NEW_QSTR(MP_QSTR_SDA), (mp_obj_t)&pin_PB20 },
60+
{ MP_OBJ_NEW_QSTR(MP_QSTR_D21), (mp_obj_t)&pin_PB21 },
6161
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL), (mp_obj_t)&pin_PB21 },
6262

63-
// Not connected but probably should be.
64-
//{ MP_OBJ_NEW_QSTR(MP_QSTR_D22), (mp_obj_t)&pin_PB01 },
65-
//{ MP_OBJ_NEW_QSTR(MP_QSTR_D23), (mp_obj_t)&pin_PB01 },
63+
{ MP_OBJ_NEW_QSTR(MP_QSTR_D22), (mp_obj_t)&pin_PD12 },
64+
{ MP_OBJ_NEW_QSTR(MP_QSTR_D23), (mp_obj_t)&pin_PA15 },
6665
{ MP_OBJ_NEW_QSTR(MP_QSTR_D24), (mp_obj_t)&pin_PC17 },
6766
{ MP_OBJ_NEW_QSTR(MP_QSTR_SCL1), (mp_obj_t)&pin_PC17 },
6867
{ MP_OBJ_NEW_QSTR(MP_QSTR_D25), (mp_obj_t)&pin_PC16 },
@@ -73,7 +72,8 @@ STATIC const mp_map_elem_t board_global_dict_table[] = {
7372
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_DEN2), (mp_obj_t)&pin_PA13 },
7473
{ MP_OBJ_NEW_QSTR(MP_QSTR_D28), (mp_obj_t)&pin_PA14 },
7574
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_CLK), (mp_obj_t)&pin_PA14 },
76-
// { MP_OBJ_NEW_QSTR(MP_QSTR_D29), (mp_obj_t)&pin_PB01 }, // TODO GCLK
75+
{ MP_OBJ_NEW_QSTR(MP_QSTR_D29), (mp_obj_t)&pin_PB19 },
76+
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_XCLK), (mp_obj_t)&pin_PB19 },
7777
{ MP_OBJ_NEW_QSTR(MP_QSTR_D30), (mp_obj_t)&pin_PA23 },
7878
{ MP_OBJ_NEW_QSTR(MP_QSTR_PCC_D7), (mp_obj_t)&pin_PA23 },
7979
{ MP_OBJ_NEW_QSTR(MP_QSTR_D31), (mp_obj_t)&pin_PA22 },
@@ -122,6 +122,8 @@ STATIC const mp_map_elem_t board_global_dict_table[] = {
122122
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CS), (mp_obj_t)&pin_PB28 },
123123
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_MISO), (mp_obj_t)&pin_PB29 },
124124

125+
{ MP_OBJ_NEW_QSTR(MP_QSTR_SD_CARD_DETECT), (mp_obj_t)&pin_PB31 },
126+
125127
{ MP_OBJ_NEW_QSTR(MP_QSTR_NEOPIXEL), (mp_obj_t)&pin_PC24 },
126128

127129
{ MP_OBJ_NEW_QSTR(MP_QSTR_LED_RX), (mp_obj_t)&pin_PC31 },

ports/esp8266/.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
build-*/

ports/esp8266/Makefile

+4-4
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ $(error Invalid BOARD specified)
66
endif
77

88
# If the build directory is not given, make it reflect the board name.
9-
BUILD ?= build
9+
BUILD ?= build-$(BOARD)
1010

1111
include ../../py/mkenv.mk
1212

@@ -25,7 +25,7 @@ FROZEN_MPY_DIR ?= modules
2525
# include py core make definitions
2626
include $(TOP)/py/py.mk
2727

28-
FWBIN = $(BUILD)/firmware-combined.bin
28+
FWBIN = $(BUILD)/firmware.bin
2929
PORT ?= /dev/ttyACM0
3030
BAUD ?= 115200
3131
FLASH_MODE ?= qio
@@ -232,7 +232,7 @@ FROZEN_EXTRA_DEPS = $(CONFVARS_FILE)
232232

233233
.PHONY: deploy
234234

235-
deploy: $(BUILD)/firmware-combined.bin
235+
deploy: $(FWBIN)
236236
$(ECHO) "Writing $< to the board"
237237
$(Q)$(ESPTOOL) --port $(PORT) --baud $(BAUD) write_flash --verify --flash_size=$(FLASH_SIZE) --flash_mode=$(FLASH_MODE) 0 $<
238238

@@ -275,4 +275,4 @@ $(BUILD)/libaxtls.a:
275275

276276
clean-modules:
277277
git clean -f -d modules
278-
rm -f build/frozen*.c
278+
rm -f $(BUILD)/frozen*.c

ports/esp8266/esp8266_common.ld

+2-2
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ SECTIONS
142142
*lib/utils/*.o*(.literal*, .text*)
143143
*drivers/bus/*.o(.literal* .text*)
144144

145-
build/main.o(.literal* .text*)
145+
build*/main.o(.literal* .text*)
146146
*gccollect.o(.literal* .text*)
147147
*gchelper.o(.literal* .text*)
148148
*help.o(.literal* .text*)
@@ -178,7 +178,7 @@ SECTIONS
178178
*/frozen.o(.rodata.mp_frozen_content) /* frozen modules */
179179

180180
/* for -mforce-l32 */
181-
build/*.o(.rodata*)
181+
build*/*.o(.rodata*)
182182

183183
_irom0_text_end = ABSOLUTE(.);
184184
} >irom0_0_seg :irom0_0_phdr

ports/nrf/.gitignore

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
# Nordic files
2-
#####################
3-
bluetooth/s1*/
1+
# Old Nordic soft devices that don't allow redistribution
2+
#########################################################
3+
bluetooth/s132_nrf52_2.0.1/
4+
5+
!bluetooth/*/*.hex
46

57
# Build files
68
#####################
79
build-*/
8-

ports/nrf/Makefile

+4-2
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,14 @@ else
1010
endif
1111
endif
1212

13+
CLI_SD := $(SD)
14+
1315
include boards/$(BOARD)/mpconfigboard.mk
1416

1517
SD_LOWER = $(shell echo $(SD) | tr '[:upper:]' '[:lower:]')
1618

17-
# Build directory with SD
18-
BUILD ?= $(if $(SD),build-$(BOARD)-$(SD_LOWER),build-$(BOARD))
19+
# Build directory with SD if it's different from the default.
20+
BUILD ?= $(if $(CLI_SD),build-$(BOARD)-$(SD_LOWER),build-$(BOARD))
1921

2022
include ../../py/mkenv.mk
2123
-include mpconfigport.mk

ports/nrf/bluetooth/bluetooth_common.mk

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ define STACK_MISSING_ERROR
2828
###### ERROR: Bluetooth LE Stack not found ############
2929
# #
3030
# The build target requires a Bluetooth LE stack. #
31-
# $(SOFTDEV_VERSION_LONG) Bluetooth LE stack not found. #
31+
# $(SOFTDEV_HEX) not found. #
3232
# #
3333
# Please run the download script: #
3434
# #

ports/nrf/bluetooth/download_ble_stack.sh

+3-43
Original file line numberDiff line numberDiff line change
@@ -10,44 +10,10 @@ function download_s132_nrf52_2_0_1
1010

1111
mkdir -p "${1}/s132_nrf52_2.0.1"
1212
cd "${1}/s132_nrf52_2.0.1"
13-
wget https://www.nordicsemi.com/eng/nordic/download_resource/51479/6/84640562/95151
14-
mv 95151 temp.zip
13+
wget https://www.nordicsemi.com/api/sitecore/Products/MedialibraryZipDownload2 --post-data="ids=863031714A574444AADFE444EBE5BA9B|&fileName=DeviceDownload" -O temp.zip
1514
unzip -u temp.zip
16-
rm temp.zip
17-
cd -
18-
}
19-
20-
function download_s132_nrf52_5_0_0
21-
{
22-
echo ""
23-
echo "####################################"
24-
echo "### Downloading s132_nrf52_5.0.0 ###"
25-
echo "####################################"
26-
echo ""
27-
28-
mkdir -p "${1}/s132_nrf52_5.0.0"
29-
cd "${1}/s132_nrf52_5.0.0"
30-
31-
wget http://www.nordicsemi.com/eng/nordic/download_resource/58987/11/7198220/116068
32-
mv 116068 temp.zip
33-
unzip -u temp.zip
34-
rm temp.zip
35-
cd -
36-
}
37-
38-
function download_s140_nrf52_6_1_0
39-
{
40-
echo ""
41-
echo "####################################"
42-
echo "### Downloading s140_nrf52_6.1.0 ###"
43-
echo "####################################"
44-
echo ""
45-
mkdir -p "${1}/s140_nrf52_6.1.0"
46-
cd "${1}/s140_nrf52_6.1.0"
47-
wget https://www.nordicsemi.com/eng/nordic/download_resource/60624/25/88218841/116072
48-
mv 116072 temp.zip
49-
unzip -u temp.zip
50-
rm temp.zip
15+
unzip -u s132nrf52201.zip
16+
rm temp.zip s132nrf52201.zip
5117
cd -
5218
}
5319

@@ -56,16 +22,10 @@ SCRIPT_DIR="$(cd -P "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
5622
if [ $# -eq 0 ]; then
5723
echo "No Bluetooth LE stack defined, downloading all."
5824
download_s132_nrf52_2_0_1 "${SCRIPT_DIR}"
59-
download_s132_nrf52_5_0_0 "${SCRIPT_DIR}"
60-
download_s140_nrf52_6_1_0 "${SCRIPT_DIR}"
6125
else
6226
case $1 in
6327
"s132_nrf52_2_0_1" )
6428
download_s132_nrf52_2_0_1 "${SCRIPT_DIR}" ;;
65-
"s132_nrf52_5_0_0" )
66-
download_s132_nrf52_5_0_0 "${SCRIPT_DIR}" ;;
67-
"s140_nrf52_6_1_0" )
68-
download_s140_nrf52_6_1_0 "${SCRIPT_DIR}" ;;
6929
esac
7030
fi
7131

0 commit comments

Comments
 (0)