From e2df4fdb4e455a271a6bcd5fb4bcf5b6c18d75dd Mon Sep 17 00:00:00 2001 From: Dustin Mollo Date: Wed, 24 Apr 2019 15:44:09 -0700 Subject: [PATCH] Updated README.md to incdicate use of Espressif's IDF v3.2; various other clean-ups --- .gitignore | 1 + CHANGELOG | 19 +++++++++++- README.md | 20 ++++++++---- combine.py | 2 +- main/CommandHandler.cpp | 2 +- sdkconfig | 67 +++++------------------------------------ 6 files changed, 42 insertions(+), 69 deletions(-) diff --git a/.gitignore b/.gitignore index 962a955..313aa69 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ build/ *.bin +sdkconfig.old diff --git a/CHANGELOG b/CHANGELOG index a5fb77a..aef0fb5 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,4 +1,21 @@ -Arduino NINA-W102 firmware ?.?.? - ????.??.?? +Adafruit's Arduino NINA-W102 firmware 1.3.1 - 2019.04.24 + +* Updated README.md to indicate this is Adafruit's fork +* Updated README.md with current, reproducible build instructions +* Updated CHANGELOG with various Adafruit changes + +Adafruit's Arduino NINA-W102 firmware 1.3.0 - 2019.04.04 + +* Rev'd version in CommandHandler.cpp +* Added version number to combine.py script + +Adafruit's Arduino NINA-W102 firmware 1.2.2 - 2019.04.04 + +* Added support for WPA2 Enterprise + +Adafruit's Arduino NINA-W102 firmware 1.2.2 - 2019.02.28 + +* First official Adafruit release Arduino NINA-W102 firmware 1.2.1 - 2018.11.16 diff --git a/README.md b/README.md index 310921d..b1cc7ab 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,24 @@ -# Arduino NINA-W102 firmware +# Adafruit fork of the Arduino NINA-W102 firmware + +This is the Adafruit fork of the Arduino NINA-W102 firmware. The original +GitHub repository is located at https://github.com/arduino/nina-fw This firmware uses [Espressif's IDF](https://github.com/espressif/esp-idf) ## Building -1. [Download the ESP32 toolchain](http://esp-idf.readthedocs.io/en/v3.1/get-started/index.html#setup-toolchain) +The firmware shipped in Adafruit's products is compiled following these +instructions. These may differ from the instructions included in the +original Arduino firmware repository. + +1. [Download the ESP32 toolchain](https://docs.espressif.com/projects/esp-idf/en/v3.2/get-started/index.html#setup-toolchain) 1. Extract it and add it to your `PATH`: `export PATH=$PATH:/bin` -1. Clone **v3.1** of the IDF: `git clone --branch v3.1 --recursive https://github.com/espressif/esp-idf.git` +1. Clone **v3.2** of the IDF: `git clone --branch v3.2 --recursive https://github.com/espressif/esp-idf.git` 1. Set the `IDF_PATH` environment variable: `export IDF_PATH=` -1. Run `make` to build the firmware (in the directory of this read me) -1. Load the `Tools -> SerialNINAPassthrough` example sketch on to the board -1. Use `esptool` to flash the compiled firmware +1. Run `make firmware` to build the firmware (in the directory of this read me) +1. You should have a file named `NINA_W102-x.x.x.bin` in the top directory +1. Use appropriate tools (esptool.py, appropriate pass-through firmware etc) + to load this binary file onto your board. ## License diff --git a/combine.py b/combine.py index 47aab87..3d18300 100644 --- a/combine.py +++ b/combine.py @@ -31,7 +31,7 @@ for i in range(0, len(certsData)): # zero terminate the pem file outputData[0x10000 + len(certsData)] = 0 -outputFilename = "NINA_W102-1.3.0.bin" +outputFilename = "NINA_W102-1.3.1.bin" if (len(sys.argv) > 1): outputFilename = sys.argv[1] diff --git a/main/CommandHandler.cpp b/main/CommandHandler.cpp index 337f8ec..8cc0a96 100644 --- a/main/CommandHandler.cpp +++ b/main/CommandHandler.cpp @@ -26,7 +26,7 @@ #include "CommandHandler.h" -const char FIRMWARE_VERSION[6] = "1.3.0"; +const char FIRMWARE_VERSION[6] = "1.3.1"; /*IPAddress*/uint32_t resolvedHostname; diff --git a/sdkconfig b/sdkconfig index edb72e9..c0220f9 100644 --- a/sdkconfig +++ b/sdkconfig @@ -2,7 +2,6 @@ # Automatically generated file; DO NOT EDIT. # Espressif IoT Development Framework Configuration # -CONFIG_IDF_TARGET="esp32" # # SDK tool configuration @@ -11,13 +10,6 @@ CONFIG_TOOLPREFIX="xtensa-esp32-elf-" CONFIG_PYTHON="python" CONFIG_MAKE_WARN_UNDEFINED_VARIABLES=y -# -# Application manager -# -CONFIG_APP_COMPILE_TIME_DATE=y -CONFIG_APP_EXCLUDE_PROJECT_VER_VAR= -CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR= - # # Bootloader config # @@ -35,7 +27,6 @@ CONFIG_BOOTLOADER_APP_TEST= CONFIG_BOOTLOADER_WDT_ENABLE=y CONFIG_BOOTLOADER_WDT_DISABLE_IN_USER_CODE= CONFIG_BOOTLOADER_WDT_TIME_MS=9000 -CONFIG_APP_ROLLBACK_ENABLE= # # Security features @@ -170,7 +161,6 @@ CONFIG_SCAN_DUPLICATE_BY_ADV_DATA_AND_DEVICE_ADDR= CONFIG_SCAN_DUPLICATE_TYPE=0 CONFIG_DUPLICATE_SCAN_CACHE_SIZE=200 CONFIG_BLE_MESH_SCAN_DUPLICATE_EN= -CONFIG_BTDM_CONTROLLER_FULL_SCAN_SUPPORTED= CONFIG_BLE_ADV_REPORT_FLOW_CONTROL_SUPPORTED=y CONFIG_BLE_ADV_REPORT_FLOW_CONTROL_NUM=100 CONFIG_BLE_ADV_REPORT_DISCARD_THRSHOLD=20 @@ -194,20 +184,9 @@ CONFIG_SPI_MASTER_ISR_IN_IRAM=y CONFIG_SPI_SLAVE_IN_IRAM= CONFIG_SPI_SLAVE_ISR_IN_IRAM=y -# -# eFuse Bit Manager -# -CONFIG_EFUSE_CUSTOM_TABLE= -CONFIG_EFUSE_VIRTUAL= -CONFIG_EFUSE_CODE_SCHEME_COMPAT_NONE= -CONFIG_EFUSE_CODE_SCHEME_COMPAT_3_4=y -CONFIG_EFUSE_CODE_SCHEME_COMPAT_REPEAT= -CONFIG_EFUSE_MAX_BLK_LEN=192 - # # ESP32-specific # -CONFIG_IDF_TARGET_ESP32=y CONFIG_ESP32_DEFAULT_CPU_FREQ_80=y CONFIG_ESP32_DEFAULT_CPU_FREQ_160= CONFIG_ESP32_DEFAULT_CPU_FREQ_240= @@ -217,6 +196,10 @@ CONFIG_MEMMAP_TRACEMEM= CONFIG_MEMMAP_TRACEMEM_TWOBANKS= CONFIG_ESP32_TRAX= CONFIG_TRACEMEM_RESERVE_DRAM=0x0 +CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH= +CONFIG_ESP32_ENABLE_COREDUMP_TO_UART= +CONFIG_ESP32_ENABLE_COREDUMP_TO_NONE=y +CONFIG_ESP32_ENABLE_COREDUMP= CONFIG_TWO_UNIVERSAL_MAC_ADDRESS= CONFIG_FOUR_UNIVERSAL_MAC_ADDRESS=y CONFIG_NUMBER_OF_UNIVERSAL_MAC_ADDRESS=4 @@ -301,16 +284,6 @@ CONFIG_ESP32_WIFI_NVS_ENABLED=y CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1= CONFIG_ESP32_WIFI_SOFTAP_BEACON_MAX_LEN=752 -CONFIG_ESP32_WIFI_MGMT_SBUF_NUM=32 -CONFIG_ESP32_WIFI_DEBUG_LOG_ENABLE=y -CONFIG_ESP32_WIFI_DEBUG_LOG_DEBUG= -CONFIG_ESP32_WIFI_DEBUG_LOG_VERBOSE=y -CONFIG_ESP32_WIFI_DEBUG_LOG_MODULE_ALL= -CONFIG_ESP32_WIFI_DEBUG_LOG_MODULE_WIFI=y -CONFIG_ESP32_WIFI_DEBUG_LOG_MODULE_COEX= -CONFIG_ESP32_WIFI_DEBUG_LOG_MODULE_MESH= -CONFIG_ESP32_WIFI_DEBUG_LOG_SUBMODULE= -CONFIG_ESP32_WIFI_IRAM_OPT=y # # PHY @@ -347,20 +320,6 @@ CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y # CONFIG_HTTPD_MAX_REQ_HDR_LEN=512 CONFIG_HTTPD_MAX_URI_LEN=512 -CONFIG_HTTPD_ERR_RESP_NO_DELAY=y - -# -# ESP HTTPS OTA -# -CONFIG_OTA_ALLOW_HTTP= - -# -# Core dump -# -CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH= -CONFIG_ESP32_ENABLE_COREDUMP_TO_UART= -CONFIG_ESP32_ENABLE_COREDUMP_TO_NONE=y -CONFIG_ESP32_ENABLE_COREDUMP= # # Ethernet @@ -452,7 +411,6 @@ CONFIG_FREERTOS_USE_TRACE_FACILITY= CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS= CONFIG_FREERTOS_DEBUG_INTERNALS= CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER=y -CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER=y # # Heap memory debugging @@ -664,11 +622,6 @@ CONFIG_OPENSSL_ASSERT_EXIT= CONFIG_ESP32_PTHREAD_TASK_PRIO_DEFAULT=5 CONFIG_ESP32_PTHREAD_TASK_STACK_SIZE_DEFAULT=3072 CONFIG_PTHREAD_STACK_MIN=768 -CONFIG_ESP32_DEFAULT_PTHREAD_CORE_NO_AFFINITY=y -CONFIG_ESP32_DEFAULT_PTHREAD_CORE_0= -CONFIG_ESP32_DEFAULT_PTHREAD_CORE_1= -CONFIG_ESP32_PTHREAD_TASK_CORE_DEFAULT=-1 -CONFIG_ESP32_PTHREAD_TASK_NAME_DEFAULT="pthread" # # SPI Flash driver @@ -676,6 +629,9 @@ CONFIG_ESP32_PTHREAD_TASK_NAME_DEFAULT="pthread" CONFIG_SPI_FLASH_VERIFY_WRITE= CONFIG_SPI_FLASH_ENABLE_COUNTERS= CONFIG_SPI_FLASH_ROM_DRIVER_PATCH=y +CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ABORTS=y +CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_FAILS= +CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ALLOWED= # # SPIFFS Configuration @@ -714,15 +670,6 @@ CONFIG_SPIFFS_TEST_VISUALISATION= CONFIG_IP_LOST_TIMER_INTERVAL=120 CONFIG_TCPIP_LWIP=y -# -# Unity unit testing library -# -CONFIG_UNITY_ENABLE_FLOAT=y -CONFIG_UNITY_ENABLE_DOUBLE=y -CONFIG_UNITY_ENABLE_COLOR= -CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y -CONFIG_UNITY_ENABLE_FIXTURE= - # # Virtual file system #