diff --git a/.github/workflows/generate-variants.yml b/.github/workflows/generate-variants.yml index 410c4a1a..7221cc8b 100644 --- a/.github/workflows/generate-variants.yml +++ b/.github/workflows/generate-variants.yml @@ -22,14 +22,16 @@ jobs: with: jobs: | [ - {"name": "artemis-redboard-lib", "config": {"base": "compile --library --source=mbed-os", "tgt": "SFE_ARTEMIS", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS", "loc": "variants/SFE_ARTEMIS"}}}, - {"name": "artemis-redboard-atp-lib", "config": {"base": "compile --library --source=mbed-os", "tgt": "SFE_ARTEMIS_ATP", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS_ATP", "loc": "variants/SFE_ARTEMIS_ATP"}}}, - {"name": "artemis-dev-kit-lib", "config": {"base": "compile --library --source=mbed-os", "tgt": "SFE_ARTEMIS_DK", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS_DEV_KIT", "loc": "variants/SFE_ARTEMIS_DK"}}}, - {"name": "artemis-redboard-nano-lib", "config": {"base": "compile --library --source=mbed-os", "tgt": "SFE_ARTEMIS_NANO", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS_NANO", "loc": "variants/SFE_ARTEMIS_NANO"}}}, - {"name": "artemis-thing-plus-lib", "config": {"base": "compile --library --source=mbed-os", "tgt": "SFE_ARTEMIS_THING_PLUS", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS_THING_PLUS", "loc": "variants/SFE_ARTEMIS_THING_PLUS"}}}, - {"name": "edge-lib", "config": {"base": "compile --library --source=mbed-os", "tgt": "SFE_EDGE", "tool": "GCC_ARM"}, "user": {"variant": {"name": "EDGE", "loc": "variants/SFE_EDGE"}}}, - {"name": "edge2-lib", "config": {"base": "compile --library --source=mbed-os", "tgt": "SFE_EDGE2", "tool": "GCC_ARM"}, "user": {"variant": {"name": "EDGE2", "loc": "variants/SFE_EDGE2"}}}, - {"name": "artemis-mm-pb-lib", "config": {"base": "compile --library --source=mbed-os", "tgt": "SFE_ARTEMIS_MM_PB", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS_MM_PB", "loc": "variants/SFE_ARTEMIS_MM_PB"}}} + {"name": "lora-thing-plus-explorable-lib", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "LORA_THING_PLUS_EXPLORABLE", "tool": "GCC_ARM"}, "user": {"variant": {"name": "LoRa_THING_PLUS_expLoRaBLE", "loc": "variants/LoRa_THING_PLUS_expLoRaBLE"}}}, + {"name": "artemis-redboard-lib", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "SFE_ARTEMIS", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS", "loc": "variants/SFE_ARTEMIS"}}}, + {"name": "artemis-redboard-atp-lib", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "SFE_ARTEMIS_ATP", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS_ATP", "loc": "variants/SFE_ARTEMIS_ATP"}}}, + {"name": "artemis-dev-kit-lib", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "SFE_ARTEMIS_DK", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS_DEV_KIT", "loc": "variants/SFE_ARTEMIS_DK"}}}, + {"name": "artemis-redboard-nano-lib", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "SFE_ARTEMIS_NANO", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS_NANO", "loc": "variants/SFE_ARTEMIS_NANO"}}}, + {"name": "artemis-thing-plus-lib", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "SFE_ARTEMIS_THING_PLUS", "tool": "GCC_ARM"}, "user": {"variant": {"name": "ARTEMIS_THING_PLUS", "loc": "variants/SFE_ARTEMIS_THING_PLUS"}}}, + {"name": "edge-lib", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "SFE_EDGE", "tool": "GCC_ARM"}, "user": {"variant": {"name": "EDGE", "loc": "variants/SFE_EDGE"}}}, + {"name": "edge2-lib", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "SFE_EDGE2", "tool": "GCC_ARM"}, "user": {"variant": {"name": "EDGE2", "loc": "variants/SFE_EDGE2"}}}, + {"name": "artemis-mm-pb-lib", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "SFE_ARTEMIS_MM_PB", "tool": "GCC_ARM"}, "user": {"variant": {"name": "SFE_ARTEMIS_MM_PB", "loc": "variants/SFE_ARTEMIS_MM_PB"}}}, + {"name": "artemis-module", "config": {"base": "compile --library --source=mbed-os -D ARDUINO_BLE_FIX", "tgt": "SFE_ARTEMIS_MODULE", "tool": "GCC_ARM"}, "user": {"variant": {"name": "SFE_ARTEMIS_MODULE", "loc": "variants/SFE_ARTEMIS_MODULE"}}} ] mbed: | {"url": "https://github.com/sparkfun/mbed-os-ambiq-apollo3", "branch": "ambiq-apollo3-arduino"} diff --git a/.gitmodules b/.gitmodules index e344cd64..813c1a96 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,7 +1,7 @@ [submodule "cores/mbed-os"] path = cores/mbed-os url = https://github.com/sparkfun/mbed-os-ambiq-apollo3 - branch = ambiq-apollo3-2 + branch = ambiq-apollo3-arduino [submodule "cores/arduino/mbed-bridge"] path = cores/arduino/mbed-bridge url = https://github.com/sparkfun/arduino-mbed-bridge diff --git a/README.MD b/README.MD index acaaeeeb..a885c20d 100644 --- a/README.MD +++ b/README.MD @@ -9,6 +9,7 @@ An mbed-os enabled Arduino core for Ambiq Apollo3 based boards - [Installation](#installation) - [**Arduino Boards Manager** (recommended)](#arduino-boards-manager-recommended) - [**Git** (development)](#git-development) + - [Getting Started](#getting-started) - [Development Status](#development-status) - [Priorities](#priorities) - [More](#more) @@ -20,20 +21,39 @@ An mbed-os enabled Arduino core for Ambiq Apollo3 based boards ## Installation ### **Arduino Boards Manager** (recommended) - Copy / paste the JSON package URL into the 'Additional Boards Manager URLs' field in Arduino preferences - ```https://raw.githubusercontent.com/sparkfun/Arduino_Apollo3/master/package_sparkfun_apollo3_index.json``` - [https://raw.githubusercontent.com/sparkfun/Arduino_Apollo3/master/package_sparkfun_apollo3_index.json](https://raw.githubusercontent.com/sparkfun/Arduino_Apollo3/master/package_sparkfun_apollo3_index.json) + ```https://raw.githubusercontent.com/sparkfun/Arduino_Apollo3/main/package_sparkfun_apollo3_index.json``` + [https://raw.githubusercontent.com/sparkfun/Arduino_Apollo3/main/package_sparkfun_apollo3_index.json](https://raw.githubusercontent.com/sparkfun/Arduino_Apollo3/main/package_sparkfun_apollo3_index.json) - Open 'Boards Manager' and select 'SparkFun Apollo3 Boards' - install the latest version ### **Git** (development) - Ensure the proper directory structure exists by following the [Arduino Boards Manager](#arduino-boards-manager) instructions (install latest) - - Locate and enter the ```Arduino15``` directory - - ```cd ~/.../Arduino15``` - - Run the ```dev-install.sh``` script - - ```./packages/SparkFun/hardware/apollo3/*/tools/scripts/dev-install.sh``` + - navigate to your directory with the latest version + - rename the directory from 2.x.x to .bckup2.x.x (or simply delete it and download it later if wanted) + - clone this repo + `git clone https://github.com/sparkfun/Arduino_Apollo3.git` + - checkout desired branch + `cd Arduino_Apollo3` + `git checkout release-candidate` + - update all submodules + `git submodule update --init --recursive` + - rename directory from Arduino_Apollo3 to 2.x.x from above + - restart Arduino and enjoy. + +## Getting Started +For in depth tutorials, checkout out the [Artemis page](https://www.sparkfun.com/artemis) for the latest. Tutorials that may be of interest include: + - [Installing Board Definitions in the Arduino IDE](https://learn.sparkfun.com/tutorials/installing-board-definitions-in-the-arduino-ide) + - [Artemis Development with the Arduino IDE](https://learn.sparkfun.com/tutorials/artemis-development-with-the-arduino-ide) + +If you are comfortable with the arduino IDE and already have the boards installed, we recommend trying some examples from within the arduino IDE. Start with the "Built-in Examples" from arduino, but don't forget to checkout out some of the board specific examples that we have included with the package. These demonstrate how to use some of the libraries that make our Artemis board unique, and can take your next project to a new level! ## Development Status -* v2.0.0 based on an [mbed-os](https://github.com/ARMmbed/mbed-os) framework +* v2.0.0 Based on an [mbed-os](https://github.com/ARMmbed/mbed-os) framework +* v2.1.0 Contains latest fixes for the v2 core and feature that have been added since v2 release + +For more information on how to contribute or how to navigate this repo, check out the [Contributing](./docs/CONTRIBUTING.md) page. + +As mentioned MbedOS is the framework to our latest Arduino Core. To contribute to, or use these targets on, MbedOS check out the [main repo by ARM](https://github.com/ARMmbed/mbed-os). This library uses mbed libraries built from a fork of mbed that is maintained by us. The latest version of that repo can be found [here](https://github.com/sparkfun/mbed-os-ambiq-apollo3/tree/ambiq-apollo3-arduino). **Main Arduino Features** * Serial: ✅ @@ -56,11 +76,11 @@ An mbed-os enabled Arduino core for Ambiq Apollo3 based boards * PDM Microphones / I2S: ✅ * BLE: ✅ * RTC: ✅ - * Watchdog Timer: 🤔 - * Multi-bit SPI: 🤔 + * Watchdog Timer: ✅ + * Burst Mode: ✅ ## More -### [License](./docs/ISSUES.md) +### [License](./docs/LICENSE.md) ### [Contributing](./docs/CONTRIBUTING.md) ### [Issue Template](./docs/ISSUES.md) ### [Acknowledgements](./docs/ACKNOWLEDGEMENTS.md) diff --git a/boards.txt b/boards.txt index c1d4ad6d..c9934f6b 100644 --- a/boards.txt +++ b/boards.txt @@ -36,13 +36,13 @@ sfe_artemis.build.defines= sfe_artemis.build.includes= sfe_artemis.build.libs= -sfe_artemis.menu.svl_baud.921600=921600 sfe_artemis.menu.svl_baud.460800=460800 sfe_artemis.menu.svl_baud.230400=230400 sfe_artemis.menu.svl_baud.115200=115200 sfe_artemis.menu.svl_baud.57600=57600 -sfe_artemis.menu.loader.option_asb=Ambiq Secure Bootloader (Recommended) -sfe_artemis.menu.loader.option_svl=SparkFun Variable Loader (Out of Order) +sfe_artemis.menu.svl_baud.921600=921600 +sfe_artemis.menu.loader.option_svl=SparkFun Variable Loader (Recommended) +sfe_artemis.menu.loader.option_asb=Ambiq Secure Bootloader (Advanced) sfe_artemis.menu.svl_baud.57600.upload.svl_baud=57600 sfe_artemis.menu.svl_baud.115200.upload.svl_baud=115200 @@ -72,13 +72,13 @@ sfe_artemis_atp.build.defines= sfe_artemis_atp.build.includes= sfe_artemis_atp.build.libs= -sfe_artemis_atp.menu.svl_baud.921600=921600 sfe_artemis_atp.menu.svl_baud.460800=460800 sfe_artemis_atp.menu.svl_baud.230400=230400 sfe_artemis_atp.menu.svl_baud.115200=115200 sfe_artemis_atp.menu.svl_baud.57600=57600 -sfe_artemis_atp.menu.loader.option_asb=Ambiq Secure Bootloader (Recommended) -sfe_artemis_atp.menu.loader.option_svl=SparkFun Variable Loader (Out of Order) +sfe_artemis_atp.menu.svl_baud.921600=921600 +sfe_artemis_atp.menu.loader.option_svl=SparkFun Variable Loader (Recommended) +sfe_artemis_atp.menu.loader.option_asb=Ambiq Secure Bootloader (Advanced) sfe_artemis_atp.menu.svl_baud.57600.upload.svl_baud=57600 sfe_artemis_atp.menu.svl_baud.115200.upload.svl_baud=115200 @@ -108,13 +108,13 @@ sfe_artemis_nano.build.defines= sfe_artemis_nano.build.includes= sfe_artemis_nano.build.libs= -sfe_artemis_nano.menu.svl_baud.921600=921600 sfe_artemis_nano.menu.svl_baud.460800=460800 sfe_artemis_nano.menu.svl_baud.230400=230400 sfe_artemis_nano.menu.svl_baud.115200=115200 sfe_artemis_nano.menu.svl_baud.57600=57600 -sfe_artemis_nano.menu.loader.option_asb=Ambiq Secure Bootloader (Recommended) -sfe_artemis_nano.menu.loader.option_svl=SparkFun Variable Loader (Out of Order) +sfe_artemis_nano.menu.svl_baud.921600=921600 +sfe_artemis_nano.menu.loader.option_svl=SparkFun Variable Loader (Recommended) +sfe_artemis_nano.menu.loader.option_asb=Ambiq Secure Bootloader (Advanced) sfe_artemis_nano.menu.svl_baud.57600.upload.svl_baud=57600 sfe_artemis_nano.menu.svl_baud.115200.upload.svl_baud=115200 @@ -144,13 +144,13 @@ sfe_artemis_thing_plus.build.defines= sfe_artemis_thing_plus.build.includes= sfe_artemis_thing_plus.build.libs= -sfe_artemis_thing_plus.menu.svl_baud.921600=921600 sfe_artemis_thing_plus.menu.svl_baud.460800=460800 sfe_artemis_thing_plus.menu.svl_baud.230400=230400 sfe_artemis_thing_plus.menu.svl_baud.115200=115200 sfe_artemis_thing_plus.menu.svl_baud.57600=57600 -sfe_artemis_thing_plus.menu.loader.option_asb=Ambiq Secure Bootloader (Recommended) -sfe_artemis_thing_plus.menu.loader.option_svl=SparkFun Variable Loader (Out of Order) +sfe_artemis_thing_plus.menu.svl_baud.921600=921600 +sfe_artemis_thing_plus.menu.loader.option_svl=SparkFun Variable Loader (Recommended) +sfe_artemis_thing_plus.menu.loader.option_asb=Ambiq Secure Bootloader (Advanced) sfe_artemis_thing_plus.menu.svl_baud.57600.upload.svl_baud=57600 sfe_artemis_thing_plus.menu.svl_baud.115200.upload.svl_baud=115200 @@ -180,12 +180,12 @@ sfe_edge.build.defines= sfe_edge.build.includes= sfe_edge.build.libs= -sfe_edge.menu.svl_baud.921600=921600 + sfe_edge.menu.svl_baud.460800=460800 sfe_edge.menu.svl_baud.230400=230400 sfe_edge.menu.svl_baud.115200=115200 sfe_edge.menu.svl_baud.57600=57600 - +sfe_edge.menu.svl_baud.921600=921600 sfe_edge.menu.asb_baud.921600=921600 (SparkFun.com) sfe_edge.menu.asb_baud.115200=115200 (TensorFlow Conference) @@ -221,13 +221,13 @@ sfe_edge2.build.defines= sfe_edge2.build.includes= sfe_edge2.build.libs= -sfe_edge2.menu.svl_baud.921600=921600 sfe_edge2.menu.svl_baud.460800=460800 sfe_edge2.menu.svl_baud.230400=230400 sfe_edge2.menu.svl_baud.115200=115200 sfe_edge2.menu.svl_baud.57600=57600 -sfe_edge2.menu.loader.option_asb=Ambiq Secure Bootloader (Recommended) -sfe_edge2.menu.loader.option_svl=SparkFun Variable Loader (Out of Order) +sfe_edge2.menu.svl_baud.921600=921600 +sfe_edge2.menu.loader.option_svl=SparkFun Variable Loader (Recommended) +sfe_edge2.menu.loader.option_asb=Ambiq Secure Bootloader (Advanced) sfe_edge2.menu.svl_baud.57600.upload.svl_baud=57600 sfe_edge2.menu.svl_baud.115200.upload.svl_baud=115200 @@ -245,7 +245,7 @@ sfe_edge2.menu.loader.option_svl.build.ldscript={runtime.platform.path}/tools/up ############################################################### -sfe_artemis_mm_pb.name=Artemis Micro Mod Processor +sfe_artemis_mm_pb.name=Artemis MicroMod Processor sfe_artemis_mm_pb.build.core=arduino sfe_artemis_mm_pb.build.variant=SFE_ARTEMIS_MM_PB sfe_artemis_mm_pb.build.arch=APOLLO3 @@ -257,13 +257,13 @@ sfe_artemis_mm_pb.build.defines= sfe_artemis_mm_pb.build.includes= sfe_artemis_mm_pb.build.libs= -sfe_artemis_mm_pb.menu.svl_baud.921600=921600 sfe_artemis_mm_pb.menu.svl_baud.460800=460800 sfe_artemis_mm_pb.menu.svl_baud.230400=230400 sfe_artemis_mm_pb.menu.svl_baud.115200=115200 sfe_artemis_mm_pb.menu.svl_baud.57600=57600 -sfe_artemis_mm_pb.menu.loader.option_asb=Ambiq Secure Bootloader (Recommended) -sfe_artemis_mm_pb.menu.loader.option_svl=SparkFun Variable Loader (Out of Order) +sfe_artemis_mm_pb.menu.svl_baud.921600=921600 +sfe_artemis_mm_pb.menu.loader.option_svl=SparkFun Variable Loader (Recommended) +sfe_artemis_mm_pb.menu.loader.option_asb=Ambiq Secure Bootloader (Advanced) sfe_artemis_mm_pb.menu.svl_baud.57600.upload.svl_baud=57600 sfe_artemis_mm_pb.menu.svl_baud.115200.upload.svl_baud=115200 @@ -293,13 +293,14 @@ sfe_artemis_module.build.defines= sfe_artemis_module.build.includes= sfe_artemis_module.build.libs= -sfe_artemis_module.menu.svl_baud.921600=921600 sfe_artemis_module.menu.svl_baud.460800=460800 sfe_artemis_module.menu.svl_baud.230400=230400 sfe_artemis_module.menu.svl_baud.115200=115200 sfe_artemis_module.menu.svl_baud.57600=57600 -sfe_artemis_module.menu.loader.option_asb=Ambiq Secure Bootloader (Recommended) -sfe_artemis_module.menu.loader.option_svl=SparkFun Variable Loader (Out of Order) +sfe_artemis_module.menu.svl_baud.921600=921600 +sfe_artemis_module.menu.loader.option_svl=SparkFun Variable Loader (Recommended) +sfe_artemis_module.menu.loader.option_asb=Ambiq Secure Bootloader (Advanced) + sfe_artemis_module.menu.svl_baud.57600.upload.svl_baud=57600 sfe_artemis_module.menu.svl_baud.115200.upload.svl_baud=115200 @@ -314,3 +315,47 @@ sfe_artemis_module.menu.loader.option_asb.build.ldscript={runtime.platform.path} sfe_artemis_module.menu.loader.option_svl.upload.tool=svl sfe_artemis_module.menu.loader.option_svl.build.ldscript={runtime.platform.path}/tools/uploaders/svl/0x10000.ld + + +############################################################### + +lora_thing_plus.name=LoRa Thing Plus expLoRaBLE +lora_thing_plus.build.core=arduino +lora_thing_plus.build.variant=LoRa_THING_PLUS_expLoRaBLE +lora_thing_plus.build.board=LoRa_THING_PLUS_expLoRaBLE +lora_thing_plus.upload.maximum_size=983040 +lora_thing_plus.upload.maximum_data_size=393216 +lora_thing_plus.build.export_format=bin +lora_thing_plus.upload.sbl_baud=115200 +lora_thing_plus.build.arch=APOLLO3 +lora_thing_plus.build.mcu=cortex-m4 +lora_thing_plus.build.f_cpu=48000000L +lora_thing_plus.build.includes= +lora_thing_plus.build.defines= +lora_thing_plus.build.preferred_export_format=bin +lora_thing_plus.build.defs= +lora_thing_plus.build.libs= + + +lora_thing_plus.menu.svl_baud.460800=460800 +lora_thing_plus.menu.svl_baud.230400=230400 +lora_thing_plus.menu.svl_baud.115200=115200 +lora_thing_plus.menu.svl_baud.57600=57600 +lora_thing_plus.menu.svl_baud.921600=921600 +lora_thing_plus.menu.loader.option_svl=SparkFun Variable Loader (Recommended) +lora_thing_plus.menu.loader.option_asb=Ambiq Secure Bootloader (Advanced) + +lora_thing_plus.menu.svl_baud.57600.upload.svl_baud=57600 +lora_thing_plus.menu.svl_baud.115200.upload.svl_baud=115200 +lora_thing_plus.menu.svl_baud.230400.upload.svl_baud=230400 +lora_thing_plus.menu.svl_baud.460800.upload.svl_baud=460800 +lora_thing_plus.menu.svl_baud.921600.upload.svl_baud=921600 + +lora_thing_plus.upload.asb_baud=115200 + + +lora_thing_plus.menu.loader.option_asb.upload.tool=asb +lora_thing_plus.menu.loader.option_asb.build.ldscript={runtime.platform.path}/tools/uploaders/asb/0xC000.ld + +lora_thing_plus.menu.loader.option_svl.upload.tool=svl +lora_thing_plus.menu.loader.option_svl.build.ldscript={runtime.platform.path}/tools/uploaders/svl/0x10000.ld diff --git a/cores/arduino/mbed-bridge b/cores/arduino/mbed-bridge index b54bfcb7..25fe1981 160000 --- a/cores/arduino/mbed-bridge +++ b/cores/arduino/mbed-bridge @@ -1 +1 @@ -Subproject commit b54bfcb77175565cdd2fc0015f8c8f922b6cd3de +Subproject commit 25fe1981fe509217059f093395372e1ffcbd6335 diff --git a/cores/arduino/sdk/core-implement/CommonAnalog.cpp b/cores/arduino/sdk/core-implement/CommonAnalog.cpp index 8d364247..64c292e4 100644 --- a/cores/arduino/sdk/core-implement/CommonAnalog.cpp +++ b/cores/arduino/sdk/core-implement/CommonAnalog.cpp @@ -80,12 +80,12 @@ float getTempDegF( void ) { } float getVCCV( void ){ - return ((float)analogReadVCCDiv3() * 6.0) / 16384.0; + return ((float)analogReadVCCDiv3() * 2.0) / 16384.0; } int indexAnalogRead(pin_size_t index){ // todo: replace with mbed "AnalogIn" functionality - pin_size_t pinNumber = pinNumberByIndex(index); + pin_size_t pinNumber = pinNameByIndex(index); if(pinNumber == (pin_size_t)NC){ return 0; } ap3_adc_channel_config_t* config = NULL; for(size_t idx = 0; idx < (sizeof(ap3_adc_channel_configs)/sizeof(ap3_adc_channel_config_t)); idx++){ @@ -150,7 +150,7 @@ int analogReadVSS( void ){ void indexAnalogWrite(pin_size_t index, int val){ // todo: replace with mbed "PwmOut" functionality - pin_size_t pinNumber = pinNumberByIndex(index); + pin_size_t pinNumber = pinNameByIndex(index); if(pinNumber == (pin_size_t)NC){ return; } ap3_gpio_pad_t pad = pinNumber; @@ -213,10 +213,11 @@ ap3_err_t analogWriteFrameWidth(uint32_t width){ ap3_err_t analogWriteFrequency(float freq){ uint32_t new_width = (uint32_t)(AP3_ANALOG_CLK_FREQ / freq); + if (new_width > AP3_MAX_ANALOG_WRITE_WIDTH){ return AP3_ERR; } - if (new_width < AP3_MAX_ANALOG_WRITE_WIDTH){ + if (new_width < AP3_MIN_ANALOG_WRITE_WIDTH){ return AP3_ERR; } _analogWriteWidth = new_width; @@ -569,9 +570,20 @@ ap3_err_t ap3_pwm_output(ap3_gpio_pad_t pad, uint32_t th, uint32_t fw, uint32_t AM_HAL_GPIO_PIN_DRIVESTRENGTH_12MA); // // if timer is running wait for timer value to roll over (will indicate that at least one pulse has been emitted) + uint32_t timer_enabled; + AM_CRITICAL_BEGIN // critical section when reading / writing config registers - if ((segment == AM_HAL_CTIMER_TIMERA && *((uint32_t *)CTIMERADDRn(CTIMER, timer, CTRL0)) & (CTIMER_CTRL0_TMRA0EN_Msk)) || - (segment == AM_HAL_CTIMER_TIMERB && *((uint32_t *)CTIMERADDRn(CTIMER, timer, CTRL0)) & (CTIMER_CTRL0_TMRB0EN_Msk))) + if(segment == AM_HAL_CTIMER_TIMERA) + { + timer_enabled = *((uint32_t *)CTIMERADDRn(CTIMER, timer, CTRL0)) & (CTIMER_CTRL0_TMRA0EN_Msk); + } + else + { + timer_enabled = *((uint32_t *)CTIMERADDRn(CTIMER, timer, CTRL0)) & (CTIMER_CTRL0_TMRB0EN_Msk); + } + AM_CRITICAL_END // end critical section + + if (timer_enabled) { uint32_t current = 0; uint32_t last = 0; @@ -581,7 +593,7 @@ ap3_err_t ap3_pwm_output(ap3_gpio_pad_t pad, uint32_t th, uint32_t fw, uint32_t current = am_hal_ctimer_read(timer, segment); } while (current >= last); } - AM_CRITICAL_END // end critical section + // clear timer (also stops the timer) am_hal_ctimer_clear(timer, segment); diff --git a/cores/mbed-os b/cores/mbed-os index 14231bca..50912b66 160000 --- a/cores/mbed-os +++ b/cores/mbed-os @@ -1 +1 @@ -Subproject commit 14231bca36940a24f1222c30da46e4d0c32594d5 +Subproject commit 50912b669e4b9ba484d534484190a4a362926c2f diff --git a/docs/ACKNOWLEDGEMENTS.md b/docs/ACKNOWLEDGEMENTS.md index d73cc577..b01fa158 100644 --- a/docs/ACKNOWLEDGEMENTS.md +++ b/docs/ACKNOWLEDGEMENTS.md @@ -13,4 +13,5 @@ Contributors * Jim Lindblom * Owen Lyke * Aaron Micyus -* Nathan Seidle \ No newline at end of file +* Nathan Seidle +* Kyle Wenner \ No newline at end of file diff --git a/docs/RELEASE_PROCESS.MD b/docs/RELEASE_PROCESS.MD new file mode 100644 index 00000000..deea8df4 --- /dev/null +++ b/docs/RELEASE_PROCESS.MD @@ -0,0 +1,36 @@ + +# Release Process +The purpose of this document is to document the release process for future reference. + +## Preparation +1. Make sure that any desired changes to mbed are present on the [ambiq-apollo3-arduino](https://github.com/sparkfun/mbed-os-ambiq-apollo3/tree/ambiq-apollo3-arduino) branch in the sparkfun branch of Mbed. +2. Bring all commits and pull requests into the dev branch. If any submodules have been updated, don't forget to update the commit used in the dev branch +3. Github actions will automatically generate the mbed variants after a commit into the dev branch. Allow these actions to finish, and the release-candidate branch will have have the latest commits, and the variants branch will be populated with the latest from the Mbed fork +4. When ready for release, complete a pull request from release-candidate into main + +## Drafting the release +5. Create a release in github based on main. Currently this is available, by going to [Arduino_Apollo3 Repo](https://github.com/sparkfun/Arduino_Apollo3) -> Releases -> Draft a new release. +6. Create a tag on the main branch with the version number. Ex, "v2.5.0" +7. Include a description about the release +8. (Optional) Mark as a pre-release, and open a discussion board to collect feedback from the community. + +## Upload zip file, and update JSON for Arduino +9. Download the repo at the tag created above `git clone --recursive -b https://github.com/sparkfun/Arduino_Apollo3`. Tip: If you forget to include --recursive in the clone, all submodules can be acquired via `git submodule update --init --recursive`. +10. Make sure this directory is named "Arduino_Apollo3" +11. Create a tarball of the release. `tar --exclude-vcs -zcvf Arduino_Apollo3.tar.gz Arduino_Apollo3`. Make sure to include `--exclude-vcs` to exclude gigabytes of git information from the release package. + WARNING: Do not do this on a windows machine, or unix users will need to run a chmod -x on the file later. +12. Edit the release created above, and upload the tarball +13. Run a SHA256 chksum on the tarball, and note size. `shasum -a 256 Arduino_Apollo3.tar.gz` +14. Update the [JSON File](https://github.com/sparkfun/Arduino_Apollo3/blob/main/package_sparkfun_apollo3_index.json) with new information. This can be quickly done from the github website ("." to open vscode). + * Create a new entry, or copy a previous one. + * Update the version number + * Update the URL of the tarball + * Update the checksum with the SHA256 of the tarball + * Update the size of the poackage + +## Verification and Clean-up +15. After updating the json file, restart your arduino IDE (that has the JSON added in the additional board manager preference). The new release should now appear. If not, check for any error messages from arduino about parsing the JSON, and check to make sure no errors were made or steps skipped in the section above. +16. Download and verify the release. +17. (Optional) To reduce possible merge conflicts later, perform a pull request from "main" branch into the "dev" branch so that both have all changes from these steps. + + diff --git a/libraries/Apollo3/examples/DigitalWrite/DigitalWrite.ino b/libraries/Apollo3/examples/DigitalWrite/DigitalWrite.ino deleted file mode 100644 index b60ca9e8..00000000 --- a/libraries/Apollo3/examples/DigitalWrite/DigitalWrite.ino +++ /dev/null @@ -1,74 +0,0 @@ -/* -// This file is subject to the terms and conditions defined in -// file 'LICENSE.md', which is part of this source code package. -*/ - -/* - - The Apollo3 microcontroller has "pads" - this is how the processor - and peripherals expect to be configured. These cannot be changed. - - For convenience you can also use pin names - these are usually - created in such a way that they match silkscreen markings on the - board or explicitly say what the pin is used for. - - Boards in the Apollo3 Arduino core have two kinds of pin names: - - PinName enum: a text label like "D0" or "LED1" - - pin_size_t type: a pure number that indicates a pin - - Both kinds can map onto arbitrary pads. Depending on which form - you pass into Arduino functions the appropriate map will be used. - - PinName: uses the PinName enumeration in - cores/mbed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/${VARIANT}/PinNames.h - - pin indices: match with pin states in variantPinStates array in: - variants/${VARIANT}/config/pins.cpp - - It is also possible for Arduino to define some symbols that serve - as additional names for pins - - In this example we will utilize those methods as well as one more - to blink the built-in LED on the board - - reference: https://www.arduino.cc/reference/en/language/functions/digital-io/digitalwrite/ - -*/ - -// Arduino boards typically define 'LED_BUILTIN' -// This symbol expands to the pin_size_t corresponding to the -// onboard LED -const pin_size_t ledPinNumber = LED_BUILTIN; - -// Mbed boards use a PinName called LED1 to indicate -// the built-in LED -const PinName ledPinName = LED1; - -void blinkWithNumber(pin_size_t number){ - digitalWrite(number, HIGH); - delay(250); - digitalWrite(number, LOW); - delay(500); -} - -void blinkWithName(PinName name){ - digitalWrite(name, HIGH); - delay(250); - digitalWrite(name, LOW); - delay(500); -} - -void setup() { - // Arduino functions that take pin arguemnts can use either type - // Here we are using the PinName type - - pinMode(ledPinName, OUTPUT); -} - -void loop() { - // When digitalWrite is called (with either kind of variable) - // it searches the variantPinStates array for a match. If one - // is found then an internal function sets the state of the - // corresponding pad - - blinkWithNumber(ledPinNumber); - blinkWithName(ledPinName); -} diff --git a/libraries/Apollo3/examples/DigitalGPIO/DigitalGPIO.ino b/libraries/Apollo3/examples/Example01_DigitalWrite/Example01_DigitalWrite.ino similarity index 100% rename from libraries/Apollo3/examples/DigitalGPIO/DigitalGPIO.ino rename to libraries/Apollo3/examples/Example01_DigitalWrite/Example01_DigitalWrite.ino diff --git a/libraries/Apollo3/examples/AnalogRead/AnalogRead.ino b/libraries/Apollo3/examples/Example02_AnalogRead/Example02_AnalogRead.ino similarity index 100% rename from libraries/Apollo3/examples/AnalogRead/AnalogRead.ino rename to libraries/Apollo3/examples/Example02_AnalogRead/Example02_AnalogRead.ino diff --git a/libraries/Apollo3/examples/AnalogWrite/AnalogWrite.ino b/libraries/Apollo3/examples/Example03_AnalogWrite/Example03_AnalogWrite.ino similarity index 100% rename from libraries/Apollo3/examples/AnalogWrite/AnalogWrite.ino rename to libraries/Apollo3/examples/Example03_AnalogWrite/Example03_AnalogWrite.ino diff --git a/libraries/Apollo3/examples/Serial/Serial.ino b/libraries/Apollo3/examples/Example04_Serial/Example04_Serial.ino similarity index 100% rename from libraries/Apollo3/examples/Serial/Serial.ino rename to libraries/Apollo3/examples/Example04_Serial/Example04_Serial.ino diff --git a/libraries/Apollo3/examples/I2C/I2C.ino b/libraries/Apollo3/examples/Example05_Wire_I2C/Example05_Wire_I2C.ino similarity index 74% rename from libraries/Apollo3/examples/I2C/I2C.ino rename to libraries/Apollo3/examples/Example05_Wire_I2C/Example05_Wire_I2C.ino index 3bf541b3..f2a29b8b 100644 --- a/libraries/Apollo3/examples/I2C/I2C.ino +++ b/libraries/Apollo3/examples/Example05_Wire_I2C/Example05_Wire_I2C.ino @@ -19,7 +19,7 @@ - declaring your own MbedI2C object using pins that correspond to the correct IOM Once you have an MbedI2C object to work with you can use all the standard - Arduino SPI API methods on it + Arduino Wire API methods on it https://www.arduino.cc/en/reference/wire This example will use threads to organize I2C operations based on board @@ -33,51 +33,21 @@ GND <--> sensor GND */ - + #include "Wire.h" -// This thread will use the pre-defined SPI object if it exists -#if VARIANT_WIRE_INTFCS > 0 -rtos::Thread wire_thread; -void wire_thread_fn( void ){ - Wire.begin(); - while(1){ - testPortI2C(Wire); - delay(1000); - } -} -#endif - -// This thread will use the pre-defined SPI1 object if it exists -#if VARIANT_WIRE_INTFCS > 1 -rtos::Thread wire1_thread; -void wire1_thread_fn( void ){ - delay(100); - Wire1.begin(); - while(1){ - testPortWire(Wire1); - delay(1000); - } -} -#endif +void testPortI2C(TwoWire &i2c); // This thread will create its own MbedI2C object using IOM pins -#define mySDA D25 -#define mySCL D27 -MbedI2C myWire(mySDA, mySCL); -rtos::Thread mywire_thread; -void mywire_thread_fn( void ){ - delay(200); - myWire.begin(); - while(1){ - testPortI2C(myWire); - delay(1000); - } -} +// Define your own pins below to try it +//#define mySDA D25 +//#define mySCL D27 +#if (defined mySDA) && (defined mySCL) +TwoWire myWire(mySDA, mySCL); +#endif -void testPortI2C(MbedI2C &i2c){ +void testPortI2C(TwoWire &i2c){ Serial.printf("Scanning... (port: 0x%08X), time (ms): %d\n", (uint32_t)&i2c, millis()); - uint8_t detected = 0; for(uint8_t addr = 1; addr < 127; addr++ ){ // use endTransmission to determine if a device is present at address @@ -89,11 +59,9 @@ void testPortI2C(MbedI2C &i2c){ detected++; } } - if(!detected){ Serial.printf("\tNo device detected!\n"); } - Serial.println(); } @@ -104,19 +72,29 @@ void setup() { pinMode(LED_BUILTIN, OUTPUT); #if VARIANT_WIRE_INTFCS > 0 - wire_thread.start(wire_thread_fn); + Wire.begin(); #endif - #if VARIANT_WIRE_INTFCS > 1 - wire1_thread.start(wire1_thread_fn); + Wire1.begin(); #endif - - mywire_thread.start(mywire_thread_fn); +#if (defined mySDA) && (defined mySCL) + myWire.begin(); +#endif } void loop() { +#if VARIANT_WIRE_INTFCS > 0 + testPortI2C(Wire); +#endif +#if VARIANT_WIRE_INTFCS > 1 + testPortI2C(Wire1); +#endif +#if (defined mySDA) && (defined mySCL) + testPortI2C(myWire); +#endif + digitalWrite(LED_BUILTIN, LOW); delay(1000); digitalWrite(LED_BUILTIN, HIGH); delay(1000); -} \ No newline at end of file +} diff --git a/libraries/Apollo3/examples/SPI/SPI.ino b/libraries/Apollo3/examples/Example06_SPI/Example06_SPI.ino similarity index 86% rename from libraries/Apollo3/examples/SPI/SPI.ino rename to libraries/Apollo3/examples/Example06_SPI/Example06_SPI.ino index 192d5983..efff4014 100644 --- a/libraries/Apollo3/examples/SPI/SPI.ino +++ b/libraries/Apollo3/examples/Example06_SPI/Example06_SPI.ino @@ -46,41 +46,17 @@ // define pins to create a custom SPI port // using mbed PinNames or Arduino pin numbers // (must be all pins from one IOM module) -#define mySDI D25 -#define mySDO D28 -#define myCLK D27 - +//#define mySDI D25 +//#define mySDO D28 +//#define myCLK D27 +#if (defined mySDI) && (defined mySDO) && (defined myCLK) MbedSPI mySPI(mySDI, mySDO, myCLK); // declare the custom MbedSPI object mySPI +extern "C" SPIName spi_get_peripheral_name(PinName mosi, PinName miso, PinName sclk); // this mbed internal function determines the IOM module number for a set of pins +#endif // define a macro to aid testing #define TEST_SPI_PORT(P) SERIAL_PORT.printf("testing %s\n\ttime (ms): %d\n\tbyte transer: %s\n\tbuffer transfer: %s\n\n", #P, millis(), ((test_byte_transfer(P) == 0) ? "pass" : "fail"), ((test_buffer_transfer(P) == 0) ? "pass" : "fail")) -// this thread will test the pre-defined SPI object if it exists -rtos::Thread spi_thread; -void spi_thread_fn( void ){ -#if VARIANT_SPI_INTFCS > 0 - delay(100); - SPI.begin(); - while(1){ - TEST_SPI_PORT(SPI); - delay(500); - } -#endif -} - -// this thread tests the custom mySPI object -extern "C" SPIName spi_get_peripheral_name(PinName mosi, PinName miso, PinName sclk); // this mbed internal function determines the IOM module number for a set of pins -rtos::Thread myspi_thread; -void myspi_thread_fn( void ){ - delay(300); - SERIAL_PORT.printf("starting mySPI on IOM %d\n", spi_get_peripheral_name(mySDO, mySDI, myCLK)); - mySPI.begin(); - while(1){ - TEST_SPI_PORT(mySPI); - delay(500); - } -} - int test_byte_transfer( SPIClass &spi ){ uint8_t tx = random(1, 256); uint8_t rx = 0x00; @@ -124,11 +100,22 @@ void setup() { pinMode(CS_PIN, OUTPUT); digitalWrite(CS_PIN, HIGH); - spi_thread.start(spi_thread_fn); - myspi_thread.start(myspi_thread_fn); + SPI.begin(); + +#if (defined mySDI) && (defined mySDO) && (defined myCLK) + SERIAL_PORT.printf("starting mySPI on IOM %d\n", spi_get_peripheral_name(mySDO, mySDI, myCLK)); + mySPI.begin(); +#endif } void loop() { + Serial.println("test"); + TEST_SPI_PORT(SPI); + +#if (defined mySDI) && (defined mySDO) && (defined myCLK) + TEST_SPI_PORT(mySPI); +#endif + digitalWrite(LED_BUILTIN, HIGH); delay(500); digitalWrite(LED_BUILTIN, LOW); diff --git a/libraries/Apollo3/examples/Threads/Threads.ino b/libraries/Apollo3/examples/Example07_Threads/Example07_Threads.ino similarity index 100% rename from libraries/Apollo3/examples/Threads/Threads.ino rename to libraries/Apollo3/examples/Example07_Threads/Example07_Threads.ino diff --git a/libraries/Apollo3/examples/AttachInterrupt/AttachInterrupt.ino b/libraries/Apollo3/examples/Example08_AttachInterrupt/Example08_AttachInterrupt.ino similarity index 100% rename from libraries/Apollo3/examples/AttachInterrupt/AttachInterrupt.ino rename to libraries/Apollo3/examples/Example08_AttachInterrupt/Example08_AttachInterrupt.ino diff --git a/libraries/Apollo3/examples/DetachInterrupt/DetachInterrupt.ino b/libraries/Apollo3/examples/Example09_DetachInterrupt/Example09_DetachInterrupt.ino similarity index 95% rename from libraries/Apollo3/examples/DetachInterrupt/DetachInterrupt.ino rename to libraries/Apollo3/examples/Example09_DetachInterrupt/Example09_DetachInterrupt.ino index d26bc9ab..70a257f7 100644 --- a/libraries/Apollo3/examples/DetachInterrupt/DetachInterrupt.ino +++ b/libraries/Apollo3/examples/Example09_DetachInterrupt/Example09_DetachInterrupt.ino @@ -1,75 +1,75 @@ -/* -// This file is subject to the terms and conditions defined in -// file 'LICENSE.md', which is part of this source code package. -*/ - -// Wiring: -// INT_PIN <-> AUTO_PIN (for automatic interrupt generation) - -#define INT_PIN 16 -#define AUTO_PIN D35 // connect this pin to INT_PIN for auto control -#define INT_TYPE RISING - -rtos::Thread autoISRThread; -rtos::Thread heartbeatThread; - -volatile uint32_t count = 0; -uint32_t expected_count = 0; -volatile bool isr_flag = false; - -void myParamISR( void *param ){ - isr_flag = true; - volatile uint32_t* pcount = (volatile uint32_t *)param; - *pcount += 1; // access count via the passed in parameter -} - -void generateAutoISRs( void ){ - while(1){ - delay(1000); - expected_count++; - digitalWrite(AUTO_PIN, HIGH); - digitalWrite(AUTO_PIN, LOW); - digitalWrite(LED_BUILTIN, (digitalRead(LED_BUILTIN)) ? LOW : HIGH); - if(INT_TYPE == CHANGE){ - expected_count++; - } - } -} - -void hearbeat( void ){ - while(1){ - delay(10000); - printf("blub blub. current time (ms): %d\n", millis()); - } -} - -void setup() -{ - Serial.begin(115200); - printf("Apollo3 - detachInterrupt\n\n"); - - pinMode(LED_BUILTIN, OUTPUT); - digitalWrite(LED_BUILTIN, LOW); - - pinMode(AUTO_PIN, OUTPUT); - digitalWrite(AUTO_PIN, LOW); - - pinMode(INT_PIN, INPUT_PULLUP); - attachInterruptParam(INT_PIN, myParamISR, INT_TYPE, (void*)&count); - - autoISRThread.start(generateAutoISRs); - heartbeatThread.start(hearbeat); -} - -void loop() -{ - if(isr_flag){ - isr_flag = false; - printf("isr fired. count: %d, expected: %d, diff: %d, time (ms): %d\n", count, expected_count, (expected_count - count), millis()); - if(count >= 5){ - count = 0; - printf("shutting off interrupts\n\n"); - detachInterrupt(INT_PIN); - } - } -} +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +// Wiring: +// INT_PIN <-> AUTO_PIN (for automatic interrupt generation) + +#define INT_PIN 16 +#define AUTO_PIN D35 // connect this pin to INT_PIN for auto control +#define INT_TYPE RISING + +rtos::Thread autoISRThread; +rtos::Thread heartbeatThread; + +volatile uint32_t count = 0; +uint32_t expected_count = 0; +volatile bool isr_flag = false; + +void myParamISR( void *param ){ + isr_flag = true; + volatile uint32_t* pcount = (volatile uint32_t *)param; + *pcount += 1; // access count via the passed in parameter +} + +void generateAutoISRs( void ){ + while(1){ + delay(1000); + expected_count++; + digitalWrite(AUTO_PIN, HIGH); + digitalWrite(AUTO_PIN, LOW); + digitalWrite(LED_BUILTIN, (digitalRead(LED_BUILTIN)) ? LOW : HIGH); + if(INT_TYPE == CHANGE){ + expected_count++; + } + } +} + +void hearbeat( void ){ + while(1){ + delay(10000); + printf("blub blub. current time (ms): %d\n", millis()); + } +} + +void setup() +{ + Serial.begin(115200); + printf("Apollo3 - detachInterrupt\n\n"); + + pinMode(LED_BUILTIN, OUTPUT); + digitalWrite(LED_BUILTIN, LOW); + + pinMode(AUTO_PIN, OUTPUT); + digitalWrite(AUTO_PIN, LOW); + + pinMode(INT_PIN, INPUT_PULLUP); + attachInterruptParam(INT_PIN, myParamISR, INT_TYPE, (void*)&count); + + autoISRThread.start(generateAutoISRs); + heartbeatThread.start(hearbeat); +} + +void loop() +{ + if(isr_flag){ + isr_flag = false; + printf("isr fired. count: %d, expected: %d, diff: %d, time (ms): %d\n", count, expected_count, (expected_count - count), millis()); + if(count >= 5){ + count = 0; + printf("shutting off interrupts\n\n"); + detachInterrupt(INT_PIN); + } + } +} diff --git a/libraries/Apollo3/examples/Example10_DisplayICRevision/Example10_DisplayICRevision.ino b/libraries/Apollo3/examples/Example10_DisplayICRevision/Example10_DisplayICRevision.ino new file mode 100644 index 00000000..cc627b9e --- /dev/null +++ b/libraries/Apollo3/examples/Example10_DisplayICRevision/Example10_DisplayICRevision.ino @@ -0,0 +1,54 @@ +/* Author: Nathan Seidle + Created: October 16th, 2019 + License: MIT. See SparkFun Arduino Apollo3 Project for more information + + This example demonstrates how to display the revision of the Apollo3. + See the Ambiq website for errata on each revision: https://ambiqmicro.com/mcu/ +*/ +void setup() +{ + Serial.begin(115200); + delay(10); //Wait for any bootloader UART interactions to complete + Serial.println(); + Serial.print("Apollo3 IC revision code: "); + + if (APOLLO3_A0) + { + Serial.print("A0"); + } + else if (APOLLO3_A1) + { + Serial.print("A1"); + } + else if (APOLLO3_B0) + { + Serial.print("B0"); + } + else if (APOLLO3_GE_B0) + { + Serial.print("Unknown revision but it's greater than B0"); + } + else + { + Serial.print("Unknown revision"); + } + Serial.println(); + + //Unique ChipID + am_hal_mcuctrl_device_t sDevice; + am_hal_mcuctrl_info_get(AM_HAL_MCUCTRL_INFO_DEVICEID, &sDevice); + + Serial.print("ChipID0 : 0x"); + Serial.println(sDevice.ui32ChipID0, HEX); + + Serial.print("ChipID1 : 0x"); + Serial.println(sDevice.ui32ChipID1, HEX); + + Serial.println(); + Serial.println("All done"); +} + +void loop() +{ + //Do nothing +} \ No newline at end of file diff --git a/libraries/Apollo3/examples/Example11_BLEAdvertise/Example11_BLEAdvertise.ino b/libraries/Apollo3/examples/Example11_BLEAdvertise/Example11_BLEAdvertise.ino new file mode 100644 index 00000000..af2ae753 --- /dev/null +++ b/libraries/Apollo3/examples/Example11_BLEAdvertise/Example11_BLEAdvertise.ino @@ -0,0 +1,51 @@ +/* + BLEAdvertise + + This example creates a BLE peripheral which advertises itself as Artemis. + Central devices may connect with it, but there are no services or + characteristics to interact with. + + Based on a stripped down version of the LED example from the ArduinoBLE examples +*/ + +#include //http://librarymanager/All#ArduinoBLE_IoT + +void setup() { + Serial.begin(115200); + while (!Serial); + + // begin initialization + if (!BLE.begin()) { + Serial.println("Starting BLE failed!"); + while (1); + } + + // set advertised local name and service UUID: + BLE.setLocalName("Artemis"); + + // start advertising + BLE.advertise(); + + Serial.println("BLE advertising as 'Artemis'"); +} + +void loop() { + // listen for BLE peripherals to connect: + BLEDevice central = BLE.central(); + + // if a central is connected to peripheral: + if (central) { + Serial.print("Connected to central: "); + // print the central's MAC address: + Serial.println(central.address()); + + // while the central is still connected to peripheral... + while (central.connected()) { + //Nothing to do here + } + + // when the central disconnects, print it out: + Serial.print(F("Disconnected from central: ")); + Serial.println(central.address()); + } +} diff --git a/libraries/BurstMode/examples/Example1_EnableDisable/Example1_EnableDisable.ino b/libraries/BurstMode/examples/Example1_EnableDisable/Example1_EnableDisable.ino new file mode 100644 index 00000000..2ca1dc3b --- /dev/null +++ b/libraries/BurstMode/examples/Example1_EnableDisable/Example1_EnableDisable.ino @@ -0,0 +1,42 @@ +//Burst Mode example +//TEST_PIN is toggled as fast as possible, with burst mode enable and disabled. +//Use a logic analyzer to view the difference in output +#include "BurstMode.h" + +#define TEST_PIN D2 //Change to whatever pin you would like + +#define NUM_TOGGLES 20 //Number of times to toggle the gpio as an example task + +void setup() { + Serial.begin(115200); + Serial.println("BurstMode Example1 - Enable and Disable"); +} + +void loop() { + long startTime, endTime; + enableBurstMode(); //Go to 96MHz + //Toggle the with digital write as fast as possible, 20 times + startTime = micros(); + for(int i = 0; i < NUM_TOGGLES; i++) + { + digitalWrite(TEST_PIN, HIGH); + digitalWrite(TEST_PIN, LOW); + } + endTime = micros(); + Serial.printf("Time (in microseconds) to toggle GPIO %d times = %d, at clock speed %d \r\n", + NUM_TOGGLES, (endTime - startTime), getCpuFreqMHz()); + + disableBurstMode(); //Go back to 48MHz + //Toggle the with digital write as fast as possible, 20 times + startTime = micros(); + for(int i = 0; i < NUM_TOGGLES; i++) + { + digitalWrite(TEST_PIN, HIGH); + digitalWrite(TEST_PIN, LOW); + } + endTime = micros(); + Serial.printf("Time (in microseconds) to toggle GPIO %d times = %d, at clock speed %d \r\n", + NUM_TOGGLES, (endTime - startTime), getCpuFreqMHz()); + + delay(1000); +} \ No newline at end of file diff --git a/libraries/BurstMode/keywords.txt b/libraries/BurstMode/keywords.txt new file mode 100644 index 00000000..ae3066f4 --- /dev/null +++ b/libraries/BurstMode/keywords.txt @@ -0,0 +1,16 @@ +# Syntax Coloring Map For 'libraries/BurstMode' + +# Datatypes (KEYWORD1) + + +# Functions (KEYWORD2) +enableBurstMode KEYWORD2 +disableBurstMode KEYWORD2 +getCpuFreqMHz KEYWORD2 + +# Structures (KEYWORD3) + +# Constants (LITERAL1) + +# Properties (LITERAL2) + diff --git a/libraries/BurstMode/library.properties b/libraries/BurstMode/library.properties new file mode 100644 index 00000000..924ce7ed --- /dev/null +++ b/libraries/BurstMode/library.properties @@ -0,0 +1,9 @@ +name=BurstMode +version=2.0.0 +author=SparkFun Electronics +maintainer=SparkFun Electronics +sentence=Burst Mode library for the SparkFun Artemis +paragraph=Allows for enabling, disabling, and checking status of burst mode which changes the clock from 48Mhz to 96Mhz +category= +url= +architectures=apollo3 diff --git a/libraries/BurstMode/src/BurstMode.cpp b/libraries/BurstMode/src/BurstMode.cpp new file mode 100644 index 00000000..9ee6ecc0 --- /dev/null +++ b/libraries/BurstMode/src/BurstMode.cpp @@ -0,0 +1,50 @@ +#include "BurstMode.h" + +uint32_t cpuFreq = 48000000; //At POR core is 48MHz + +//Turns main processor from 48MHz to 96MHz +//Returns false if burst mode failed to enable +bool enableBurstMode(void) +{ + // Check that the Burst Feature is available. + am_hal_burst_avail_e eBurstModeAvailable; + if (AM_HAL_STATUS_SUCCESS != am_hal_burst_mode_initialize(&eBurstModeAvailable)) + { + return (false); + } + + // Put the MCU into "Burst" mode. + am_hal_burst_mode_e eBurstMode; + if (AM_HAL_STATUS_SUCCESS != am_hal_burst_mode_enable(&eBurstMode)) + { + return (false); + } + cpuFreq = 96000000; + return (true); +} + +//Turns main processor from 96MHz to 48MHz +//Returns false if disable fails +bool disableBurstMode(void) +{ + am_hal_burst_mode_e eBurstMode; + if (AM_HAL_STATUS_SUCCESS == am_hal_burst_mode_disable(&eBurstMode)) + { + if (AM_HAL_NORMAL_MODE != eBurstMode) + { + return (false); + } + } + else + { + return (false); + } + cpuFreq = 48000000; + return (true); +} + +//Returns the current core speed +uint32_t getCpuFreqMHz(void) +{ + return (cpuFreq); +} \ No newline at end of file diff --git a/libraries/BurstMode/src/BurstMode.h b/libraries/BurstMode/src/BurstMode.h new file mode 100644 index 00000000..b2327755 --- /dev/null +++ b/libraries/BurstMode/src/BurstMode.h @@ -0,0 +1,31 @@ +/* +Copyright (c) 2019 SparkFun Electronics + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +*/ +#ifndef _AP3_CLOCK_SOURCES_H_ +#define _AP3_CLOCK_SOURCES_H_ + +#include "Arduino.h" + +bool enableBurstMode(); +bool disableBurstMode(); +uint32_t getCpuFreqMHz(); + +#endif //_AP3_GPIO_H_ \ No newline at end of file diff --git a/libraries/EEPROM/examples/Example1_PutGet/Example1_GetPut.ino b/libraries/EEPROM/examples/Example1_PutGet/Example1_PutGet.ino similarity index 98% rename from libraries/EEPROM/examples/Example1_PutGet/Example1_GetPut.ino rename to libraries/EEPROM/examples/Example1_PutGet/Example1_PutGet.ino index 097b7f0e..90b9d90e 100644 --- a/libraries/EEPROM/examples/Example1_PutGet/Example1_GetPut.ino +++ b/libraries/EEPROM/examples/Example1_PutGet/Example1_PutGet.ino @@ -13,6 +13,7 @@ void setup() { SERIAL.begin(115200); SERIAL.println("EEPROM Example1_PutGet"); + EEPROM.init(); // use EEPROM.get(int index, T type) to retrieve // an arbitrary type from flash memory diff --git a/libraries/EEPROM/examples/Example2_Structures/Example2_Structures.ino b/libraries/EEPROM/examples/Example2_Structures/Example2_Structures.ino index d0d7fd19..6bb97078 100644 --- a/libraries/EEPROM/examples/Example2_Structures/Example2_Structures.ino +++ b/libraries/EEPROM/examples/Example2_Structures/Example2_Structures.ino @@ -5,8 +5,6 @@ #include "EEPROM.h" -#define SERIAL Serial - #define EEPROM_PREFS_IDX (0) #define EEPROM_VALID_CODE (0xAB) #define DEFAULT_VER_MAJOR (0) @@ -23,44 +21,46 @@ typedef struct { preferences_t prefs; void setup() { - SERIAL.begin(115200); - SERIAL.println("EEPROM Example2_Structures"); + Serial.begin(115200); + Serial.println("EEPROM Example2_Structures"); + EEPROM.init(); // use EEPROM.get(int index, T type) to retrieve // an arbitrary type from flash memory + prefs.valid = 0x00; EEPROM.get(EEPROM_PREFS_IDX, prefs); if(prefs.valid != EEPROM_VALID_CODE){ - SERIAL.println("EEPROM was invalid"); + Serial.println("EEPROM was invalid"); // use EEPROM to store the default structure preferences_t default_prefs; - EEPROM.put(EEPROM_VALID_IDX, default_prefs); + EEPROM.put(EEPROM_PREFS_IDX, default_prefs); - SERIAL.println("EEPROM initialized"); + Serial.println("EEPROM initialized"); } // verify that the prefs are valid EEPROM.get(EEPROM_PREFS_IDX, prefs); if(prefs.valid != EEPROM_VALID_CODE){ - SERIAL.println("ERROR"); + Serial.println("ERROR"); while(1){}; } - SERIAL.println("EEPROM is valid"); + Serial.println("EEPROM is valid"); - SERIAL.printf("version: %d.%d.%d\n", refs.major, prefs.minor, prefs.patch); + Serial.printf("version: %d.%d.%d\n", prefs.ver_major, prefs.ver_minor, prefs.ver_patch); - SERIAL.printf("\nany characters received over SERIAL will increment the patch version and be stored after power-down\n"); + Serial.printf("\nany characters received over SERIAL will increment the patch version and be stored after power-down\n"); } void loop() { - if(SERRIAL.available()){ - while(SERIAL.available()){ - SERIAL.read(); - prefs.patch++; + if(Serial.available()){ + while(Serial.available()){ + Serial.read(); + prefs.ver_patch++; } EEPROM.put(EEPROM_PREFS_IDX, prefs); - SERIAL.printf("version: %d.%d.%d\n", refs.major, prefs.minor, prefs.patch); + Serial.printf("version: %d.%d.%d\n", prefs.ver_major, prefs.ver_minor, prefs.ver_patch); } } diff --git a/libraries/EEPROM/examples/Example3_AllFunctions/Example3_AllFunctions.ino b/libraries/EEPROM/examples/Example3_AllFunctions/Example3_AllFunctions.ino new file mode 100644 index 00000000..c77b172e --- /dev/null +++ b/libraries/EEPROM/examples/Example3_AllFunctions/Example3_AllFunctions.ino @@ -0,0 +1,231 @@ +/* + Reading and writing test of the EEPROM functions on the Artemis + By: Nathan Seidle + SparkFun Electronics + Date: June 24th, 2019 + This example code is in the public domain. + + SparkFun labored with love to create this code. Feel like supporting open source hardware? + Buy a board from SparkFun! https://www.sparkfun.com/products/15376 + + Page erase takes 15ms + Write byte takes 30ms - This is much longer than Arduino that takes 3.3ms + Float write across two words takes 30ms + Update (no write) takes 1ms +*/ + +#include + +// Give a default if the variant does not define one. +#ifndef A0 +#define A0 0 +#endif + +void setup() +{ + Serial.begin(115200); + Serial.println("EEPROM Examples"); + + randomSeed(analogRead(A0)); + + EEPROM.init(); + + // You may choose to enable more or less EEPROM - + // Default length is 1024 bytes (if setLength is not called) + EEPROM.setLength(1024 * 1); // this would make the length 1080 bytes. Max is 4096. + // Note: larger sizes will increase RAM usage and execution time + + long startTime; + long endTime; + int randomLocation; + + //Test erase time + startTime = millis(); + EEPROM.erase(); + endTime = millis(); + Serial.printf("Time to erase all EEPROM: %dms\n", endTime - startTime); + + //Byte sequential test + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + Serial.println(); + Serial.println("8 bit tests"); + uint8_t myValue1 = 200; + byte myValue2 = 23; + randomLocation = random(0, EEPROM.length() - sizeof(myValue1)); + + startTime = millis(); + EEPROM.write(randomLocation, myValue1); //(location, data) + endTime = millis(); + EEPROM.put(randomLocation + sizeof(myValue1), myValue2); + + Serial.printf("Write byte time: %dms\n", endTime - startTime); + + startTime = millis(); + EEPROM.write(randomLocation, myValue1); //(location, data) + endTime = millis(); + + Serial.printf("Write identical byte to same location: %dms\n", endTime - startTime); + + byte response1 = EEPROM.read(randomLocation); + byte response2 = EEPROM.read(randomLocation + sizeof(myValue1)); + Serial.printf("Location %d should be %d: %d\n\r", randomLocation, myValue1, response1); + Serial.printf("Location %d should be %d: %d\n\r", randomLocation + sizeof(myValue1), myValue2, response2); + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + + Serial.println(); + Serial.println("16 bit tests"); + + //int16_t and uint16_t sequential test + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + uint16_t myValue3 = 3411; + int16_t myValue4 = -366; + randomLocation = random(0, EEPROM.length() - sizeof(myValue3)); + + EEPROM.put(randomLocation, myValue3); + EEPROM.put(randomLocation + sizeof(myValue3), myValue4); + + uint16_t response3; + int16_t response4; + EEPROM.get(randomLocation, response3); + EEPROM.get(randomLocation + sizeof(myValue3), response4); + Serial.printf("Location %d should be %d: %d\n\r", randomLocation, myValue3, response3); + Serial.printf("Location %d should be %d: %d\n\r", randomLocation + sizeof(myValue3), myValue4, response4); + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + + Serial.println(); + Serial.println("32 bit tests"); + + //int and unsigned int (32) sequential test + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + Serial.printf("Size of int: %d\n", sizeof(int)); + int myValue5 = -245000; + unsigned int myValue6 = 400123; + randomLocation = random(0, EEPROM.length() - sizeof(myValue5)); + + EEPROM.put(randomLocation, myValue5); + EEPROM.put(randomLocation + sizeof(myValue5), myValue6); + + int response5; + unsigned int response6; + EEPROM.get(randomLocation, response5); + EEPROM.get(randomLocation + sizeof(myValue5), response6); + Serial.printf("Location %d should be %d: %d\n\r", randomLocation, myValue5, response5); + Serial.printf("Location %d should be %d: %d\n\r", randomLocation + sizeof(myValue5), myValue6, response6); + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + + //int32_t and uint32_t sequential test + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + int32_t myValue7 = -341002; + uint32_t myValue8 = 241544; + randomLocation = random(0, EEPROM.length() - sizeof(myValue7)); + + EEPROM.put(randomLocation, myValue7); + EEPROM.put(randomLocation + sizeof(myValue7), myValue8); + + int32_t response7; + uint32_t response8; + EEPROM.get(randomLocation, response7); + EEPROM.get(randomLocation + sizeof(myValue7), response8); + Serial.printf("Location %d should be %d: %d\n\r", randomLocation, myValue7, response7); + Serial.printf("Location %d should be %d: %d\n\r", randomLocation + sizeof(myValue7), myValue8, response8); + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + + //float (32) sequential test + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + Serial.printf("Size of float: %d\n", sizeof(float)); + float myValue9 = -7.35; + float myValue10 = 5.22; + randomLocation = random(0, EEPROM.length() - sizeof(myValue9)); + + EEPROM.put(randomLocation, myValue9); + EEPROM.put(randomLocation + sizeof(myValue9), myValue10); + + float response9; + float response10; + EEPROM.get(randomLocation, response9); + EEPROM.get(randomLocation + sizeof(myValue9), response10); + Serial.printf("Location %d should be ", randomLocation); + Serial.print(myValue9); + Serial.print(": "); + Serial.print(response9); + Serial.println(); + Serial.printf("Location %d should be ", randomLocation + sizeof(myValue9)); + Serial.print(myValue10); + Serial.print(": "); + Serial.print(response10); + Serial.println(); + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + + Serial.println(); + Serial.println("64 bit tests"); + + //double (64) sequential test + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + Serial.printf("Size of double: %d\n", sizeof(double)); + double myValue11 = -290.3485723409857; + double myValue12 = 384.95734987; + double myValue13 = 917.14159; + double myValue14 = 254.8877; + randomLocation = random(0, EEPROM.length() - sizeof(myValue11)); + + startTime = millis(); + EEPROM.put(randomLocation, myValue11); + endTime = millis(); + Serial.printf("Time to record 64-bits: %dms\n", endTime - startTime); + + EEPROM.put(randomLocation + sizeof(myValue11), myValue12); + EEPROM.put(EEPROM.length() - sizeof(myValue13), myValue13); //Test end of EEPROM space + + double response11; + double response12; + double response13; + EEPROM.get(randomLocation, response11); + EEPROM.get(randomLocation + sizeof(myValue11), response12); + EEPROM.get(EEPROM.length() - sizeof(myValue13), response13); + + Serial.printf("Location %d should be ", randomLocation); + Serial.print(myValue11, 13); + Serial.print(": "); + Serial.print(response11, 13); + Serial.println(); + Serial.printf("Location %d should be ", randomLocation + sizeof(myValue11)); + Serial.print(myValue12, 8); + Serial.print(": "); + Serial.print(response12, 8); + Serial.println(); + Serial.printf("Edge of EEPROM %d should be ", EEPROM.length() - sizeof(myValue13)); + Serial.print(myValue13, 5); + Serial.print(": "); + Serial.print(response13, 5); + Serial.println(); + + double response14; + EEPROM.put(EEPROM.length() - sizeof(myValue14), myValue14); //Test the re-write of a spot + EEPROM.get(EEPROM.length() - sizeof(myValue14), response14); + Serial.printf("Rewrite of %d should be ", EEPROM.length() - sizeof(myValue14)); + Serial.print(myValue14, 4); + Serial.print(": "); + Serial.print(response14, 4); + Serial.println(); + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + + Serial.println(); + Serial.println("String test"); + + //String write test + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + char myString[19] = "How are you today?"; + randomLocation = random(0, EEPROM.length() - sizeof(myString)); + EEPROM.put(randomLocation, myString); + + char readMy[19]; + EEPROM.get(randomLocation, readMy); + Serial.printf("Location %d string should read 'How are you today?': ", randomLocation); + Serial.println(readMy); + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + +} + +void loop() +{ +} \ No newline at end of file diff --git a/libraries/EEPROM/src/EEPROM.cpp b/libraries/EEPROM/src/EEPROM.cpp index 1b8db272..6dbfd16e 100644 --- a/libraries/EEPROM/src/EEPROM.cpp +++ b/libraries/EEPROM/src/EEPROM.cpp @@ -14,14 +14,14 @@ EEPROMClass EEPROM; #define EEPROM_ADDRESS(A) ((A/AM_HAL_FLASH_PAGE_SIZE) * AM_HAL_FLASH_PAGE_SIZE) #define EEPROM_SIZE(S) (((S+(AM_HAL_FLASH_PAGE_SIZE-1))/AM_HAL_FLASH_PAGE_SIZE) * AM_HAL_FLASH_PAGE_SIZE) -EEPROMClass::EEPROMClass(uint32_t address, uint32_t size) +EEPROMClass::EEPROMClass(uint32_t address, uint32_t size) : FlashIAPBlockDevice(EEPROM_ADDRESS(address), EEPROM_SIZE(size)) { } EEPROMClass::EEPROMClass(void) : - EEPROM(DEFAULT_ADDRESS, DEFAULT_SIZE) + FlashIAPBlockDevice(DEFAULT_ADDRESS, DEFAULT_SIZE) { } \ No newline at end of file diff --git a/libraries/EEPROM/src/EEPROM.h b/libraries/EEPROM/src/EEPROM.h index 8fe995c8..c526f06d 100644 --- a/libraries/EEPROM/src/EEPROM.h +++ b/libraries/EEPROM/src/EEPROM.h @@ -7,6 +7,7 @@ #define _APOLLO3_LIBRARIES_EEPROM_H_ #include "Arduino.h" +#include "FlashIAPBlockDevice.h" #define EEPROM_DEFAULT_SRAM_USAGE (1024) @@ -14,7 +15,7 @@ typedef struct _eeprom_config_t { mbed::bd_size_t sram_bytes = EEPROM_DEFAULT_SRAM_USAGE; } eeprom_config_t; -class EEPROMClass : protected FlashIAPBlockDevice { +class EEPROMClass : public FlashIAPBlockDevice { private: eeprom_config_t _cfg; @@ -26,29 +27,36 @@ class EEPROMClass : protected FlashIAPBlockDevice { void config(eeprom_config_t cfg){ _cfg = cfg; } + mbed::bd_size_t length(void){ + return(_cfg.sram_bytes); + } void configSramUsage(mbed::bd_size_t bytes){ _cfg.sram_bytes = bytes; } + void setLength(mbed::bd_size_t bytes){ //Old function to maintain compatibility + configSramUsage(bytes); + } void read(int idx, uint8_t* data, uint32_t size){ FlashIAPBlockDevice::read(data, idx, size); } uint8_t read(int idx){ uint8_t val = 0x00; - read(&val, idx, 1); + read(idx, &val, 1); return val; } void write(int idx, uint8_t* data, uint32_t size){ - mbed::bd_size_t scratch_size = (_cfg.sram_bytes+3)/4; - uint32_t scratch[scratch_size]; + mbed::bd_size_t scratch_size = _cfg.sram_bytes; + uint8_t scratch[scratch_size]; + FlashIAPBlockDevice::read((uint8_t*)scratch, 0, _cfg.sram_bytes); // keep all of flash in sram in case we need to erase + if(memcmp((void*)(((uint8_t*)scratch) + idx), data, size)){ // compare desired data (data) to existing information in flash (scratch) + memcpy(scratch + idx, data, size); erase(); - int result = FlashIAPBlockDevice::program((uint8_t*)scratch, 0, 4*scratch_size); - printf("updating flash. result: %d\n", result); + int result = FlashIAPBlockDevice::program((uint8_t*)scratch, 0, scratch_size); return; } - printf("contents already match\n"); } void write(int idx, uint8_t val){ write(idx, &val, 1); @@ -66,7 +74,7 @@ class EEPROMClass : protected FlashIAPBlockDevice { } template T &get(int idx, T &t){ - read((uint8_t*)&t, idx, sizeof(T)/sizeof(uint8_t)); + read(idx,(uint8_t*)&t, sizeof(T)/sizeof(uint8_t)); return t; } diff --git a/libraries/PDM/examples/Example2_ConfigureMic/Example2_ConfigureMic.ino b/libraries/PDM/examples/Example2_ConfigureMic/Example2_ConfigureMic.ino index 15178145..1e887d34 100644 --- a/libraries/PDM/examples/Example2_ConfigureMic/Example2_ConfigureMic.ino +++ b/libraries/PDM/examples/Example2_ConfigureMic/Example2_ConfigureMic.ino @@ -36,8 +36,8 @@ void setup() // The variant files for Artemis carrier boards have Mic data and clock pins defined // but these pins can be passed to the the .begin function - //if (myPDM.begin() == false) //Use Data, clock defines from variant file - if (myPDM.begin(22, 23) == false) //Data, clock on Artemis Nano - These are the pin names from variant file, not pad names + if (myPDM.begin() == false) //Use Data, clock defines from variant file + //if (myPDM.begin(22, 23) == false) //Data, clock on Artemis Nano - These are the pin names from variant file, not pad names { Serial.println("PDM Init failed. Are you sure these pins are PDM capable?"); while (1) diff --git a/libraries/PDM/examples/Example4_RecordToWav/ConvertToWav.py b/libraries/PDM/examples/Example4_RecordToWav/ConvertToWav.py new file mode 100644 index 00000000..37e93353 --- /dev/null +++ b/libraries/PDM/examples/Example4_RecordToWav/ConvertToWav.py @@ -0,0 +1,132 @@ +#!/usr/bin/python +from __future__ import division + +""" +Author: Justice Amoh +Date: 11/01/2019 +Description: Python script to stream audio from Artemis Apollo3 PDM microphone +""" +import sys +import serial +import numpy as np +import matplotlib.pyplot as plt + +from serial.tools import list_ports +from time import sleep +from scipy.io import wavfile +from datetime import datetime + + +# Controls +do_plot = True +do_save = True +wavname = 'recording_%s.wav'%(datetime.now().strftime("%m%d_%H%M")) +runtime = 50#100 # runtime in frames, sec/10 + +# Find Artemis Serial Port +ports = list_ports.comports() +try: + sPort = [p[0] for p in ports if 'cu.wchusbserial' in p[0]][0] +except Exception as e: + print 'Cannot find serial port!' + sys.exit(3) + +# Serial Config +ser = serial.Serial(sPort,115200) +ser.reset_input_buffer() +ser.reset_output_buffer() + + +# Audio Format & Datatype +dtype = np.int16 # Data type to read data +typelen = np.dtype(dtype).itemsize # Length of data type +maxval = 32768. # 2**15 # For 16bit signed + +# Plot Parameters +delay = .00001 # Use 1us pauses - as in matlab +fsamp = 16000 # Sampling rate +nframes = 10 # No. of frames to read at a time +buflen = fsamp//10 # Buffer length +bufsize = buflen*typelen # Resulting number of bytes to read +window = fsamp*10 # window of signal to plot at a time in samples + + +# Variables +x = [0]*window +t = np.arange(window)/fsamp # [x/fsamp for x in range(10)] + +#--------------- +# Plot & Figures +#--------------- +plt.ion() +plt.show() + + +# Configure Figure +with plt.style.context(('dark_background')): + fig,axs = plt.subplots(1,1,figsize=(7,2.5)) + + lw, = axs.plot(t,x,'r') + axs.set_xlim(0,window/fsamp) + axs.grid(which='major', alpha=0.2) + axs.set_ylim(-1,1) + axs.set_xlabel('Time (s)') + axs.set_ylabel('Amplitude') + axs.set_title('Streaming Audio') + plt.tight_layout() + plt.pause(0.001) + + + +# Start Transmission +ser.write('START') # Send Start command +sleep(1) + +for i in range(runtime): + buf = ser.read(bufsize) # Read audio data + buf = np.frombuffer(buf,dtype=dtype) # Convert to int16 + buf = buf/maxval # convert to float + x.extend(buf) # Append to waveform array + + # Update Plot lines + lw.set_ydata(x[-window:]) + + plt.pause(0.001) + sleep(delay) + + +# Stop Streaming +ser.write('STOP') +sleep(0.5) +ser.reset_input_buffer() +ser.reset_output_buffer() +ser.close() + +# Remove initial zeros +x = x[window:] + + +# Helper Functions +def plotAll(): + t = np.arange(len(x))/fsamp + with plt.style.context(('dark_background')): + fig,axs = plt.subplots(1,1,figsize=(7,2.5)) + lw, = axs.plot(t,x,'r') + axs.grid(which='major', alpha=0.2) + axs.set_xlim(0,t[-1]) + plt.tight_layout() + return + +# Plot All +if do_plot: + plt.close(fig) + plotAll() + +# Save Recorded Audio +if do_save: + wavfile.write(wavname,fsamp,np.array(x)) + print "Recording saved to file: %s"%wavname + + + + diff --git a/libraries/PDM/examples/Example4_RecordToWav/ConvertToWav3.py b/libraries/PDM/examples/Example4_RecordToWav/ConvertToWav3.py new file mode 100644 index 00000000..db2bf31b --- /dev/null +++ b/libraries/PDM/examples/Example4_RecordToWav/ConvertToWav3.py @@ -0,0 +1,130 @@ +#!/usr/bin/python + + +""" +Author: Justice Amoh +Date: 11/01/2019 +Description: Python script to stream audio from Artemis Apollo3 PDM microphone +""" +import sys +import serial +import numpy as np +import matplotlib.pyplot as plt + +from serial.tools import list_ports +from time import sleep +from scipy.io import wavfile +from datetime import datetime + + +# Controls +do_plot = True +do_save = True +wavname = 'recording_%s.wav' % (datetime.now().strftime("%m%d_%H%M")) +runtime = 50 # 100 # runtime in frames, sec/10 + +# Auto port assignment for Mac/Linux machines +# try: +# sPort = [p[0] for p in ports if 'cu.wchusbserial' in p[0]][0] +# except Exception as e: +# print('Cannot find serial port!') +# sys.exit(3) + +# Manual port assignment for windows machines +sPort = "COM16" + +# Serial Config +ser = serial.Serial(sPort, 500000) +ser.reset_input_buffer() +ser.reset_output_buffer() + + +# Audio Format & Datatype +dtype = np.int16 # Data type to read data +typelen = np.dtype(dtype).itemsize # Length of data type +maxval = 32768. # 2**15 # For 16bit signed + +# Plot Parameters +delay = .00001 # Use 1us pauses - as in matlab +fsamp = 16000 # Sampling rate +nframes = 10 # No. of frames to read at a time +buflen = fsamp//10 # Buffer length +bufsize = buflen*typelen # Resulting number of bytes to read +window = fsamp*10 # window of signal to plot at a time in samples + + +# Variables +x = [0]*window +t = np.arange(window)/fsamp # [x/fsamp for x in range(10)] + +# --------------- +# Plot & Figures +# --------------- +plt.ion() +plt.show() + + +# Configure Figure +with plt.style.context(('dark_background')): + fig, axs = plt.subplots(1, 1, figsize=(7, 2.5)) + + lw, = axs.plot(t, x, 'r') + axs.set_xlim(0, window/fsamp) + axs.grid(which='major', alpha=0.2) + axs.set_ylim(-1, 1) + axs.set_xlabel('Time (s)') + axs.set_ylabel('Amplitude') + axs.set_title('Streaming Audio') + plt.tight_layout() + plt.pause(0.001) + + +# Start Transmission +ser.write('START'.encode()) # Send Start command +sleep(1) + +for i in range(runtime): + buf = ser.read(bufsize) # Read audio data + buf = np.frombuffer(buf, dtype=dtype) # Convert to int16 + buf = buf/maxval # convert to float + x.extend(buf) # Append to waveform array + + # Update Plot lines + lw.set_ydata(x[-window:]) + + plt.pause(0.001) + sleep(delay) + + +# Stop Streaming +ser.write('STOP'.encode()) +sleep(0.5) +ser.reset_input_buffer() +ser.reset_output_buffer() +ser.close() + +# Remove initial zeros +x = x[window:] + + +# Helper Functions +def plotAll(): + t = np.arange(len(x))/fsamp + with plt.style.context(('dark_background')): + fig, axs = plt.subplots(1, 1, figsize=(7, 2.5)) + lw, = axs.plot(t, x, 'r') + axs.grid(which='major', alpha=0.2) + axs.set_xlim(0, t[-1]) + plt.tight_layout() + return + + +# Plot All +if do_plot: + plt.close(fig) + plotAll() + +# Save Recorded Audio +if do_save: + wavfile.write(wavname, fsamp, np.array(x)) + print("Recording saved to file: %s" % wavname) diff --git a/libraries/PDM/examples/Example4_RecordToWav/CorruptOutput.wav b/libraries/PDM/examples/Example4_RecordToWav/CorruptOutput.wav new file mode 100644 index 00000000..99e4a03a Binary files /dev/null and b/libraries/PDM/examples/Example4_RecordToWav/CorruptOutput.wav differ diff --git a/libraries/PDM/examples/Example4_RecordToWav/ExampleOutput.wav b/libraries/PDM/examples/Example4_RecordToWav/ExampleOutput.wav new file mode 100644 index 00000000..478f0d4e Binary files /dev/null and b/libraries/PDM/examples/Example4_RecordToWav/ExampleOutput.wav differ diff --git a/libraries/PDM/examples/Example4_RecordToWav/readme.md b/libraries/PDM/examples/Example4_RecordToWav/readme.md new file mode 100644 index 00000000..de292768 --- /dev/null +++ b/libraries/PDM/examples/Example4_RecordToWav/readme.md @@ -0,0 +1,11 @@ +Author: @justiceamoh and Nathan Seidle +Created: November 19th, 2019 +License: MIT. See SparkFun Arduino Apollo3 Project for more information + +This example demonstrates how to read audio data and output it to a WAV file. A sketch reads PDM data and outputs raw serial, and the ConverToWav python script (python versions 2 and 3 are both available) visualizes and coverts the serial data to a WAV file. + +Gotchas: + +* You will need to modify the python script to match the COM port used on your computer. For Windows based machines find the +* You may need to use VLC to play the WAV clips. The bitrate is 256kbps which is higher than some audio players can handle. +* Audio samples are generated fast enough that we need to output serial at 500kbps. \ No newline at end of file diff --git a/libraries/PDM/src/PDM.cpp b/libraries/PDM/src/PDM.cpp index 360b261a..8c169980 100644 --- a/libraries/PDM/src/PDM.cpp +++ b/libraries/PDM/src/PDM.cpp @@ -23,15 +23,6 @@ SOFTWARE. AP3_PDM *ap3_pdm_handle = 0; -// AP3_PDM::AP3_PDM(uint16_t *userBuffer, uint32_t bufferSize) -// { -// _userBuffer = userBuffer; -// _userBufferSize = bufferSize; - -// _readHead = 0; -// _writeHead = 0; -// } - bool AP3_PDM::begin(pin_size_t pinPDMData, pin_size_t pinPDMClock) { _PDMhandle = NULL; @@ -46,9 +37,28 @@ bool AP3_PDM::begin(pin_size_t pinPDMData, pin_size_t pinPDMClock) return (true); } +bool AP3_PDM::end() +{ + uint32_t retval = am_hal_pdm_disable(_PDMhandle); + if (retval != AP3_OK) + { + return false; + } + retval = (uint32_t)am_hal_pdm_power_control(_PDMhandle, AM_HAL_PDM_POWER_OFF, false); + if (retval != AP3_OK) + { + return retval; + } + retval = am_hal_pdm_deinitialize(_PDMhandle); + if (retval != AP3_OK) + { + return false; + } + return true; +} + bool AP3_PDM::available(void) { - // if (_readHead != _writeHead) if (buff1New || buff2New) return (true); return (false); @@ -76,6 +86,7 @@ uint32_t AP3_PDM::_begin(void) { return retval; } + pincfg.uFuncSel = funcsel; // set the proper function select option for this instance/pin/type combination retval = am_hal_gpio_pinconfig(_pinPDMData, pincfg); if (retval != AP3_OK) @@ -88,6 +99,7 @@ uint32_t AP3_PDM::_begin(void) { return retval; } + pincfg.uFuncSel = funcsel; // set the proper function select option for this instance/pin/type combination retval = am_hal_gpio_pinconfig(_pinPDMClock, pincfg); if (retval != AP3_OK) @@ -107,16 +119,19 @@ uint32_t AP3_PDM::_begin(void) return retval; } } + retval = (uint32_t)am_hal_pdm_power_control(_PDMhandle, AM_HAL_PDM_POWER_ON, false); if (retval != AP3_OK) { return retval; } + retval = (uint32_t)am_hal_pdm_configure(_PDMhandle, &_PDMconfig); if (retval != AP3_OK) { return retval; } + retval = (uint32_t)am_hal_pdm_enable(_PDMhandle); if (retval != AP3_OK) { @@ -128,7 +143,6 @@ uint32_t AP3_PDM::_begin(void) // completion). // am_hal_pdm_interrupt_enable(_PDMhandle, (AM_HAL_PDM_INT_DERR | AM_HAL_PDM_INT_DCMP | AM_HAL_PDM_INT_UNDFL | AM_HAL_PDM_INT_OVF)); - //am_hal_interrupt_master_enable(); NVIC_EnableIRQ(PDM_IRQn); // Register the class into the local list @@ -312,12 +326,6 @@ uint32_t AP3_PDM::getData(uint16_t *externalBuffer, uint32_t externalBufferSize) } buff2New = false; } - // for (int x = 0; x < externalBufferSize; x++) - // { - // externalBuffer[x] = _userBuffer[_readHead]; - // _readHead++; //Advance the read head - // _readHead %= _userBufferSize; //Wrap if necessary - // } return (externalBufferSize); } @@ -327,69 +335,42 @@ inline void AP3_PDM::pdm_isr(void) uint32_t ui32Status; // Read the interrupt status. - am_hal_pdm_interrupt_status_get(_PDMhandle, &ui32Status, true); - am_hal_pdm_interrupt_clear(_PDMhandle, ui32Status); - - if (ui32Status & AM_HAL_PDM_INT_DCMP) + if(_PDMhandle) { - uint32_t tempReadAmt = _pdmBufferSize; - - // if (_writeHead + _pdmBufferSize > _userBufferSize) - // { - // //Goes past the end of our buffer, adjust the amout to read so we hit end of buffer - // tempReadAmt = _userBufferSize - _writeHead; //16384 - 16000 = 384 - // } - - // int i; - // for (i = 0; i < tempReadAmt; i++) - // { - // _userBuffer[_writeHead + i] = _pdmDataBuffer[i]; - // } - - // _writeHead += tempReadAmt; //Advance the head - // _writeHead %= _userBufferSize; //Wrap the head - - // if (tempReadAmt < _pdmBufferSize) - // { - // //Finish the read where i had left off - // for (; i < _pdmBufferSize; i++) - // { - // _userBuffer[i - tempReadAmt] = _pdmDataBuffer[i]; - // } - - // _writeHead += _pdmBufferSize - tempReadAmt; - // } - //Check for overflow - //if (_writeHead + pdmBufferSize - - //Store in the first available buffer - if (buff1New == false) + am_hal_pdm_interrupt_status_get(_PDMhandle, &ui32Status, true); + am_hal_pdm_interrupt_clear(_PDMhandle, ui32Status); + + if (ui32Status & AM_HAL_PDM_INT_DCMP) { - for (int i = 0; i < _pdmBufferSize; i++) + uint32_t tempReadAmt = _pdmBufferSize; + + //Store in the first available buffer + if (buff1New == false) { - outBuffer1[i] = pi16Buffer[i]; + for (int i = 0; i < _pdmBufferSize; i++) + { + outBuffer1[i] = pi16Buffer[i]; + } + buff1New = true; } - buff1New = true; - } - else if (buff2New == false) - { - for (int i = 0; i < _pdmBufferSize; i++) + else if (buff2New == false) { - outBuffer2[i] = pi16Buffer[i]; + for (int i = 0; i < _pdmBufferSize; i++) + { + outBuffer2[i] = pi16Buffer[i]; + } + buff2New = true; + } + else + { + _overrun = true; + buff2New=false; + buff1New=false; } - buff2New = true; - } - else - { - _overrun = true; - //Used for debugging - Serial.println("\n\rOver flow!"); - while (1) - ; - } - //Start next conversion - am_hal_pdm_dma_start(_PDMhandle, &sTransfer); + //Start next conversion + am_hal_pdm_dma_start(_PDMhandle, &sTransfer); + } } } @@ -398,7 +379,7 @@ inline void AP3_PDM::pdm_isr(void) // PDM interrupt handler. // //***************************************************************************** -extern "C" void am_pdm_isr(void) +extern "C" void am_pdm0_isr(void) { ap3_pdm_handle->pdm_isr(); } diff --git a/libraries/PDM/src/PDM.h b/libraries/PDM/src/PDM.h index 98a0bc7d..2b81dcfd 100644 --- a/libraries/PDM/src/PDM.h +++ b/libraries/PDM/src/PDM.h @@ -96,6 +96,7 @@ class AP3_PDM //AP3_PDM(uint16_t *userBuffer, uint32_t bufferSize); bool begin(pin_size_t pinPDMData = MIC_DATA, pin_size_t pinPDMClock = MIC_CLOCK); + bool end(); bool available(void); //Goes true if circular buffer is not empty bool isOverrun(void); //Goes true if head crosses tail diff --git a/libraries/RTC/examples/Example1_Get_Time/Example1_Get_Time.ino b/libraries/RTC/examples/Example1_Get_Time/Example1_Get_Time.ino index 5f4af7a4..1c85b5fa 100644 --- a/libraries/RTC/examples/Example1_Get_Time/Example1_Get_Time.ino +++ b/libraries/RTC/examples/Example1_Get_Time/Example1_Get_Time.ino @@ -3,7 +3,7 @@ Created: Septempter 27th, 2019 This example demonstrates how to initialize and read from the on-board RTC. - + Most SparkFun Artemis boards have the necessary external 32kHz crystal to enable the RTC. If you are using the Artemis module bare you will either need an external 32kHz xtal or use the internal LFRC. Read the datasheet @@ -12,7 +12,7 @@ This example is based on the Ambiq SDK EVB2 RTC example. */ -/* +/* // This file is subject to the terms and conditions defined in // file 'LICENSE.md', which is part of this source code package. */ @@ -25,28 +25,28 @@ void setup() Serial.println("SparkFun RTC Example"); // Easily set RTC using the system __DATE__ and __TIME__ macros from compiler - RTC.setToCompilerTime(); + rtc.setToCompilerTime(); - // // Manually set RTC date and time - // RTC.setTime(0, 50, 59, 12, 3, 6, 20); // 12:59:50.000, June 3rd, 2020 (hund, ss, mm, hh, dd, mm, yy) + // Manually set RTC date and time + // rtc.setTime(0, 50, 59, 12, 3, 6, 20); // 12:59:50.000, June 3rd, 2020 (hund, ss, mm, hh, dd, mm, yy) } void loop() { - RTC.getTime(); + rtc.getTime(); Serial.printf("It is now "); - Serial.printf("%d:", RTC.hour); - Serial.printf("%02d:", RTC.minute); - Serial.printf("%02d.", RTC.seconds); - Serial.printf("%02d", RTC.hundredths); + Serial.printf("%d:", rtc.hour); + Serial.printf("%02d:", rtc.minute); + Serial.printf("%02d.", rtc.seconds); + Serial.printf("%02d", rtc.hundredths); - Serial.printf(" %02d/", RTC.month); - Serial.printf("%02d/", RTC.dayOfMonth); - Serial.printf("%02d", RTC.year); + Serial.printf(" %02d/", rtc.month); + Serial.printf("%02d/", rtc.dayOfMonth); + Serial.printf("%02d", rtc.year); - Serial.printf(" Day of week: %d =", RTC.weekday); - Serial.printf(" %s", RTC.textWeekday); + Serial.printf(" Day of week: %d =", rtc.weekday); + Serial.printf(" %s", rtc.textWeekday); Serial.println(); diff --git a/libraries/RTC/examples/Example2_Set_Alarms/Example2_Set_Alarms.ino b/libraries/RTC/examples/Example2_Set_Alarms/Example2_Set_Alarms.ino index 3669da7f..a2af583a 100644 --- a/libraries/RTC/examples/Example2_Set_Alarms/Example2_Set_Alarms.ino +++ b/libraries/RTC/examples/Example2_Set_Alarms/Example2_Set_Alarms.ino @@ -28,13 +28,13 @@ void setup() Serial.println("SparkFun RTC Set Alarm Example"); // // Easily set RTC using the system __DATE__ and __TIME__ macros from compiler - // RTC.setToCompilerTime(); + // rtc.setToCompilerTime(); // Manually set RTC date and time - RTC.setTime(0, 50, 59, 12, 3, 6, 20); // 12:59:50.000, June 3rd, 2020 (hund, ss, mm, hh, dd, mm, yy) + rtc.setTime(0, 50, 59, 12, 3, 6, 20); // 12:59:50.000, June 3rd, 2020 (hund, ss, mm, hh, dd, mm, yy) // Set the RTC's alarm - RTC.setAlarm(0, 0, 0, 13, 3, 6); // 13:00:00.000, June 3rd (hund, ss, mm, hh, dd, mm). Note: No year alarm register + rtc.setAlarm(0, 0, 0, 13, 3, 6); // 13:00:00.000, June 3rd (hund, ss, mm, hh, dd, mm). Note: No year alarm register // Set the RTC alarm mode /* @@ -47,8 +47,8 @@ void setup() 6: Alarm match every minute (hundredths, seconds) 7: Alarm match every second (hundredths) */ - RTC.setAlarmMode(6); // Set the RTC alarm to match on minutes rollover - RTC.attachInterrupt(); // Attach RTC alarm interrupt + rtc.setAlarmMode(6); // Set the RTC alarm to match on minutes rollover + rtc.attachInterrupt(); // Attach RTC alarm interrupt // Print the RTC's alarm date and time Serial.print("Next alarm: "); printAlarm(); @@ -77,31 +77,29 @@ void loop() // Print the RTC's current date and time void printDateTime() { - RTC.getTime(); - char dateTimeBuffer[25]; - sprintf(dateTimeBuffer, "20%02d-%02d-%02d %02d:%02d:%02d.%03d", - RTC.year, RTC.month, RTC.dayOfMonth, - RTC.hour, RTC.minute, RTC.seconds, RTC.hundredths); - Serial.println(dateTimeBuffer); + rtc.getTime(); + Serial.printf("20%02d-%02d-%02d %02d:%02d:%02d.%03d\n", + rtc.year, rtc.month, rtc.dayOfMonth, + rtc.hour, rtc.minute, rtc.seconds, rtc.hundredths); } // Print the RTC's alarm void printAlarm() { - RTC.getAlarm(); - char alarmBuffer[25]; - sprintf(alarmBuffer, "2020-%02d-%02d %02d:%02d:%02d.%03d", - RTC.alarmMonth, RTC.alarmDayOfMonth, - RTC.alarmHour, RTC.alarmMinute, - RTC.alarmSeconds, RTC.alarmHundredths); - Serial.println(alarmBuffer); + rtc.getAlarm(); + + Serial.printf("2020-%02d-%02d %02d:%02d:%02d.%03d\n", + rtc.alarmMonth, rtc.alarmDayOfMonth, + rtc.alarmHour, rtc.alarmMinute, + rtc.alarmSeconds, rtc.alarmHundredths); + Serial.println(); } // Interrupt handler for the RTC extern "C" void am_rtc_isr(void) { // Clear the RTC alarm interrupt. - am_hal_rtc_int_clear(AM_HAL_RTC_INT_ALM); + rtc.clearInterrupt(); // Set alarm flag alarmFlag = true; diff --git a/libraries/RTC/examples/Example3_Test_RTC/Example3_Test_RTC.ino b/libraries/RTC/examples/Example3_Test_RTC/Example3_Test_RTC.ino index 79bb2c49..5bddffbf 100644 --- a/libraries/RTC/examples/Example3_Test_RTC/Example3_Test_RTC.ino +++ b/libraries/RTC/examples/Example3_Test_RTC/Example3_Test_RTC.ino @@ -21,13 +21,13 @@ void setup() Serial.println("Artemis RTC Testing"); // Manually set RTC date and time to the start of 2020 so that RTC contains valid times - RTC.setTime(0, 59, 59, 23, 1, 1, 20); // Set to 1 second before midnight Jan 1 + rtc.setTime(0, 59, 59, 23, 1, 1, 20); // Set to 1 second before midnight Jan 1 } void loop() { - RTC.setTime(99, 59, 59, 23, RTC.dayOfMonth, RTC.month, RTC.year); // Manually set RTC 1/100th of a second from the next day - previousDay = RTC.weekday; + rtc.setTime(99, 59, 59, 23, rtc.dayOfMonth, rtc.month, rtc.year); // Manually set RTC 1/100th of a second from the next day + previousDay = rtc.weekday; delay(11); //Allow us to roll from midnight the night before to the new day printArtemisTime(); @@ -38,8 +38,8 @@ void printArtemisTime() char buf[50]; char weekdayBuf[4]; - RTC.getTime(); - int i = RTC.weekday + 1; + rtc.getTime(); + int i = rtc.weekday + 1; switch (i) { case (1): @@ -69,15 +69,15 @@ void printArtemisTime() break; } - sprintf(buf, "%02d-%02d-%02d (%s) %02d:%02d:%02d.%02d", RTC.year, RTC.month, RTC.dayOfMonth, weekdayBuf, RTC.hour, RTC.minute, RTC.seconds, RTC.hundredths); + sprintf(buf, "%02d-%02d-%02d (%s) %02d:%02d:%02d.%02d", rtc.year, rtc.month, rtc.dayOfMonth, weekdayBuf, rtc.hour, rtc.minute, rtc.seconds, rtc.hundredths); Serial.print(buf); //Move the previous day forward one day and make sure it matches today - if ((previousDay + 1) % 7 != RTC.weekday) + if ((previousDay + 1) % 7 != rtc.weekday) { - Serial.printf(" Error! previousDay: %d today: %d\n", previousDay, RTC.weekday); + Serial.printf(" Error! previousDay: %d today: %d\n", previousDay, rtc.weekday); while (1){}; } Serial.println(); -} \ No newline at end of file +} diff --git a/libraries/RTC/examples/Example4_Set_Epoch/Example4_Set_Epoch.ino b/libraries/RTC/examples/Example4_Set_Epoch/Example4_Set_Epoch.ino index 9cf4541e..12959d28 100644 --- a/libraries/RTC/examples/Example4_Set_Epoch/Example4_Set_Epoch.ino +++ b/libraries/RTC/examples/Example4_Set_Epoch/Example4_Set_Epoch.ino @@ -18,13 +18,13 @@ void setup() Serial.println("SparkFun RTC Set UNIX Epoch Time Example"); // Set the RTC time using UNIX Epoch time - RTC.setEpoch(1591185600); // E.g. 12:00:00, June 3rd, 2020 + rtc.setEpoch(1591185600); // E.g. 12:00:00, June 3rd, 2020 } void loop() { // Print UNIX Epoch timestamp - Serial.print("Epoch time: "); Serial.println(RTC.getEpoch()); + Serial.print("Epoch time: "); Serial.println(rtc.getEpoch()); // Print RTC's date and time Serial.print("Timestamp: "); printDateTime(); @@ -35,10 +35,9 @@ void loop() // Print the RTC's current date and time void printDateTime() { - RTC.getTime(); - char dateTime[20]; - sprintf(dateTime, "20%02d-%02d-%02d %02d:%02d:%02d", - RTC.year, RTC.month, RTC.dayOfMonth, - RTC.hour, RTC.minute, RTC.seconds); - Serial.println(dateTime); + rtc.getTime(); + Serial.printf("20%02d-%02d-%02d %02d:%02d:%02d\n", + rtc.year, rtc.month, rtc.dayOfMonth, + rtc.hour, rtc.minute, rtc.seconds); + Serial.println(); } diff --git a/libraries/RTC/examples/Example5_Rolling_Alarms/Example5_Rolling_Alarms.ino b/libraries/RTC/examples/Example5_Rolling_Alarms/Example5_Rolling_Alarms.ino index 5a82bf20..75ae246b 100644 --- a/libraries/RTC/examples/Example5_Rolling_Alarms/Example5_Rolling_Alarms.ino +++ b/libraries/RTC/examples/Example5_Rolling_Alarms/Example5_Rolling_Alarms.ino @@ -1,18 +1,18 @@ /* - Author: Adam Garbo and Nathan Seidle + Author: rserranosmith, Adam Garbo, and Nathan Seidle Created: June 3rdrd, 2020 - This example demonstrates how to read and set rolling RTC alarms. Each time - the alarm triggers, a user-specified additional amount of time (seconds, - minutes or hours) can be added to create a rolling RTC alarm. Second, + This example demonstrates how to read and set rolling RTC alarms. Each time + the alarm triggers, a user-specified additional amount of time (seconds, + minutes or hours) can be added to create a rolling RTC alarm. Second, minute and hour rollovers are handled using modulo calculations. - The current code is configured as a 5-second rolling RTC alarm. + The current code is configured as a 5-second rolling RTC alarm. */ -/* -// This file is subject to the terms and conditions defined in -// file 'LICENSE.md', which is part of this source code package. +/* + // This file is subject to the terms and conditions defined in + // file 'LICENSE.md', which is part of this source code package. */ #include "RTC.h" @@ -31,10 +31,10 @@ void setup() // RTC.setToCompilerTime(); // Manually set RTC date and time - RTC.setTime(0, 50, 59, 12, 3, 6, 20); // 12:59:50.000, June 3rd, 2020 (hund, ss, mm, hh, dd, mm, yy) + rtc.setTime(0, 50, 59, 12, 3, 6, 20); // 12:59:50.000, June 3rd, 2020 (hund, ss, mm, hh, dd, mm, yy) // Set the RTC's alarm - RTC.setAlarm(0, 0, 0, 13, 3, 6); // 13:00:00.000, June 3rd (hund, ss, mm, hh, dd, mm). Note: No year alarm register + rtc.setAlarm(0, 0, 0, 13, 3, 6); // 13:00:00.000, June 3rd (hund, ss, mm, hh, dd, mm). Note: No year alarm register // Set the RTC alarm mode /* @@ -47,8 +47,11 @@ void setup() 6: Alarm match every minute (hundredths, seconds) 7: Alarm match every second (hundredths) */ - RTC.setAlarmMode(6); // Set the RTC alarm to match on minutes rollover - RTC.attachInterrupt(); // Attach RTC alarm interrupt + rtc.setAlarmMode(1); // Set the RTC alarm interval to a year, not particularly important if you are rolling alarms + // typical use case for this would be "I want an alarm every day at XX:YY:ZZ.WWW time" if this + // was the case you would want to 4 (every day). since we are setting a new alarm when the previous + // is triggered we would want this to just be larger than the largest period between alarms + rtc.attachInterrupt(); // Attach RTC alarm interrupt // Print the RTC's alarm date and time Serial.print("Next alarm: "); printAlarm(); @@ -65,14 +68,16 @@ void loop() // Clear alarm flag alarmFlag = false; + int secs = (rtc.seconds + alarmSeconds); + int mins = (rtc.minute + alarmMinutes + (int)(secs/60)); + int hours = (rtc.hour + alarmHours + (int)(mins/60)); // Set the RTC's rolling alarm - RTC.setAlarm(0, - (RTC.seconds + alarmSeconds) % 60, - (RTC.minute + alarmMinutes) % 60, - (RTC.hour + alarmHours) % 24, - RTC.dayOfMonth, - RTC.month); - RTC.setAlarmMode(6); + rtc.setAlarm(0, + secs % 60, + mins % 60, + hours % 24, + rtc.dayOfMonth, + rtc.month); // Print next RTC alarm date and time Serial.print("Next rolling alarm: "); printAlarm(); @@ -82,31 +87,29 @@ void loop() // Print the RTC's current date and time void printDateTime() { - RTC.getTime(); - char dateTimeBuffer[25]; - sprintf(dateTimeBuffer, "20%02d-%02d-%02d %02d:%02d:%02d.%03d", - RTC.year, RTC.month, RTC.dayOfMonth, - RTC.hour, RTC.minute, RTC.seconds, RTC.hundredths); - Serial.println(dateTimeBuffer); + rtc.getTime(); + Serial.printf("20%02d-%02d-%02d %02d:%02d:%02d.%03d\n", + rtc.year, rtc.month, rtc.dayOfMonth, + rtc.hour, rtc.minute, rtc.seconds, rtc.hundredths); + Serial.println(); } // Print the RTC's alarm void printAlarm() { - RTC.getAlarm(); - char alarmBuffer[25]; - sprintf(alarmBuffer, "2020-%02d-%02d %02d:%02d:%02d.%03d", - RTC.alarmMonth, RTC.alarmDayOfMonth, - RTC.alarmHour, RTC.alarmMinute, - RTC.alarmSeconds, RTC.alarmHundredths); - Serial.println(alarmBuffer); + rtc.getAlarm(); + Serial.printf("2020-%02d-%02d %02d:%02d:%02d.%03d\n", + rtc.alarmMonth, rtc.alarmDayOfMonth, + rtc.alarmHour, rtc.alarmMinute, + rtc.alarmSeconds, rtc.alarmHundredths); + Serial.println(); } // Interrupt handler for the RTC extern "C" void am_rtc_isr(void) { // Clear the RTC alarm interrupt. - am_hal_rtc_int_clear(AM_HAL_RTC_INT_ALM); + rtc.clearInterrupt(); // Set alarm flag alarmFlag = true; diff --git a/libraries/RTC/examples/Example6_LowPower_Alarm/Example6_LowPower_Alarm.ino b/libraries/RTC/examples/Example6_LowPower_Alarm/Example6_LowPower_Alarm.ino index f59ab51e..9cbcecfd 100644 --- a/libraries/RTC/examples/Example6_LowPower_Alarm/Example6_LowPower_Alarm.ino +++ b/libraries/RTC/examples/Example6_LowPower_Alarm/Example6_LowPower_Alarm.ino @@ -16,8 +16,6 @@ // file 'LICENSE.md', which is part of this source code package. */ -#ifdef I_WANT_TO_BRICK_MY_BOARD - #include "RTC.h" void setup() @@ -29,10 +27,10 @@ void setup() // RTC.setToCompilerTime(); // Manually set RTC date and time - RTC.setTime(0, 50, 59, 12, 3, 6, 20); // 12:59:50.000, June 3rd, 2020 (hund, ss, mm, hh, dd, mm, yy) + rtc.setTime(0, 50, 59, 12, 3, 6, 20); // 12:59:50.000, June 3rd, 2020 (hund, ss, mm, hh, dd, mm, yy) // Set the RTC's alarm - RTC.setAlarm(0, 0, 0, 13, 3, 6); // 13:00:00.000, June 3rd (hund, ss, mm, hh, dd, mm). Note: No year alarm register + rtc.setAlarm(0, 0, 0, 13, 3, 6); // 13:00:00.000, June 3rd (hund, ss, mm, hh, dd, mm). Note: No year alarm register // Set the RTC alarm mode /* @@ -45,8 +43,8 @@ void setup() 6: Alarm match every minute (hundredths, seconds) 7: Alarm match every second (hundredths) */ - RTC.setAlarmMode(6); // Set the RTC alarm to match on minutes rollover - RTC.attachInterrupt(); // Attach RTC alarm interrupt + rtc.setAlarmMode(6); // Set the RTC alarm to match on minutes rollover + rtc.attachInterrupt(); // Attach RTC alarm interrupt } void loop() @@ -61,12 +59,12 @@ void loop() // Print the RTC's current date and time void printDateTime() { - RTC.getTime(); - char dateTimeBuffer[25]; - sprintf(dateTimeBuffer, "20%02d-%02d-%02d %02d:%02d:%02d.%03d", - RTC.year, RTC.month, RTC.dayOfMonth, - RTC.hour, RTC.minute, RTC.seconds, RTC.hundredths); - Serial.println(dateTimeBuffer); + rtc.getTime(); + + Serial.printf("20%02d-%02d-%02d %02d:%02d:%02d.%03d\n", + rtc.year, rtc.month, rtc.dayOfMonth, + rtc.hour, rtc.minute, rtc.seconds, rtc.hundredths); + Serial.println(); } // Power down gracefully @@ -89,16 +87,14 @@ void goToSleep() am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_UART0); am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_UART1); - // Disable all pads + // Disable all pads (except UART TX/RX) for (int x = 0 ; x < 50 ; x++) am_hal_gpio_pinconfig(x, g_AM_HAL_GPIO_DISABLE); - //Power down Flash, SRAM, cache - am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_CACHE); // Turn off CACHE - am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_FLASH_512K); // Turn off everything but lower 512k - am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_SRAM_64K_DTCM); // Turn off everything but lower 64k - //am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_ALL); //Turn off all memory (doesn't recover) - + //Power down CACHE, flashand SRAM + am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_ALL); // Turn off CACHE and flash + am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_SRAM_384K); // Retain all SRAM (0.6 uA) + // Keep the 32kHz clock running for RTC am_hal_stimer_config(AM_HAL_STIMER_CFG_CLEAR | AM_HAL_STIMER_CFG_FREEZE); am_hal_stimer_config(AM_HAL_STIMER_XTAL_32KHZ); @@ -112,6 +108,10 @@ void goToSleep() // Power up gracefully void wakeUp() { + // Go back to using the main clock + am_hal_stimer_config(AM_HAL_STIMER_CFG_CLEAR | AM_HAL_STIMER_CFG_FREEZE); + am_hal_stimer_config(AM_HAL_STIMER_HFRC_3MHZ); + // Power up SRAM, turn on entire Flash am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_MAX); @@ -119,6 +119,13 @@ void wakeUp() am_hal_stimer_config(AM_HAL_STIMER_CFG_CLEAR | AM_HAL_STIMER_CFG_FREEZE); am_hal_stimer_config(AM_HAL_STIMER_HFRC_3MHZ); + // Renable UART0 pins + am_hal_gpio_pinconfig(48, g_AM_BSP_GPIO_COM_UART_TX); + am_hal_gpio_pinconfig(49, g_AM_BSP_GPIO_COM_UART_RX); + + // Renable power to UART0 + am_hal_pwrctrl_periph_enable(AM_HAL_PWRCTRL_PERIPH_UART0); + // Enable ADC initializeADC(); @@ -130,7 +137,5 @@ void wakeUp() extern "C" void am_rtc_isr(void) { // Clear the RTC alarm interrupt - am_hal_rtc_int_clear(AM_HAL_RTC_INT_ALM); + rtc.clearInterrupt(); } - -#endif // I_WANT_TO_BRICK_MY_BOARD diff --git a/libraries/RTC/keywords.txt b/libraries/RTC/keywords.txt index cf6b8a56..ed80925c 100644 --- a/libraries/RTC/keywords.txt +++ b/libraries/RTC/keywords.txt @@ -15,6 +15,7 @@ setAlarm KEYWORD2 setAlarmMode KEYWORD2 attachInterrupt KEYWORD2 detachInterrupt KEYWORD2 +clearInterrupt KEYWORD2 # Structures (KEYWORD3) @@ -40,4 +41,4 @@ alarmMinute LITERAL2 alarmSeconds LITERAL2 alarmHundredths LITERAL2 alarmTextWeekday LITERAL2 -RTC LITERAL2 +rtc LITERAL2 diff --git a/libraries/RTC/src/RTC.cpp b/libraries/RTC/src/RTC.cpp index 4eeb8b68..a3deb6d2 100644 --- a/libraries/RTC/src/RTC.cpp +++ b/libraries/RTC/src/RTC.cpp @@ -6,7 +6,7 @@ #include "RTC.h" #include -Apollo3RTC RTC; +Apollo3RTC rtc; am_hal_rtc_time_t hal_time; am_hal_rtc_time_t alm_time; @@ -201,6 +201,11 @@ void Apollo3RTC::detachInterrupt() { am_hal_rtc_int_disable(AM_HAL_RTC_INT_ALM); } +void Apollo3RTC::clearInterrupt() { + // Clear the RTC alarm interrupt + am_hal_rtc_int_clear(AM_HAL_RTC_INT_ALM); +} + // mthToIndex() converts a string indicating a month to an index value. // The return value is a value 0-12, with 0-11 indicating the month given // by the string, and 12 indicating that the string is not a month. diff --git a/libraries/RTC/src/RTC.h b/libraries/RTC/src/RTC.h index 75d38dd2..3a165fd3 100644 --- a/libraries/RTC/src/RTC.h +++ b/libraries/RTC/src/RTC.h @@ -8,8 +8,8 @@ #include -#ifdef RTC -#undef RTC +#ifdef rtc +#undef rtc #endif class Apollo3RTC { @@ -34,6 +34,7 @@ class Apollo3RTC { void setAlarmMode(uint8_t mode); //Set the RTC alarm repeat interval void attachInterrupt(); //Attach the RTC alarm interrupt void detachInterrupt(); //Detach the RTC alarm interrupt + void clearInterrupt(); //Clear RTC alarm interrupt uint32_t weekday; //0 to 6 representing the day of the week uint32_t century; @@ -56,6 +57,6 @@ class Apollo3RTC { const char *alarmTextWeekday; }; -extern Apollo3RTC RTC; +extern Apollo3RTC rtc; #endif // _APOLLO3_LIBRARIES_RTC_H_ diff --git a/libraries/SPI/src/SPI.cpp b/libraries/SPI/src/SPI.cpp index b2270717..5ec676ff 100644 --- a/libraries/SPI/src/SPI.cpp +++ b/libraries/SPI/src/SPI.cpp @@ -53,6 +53,12 @@ void arduino::MbedSPI::beginTransaction(SPISettings settings) { begin(); } if (settings != this->settings) { + //If requested to set frequency above max, just set to max. + if(settings.getClockFreq() > AM_HAL_IOM_MAX_FREQ) + { + settings = SPISettings(AM_HAL_IOM_MAX_FREQ, settings.getBitOrder(), settings.getDataMode()); + } + dev->format(8, settings.getDataMode()); dev->frequency(settings.getClockFreq()); this->settings = settings; @@ -78,7 +84,7 @@ void arduino::MbedSPI::begin() { } void arduino::MbedSPI::end() { - if (!dev) { + if (dev) { delete dev; } } diff --git a/libraries/SPI/src/SPI.h b/libraries/SPI/src/SPI.h index 2f1c7c60..93693966 100644 --- a/libraries/SPI/src/SPI.h +++ b/libraries/SPI/src/SPI.h @@ -7,7 +7,7 @@ #define _APOLLO3_LIBRARIES_SPI_H_ #include "Arduino.h" - +#include "core-api/api/HardwareSPI.h" #include "drivers/SPI.h" namespace arduino { diff --git a/libraries/WDT/examples/Example1_WDT_Basic/Example1_WDT_Basic.ino b/libraries/WDT/examples/Example1_WDT_Basic/Example1_WDT_Basic.ino new file mode 100644 index 00000000..d59bc3d4 --- /dev/null +++ b/libraries/WDT/examples/Example1_WDT_Basic/Example1_WDT_Basic.ino @@ -0,0 +1,81 @@ +/* + Author: Adam Garbo + Created: February 1st, 2021 + License: MIT. See SparkFun Arduino Apollo3 Project for more information + + This example demonstrates a simple configuration of the Artemis Watchdog Timer. + + The code will configure the watchdog for both interrupt and reset generation, + and immediately start the watchdog timer. + + The watchdog ISR provided will 'pet' the watchdog four times. On the fifth + interrupt, the watchdog will not be pet, so the 'reset' action can occur. + On the sixth timeout event, the WDT will issue a system reset, and the + program will start over from the beginning. + + The watchdogCounter will show the number of ticks before the watchdog + reset occurs. + + This example is based on the Ambiq SDK 2.4.2 watchdog.c example. + + Tested with SparkFun Artemis Redboard. +*/ + +#include "WDT.h" + +volatile bool watchdogFlag = false; // Watchdog Timer ISR flag +volatile int watchdogInterrupt = 0; // Watchdog interrupt counter +unsigned long currentMillis = 0, + previousMillis = 0; + +void setup() { + + Serial.begin(115200); + + Serial.println("Artemis Watchdog Timer Example"); + + pinMode(LED_BUILTIN, OUTPUT); + + // Start the watchdog + wdt.start(); +} + +void loop() +{ + // Check for watchdog interrupts + if (watchdogFlag) + { + // Calculate duration between watchdog interrupts + currentMillis = millis() - previousMillis; + previousMillis = millis(); + + Serial.print("Interrupt: "); Serial.print(watchdogInterrupt); + Serial.print(" Period: "); Serial.print(currentMillis); Serial.println(" ms "); + + if (watchdogInterrupt == 5) + { + Serial.println("Warning: Watchdog has triggered a system reset"); + } + } + watchdogFlag = false; // Clear watchdog flag + delay(1); +} + +// Interrupt handler for the watchdog +extern "C" void am_watchdog_isr(void) +{ + // Clear the watchdog interrupt + wdt.clear(); + + // Catch the first four watchdog interrupts, but let the fifth through untouched + if ( watchdogInterrupt < 4 ) + { + wdt.restart(); // "Pet" the dog + } + else { + digitalWrite(LED_BUILTIN, HIGH); // Visual indication of system reset trigger + } + + watchdogFlag = true; // Set watchdog flag + watchdogInterrupt++; // Increment watchdog interrupt counter +} diff --git a/libraries/WDT/examples/Example2_WDT_Config/Example2_WDT_Config.ino b/libraries/WDT/examples/Example2_WDT_Config/Example2_WDT_Config.ino new file mode 100644 index 00000000..34dbfdd5 --- /dev/null +++ b/libraries/WDT/examples/Example2_WDT_Config/Example2_WDT_Config.ino @@ -0,0 +1,109 @@ +/* + Author: Adam Garbo + Created: February 1st, 2021 + License: MIT. See SparkFun Arduino Apollo3 Project for more information + + This example demonstrates how to modify the configuration of the Artemis + Watchdog Timer (WDT). + + The watchdog timer is controlled by a clock divider, interrupt ticks and + reset ticks. To achieve desired watchdog timing, a simple calculation can be made: + + period = # ticks / clock divider frequency + + Examples: + 128 interrupt ticks / 128 Hz clock = 1 second + 64 interrupt ticks / 16 Hz clock = 4 seconds + 32 interrupt ticks / 1 Hz clock = 32 seconds + 16 interrupt ticks / 1/16 Hz clock = 256 seconds + + The following code will configure the watchdog for both interrupt and reset + generation, and immediately start the watchdog timer. + The watchdog ISR provided will 'pet' the watchdog four times. On the fifth + interrupt, the watchdog will not be pet, so the 'reset' action can occur. + On the sixth timeout event, the WDT will issue a system reset, and the + program will start over from the beginning. + + This example is based on the Ambiq SDK 2.4.2 watchdog.c example. + + Tested with SparkFun Artemis Redboard. +*/ + +#include "WDT.h" + +volatile bool watchdogFlag = false; // Watchdog Timer ISR flag +volatile int watchdogInterrupt = 0; // Watchdog interrupt counter + +unsigned long currentMillis = 0, + previousMillis = 0; + +void setup() +{ + Serial.begin(115200); + + Serial.println("Artemis Watchdog Timer Example"); + + pinMode(LED_BUILTIN, OUTPUT); + // Configure the watchdog + /* + Available watchdog timer clock dividers. + Users can choose either the clock definition (i.e. WDT_128HZ) or Apoll3 core enumeration (i.e. 1) + WDT_OFF = 0 = Low Power Mode. This setting disables the watch dog timer + WDT_128HZ = 1 = 128 Hz + WDT_16HZ = 2 = 16 Hz + WDT_1HZ = 3 = 1 Hz + WDT1_16HZ = 4 = 1/16th Hz + */ + // Set watchdog timer clock to 128 Hz + // Set watchdog interrupt to 1 seconds (128 ticks / 128 Hz = 1 second) + // Set watchdog reset ~2 seconds (255 ticks / 128 Hz = 1.99 seconds) + // Note: Ticks are limited to 255 (8-bit) + wdt.configure(WDT_128HZ, 128, 255); // Equivalent to: wdt.configure(1, 128, 255); + wdt.start(); // Start the watchdog +} + +void loop() +{ + // Check for watchdog interrupts + if (watchdogFlag) + { + // Calculate duration between watchdog interrupts + currentMillis = millis() - previousMillis; + previousMillis = millis(); + + Serial.print("Interrupt: "); Serial.print(watchdogInterrupt); + Serial.print(" Period: "); Serial.print(currentMillis); Serial.println(" ms"); + + // The watchdog configurations can also be set individually + wdt.setClock(WDT_16HZ); // Set watchdog timer clock to 16 Hz + wdt.setInterrupt(64); // Set watchdog interrupt to 4 second (64 ticks / 16 Hz = 4 seconds) + wdt.setReset(96); // Set watchdog reset to 8 seconds (96 ticks / 16 Hz = 8 seconds) + + if (watchdogInterrupt == 9) + { + Serial.println("Warning: Watchdog has triggered a system reset"); + } + } + watchdogFlag = false; // Clear watchdog flag + delay(1); +} + +// Interrupt handler for the watchdog +extern "C" void am_watchdog_isr(void) +{ + // Clear the watchdog interrupt + wdt.clear(); + + // Catch the first eight watchdog interrupts, but let the ninth through untouched + if ( watchdogInterrupt < 8 ) + { + wdt.restart(); // "Pet" the dog + } + else + { + digitalWrite(LED_BUILTIN, HIGH); // Visual indication of system reset trigger + } + + watchdogFlag = true; // Set watchdog flag + watchdogInterrupt++; // Increment watchdog interrupt counter +} diff --git a/libraries/WDT/examples/Example3_WDT_LowPower/Example3_WDT_LowPower.ino b/libraries/WDT/examples/Example3_WDT_LowPower/Example3_WDT_LowPower.ino new file mode 100644 index 00000000..cec1cbaf --- /dev/null +++ b/libraries/WDT/examples/Example3_WDT_LowPower/Example3_WDT_LowPower.ino @@ -0,0 +1,171 @@ +/* + Author: Adam Garbo + Created: March 26, 2021 + License: MIT. See SparkFun Arduino Apollo3 Project for more information + + This example demonstrates the combined use of the Artemis Watchdog Timer (WDT) + and real-time clock (RTC). + + Both RTC and WDT interrupts will wake the system, print the date and time, + and then re-enter deep sleep. + + The WDT is configured to trigger every 10 seconds. If the WDT is not "pet" + after 100 seconds, a system reset will be triggered. + + The RTC alarm is configured to trigger every minute and enter deep sleep + between interrupts. Alarm interuptswill also restart the WDT and reset + the watchdog interrput counter. +*/ + +#include "RTC.h" +#include "WDT.h" + +volatile bool alarmFlag = false; // RTC ISR flag +volatile bool watchdogFlag = false; // Watchdog Timer ISR flag +volatile int watchdogInterrupt = 0; // Watchdog interrupt counter + +void setup() +{ + Serial.begin(115200); + + Serial.println("Artemis Watchdog Low Power Example"); + + // Set the RTC time using UNIX Epoch time + rtc.setEpoch(1596240000); // Saturday, August 1, 2020 00:00:00 + + // Set the RTC's alarm + rtc.setAlarm(0, 0, 0, 0, 0, 0); // Set alarm (hund, ss, mm, hh, dd, mm) + rtc.setAlarmMode(6); // Set the RTC alarm to trigger every minute + rtc.attachInterrupt(); // Attach RTC alarm interrupt + + // Configure the watchdog timer + // See Example2_WDT_Config for more information on how to configure the watchdog + wdt.configure(WDT_16HZ, 160, 240); // 16 Hz clock, 10-second interrupt period, 15-second reset period + + // Start the watchdog + wdt.start(); +} + +void loop() +{ + // Check for alarm interrupt + if (alarmFlag) + { + Serial.print("Alarm interrupt: "); + printDateTime(); // Print RTC's date and time + alarmFlag = false; + + wdt.restart(); // "Pet" the dog + watchdogInterrupt = 0; // Reset watchdog interrupt counter + } + + // Check for watchdog interrupt + if (watchdogFlag) + { + Serial.print("Watchdog interrupt: "); + printDateTime(); // Print RTC's date and time + watchdogFlag = false; // Clear watchdog flag + } + + goToSleep(); // Enter deep sleep +} + +// Print the RTC's current date and time +void printDateTime() +{ + rtc.getTime(); + Serial.printf("20%02d-%02d-%02d %02d:%02d:%02d.%02d\n", + rtc.year, rtc.month, rtc.dayOfMonth, + rtc.hour, rtc.minute, rtc.seconds, rtc.hundredths); + Serial.println(); +} + +// Power down gracefully +void goToSleep() +{ + // Disable UART + Serial.end(); + + // Disable ADC + powerControlADC(false); + + // Force the peripherals off + am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_IOM0); + am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_IOM1); + am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_IOM2); + am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_IOM3); + am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_IOM4); + am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_IOM5); + am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_ADC); + am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_UART0); + am_hal_pwrctrl_periph_disable(AM_HAL_PWRCTRL_PERIPH_UART1); + + // Disable all pads (except UART TX/RX) + for (int x = 0 ; x < 50 ; x++) + am_hal_gpio_pinconfig(x, g_AM_HAL_GPIO_DISABLE); + + //Power down CACHE, flashand SRAM + am_hal_pwrctrl_memory_deepsleep_powerdown(AM_HAL_PWRCTRL_MEM_ALL); // Turn off CACHE and flash + am_hal_pwrctrl_memory_deepsleep_retain(AM_HAL_PWRCTRL_MEM_SRAM_384K); // Retain all SRAM (0.6 uA) + + // Keep the 32kHz clock running for RTC + am_hal_stimer_config(AM_HAL_STIMER_CFG_CLEAR | AM_HAL_STIMER_CFG_FREEZE); + am_hal_stimer_config(AM_HAL_STIMER_XTAL_32KHZ); + + am_hal_sysctrl_sleep(AM_HAL_SYSCTRL_SLEEP_DEEP); // Sleep forever + + // And we're back! + wakeUp(); +} + +// Power up gracefully +void wakeUp() +{ + // Go back to using the main clock + am_hal_stimer_config(AM_HAL_STIMER_CFG_CLEAR | AM_HAL_STIMER_CFG_FREEZE); + am_hal_stimer_config(AM_HAL_STIMER_HFRC_3MHZ); + + // Renable UART0 pins + am_hal_gpio_pinconfig(48, g_AM_BSP_GPIO_COM_UART_TX); + am_hal_gpio_pinconfig(49, g_AM_BSP_GPIO_COM_UART_RX); + + // Renable power to UART0 + am_hal_pwrctrl_periph_enable(AM_HAL_PWRCTRL_PERIPH_UART0); + + // Enable ADC + initializeADC(); + + // Enable ADC + initializeADC(); + + // Enable Serial + Serial.begin(115200); +} + +// Interrupt handler for the RTC +extern "C" void am_rtc_isr(void) +{ + // Clear the RTC alarm interrupt + rtc.clearInterrupt(); + + alarmFlag = true; // Set alarm flag +} + +// Interrupt handler for the watchdog. +extern "C" void am_watchdog_isr(void) +{ + // Clear the watchdog interrupt + wdt.clear(); + + // Perform system reset after 10 watchdog interrupts (should not occur) + if ( watchdogInterrupt < 10 ) + { + wdt.restart(); // "Pet" the dog + } + else { + while (1); // Wait for reset to occur + } + + watchdogFlag = true; // Set the watchdog flag + watchdogInterrupt++; // Increment watchdog interrupt counter +} diff --git a/libraries/WDT/keywords.txt b/libraries/WDT/keywords.txt new file mode 100644 index 00000000..12d296c6 --- /dev/null +++ b/libraries/WDT/keywords.txt @@ -0,0 +1,29 @@ +# Syntax Coloring Map For 'libraries/WDT' + +# Datatypes (KEYWORD1) +Apollo3WDT KEYWORD1 + +# Functions (KEYWORD2) +configure KEYWORD2 +start KEYWORD2 +stop KEYWORD2 +restart KEYWORD2 +clear KEYWORD2 +getCounter KEYWORD2 +configure KEYWORD2 +setClock KEYWORD2 +setInterrupt KEYWORD2 +setReset KEYWORD2 + +# Structures (KEYWORD3) + +# Constants (LITERAL1) +_APOLLO3_LIBRARIES_WDT_H_ LITERAL1 + +# Properties (LITERAL2) +WDT_OFF KEYWORD2 +WDT_128HZ KEYWORD2 +WDT_16 KEYWORD2 +WDT_1HZ KEYWORD2 +WDT1_16HZ KEYWORD2 +wdt LITERAL2 diff --git a/libraries/WDT/library.properties b/libraries/WDT/library.properties new file mode 100644 index 00000000..dff958c4 --- /dev/null +++ b/libraries/WDT/library.properties @@ -0,0 +1,9 @@ +name=WDT +version=2.0.0 +author=SparkFun Electronics +maintainer=SparkFun Electronics +sentence=Watchdog Timer (WDT) library for the SparkFun Artemis +paragraph=Enables the setting and reading of the internal Watchdog Timer built into Apollo based modules like the Artemis. +category= +url= +architectures=apollo3 diff --git a/libraries/WDT/src/WDT.cpp b/libraries/WDT/src/WDT.cpp new file mode 100644 index 00000000..e2c673f5 --- /dev/null +++ b/libraries/WDT/src/WDT.cpp @@ -0,0 +1,100 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#include "WDT.h" + +Apollo3WDT wdt; + +// Constructor +Apollo3WDT::Apollo3WDT() +{ + // The watchdog only runs off of the LFRC + am_hal_clkgen_control(AM_HAL_CLKGEN_CONTROL_LFRC_START, 0); + am_hal_wdt_init(&watchdogConfig); +} + +// Configure the watchdog timer +// clock: set the LFRC clock frequency of the watchdog timer (see setClock below) +// interrupt: number of watchdog timer ticks allowed before a watchdog interrupt event is generated +// reset: number of watchdog timer ticks allowed before the watchdog will issue a system reset +void Apollo3WDT::configure(uint8_t clock, uint8_t interrupt, uint8_t reset) +{ + if(clock <= 4) + { + WDT->CFG_b.CLKSEL = clock; + } + else + { + WDT->CFG_b.CLKSEL = WDT_CFG_CLKSEL_16HZ; // Default to 16Hz LFRC clock divider + } + WDT->CFG_b.INTVAL = interrupt; + WDT->CFG_b.RESVAL = reset; +} + +// Set the LFRC clock frequency of the watchdog timer +// WDT_OFF WDT_CFG_CLKSEL_OFF // = 0 Low Power Mode. This setting disables the watch dog timer +// WDT_128HZ WDT_CFG_CLKSEL_128HZ // = 1, 128 Hz LFRC clock +// WDT_16HZ WDT_CFG_CLKSEL_16HZ // = 2 16 Hz LFRC clock +// WDT_1HZ WDT_CFG_CLKSEL_1HZ // = 3, 1 Hz LFRC clock +// WDT_1_16HZ WDT_CFG_CLKSEL_1_16HZ // = 4, 1/16th Hz LFRC clock +void Apollo3WDT::setClock(uint8_t clock) +{ + if(clock <= 4) + { + WDT->CFG_b.CLKSEL = clock; + } + else + { + WDT->CFG_b.CLKSEL = WDT_CFG_CLKSEL_16HZ; // Default to 16Hz LFRC clock divider + } +} + +// Set number of watchdog timer ticks allowed before a watchdog interrupt event is generated +void Apollo3WDT::setInterrupt(uint8_t interrupt) +{ + WDT->CFG_b.INTVAL = interrupt; +} + +// Set number of watchdog timer ticks allowed before the watchdog will issue a system reset +void Apollo3WDT::setReset(uint8_t reset) +{ + WDT->CFG_b.RESVAL = reset; +} + +// Enable the watchdog +void Apollo3WDT::start() +{ + am_hal_interrupt_master_enable(); // Enable interrupts to the core + NVIC_EnableIRQ(WDT_IRQn); // Enable the interrupt for the watchdog in the NVIC + am_hal_wdt_start(); +} + +// Disable the watchdog +void Apollo3WDT::stop() +{ + // Disable the interrupt for the watchdog in the NVIC + NVIC_DisableIRQ(WDT_IRQn); + // Disable the watchdog timer tick by clearing the 'enable' bit in the + // watchdog configuration register + am_hal_wdt_halt(); +} + +// Restart the watchdog +void Apollo3WDT::restart() +{ + am_hal_wdt_restart(); +} + +// Clear the watchdog interrupt +void Apollo3WDT::clear() +{ + am_hal_wdt_int_clear(); +} + +// Read the current value of watch dog timer counter register +uint32_t Apollo3WDT::getCounter() +{ + return am_hal_wdt_counter_get(); +} \ No newline at end of file diff --git a/libraries/WDT/src/WDT.h b/libraries/WDT/src/WDT.h new file mode 100644 index 00000000..1ecf8e77 --- /dev/null +++ b/libraries/WDT/src/WDT.h @@ -0,0 +1,56 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#ifndef _APOLLO3_LIBRARIES_WDT_H_ +#define _APOLLO3_LIBRARIES_WDT_H_ + +#include + +#ifdef wdt +#undef wdt +#endif + +// Simplified WDT Clock Divider Selections +#define WDT_OFF WDT_CFG_CLKSEL_OFF // = 0 Low Power Mode. This setting disables the watch dog timer +#define WDT_128HZ WDT_CFG_CLKSEL_128HZ // = 1, 128 Hz LFRC clock +#define WDT_16HZ WDT_CFG_CLKSEL_16HZ // = 2 16 Hz LFRC clock +#define WDT_1HZ WDT_CFG_CLKSEL_1HZ // = 3, 1 Hz LFRC clock +#define WDT_1_16HZ WDT_CFG_CLKSEL_1_16HZ // = 4, 1/16th Hz LFRC clock + +class Apollo3WDT { +private: + +protected: + +public: + Apollo3WDT(); + + // Default watchdog timer configuration structure + am_hal_wdt_config_t watchdogConfig = { + + // Configuration values for generated watchdog timer event. + .ui32Config = AM_HAL_WDT_LFRC_CLK_16HZ | AM_HAL_WDT_ENABLE_RESET | AM_HAL_WDT_ENABLE_INTERRUPT, + + // Number of watchdog timer ticks allowed before a watchdog interrupt event is generated + .ui16InterruptCount = 16 * 4, // Set WDT interrupt timeout for 4 seconds (16 * 4) / 16 = 4 + + // Number of watchdog timer ticks allowed before the watchdog will issue a system reset + .ui16ResetCount = 16 * 8 // Set WDT reset timeout for 8 seconds (16 * 8 ) / 16 = 8 + }; + + void start(); // Starts the watchdog timer + void stop(); // Disables the watchdog timer + void restart(); // Restarts the watchdog timer ("Pets" the dog) + void clear(); // Clears the watchdog interrupt + uint32_t getCounter(); // Reads the current value of watch dog timer counter register + void configure(uint8_t clock, uint8_t interrupt, uint8_t reset); + void setClock(uint8_t clock); // Set the clock frequency of the watchdog timer + void setInterrupt(uint8_t interrupt); // Set number of ticks before a watchdog interrupt event is generated + void setReset(uint8_t reset); // Set number of ticks before the watchdog will issue a system reset +}; + +extern Apollo3WDT wdt; + +#endif // _APOLLO3_LIBRARIES_RTC_H_ \ No newline at end of file diff --git a/libraries/Wire/src/Wire.cpp b/libraries/Wire/src/Wire.cpp index 7136daf4..9a20e1b2 100644 --- a/libraries/Wire/src/Wire.cpp +++ b/libraries/Wire/src/Wire.cpp @@ -5,11 +5,16 @@ #include "Wire.h" -arduino::MbedI2C::MbedI2C(int sda, int scl) : _sda(sda), _scl(scl), usedTxBuffer(0) {} +arduino::MbedI2C::MbedI2C(int sda, int scl) : _sda(sda), _scl(scl), usedTxBuffer(0), master(NULL) { + #ifdef DEVICE_I2CSLAVE + slave = NULL; + #endif +} void arduino::MbedI2C::begin() { if(!master){ master = new mbed::I2C((PinName)_sda, (PinName)_scl); + setClock(100000); //Default to 100kHz } } @@ -61,7 +66,7 @@ uint8_t arduino::MbedI2C::endTransmission(bool stopBit) { return 2; } -uint8_t arduino::MbedI2C::requestFrom(uint8_t address, size_t len, bool stopBit) { +size_t arduino::MbedI2C::requestFrom(uint8_t address, size_t len, bool stopBit) { char buf[256]; int ret = master->read(address << 1, buf, len, !stopBit); if (ret != 0) { @@ -73,7 +78,7 @@ uint8_t arduino::MbedI2C::requestFrom(uint8_t address, size_t len, bool stopBit) return len; } -uint8_t arduino::MbedI2C::requestFrom(uint8_t address, size_t len) { +size_t arduino::MbedI2C::requestFrom(uint8_t address, size_t len) { return requestFrom(address, len, true); } diff --git a/libraries/Wire/src/Wire.h b/libraries/Wire/src/Wire.h index c8fc21bd..8c9041d5 100644 --- a/libraries/Wire/src/Wire.h +++ b/libraries/Wire/src/Wire.h @@ -7,10 +7,14 @@ #define _APOLLO3_LIBRARIES_WIRE_H_ #include "Arduino.h" +#include "core-api/api/HardwareI2C.h" #include "drivers/I2C.h" #include "drivers/I2CSlave.h" #include "rtos.h" +#define AP3_WIRE_RX_BUFFER_LEN 256 +#define AP3_WIRE_TX_BUFFER_LEN 256 + typedef void (*voidFuncPtrParamInt)(int); namespace arduino { @@ -29,8 +33,8 @@ class MbedI2C : public HardwareI2C virtual uint8_t endTransmission(bool stopBit); virtual uint8_t endTransmission(void); - virtual uint8_t requestFrom(uint8_t address, size_t len, bool stopBit); - virtual uint8_t requestFrom(uint8_t address, size_t len); + virtual size_t requestFrom(uint8_t address, size_t len, bool stopBit); + virtual size_t requestFrom(uint8_t address, size_t len); virtual void onReceive(void(*)(int)); virtual void onRequest(void(*)(void)); @@ -52,8 +56,8 @@ class MbedI2C : public HardwareI2C int _sda; int _scl; int _address; - RingBufferN<256> rxBuffer; - uint8_t txBuffer[256]; + RingBufferN rxBuffer; + uint8_t txBuffer[AP3_WIRE_TX_BUFFER_LEN]; uint32_t usedTxBuffer; voidFuncPtrParamInt onReceiveCb = NULL; voidFuncPtr onRequestCb = NULL; diff --git a/package.json b/package.json new file mode 100644 index 00000000..1edd4b09 --- /dev/null +++ b/package.json @@ -0,0 +1,6 @@ +{ + "name": "framework-arduinoapollo3", + "description": "An mbed-os enabled Arduino core for Ambiq Apollo3 based boards", + "version": "2.2.1", + "url": "https://github.com/sparkfun/Arduino_Apollo3" +} diff --git a/package_sparkfun_apollo3_index.json b/package_sparkfun_apollo3_index.json index 192f45c8..080d92ef 100644 --- a/package_sparkfun_apollo3_index.json +++ b/package_sparkfun_apollo3_index.json @@ -7,15 +7,15 @@ "email": "", "platforms": [ - { + { "name": "SparkFun Apollo3 Boards", "architecture": "apollo3", - "version": "2.0.2", + "version": "2.2.1", "category": "Contributed", - "url": "https://github.com/sparkfun/Arduino_Apollo3/releases/download/v2.0.2/Arduino_Apollo3.tar.gz", + "url": "https://github.com/sparkfun/Arduino_Apollo3/releases/download/v2.2.1/Arduino_Apollo3.tar.gz", "archiveFileName": "Arduino_Apollo3.tar.gz", - "checksum": "SHA-256:9f9dbf796bb694d5dd7b674a82ee2ea8079a21926567b64c68b0e20936dd7d8e", - "size": "326568020", + "checksum": "SHA-256:9906C1CF923FCC93441DA24154BB68E6CD716F9B9477A33A7BBCFCEC231FB694", + "size": "103194820", "help": { "online": "https://learn.sparkfun.com/tutorials/installing-arduino-ide/board-add-ons-with-arduino-board-manager" }, @@ -27,7 +27,121 @@ { "name": "RedBoard Artemis ATP" }, { "name": "RedBoard Artemis Nano" }, { "name": "Edge" }, - { "name": "Edge2" } + { "name": "Edge2" }, + { "name": "MicroMod Artemis Processor" }, + { "name": "LoRa Thing Plus expLoRaBLE" } + ], + "toolsDependencies": [ + { "packager": "SparkFun", "name": "arm-none-eabi-gcc", "version": "8-2018-q4-major" } + ] + }, + { + "name": "SparkFun Apollo3 Boards", + "architecture": "apollo3", + "version": "2.2.0", + "category": "Contributed", + "url": "https://github.com/sparkfun/Arduino_Apollo3/releases/download/v2.2.0/Arduino_Apollo3.tar.gz", + "archiveFileName": "Arduino_Apollo3.tar.gz", + "checksum": "SHA-256:0994babbbc4441c89049910815cd33253abee87a9fd0a241c8b1a9949244c38d", + "size": "103269522", + "help": { + "online": "https://learn.sparkfun.com/tutorials/installing-arduino-ide/board-add-ons-with-arduino-board-manager" + }, + "boards": [ + { "name": "Artemis Module" }, + { "name": "Artemis Dev Kit"}, + { "name": "Artemis Thing Plus" }, + { "name": "RedBoard Artemis" }, + { "name": "RedBoard Artemis ATP" }, + { "name": "RedBoard Artemis Nano" }, + { "name": "Edge" }, + { "name": "Edge2" }, + { "name": "MicroMod Artemis Processor" }, + { "name": "LoRa Thing Plus expLoRaBLE" } + ], + "toolsDependencies": [ + { "packager": "SparkFun", "name": "arm-none-eabi-gcc", "version": "8-2018-q4-major" } + ] + }, + { + "name": "SparkFun Apollo3 Boards", + "architecture": "apollo3", + "version": "2.1.1", + "category": "Contributed", + "url": "https://github.com/sparkfun/Arduino_Apollo3/releases/download/v2.1.1/Arduino_Apollo3.tar.gz", + "archiveFileName": "Arduino_Apollo3.tar.gz", + "checksum": "SHA-256:1C8F27835B69FAC310D127B063B050AE6AE20FE9BD7756253FCECFAEEB647E9A", + "size": "175098693", + "help": { + "online": "https://learn.sparkfun.com/tutorials/installing-arduino-ide/board-add-ons-with-arduino-board-manager" + }, + "boards": [ + { "name": "Artemis Module" }, + { "name": "Artemis Dev Kit"}, + { "name": "Artemis Thing Plus" }, + { "name": "RedBoard Artemis" }, + { "name": "RedBoard Artemis ATP" }, + { "name": "RedBoard Artemis Nano" }, + { "name": "Edge" }, + { "name": "Edge2" }, + { "name": "MicroMod Artemis Processor" }, + { "name": "LoRa Thing Plus expLoRaBLE" } + ], + "toolsDependencies": [ + { "packager": "SparkFun", "name": "arm-none-eabi-gcc", "version": "8-2018-q4-major" } + ] + }, + { + "name": "SparkFun Apollo3 Boards", + "architecture": "apollo3", + "version": "2.1.0", + "category": "Contributed", + "url": "https://github.com/sparkfun/Arduino_Apollo3/releases/download/v2.1.0/Arduino_Apollo3.tar.gz", + "archiveFileName": "Arduino_Apollo3.tar.gz", + "checksum": "SHA-256:63EDA456E45CA8C79351D507FACC0BE1DAB12BC7139047D8A34B488DEC138D00", + "size": "173063305", + "help": { + "online": "https://learn.sparkfun.com/tutorials/installing-arduino-ide/board-add-ons-with-arduino-board-manager" + }, + "boards": [ + { "name": "Artemis Module" }, + { "name": "Artemis Dev Kit"}, + { "name": "Artemis Thing Plus" }, + { "name": "RedBoard Artemis" }, + { "name": "RedBoard Artemis ATP" }, + { "name": "RedBoard Artemis Nano" }, + { "name": "Edge" }, + { "name": "Edge2" }, + { "name": "MicroMod Artemis Processor" }, + { "name": "LoRa Thing Plus expLoRaBLE" } + ], + "toolsDependencies": [ + { "packager": "SparkFun", "name": "arm-none-eabi-gcc", "version": "8-2018-q4-major" } + ] + }, + { + "name": "SparkFun Apollo3 Boards", + "architecture": "apollo3", + "version": "2.0.6", + "category": "Contributed", + "url": "https://github.com/sparkfun/Arduino_Apollo3/releases/download/v2.0.6/Arduino_Apollo3.tar.gz", + "archiveFileName": "Arduino_Apollo3.tar.gz", + "checksum": "SHA-256:448ee86326e92a75f81def9f610da54cf9416b9c047fcc9454c418f9616d935b", + "size": "357662077", + "help": { + "online": "https://learn.sparkfun.com/tutorials/installing-arduino-ide/board-add-ons-with-arduino-board-manager" + }, + "boards": [ + { "name": "Artemis Module" }, + { "name": "Artemis Dev Kit"}, + { "name": "Artemis Thing Plus" }, + { "name": "RedBoard Artemis" }, + { "name": "RedBoard Artemis ATP" }, + { "name": "RedBoard Artemis Nano" }, + { "name": "Edge" }, + { "name": "Edge2" }, + { "name": "MicroMod Artemis Processor" }, + { "name": "LoRa Thing Plus expLoRaBLE" } ], "toolsDependencies": [ { "packager": "SparkFun", "name": "arm-none-eabi-gcc", "version": "8-2018-q4-major" } @@ -36,12 +150,12 @@ { "name": "SparkFun Apollo3 Boards", "architecture": "apollo3", - "version": "1.1.2", + "version": "2.0.5", "category": "Contributed", - "url": "https://github.com/sparkfun/Arduino_Apollo3/archive/v1.1.2_ble-beta.tar.gz", - "archiveFileName": "Arduino_Apollo3-1.1.2_ble-beta.tar.gz", - "checksum": "SHA-256:8f1377d92d206f78d737a337626d24ed8e80c55a82f9a3c99bad3944a5727f5b", - "size": "73604683", + "url": "https://github.com/sparkfun/Arduino_Apollo3/releases/download/v2.0.5/Arduino_Apollo3.tar.gz", + "archiveFileName": "Arduino_Apollo3.tar.gz", + "checksum": "SHA-256:858B729EF8711740395F355A2B050159195CA5C2FE51EAD041BADF78A4C30D71", + "size": "348333929", "help": { "online": "https://learn.sparkfun.com/tutorials/installing-arduino-ide/board-add-ons-with-arduino-board-manager" }, @@ -53,7 +167,63 @@ { "name": "RedBoard Artemis ATP" }, { "name": "RedBoard Artemis Nano" }, { "name": "Edge" }, - { "name": "Edge2" } + { "name": "Edge2" }, + { "name": "MicroMod Artemis Processor" }, + { "name": "LoRa Thing Plus expLoRaBLE" } + ], + "toolsDependencies": [ + { "packager": "SparkFun", "name": "arm-none-eabi-gcc", "version": "8-2018-q4-major" } + ] + }, + { + "name": "SparkFun Apollo3 Boards", + "architecture": "apollo3", + "version": "1.2.3", + "category": "Contributed", + "url": "https://github.com/sparkfun/Arduino_Apollo3/archive/v1.2.3.tar.gz", + "archiveFileName": "Arduino_Apollo3-1.2.3.tar.gz", + "checksum": "SHA-256:084EAA69FE52861A21B4C5ACD215182E4ACBC13845F65E34AE92F61D15647E5D", + "size": "81766440", + "help": { + "online": "https://learn.sparkfun.com/tutorials/installing-arduino-ide/board-add-ons-with-arduino-board-manager" + }, + "boards": [ + { "name": "SparkFun Artemis Module" }, + { "name": "SparkFun Artemis Dev Kit" }, + { "name": "SparkFun Artemis MicroMod" }, + { "name": "SparkFun RedBoard Artemis" }, + { "name": "SparkFun RedBoard Artemis ATP" }, + { "name": "SparkFun RedBoard Artemis Nano" }, + { "name": "SparkFun Artemis Thing Plus" }, + { "name": "SparkFun Edge" }, + { "name": "SparkFun Edge2" } + ], + "toolsDependencies": [ + { "packager": "SparkFun", "name": "arm-none-eabi-gcc", "version": "8-2018-q4-major" } + ] + }, + { + "name": "SparkFun Apollo3 Boards", + "architecture": "apollo3", + "version": "1.2.1", + "category": "Contributed", + "url": "https://github.com/sparkfun/Arduino_Apollo3/archive/v1.2.1.tar.gz", + "archiveFileName": "Arduino_Apollo3-1.2.1.tar.gz", + "checksum": "SHA-256:9314d74c46e7f762438ccc065a827b72da88367224b9d22091ed0ab78b1ed9d2", + "size": "73180870", + "help": { + "online": "https://learn.sparkfun.com/tutorials/installing-arduino-ide/board-add-ons-with-arduino-board-manager" + }, + "boards": [ + { "name": "SparkFun Artemis Module" }, + { "name": "SparkFun Artemis Dev Kit" }, + { "name": "SparkFun Artemis MicroMod" }, + { "name": "SparkFun RedBoard Artemis" }, + { "name": "SparkFun RedBoard Artemis ATP" }, + { "name": "SparkFun RedBoard Artemis Nano" }, + { "name": "SparkFun Artemis Thing Plus" }, + { "name": "SparkFun Edge" }, + { "name": "SparkFun Edge2" } ], "toolsDependencies": [ { "packager": "SparkFun", "name": "arm-none-eabi-gcc", "version": "8-2018-q4-major" } @@ -68,35 +238,35 @@ "systems": [ { "host": "x86_64-apple-darwin", - "url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", + "url": "https://cdn.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", "checksum": "SHA-256:0b528ed24db9f0fa39e5efdae9bcfc56bf9e07555cb267c70ff3fee84ec98460", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", "size": "111430151" }, { "host": "i386-apple-darwin11", - "url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", + "url": "https://cdn.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", "checksum": "SHA-256:0b528ed24db9f0fa39e5efdae9bcfc56bf9e07555cb267c70ff3fee84ec98460", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-mac.tar.bz2", "size": "111430151" }, { "host": "i686-linux-gnu", - "url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", + "url": "https://cdn.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", "checksum": "SHA-256:fb31fbdfe08406ece43eef5df623c0b2deb8b53e405e2c878300f7a1f303ee52", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", "size": "107253352" }, { "host": "x86_64-pc-linux-gnu", - "url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", + "url": "https://cdn.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", "checksum": "SHA-256:fb31fbdfe08406ece43eef5df623c0b2deb8b53e405e2c878300f7a1f303ee52", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2", "size": "107253352" }, { "host": "i686-mingw32", - "url": "https://static.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-win32-modified.zip", + "url": "https://cdn.sparkfun.com/large/gcc-arm-none-eabi-8-2018-q4-major-win32-modified.zip", "checksum": "SHA-256:98f47ed254ce31942408028c3a4a75ad4ee9fe7f318daecafb8c101bc19a6e23", "archiveFileName": "gcc-arm-none-eabi-8-2018-q4-major-win32-modified.zip", "size": "135448870" diff --git a/platform.txt b/platform.txt index 18122780..7edf90e0 100644 --- a/platform.txt +++ b/platform.txt @@ -14,24 +14,24 @@ defines.mbed=-DMBED_NO_GLOBAL_USING_DIRECTIVE defines.variant={build.defines} defines.extra= defines.all={defines.variant} {defines.arduino} {defines.mbed} {defines.extra} -DCORDIO_ZERO_COPY_HCI -defines.preproc={defines.all} -defines.asm={defines.all} @{build.variant.path}/mbed/.asm-symbols -defines.c={defines.all} @{build.variant.path}/mbed/.c-symbols -defines.cxx={defines.all} @{build.variant.path}/mbed/.cxx-symbols -defines.ld={defines.all} @{build.variant.path}/mbed/.ld-symbols +defines.preproc={defines.all} "@{build.variant.path}/mbed/.cxx-symbols" +defines.asm={defines.all} "@{build.variant.path}/mbed/.asm-symbols" +defines.c={defines.all} "@{build.variant.path}/mbed/.c-symbols" +defines.cxx={defines.all} "@{build.variant.path}/mbed/.cxx-symbols" +defines.ld={defines.all} "@{build.variant.path}/mbed/.ld-symbols" # includes -includes.core={includes} "-I{cores.path}/arduino" "-I{cores.path}/arduino/mbed-bridge" "-I{cores.path}/arduino/mbed-bridge/core-api" -includes.mbed=@{build.variant.path}/mbed/.includes +includes.core={includes} "-I{cores.path}/arduino" "-I{cores.path}/arduino/mbed-bridge" "-I{cores.path}/arduino/mbed-bridge/core-api" "-I{cores.path}/arduino/mbed-bridge/core-api/api/deprecated" +includes.mbed="@{build.variant.path}/mbed/.includes" includes.variant={build.includes} includes.extra= includes.all={includes.core} {includes.mbed} {includes.variant} {includes.extra} # libraries -libs.core=-Wl,--whole-archive {archive_file_path} -Wl,--no-whole-archive -libs.mbed={build.variant.path}/mbed/libmbed-os.a +libs.core=-Wl,--whole-archive "{archive_file_path}" -Wl,--no-whole-archive +libs.mbed=-Wl,--whole-archive "{build.variant.path}/mbed/libmbed-os.a" -Wl,--no-whole-archive libs.variant={build.libs} -libs.extra= +libs.extra=-Wl,--whole-archive "{cores.path}/mbed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/CMSIS/ARM/Lib/ARM/libarm_cortexM4lf_math.a" -Wl,--no-whole-archive libs.all={libs.core} {libs.mbed} {libs.variant} {libs.extra} # warnings @@ -43,10 +43,10 @@ compiler.warning_flags.all={compiler.warning_flags.default} -Wextra # flags compiler.preproc.flags={compiler.cxx.flags} -w -x c++ -E -CC {compiler.preproc.extra_flags} -compiler.asm.flags=-include {build.variant.path}/mbed/mbed_config.h -iprefix{runtime.platform.path}/cores/ @{build.variant.path}/mbed/.asm-flags {compiler.asm.extra_flags} -compiler.c.flags=-iprefix{runtime.platform.path}/cores/ @{build.variant.path}/mbed/.c-flags {compiler.c.extra_flags} -compiler.cxx.flags=-include {build.variant.path}/mbed/mbed_config.h -include {cores.path}/arduino/sdk/ArduinoSDK.h -iprefix{runtime.platform.path}/cores/ @{build.variant.path}/mbed/.cxx-flags {compiler.cxx.extra_flags} -compiler.ld.flags=@{build.variant.path}/mbed/.ld-flags {compiler.ld.extra_flags} --specs=nano.specs -lsupc++ -lstdc++ -lm +compiler.asm.flags=-include "{build.variant.path}/mbed/mbed_config.h" -iprefix "{runtime.platform.path}/cores/" "@{build.variant.path}/mbed/.asm-flags" {compiler.asm.extra_flags} +compiler.c.flags=-iprefix "{runtime.platform.path}/cores/" "@{build.variant.path}/mbed/.c-flags" {compiler.c.extra_flags} +compiler.cxx.flags=-include "{build.variant.path}/mbed/mbed_config.h" -include "{cores.path}/arduino/sdk/ArduinoSDK.h" -iprefix "{runtime.platform.path}/cores/" "@{build.variant.path}/mbed/.cxx-flags" {compiler.cxx.extra_flags} +compiler.ld.flags="@{build.variant.path}/mbed/.ld-flags" {compiler.ld.extra_flags} --specs=nano.specs --specs=nosys.specs -lsupc++ -lstdc++ -lm compiler.ar.flags=rcsP {compiler.ar.extra_flags} {compiler.ar.extra_flags} compiler.axf2bin.flags={compiler.axf2bin.extra_flags} {compiler.axf2bin.extra_flags} -O binary compiler.axf2hex.flags={compiler.axf2hex.extra_flags} {compiler.axf2hex.extra_flags} -O ihex @@ -54,8 +54,8 @@ compiler.axf2hex.flags={compiler.axf2hex.extra_flags} {compiler.axf2hex.extra_fl # extra flags (can be overridden in platform.local.txt) compiler.preproc.extra_flags= compiler.asm.extra_flags= -compiler.c.extra_flags= -compiler.cxx.extra_flags= +compiler.c.extra_flags=-MMD +compiler.cxx.extra_flags=-MMD compiler.ld.extra_flags= compiler.ar.extra_flags= compiler.axf2bin.extra_flags= diff --git a/tools/config/blocklist.json b/tools/config/blocklist.json index da5ebe22..a11941ec 100644 --- a/tools/config/blocklist.json +++ b/tools/config/blocklist.json @@ -12,7 +12,22 @@ }, "cxx": { "flags": [ - "-MMD" + "-MMD", + "-Wvla", + "-Wall", + "-Wextra", + "-Wno-missing-field-initializers", + "-Wno-unused-parameter" + ] + }, + "c": { + "flags": [ + "-MMD", + "-Wvla", + "-Wall", + "-Wextra", + "-Wno-missing-field-initializers", + "-Wno-unused-parameter" ] } } diff --git a/tools/uploaders/asb b/tools/uploaders/asb index fc2bc195..454fc619 160000 --- a/tools/uploaders/asb +++ b/tools/uploaders/asb @@ -1 +1 @@ -Subproject commit fc2bc195b0a0515d3d13d3cda2de295d0e6db611 +Subproject commit 454fc619ce9371016f7bbdbb875aed2e197ea1ce diff --git a/tools/uploaders/svl b/tools/uploaders/svl index d037a1eb..fc89de7f 160000 --- a/tools/uploaders/svl +++ b/tools/uploaders/svl @@ -1 +1 @@ -Subproject commit d037a1eba3614a44bbdd93808b113c3257250149 +Subproject commit fc89de7f8163fe755021ca88e779e2963209e5a6 diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/config/pins.cpp b/variants/LoRa_THING_PLUS_expLoRaBLE/config/pins.cpp new file mode 100644 index 00000000..bd929880 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/config/pins.cpp @@ -0,0 +1,45 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#include "bridge/pins.h" + +const pin_size_t variantPinCount = 33; + +PinState variantPinStates[variantPinCount] = { + {D0, 0, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D1, 1, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D2, 2, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D3, 3, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D4, 4, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D5, 5, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D6, 6, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D7, 7, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D8, 8, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D9, 9, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D10, 10, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D11, 11, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D12, 12, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D13, 13, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D14, 14, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D15, 15, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D16, 16, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D17, 17, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D18, 18, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D19, 19, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D20, 20, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D21, 21, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D22, 22, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D23, 23, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D24, 24, NULL, /*NULL, NULL, NULL,*/ NULL}, + + {D36, 36, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D38, 38, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D39, 39, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D40, 40, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D42, 42, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D43, 43, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D44, 44, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D47, 47, NULL, /*NULL, NULL, NULL,*/ NULL}, +}; diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/config/pins.h b/variants/LoRa_THING_PLUS_expLoRaBLE/config/pins.h new file mode 100644 index 00000000..68726cc4 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/config/pins.h @@ -0,0 +1,11 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#ifndef _VARIANT_PINS_H_ +#define _VARIANT_PINS_H_ + +#define LED_BUILTIN pinNumberByName(LED1) + +#endif // _VARIANT_PINS_H_ \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.asm-flags b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.asm-flags new file mode 100644 index 00000000..55a2bb0a --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.asm-flags @@ -0,0 +1 @@ +-c -x assembler-with-cpp \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.asm-macros b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.asm-macros new file mode 100644 index 00000000..2d6e1ff8 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.asm-symbols b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.asm-symbols new file mode 100644 index 00000000..a7e35492 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.asm-symbols @@ -0,0 +1 @@ +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.c-flags b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.c-flags new file mode 100644 index 00000000..33d97d23 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.c-flags @@ -0,0 +1 @@ +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.c-macros b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.c-macros new file mode 100644 index 00000000..2d6e1ff8 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.c-symbols b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.c-symbols new file mode 100644 index 00000000..cd781d23 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.c-symbols @@ -0,0 +1 @@ +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_LoRa_THING_PLUS_expLoRaBLE -DTARGET_M4 -DTARGET_NAME=LoRa_THING_PLUS_expLoRaBLE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.cxx-flags b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.cxx-flags new file mode 100644 index 00000000..9de4dbde --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.cxx-flags @@ -0,0 +1 @@ +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.cxx-macros b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.cxx-macros new file mode 100644 index 00000000..2d6e1ff8 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.cxx-symbols b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.cxx-symbols new file mode 100644 index 00000000..cd781d23 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.cxx-symbols @@ -0,0 +1 @@ +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_LoRa_THING_PLUS_expLoRaBLE -DTARGET_M4 -DTARGET_NAME=LoRa_THING_PLUS_expLoRaBLE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.includes b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.includes new file mode 100644 index 00000000..07dee9ba --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.includes @@ -0,0 +1,306 @@ +"-iwithprefixbeforembed-os" +"-iwithprefixbeforembed-os/cmsis" +"-iwithprefixbeforembed-os/cmsis/TARGET_CORTEX_M" +"-iwithprefixbeforembed-os/components" +"-iwithprefixbeforembed-os/components/802.15.4_RF" +"-iwithprefixbeforembed-os/components/802.15.4_RF/atmel-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/atmel-rf-driver/atmel-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/atmel-rf-driver/source" +"-iwithprefixbeforembed-os/components/802.15.4_RF/mcr20a-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/mcr20a-rf-driver/mcr20a-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/mcr20a-rf-driver/source" +"-iwithprefixbeforembed-os/components/802.15.4_RF/stm-s2lp-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/stm-s2lp-rf-driver/source" +"-iwithprefixbeforembed-os/components/802.15.4_RF/stm-s2lp-rf-driver/stm-s2lp-rf-driver" +"-iwithprefixbeforembed-os/components/storage/blockdevice/COMPONENT_FLASHIAP" +"-iwithprefixbeforembed-os/components/storage/blockdevice/COMPONENT_FLASHIAP/COMMON" +"-iwithprefixbeforembed-os/components/wifi" +"-iwithprefixbeforembed-os/components/wifi/esp8266-driver" +"-iwithprefixbeforembed-os/components/wifi/esp8266-driver/ESP8266" +"-iwithprefixbeforembed-os/drivers/internal" +"-iwithprefixbeforembed-os/events" +"-iwithprefixbeforembed-os/events/internal" +"-iwithprefixbeforembed-os/features" +"-iwithprefixbeforembed-os/features/FEATURE_BLE" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/common" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/gap" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/generic" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/pal" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/services" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/source" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/source/gap" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/source/generic" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_Ambiq_Micro" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_Ambiq_Micro/TARGET_Apollo3" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_Ambiq_Micro/hal" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_Ambiq_Micro/hal/apollo3" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/driver" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/source" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/include" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/hci" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/hci/dual_chip" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/sec" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/sec/common" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/att" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/cfg" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/dm" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/hci" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/l2c" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/smp" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/platform" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/platform/include" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/include" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/include/util" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/sources" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/sources/port" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/sources/port/baremetal" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack_adaptation" +"-iwithprefixbeforembed-os/features/cellular" +"-iwithprefixbeforembed-os/features/cellular/framework" +"-iwithprefixbeforembed-os/features/cellular/framework/API" +"-iwithprefixbeforembed-os/features/cellular/framework/AT" +"-iwithprefixbeforembed-os/features/cellular/framework/common" +"-iwithprefixbeforembed-os/features/cellular/framework/device" +"-iwithprefixbeforembed-os/features/cellular/framework/targets" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/Altair" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/Altair/ALT1250" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/Altair/ALT1250/PPP" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/GEMALTO" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/GEMALTO/CINTERION" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/GENERIC" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/GENERIC/GENERIC_AT3GPP" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/MultiTech" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/MultiTech/DragonflyNano" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/MultiTech/DragonflyNano/PPP" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/BC95" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/BG96" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/EC2X" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/M26" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/UG96" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/RiotMicro" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/RiotMicro/AT" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/TELIT" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/TELIT/HE910" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/TELIT/ME310" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/TELIT/ME910" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/UBLOX" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/UBLOX/AT" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/UBLOX/N2XX" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/UBLOX/PPP" +"-iwithprefixbeforembed-os/features/device_key" +"-iwithprefixbeforembed-os/features/device_key/source" +"-iwithprefixbeforembed-os/features/frameworks" +"-iwithprefixbeforembed-os/features/frameworks/greentea-client" +"-iwithprefixbeforembed-os/features/frameworks/greentea-client/greentea-client" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-cli" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-cli/mbed-client-cli" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-randlib" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-randlib/mbed-client-randlib" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-randlib/mbed-client-randlib/platform" +"-iwithprefixbeforembed-os/features/frameworks/mbed-coap" +"-iwithprefixbeforembed-os/features/frameworks/mbed-coap/mbed-coap" +"-iwithprefixbeforembed-os/features/frameworks/mbed-coap/source" +"-iwithprefixbeforembed-os/features/frameworks/mbed-coap/source/include" +"-iwithprefixbeforembed-os/features/frameworks/mbed-trace" +"-iwithprefixbeforembed-os/features/frameworks/mbed-trace/mbed-trace" +"-iwithprefixbeforembed-os/features/frameworks/nanostack-libservice" +"-iwithprefixbeforembed-os/features/frameworks/nanostack-libservice/mbed-client-libservice" +"-iwithprefixbeforembed-os/features/frameworks/nanostack-libservice/mbed-client-libservice/platform" +"-iwithprefixbeforembed-os/features/frameworks/unity" +"-iwithprefixbeforembed-os/features/frameworks/unity/unity" +"-iwithprefixbeforembed-os/features/frameworks/utest" +"-iwithprefixbeforembed-os/features/frameworks/utest/utest" +"-iwithprefixbeforembed-os/features/lorawan" +"-iwithprefixbeforembed-os/features/lorawan/lorastack" +"-iwithprefixbeforembed-os/features/lorawan/lorastack/mac" +"-iwithprefixbeforembed-os/features/lorawan/lorastack/phy" +"-iwithprefixbeforembed-os/features/lorawan/system" +"-iwithprefixbeforembed-os/features/lwipstack" +"-iwithprefixbeforembed-os/features/lwipstack/lwip" +"-iwithprefixbeforembed-os/features/lwipstack/lwip-sys" +"-iwithprefixbeforembed-os/features/lwipstack/lwip-sys/arch" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat/posix" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat/posix/arpa" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat/posix/net" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat/posix/sys" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/lwip" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/lwip/priv" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/lwip/prot" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/netif" +"-iwithprefixbeforembed-os/features/mbedtls" +"-iwithprefixbeforembed-os/features/mbedtls/inc" +"-iwithprefixbeforembed-os/features/mbedtls/inc/mbedtls" +"-iwithprefixbeforembed-os/features/mbedtls/platform" +"-iwithprefixbeforembed-os/features/mbedtls/platform/inc" +"-iwithprefixbeforembed-os/features/nanostack" +"-iwithprefixbeforembed-os/features/nanostack/coap-service" +"-iwithprefixbeforembed-os/features/nanostack/coap-service/coap-service" +"-iwithprefixbeforembed-os/features/nanostack/coap-service/source" +"-iwithprefixbeforembed-os/features/nanostack/coap-service/source/include" +"-iwithprefixbeforembed-os/features/nanostack/mbed-mesh-api" +"-iwithprefixbeforembed-os/features/nanostack/mbed-mesh-api/mbed-mesh-api" +"-iwithprefixbeforembed-os/features/nanostack/mbed-mesh-api/source" +"-iwithprefixbeforembed-os/features/nanostack/mbed-mesh-api/source/include" +"-iwithprefixbeforembed-os/features/nanostack/nanostack-hal-mbed-cmsis-rtos" +"-iwithprefixbeforembed-os/features/nanostack/nanostack-interface" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack-eventloop" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack-eventloop/nanostack-event-loop" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack-eventloop/nanostack-event-loop/platform" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack-eventloop/source" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/nanostack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/nanostack/platform" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Bootstraps" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Fragmentation" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/IPHC_Decode" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/MAC" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Mesh" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/ND" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/NVM" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Thread" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/ws" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/BorderRouter" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Common_Protocols" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Core" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Core/include" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/DHCPv6_Server" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/DHCPv6_client" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MAC" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MAC/IEEE802_15_4" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MAC/virtual_rf" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MLE" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MPL" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/NWK_INTERFACE" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/NWK_INTERFACE/Include" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/RPL" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/Common" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/PANA" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/TLS" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/eapol" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/kmp" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/eap_tls_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/fwh_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/gkh_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/key_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/tls_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/Neighbor_cache" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/Trickle" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/blacklist" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/etx" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/fhss" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/fnv_hash" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/hmac" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/ieee_802_11" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/load_balance" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mac_neighbor_table" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/port" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/port/compiler" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/port/cpu" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/dns" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/mdns" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/poll" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/serial" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/stack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mle_service" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/nd_proxy" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/nist_aes_kw" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/pan_blacklist" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/utils" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/whiteboard" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/configs" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/configs/base" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/ipv6_stack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/libDHCPv6" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/libNET" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/libNET/src" +"-iwithprefixbeforembed-os/features/netsocket" +"-iwithprefixbeforembed-os/features/netsocket/ppp" +"-iwithprefixbeforembed-os/features/netsocket/ppp/include" +"-iwithprefixbeforembed-os/features/netsocket/ppp/include/polarssl" +"-iwithprefixbeforembed-os/features/nfc" +"-iwithprefixbeforembed-os/features/nfc/acore" +"-iwithprefixbeforembed-os/features/nfc/acore/acore" +"-iwithprefixbeforembed-os/features/nfc/controllers" +"-iwithprefixbeforembed-os/features/nfc/nfc" +"-iwithprefixbeforembed-os/features/nfc/nfc/ndef" +"-iwithprefixbeforembed-os/features/nfc/nfc/ndef/common" +"-iwithprefixbeforembed-os/features/nfc/stack" +"-iwithprefixbeforembed-os/features/nfc/stack/ndef" +"-iwithprefixbeforembed-os/features/nfc/stack/platform" +"-iwithprefixbeforembed-os/features/nfc/stack/tech" +"-iwithprefixbeforembed-os/features/nfc/stack/tech/iso7816" +"-iwithprefixbeforembed-os/features/nfc/stack/tech/isodep" +"-iwithprefixbeforembed-os/features/nfc/stack/tech/type4" +"-iwithprefixbeforembed-os/features/nfc/stack/transceiver" +"-iwithprefixbeforembed-os/features/nfc/stack/transceiver/pn512" +"-iwithprefixbeforembed-os/features/storage" +"-iwithprefixbeforembed-os/features/storage/blockdevice" +"-iwithprefixbeforembed-os/features/storage/filesystem" +"-iwithprefixbeforembed-os/features/storage/filesystem/fat" +"-iwithprefixbeforembed-os/features/storage/filesystem/fat/ChaN" +"-iwithprefixbeforembed-os/features/storage/filesystem/littlefs" +"-iwithprefixbeforembed-os/features/storage/filesystem/littlefs/littlefs" +"-iwithprefixbeforembed-os/features/storage/filesystem/littlefsv2" +"-iwithprefixbeforembed-os/features/storage/filesystem/littlefsv2/littlefs" +"-iwithprefixbeforembed-os/features/storage/kvstore" +"-iwithprefixbeforembed-os/features/storage/kvstore/conf" +"-iwithprefixbeforembed-os/features/storage/kvstore/direct_access_devicekey" +"-iwithprefixbeforembed-os/features/storage/kvstore/filesystemstore" +"-iwithprefixbeforembed-os/features/storage/kvstore/global_api" +"-iwithprefixbeforembed-os/features/storage/kvstore/include" +"-iwithprefixbeforembed-os/features/storage/kvstore/kv_map" +"-iwithprefixbeforembed-os/features/storage/kvstore/securestore" +"-iwithprefixbeforembed-os/features/storage/kvstore/tdbstore" +"-iwithprefixbeforembed-os/hal" +"-iwithprefixbeforembed-os/hal/usb" +"-iwithprefixbeforembed-os/platform" +"-iwithprefixbeforembed-os/platform/cxxsupport" +"-iwithprefixbeforembed-os/platform/internal" +"-iwithprefixbeforembed-os/platform/source" +"-iwithprefixbeforembed-os/platform/source/minimal-printf" +"-iwithprefixbeforembed-os/rtos" +"-iwithprefixbeforembed-os/rtos/source" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx4" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/Include" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/RTX" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Config" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Include" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Source" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_LoRa_THING_PLUS_expLoRaBLE" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_LoRa_THING_PLUS_expLoRaBLE/bsp" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/device" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/CMSIS" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/CMSIS/AmbiqMicro" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/CMSIS/AmbiqMicro/Include" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/mcu" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/mcu/apollo3" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/mcu/apollo3/hal" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/mcu/apollo3/regs" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/sdk" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/sdk/devices" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/sdk/utils" diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.ld-flags b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.ld-flags new file mode 100644 index 00000000..6341b37b --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.ld-flags @@ -0,0 +1 @@ +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.ld-macros b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.ld-macros new file mode 100644 index 00000000..2d6e1ff8 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.ld-symbols b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.ld-symbols new file mode 100644 index 00000000..b27903f7 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/.ld-symbols @@ -0,0 +1 @@ +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701297159.4783137 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_LoRa_THING_PLUS_expLoRaBLE -DTARGET_M4 -DTARGET_NAME=LoRa_THING_PLUS_expLoRaBLE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/libmbed-os.a b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/libmbed-os.a new file mode 100644 index 00000000..d9427b6f Binary files /dev/null and b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/libmbed-os.a differ diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/mbed_config.h b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/mbed_config.h new file mode 100644 index 00000000..74c06495 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/mbed/mbed_config.h @@ -0,0 +1,398 @@ +/* + * mbed SDK + * Copyright (c) 2017 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Automatically generated configuration file. +// DO NOT EDIT, content will be overwritten. + +#ifndef __MBED_CONFIG_DATA__ +#define __MBED_CONFIG_DATA__ + +// Configuration parameters +#define ATT_NUM_SIMUL_NTF 1 // set by library:cordio +#define ATT_NUM_SIMUL_WRITE_CMD 1 // set by library:cordio +#define BLE_FEATURE_EXTENDED_ADVERTISING 1 // set by library:ble +#define BLE_FEATURE_GATT_CLIENT 1 // set by library:ble +#define BLE_FEATURE_GATT_SERVER 1 // set by library:ble +#define BLE_FEATURE_PERIODIC_ADVERTISING 1 // set by library:ble +#define BLE_FEATURE_PHY_MANAGEMENT 1 // set by library:ble +#define BLE_FEATURE_PRIVACY 1 // set by library:ble +#define BLE_FEATURE_SECURE_CONNECTIONS 1 // set by library:ble +#define BLE_FEATURE_SECURITY 1 // set by library:ble +#define BLE_FEATURE_SIGNING 1 // set by library:ble +#define BLE_FEATURE_WHITELIST 1 // set by library:ble +#define BLE_ROLE_BROADCASTER 1 // set by library:ble +#define BLE_ROLE_CENTRAL 1 // set by library:ble +#define BLE_ROLE_OBSERVER 1 // set by library:ble +#define BLE_ROLE_PERIPHERAL 1 // set by library:ble +#define BLE_SECURITY_DATABASE_MAX_ENTRIES 5 // set by library:ble +#define DM_CONN_MAX 3 // set by library:cordio +#define DM_NUM_ADV_SETS 3 // set by library:cordio +#define DM_NUM_PHYS 3 // set by library:cordio +#define DM_SYNC_MAX 1 // set by library:cordio +#define L2C_COC_CHAN_MAX 1 // set by library:cordio +#define L2C_COC_REG_MAX 1 // set by library:cordio +#define MBED_CONF_ALT1250_PPP_BAUDRATE 115200 // set by library:ALT1250_PPP +#define MBED_CONF_ALT1250_PPP_PROVIDE_DEFAULT 0 // set by library:ALT1250_PPP +#define MBED_CONF_ATMEL_RF_ASSUME_SPACED_SPI 0 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_FULL_SPI_SPEED 7500000 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_FULL_SPI_SPEED_BYTE_SPACING 250 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_IRQ_THREAD_STACK_SIZE 1024 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_LOW_SPI_SPEED 3750000 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_PROVIDE_DEFAULT 0 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_USE_SPI_SPACING_API 0 // set by library:atmel-rf +#define MBED_CONF_BLE_PRESENT 1 // set by library:ble +#define MBED_CONF_CELLULAR_CONTROL_PLANE_OPT 0 // set by library:cellular +#define MBED_CONF_CELLULAR_DEBUG_AT 0 // set by library:cellular +#define MBED_CONF_CELLULAR_MAX_CP_DATA_RECV_LEN 1358 // set by library:cellular +#define MBED_CONF_CELLULAR_RANDOM_MAX_START_DELAY 0 // set by library:cellular +#define MBED_CONF_CELLULAR_USE_APN_LOOKUP 0 // set by library:cellular +#define MBED_CONF_CELLULAR_USE_SMS 0 // set by library:cellular +#define MBED_CONF_CORDIO_DESIRED_ATT_MTU 23 // set by library:cordio +#define MBED_CONF_CORDIO_MAX_PREPARED_WRITES 4 // set by library:cordio +#define MBED_CONF_CORDIO_PREFERRED_TX_POWER 0 // set by library:cordio +#define MBED_CONF_CORDIO_ROUTE_UNHANDLED_COMMAND_COMPLETE_EVENTS 1 // set by library:cordio +#define MBED_CONF_CORDIO_RX_ACL_BUFFER_SIZE 70 // set by library:cordio +#define MBED_CONF_DRIVERS_QSPI_CSN QSPI_FLASH1_CSN // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_IO0 QSPI_FLASH1_IO0 // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_IO1 QSPI_FLASH1_IO1 // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_IO2 QSPI_FLASH1_IO2 // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_IO3 QSPI_FLASH1_IO3 // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_SCK QSPI_FLASH1_SCK // set by library:drivers +#define MBED_CONF_DRIVERS_UART_SERIAL_RXBUF_SIZE 256 // set by library:drivers +#define MBED_CONF_DRIVERS_UART_SERIAL_TXBUF_SIZE 256 // set by library:drivers +#define MBED_CONF_ESP8266_BUILT_IN_DNS 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_DEBUG 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_POWER_OFF_TIME_MS 3 // set by library:esp8266 +#define MBED_CONF_ESP8266_POWER_ON_POLARITY 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_POWER_ON_TIME_MS 3 // set by library:esp8266 +#define MBED_CONF_ESP8266_PROVIDE_DEFAULT 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_SERIAL_BAUDRATE 115200 // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_ENABLE 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_SERVER0 "" // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_SERVER1 "" // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_SERVER2 "" // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_TIMEZONE 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_SOCKET_BUFSIZE 8192 // set by library:esp8266 +#define MBED_CONF_EVENTS_PRESENT 1 // set by library:events +#define MBED_CONF_EVENTS_SHARED_DISPATCH_FROM_APPLICATION 0 // set by library:events +#define MBED_CONF_EVENTS_SHARED_EVENTSIZE 768 // set by library:events +#define MBED_CONF_EVENTS_SHARED_HIGHPRIO_EVENTSIZE 256 // set by library:events +#define MBED_CONF_EVENTS_SHARED_HIGHPRIO_STACKSIZE 1024 // set by library:events +#define MBED_CONF_EVENTS_SHARED_STACKSIZE 2048 // set by library:events +#define MBED_CONF_EVENTS_USE_LOWPOWER_TIMER_TICKER 0 // set by library:events +#define MBED_CONF_FAT_CHAN_FFS_DBG 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_CODE_PAGE 437 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_EXFAT 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_HEAPBUF 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_LOCK 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_MINIMIZE 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_NOFSINFO 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_NORTC 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_READONLY 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_REENTRANT 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_RPATH 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_TIMEOUT 1000 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_TINY 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_LFN_BUF 255 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_LFN_UNICODE 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_MAX_LFN 255 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_MAX_SS 4096 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_MIN_SS 512 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_MULTI_PARTITION 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_NORTC_MDAY 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_NORTC_MON 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_NORTC_YEAR 2017 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_SFN_BUF 12 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_STRF_ENCODE 3 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_STR_VOLUME_ID 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_SYNC_T HANDLE // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_CHMOD 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_EXPAND 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_FASTSEEK 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_FIND 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_FORWARD 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_LABEL 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_LFN 3 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_MKFS 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_STRFUNC 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_TRIM 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_VOLUMES 4 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_VOLUME_STRS "RAM","NAND","CF","SD","SD2","USB","USB2","USB3" // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FLUSH_ON_NEW_CLUSTER 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FLUSH_ON_NEW_SECTOR 1 // set by library:fat_chan +#define MBED_CONF_FILESYSTEM_PRESENT 1 // set by library:filesystem +#define MBED_CONF_FLASHIAP_BLOCK_DEVICE_BASE_ADDRESS 0xFFFFFFFF // set by library:flashiap-block-device +#define MBED_CONF_FLASHIAP_BLOCK_DEVICE_SIZE 0 // set by library:flashiap-block-device +#define MBED_CONF_GEMALTO_CINTERION_BAUDRATE 115200 // set by library:GEMALTO_CINTERION +#define MBED_CONF_GEMALTO_CINTERION_PROVIDE_DEFAULT 0 // set by library:GEMALTO_CINTERION +#define MBED_CONF_GENERIC_AT3GPP_BAUDRATE 115200 // set by library:GENERIC_AT3GPP +#define MBED_CONF_GENERIC_AT3GPP_PROVIDE_DEFAULT 0 // set by library:GENERIC_AT3GPP +#define MBED_CONF_LORA_ADR_ON 1 // set by library:lora +#define MBED_CONF_LORA_APPLICATION_EUI {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_APPLICATION_KEY {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_APPSKEY {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_APP_PORT 15 // set by library:lora +#define MBED_CONF_LORA_AUTOMATIC_UPLINK_MESSAGE 1 // set by library:lora +#define MBED_CONF_LORA_DEVICE_ADDRESS 0x00000000 // set by library:lora +#define MBED_CONF_LORA_DEVICE_EUI {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_DOWNLINK_PREAMBLE_LENGTH 5 // set by library:lora +#define MBED_CONF_LORA_DUTY_CYCLE_ON 1 // set by library:lora +#define MBED_CONF_LORA_DUTY_CYCLE_ON_JOIN 1 // set by library:lora +#define MBED_CONF_LORA_FSB_MASK {0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0x00FF} // set by library:lora +#define MBED_CONF_LORA_FSB_MASK_CHINA {0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF} // set by library:lora +#define MBED_CONF_LORA_LBT_ON 0 // set by library:lora +#define MBED_CONF_LORA_MAX_SYS_RX_ERROR 5 // set by library:lora +#define MBED_CONF_LORA_NB_TRIALS 12 // set by library:lora +#define MBED_CONF_LORA_NWKSKEY {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_OVER_THE_AIR_ACTIVATION 1 // set by library:lora +#define MBED_CONF_LORA_PHY EU868 // set by library:lora +#define MBED_CONF_LORA_PUBLIC_NETWORK 1 // set by library:lora +#define MBED_CONF_LORA_TX_MAX_SIZE 64 // set by library:lora +#define MBED_CONF_LORA_UPLINK_PREAMBLE_LENGTH 8 // set by library:lora +#define MBED_CONF_LORA_WAKEUP_TIME 5 // set by library:lora +#define MBED_CONF_LWIP_ADDR_TIMEOUT 5 // set by library:lwip +#define MBED_CONF_LWIP_ADDR_TIMEOUT_MODE 1 // set by library:lwip +#define MBED_CONF_LWIP_DEBUG_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_DEFAULT_THREAD_STACKSIZE 512 // set by library:lwip +#define MBED_CONF_LWIP_DHCP_TIMEOUT 60 // set by library:lwip +#define MBED_CONF_LWIP_ENABLE_PPP_TRACE 0 // set by library:lwip +#define MBED_CONF_LWIP_ETHERNET_ENABLED 1 // set by library:lwip +#define MBED_CONF_LWIP_IPV4_ENABLED 1 // set by library:lwip +#define MBED_CONF_LWIP_IPV6_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_IP_VER_PREF 4 // set by library:lwip +#define MBED_CONF_LWIP_L3IP_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_MBOX_SIZE 8 // set by library:lwip +#define MBED_CONF_LWIP_MEMP_NUM_TCPIP_MSG_INPKT 8 // set by library:lwip +#define MBED_CONF_LWIP_MEMP_NUM_TCP_SEG 16 // set by library:lwip +#define MBED_CONF_LWIP_MEM_SIZE 1600 // set by library:lwip +#define MBED_CONF_LWIP_NUM_NETBUF 8 // set by library:lwip +#define MBED_CONF_LWIP_NUM_PBUF 8 // set by library:lwip +#define MBED_CONF_LWIP_PBUF_POOL_SIZE 5 // set by library:lwip +#define MBED_CONF_LWIP_PPP_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_PPP_IPV4_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_PPP_IPV6_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_PPP_THREAD_STACKSIZE 768 // set by library:lwip +#define MBED_CONF_LWIP_PRESENT 1 // set by library:lwip +#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_SOCKET_MAX 4 // set by library:lwip +#define MBED_CONF_LWIP_TCPIP_THREAD_PRIORITY osPriorityNormal // set by library:lwip +#define MBED_CONF_LWIP_TCPIP_THREAD_STACKSIZE 1200 // set by library:lwip +#define MBED_CONF_LWIP_TCP_CLOSE_TIMEOUT 1000 // set by library:lwip +#define MBED_CONF_LWIP_TCP_ENABLED 1 // set by library:lwip +#define MBED_CONF_LWIP_TCP_MAXRTX 6 // set by library:lwip +#define MBED_CONF_LWIP_TCP_MSS 536 // set by library:lwip +#define MBED_CONF_LWIP_TCP_SERVER_MAX 4 // set by library:lwip +#define MBED_CONF_LWIP_TCP_SND_BUF (2 * TCP_MSS) // set by library:lwip +#define MBED_CONF_LWIP_TCP_SOCKET_MAX 4 // set by library:lwip +#define MBED_CONF_LWIP_TCP_SYNMAXRTX 6 // set by library:lwip +#define MBED_CONF_LWIP_TCP_WND (4 * TCP_MSS) // set by library:lwip +#define MBED_CONF_LWIP_UDP_SOCKET_MAX 4 // set by library:lwip +#define MBED_CONF_LWIP_USE_MBED_TRACE 0 // set by library:lwip +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_CHANNEL 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_CHANNEL_MASK 0x7fff800 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_CHANNEL_PAGE 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_DEVICE_TYPE NET_6LOWPAN_ROUTER // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_PANID_FILTER 0xffff // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_PSK_KEY {0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf} // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_PSK_KEY_ID 1 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_SECURITY_MODE NONE // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_SEC_LEVEL 5 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_HEAP_SIZE 32500 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_HEAP_STAT_INFO NULL // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_MAC_NEIGH_TABLE_SIZE 32 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_CHANNEL 22 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_CHANNEL_MASK 0x7fff800 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_CHANNEL_PAGE 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_COMMISSIONING_DATASET_TIMESTAMP 0x10000 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_EXTENDED_PANID {0xf1, 0xb5, 0xa1, 0xb2,0xc4, 0xd5, 0xa1, 0xbd } // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_ML_PREFIX {0xfd, 0x0, 0x0d, 0xb8, 0x0, 0x0, 0x0, 0x0} // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_NETWORK_NAME "Thread Network" // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_PANID 0x0700 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_PSKC {0xc8, 0xa6, 0x2e, 0xae, 0xf3, 0x68, 0xf3, 0x46, 0xa9, 0x9e, 0x57, 0x85, 0x98, 0x9d, 0x1c, 0xd0} // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_DEVICE_TYPE MESH_DEVICE_TYPE_THREAD_ROUTER // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_MASTER_KEY {0x10, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff} // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_PSKD "ABCDEFGH" // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_SECURITY_POLICY 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_USE_STATIC_LINK_CONFIG 1 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_USE_MALLOC_FOR_HEAP 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_BC_CHANNEL_FUNCTION 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_BC_DWELL_INTERVAL 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_BC_FIXED_CHANNEL 65535 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_BC_INTERVAL 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_DEVICE_TYPE MESH_DEVICE_TYPE_WISUN_ROUTER // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_NETWORK_NAME "Wi-SUN Network" // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_OPERATING_CLASS 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_OPERATING_MODE 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_REGULATORY_DOMAIN 3 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_UC_CHANNEL_FUNCTION 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_UC_DWELL_INTERVAL 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_UC_FIXED_CHANNEL 65535 // set by library:mbed-mesh-api +#define MBED_CONF_MCR20A_PROVIDE_DEFAULT 0 // set by library:mcr20a +#define MBED_CONF_NANOSTACK_CONFIGURATION nanostack_full // set by library:nanostack +#define MBED_CONF_NANOSTACK_HAL_CRITICAL_SECTION_USABLE_FROM_INTERRUPT 0 // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_EVENT_LOOP_DISPATCH_FROM_APPLICATION 0 // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_EVENT_LOOP_THREAD_STACK_SIZE 6144 // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_EVENT_LOOP_USE_MBED_EVENTS 0 // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_KVSTORE_PATH "/kv/" // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_USE_KVSTORE 0 // set by library:nanostack-hal +#define MBED_CONF_NSAPI_DEFAULT_MESH_TYPE THREAD // set by library:nsapi +#define MBED_CONF_NSAPI_DEFAULT_STACK LWIP // set by library:nsapi +#define MBED_CONF_NSAPI_DEFAULT_WIFI_SECURITY NONE // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_ADDRESSES_LIMIT 10 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_CACHE_SIZE 3 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 10000 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_RETRIES 1 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 10 // set by library:nsapi +#define MBED_CONF_NSAPI_PRESENT 1 // set by library:nsapi +#define MBED_CONF_NSAPI_SOCKET_STATS_ENABLED 0 // set by library:nsapi +#define MBED_CONF_NSAPI_SOCKET_STATS_MAX_COUNT 10 // set by library:nsapi +#define MBED_CONF_PLATFORM_CALLBACK_COMPARABLE 1 // set by library:platform +#define MBED_CONF_PLATFORM_CALLBACK_NONTRIVIAL 0 // set by library:platform +#define MBED_CONF_PLATFORM_CRASH_CAPTURE_ENABLED 0 // set by library:platform +#define MBED_CONF_PLATFORM_CTHUNK_COUNT_MAX 8 // set by library:platform +#define MBED_CONF_PLATFORM_DEFAULT_SERIAL_BAUD_RATE 9600 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_ALL_THREADS_INFO 0 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_FILENAME_CAPTURE_ENABLED 0 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_HIST_ENABLED 0 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_HIST_SIZE 4 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_REBOOT_MAX 1 // set by library:platform +#define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform +#define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform +#define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_BUFFERED_SERIAL 0 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_CONVERT_NEWLINES 1 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_CONVERT_TTY_NEWLINES 1 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_FLUSH_AT_EXIT 1 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_MINIMAL_CONSOLE_ONLY 0 // set by library:platform +#define MBED_CONF_PLATFORM_USE_MPU 1 // set by library:platform +#define MBED_CONF_PPP_ENABLED 0 // set by library:ppp +#define MBED_CONF_PPP_ENABLE_TRACE 0 // set by library:ppp +#define MBED_CONF_PPP_IPV4_ENABLED 1 // set by library:ppp +#define MBED_CONF_PPP_IPV6_ENABLED 0 // set by library:ppp +#define MBED_CONF_PPP_MBED_EVENT_QUEUE 0 // set by library:ppp +#define MBED_CONF_PPP_THREAD_STACKSIZE 816 // set by library:ppp +#define MBED_CONF_QUECTEL_BC95_BAUDRATE 9600 // set by library:QUECTEL_BC95 +#define MBED_CONF_QUECTEL_BC95_PROVIDE_DEFAULT 0 // set by library:QUECTEL_BC95 +#define MBED_CONF_QUECTEL_BG96_BAUDRATE 115200 // set by library:QUECTEL_BG96 +#define MBED_CONF_QUECTEL_BG96_PROVIDE_DEFAULT 0 // set by library:QUECTEL_BG96 +#define MBED_CONF_QUECTEL_EC2X_BAUDRATE 115200 // set by library:QUECTEL_EC2X +#define MBED_CONF_QUECTEL_EC2X_PROVIDE_DEFAULT 0 // set by library:QUECTEL_EC2X +#define MBED_CONF_QUECTEL_EC2X_START_TIMEOUT 15000 // set by library:QUECTEL_EC2X +#define MBED_CONF_QUECTEL_M26_BAUDRATE 115200 // set by library:QUECTEL_M26 +#define MBED_CONF_QUECTEL_M26_PROVIDE_DEFAULT 0 // set by library:QUECTEL_M26 +#define MBED_CONF_QUECTEL_UG96_BAUDRATE 115200 // set by library:QUECTEL_UG96 +#define MBED_CONF_QUECTEL_UG96_PROVIDE_DEFAULT 0 // set by library:QUECTEL_UG96 +#define MBED_CONF_RM1000_AT_BAUDRATE 230400 // set by library:RM1000_AT +#define MBED_CONF_RM1000_AT_PROVIDE_DEFAULT 0 // set by library:RM1000_AT +#define MBED_CONF_RTOS_API_PRESENT 1 // set by library:rtos-api +#define MBED_CONF_RTOS_EVFLAGS_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_IDLE_THREAD_STACK_SIZE 512 // set by library:rtos +#define MBED_CONF_RTOS_IDLE_THREAD_STACK_SIZE_DEBUG_EXTRA 0 // set by library:rtos +#define MBED_CONF_RTOS_IDLE_THREAD_STACK_SIZE_TICKLESS_EXTRA 256 // set by library:rtos +#define MBED_CONF_RTOS_MAIN_THREAD_STACK_SIZE 4096 // set by library:rtos +#define MBED_CONF_RTOS_MSGQUEUE_DATA_SIZE 0 // set by library:rtos +#define MBED_CONF_RTOS_MSGQUEUE_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_MUTEX_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_PRESENT 1 // set by library:rtos +#define MBED_CONF_RTOS_SEMAPHORE_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_THREAD_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_THREAD_STACK_SIZE 4096 // set by library:rtos +#define MBED_CONF_RTOS_THREAD_USER_STACK_SIZE 0 // set by library:rtos +#define MBED_CONF_RTOS_TIMER_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_TIMER_THREAD_STACK_SIZE 768 // set by library:rtos +#define MBED_CONF_S2LP_PROVIDE_DEFAULT 0 // set by library:s2lp +#define MBED_CONF_SARA4_PPP_BAUDRATE 115200 // set by library:SARA4_PPP +#define MBED_CONF_SARA4_PPP_PROVIDE_DEFAULT 0 // set by library:SARA4_PPP +#define MBED_CONF_STORAGE_DEFAULT_KV kv // set by library:storage +#define MBED_CONF_STORAGE_FILESYSTEM_BLOCKDEVICE default // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_EXTERNAL_BASE_ADDRESS 0 // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_EXTERNAL_SIZE 0 // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_FILESYSTEM default // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_FOLDER_PATH kvstore // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_INTERNAL_BASE_ADDRESS 0 // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_MOUNT_POINT kv // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_BLOCKDEVICE default // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_EXTERNAL_BASE_ADDRESS 0 // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_EXTERNAL_SIZE 0 // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_FILESYSTEM default // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_FOLDER_PATH kvstore // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_MOUNT_POINT kv // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_RBP_INTERNAL_SIZE 0 // set by library:storage_filesystem +#define MBED_CONF_STORAGE_STORAGE_TYPE default // set by library:storage +#define MBED_CONF_STORAGE_TDB_EXTERNAL_BLOCKDEVICE default // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_EXTERNAL_EXTERNAL_BASE_ADDRESS 0 // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_EXTERNAL_EXTERNAL_SIZE 0 // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_EXTERNAL_INTERNAL_BASE_ADDRESS 0 // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_EXTERNAL_NO_RBP_BLOCKDEVICE default // set by library:storage_tdb_external_no_rbp +#define MBED_CONF_STORAGE_TDB_EXTERNAL_NO_RBP_EXTERNAL_BASE_ADDRESS 0 // set by library:storage_tdb_external_no_rbp +#define MBED_CONF_STORAGE_TDB_EXTERNAL_NO_RBP_EXTERNAL_SIZE 0 // set by library:storage_tdb_external_no_rbp +#define MBED_CONF_STORAGE_TDB_EXTERNAL_RBP_INTERNAL_SIZE 0 // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_BASE_ADDRESS 0 // set by library:storage_tdb_internal +#define MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_SIZE 0 // set by library:storage_tdb_internal +#define MBED_CONF_TARGET_BOOT_STACK_SIZE 0x400 // set by library:rtos[*] +#define MBED_CONF_TARGET_CONSOLE_UART 1 // set by target:Target +#define MBED_CONF_TARGET_DEEP_SLEEP_LATENCY 0 // set by target:Target +#define MBED_CONF_TARGET_DEFAULT_ADC_VREF NAN // set by target:Target +#define MBED_CONF_TARGET_INIT_US_TICKER_AT_BOOT 0 // set by target:Target +#define MBED_CONF_TARGET_MPU_ROM_END 0x0fffffff // set by target:Target +#define MBED_CONF_TARGET_TICKLESS_FROM_US_TICKER 0 // set by target:Target +#define MBED_CONF_TARGET_XIP_ENABLE 0 // set by target:Target +#define MBED_CONF_TELIT_HE910_BAUDRATE 115200 // set by library:TELIT_HE910 +#define MBED_CONF_TELIT_HE910_PROVIDE_DEFAULT 0 // set by library:TELIT_HE910 +#define MBED_CONF_TELIT_ME310_BAUDRATE 115200 // set by library:TELIT_ME310 +#define MBED_CONF_TELIT_ME310_PROVIDE_DEFAULT 0 // set by library:TELIT_ME310 +#define MBED_CONF_TELIT_ME910_BAUDRATE 115200 // set by library:TELIT_ME910 +#define MBED_CONF_TELIT_ME910_PROVIDE_DEFAULT 0 // set by library:TELIT_ME910 +#define MBED_CONF_UBLOX_AT_BAUDRATE 115200 // set by library:UBLOX_AT +#define MBED_CONF_UBLOX_AT_PROVIDE_DEFAULT 0 // set by library:UBLOX_AT +#define MBED_CONF_UBLOX_N2XX_BAUDRATE 9600 // set by library:UBLOX_N2XX +#define MBED_CONF_UBLOX_N2XX_PROVIDE_DEFAULT 0 // set by library:UBLOX_N2XX +#define MBED_CONF_UBLOX_PPP_BAUDRATE 115200 // set by library:UBLOX_PPP +#define MBED_CONF_UBLOX_PPP_PROVIDE_DEFAULT 0 // set by library:UBLOX_PPP +#define MBED_CRC_TABLE_SIZE 16 // set by library:drivers +#define MBED_LFS2_BLOCK_CYCLES 1024 // set by library:littlefs2 +#define MBED_LFS2_BLOCK_SIZE 512 // set by library:littlefs2 +#define MBED_LFS2_CACHE_SIZE 64 // set by library:littlefs2 +#define MBED_LFS2_ENABLE_INFO 0 // set by library:littlefs2 +#define MBED_LFS2_INTRINSICS 1 // set by library:littlefs2 +#define MBED_LFS2_LOOKAHEAD_SIZE 64 // set by library:littlefs2 +#define MBED_LFS_BLOCK_SIZE 512 // set by library:littlefs +#define MBED_LFS_ENABLE_INFO 0 // set by library:littlefs +#define MBED_LFS_INTRINSICS 1 // set by library:littlefs +#define MBED_LFS_LOOKAHEAD 512 // set by library:littlefs +#define MBED_LFS_PROG_SIZE 64 // set by library:littlefs +#define MBED_LFS_READ_SIZE 64 // set by library:littlefs +#define MBED_STACK_DUMP_ENABLED 0 // set by library:platform +#define MEM_ALLOC malloc // set by library:mbed-trace +#define MEM_FREE free // set by library:mbed-trace +#define PPP_DEBUG 0 // set by library:ppp +#define SEC_CCM_CFG 1 // set by library:cordio +#define SMP_DB_MAX_DEVICES 3 // set by library:cordio +// Macros +#define MBEDTLS_CIPHER_MODE_CTR // defined by library:SecureStore +#define MBEDTLS_CMAC_C // defined by library:SecureStore +#define NSAPI_PPP_AVAILABLE (MBED_CONF_PPP_ENABLED || MBED_CONF_LWIP_PPP_ENABLED) // defined by library:ppp +#define NS_USE_EXTERNAL_MBED_TLS // defined by library:nanostack +#define UNITY_INCLUDE_CONFIG_H // defined by library:utest +#define WSF_MS_PER_TICK 1 // defined by library:cordio +#define _RTE_ // defined by library:rtos + +#endif diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/variant.cpp b/variants/LoRa_THING_PLUS_expLoRaBLE/variant.cpp new file mode 100644 index 00000000..07b0dbd6 --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/variant.cpp @@ -0,0 +1,12 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#include "variant.h" + +UART Serial1(SERIAL1_TX, SERIAL1_RX); + +void initVariant(void){ + +} diff --git a/variants/LoRa_THING_PLUS_expLoRaBLE/variant.h b/variants/LoRa_THING_PLUS_expLoRaBLE/variant.h new file mode 100644 index 00000000..585d4c1c --- /dev/null +++ b/variants/LoRa_THING_PLUS_expLoRaBLE/variant.h @@ -0,0 +1,41 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#ifndef _VARIANT_H_ +#define _VARIANT_H_ + +#include "Arduino.h" + +#include "config/pins.h" + +#define VARIANT_SPI_INTFCS 2 +#define VARIANT_WIRE_INTFCS 2 + +// SPI +#define VARIANT_SPI_SDI SPI_SDI +#define VARIANT_SPI_SDO SPI_SDO +#define VARIANT_SPI_CLK SPI_CLK + +//LoRa SPI Pins +#define VARIANT_SPI1_SDI D43 +#define VARIANT_SPI1_SDO D38 +#define VARIANT_SPI1_CLK D42 + +// Wire +#define VARIANT_Wire_SDA I2C_SDA +#define VARIANT_Wire_SCL I2C_SCL +#define VARIANT_Wire1_SDA I2C1_SDA +#define VARIANT_Wire1_SCL I2C1_SCL + +// UART +extern UART Serial1; + +// temporary patch to support Arduino SD library +#define SS 0 +#define MOSI SPI_SDO +#define MISO SPI_SDI +#define SCK SPI_CLK + +#endif // _VARIANT_H_ diff --git a/variants/SFE_ARTEMIS/config/pins.cpp b/variants/SFE_ARTEMIS/config/pins.cpp index 8a02c834..9066f6cf 100644 --- a/variants/SFE_ARTEMIS/config/pins.cpp +++ b/variants/SFE_ARTEMIS/config/pins.cpp @@ -5,7 +5,7 @@ #include "bridge/pins.h" -const pin_size_t variantPinCount = 17; +const pin_size_t variantPinCount = 22; PinState variantPinStates[variantPinCount] = { {D0, 0, NULL, /*NULL, NULL, NULL,*/ NULL}, @@ -25,4 +25,10 @@ PinState variantPinStates[variantPinCount] = { {D14, 14, NULL, /*NULL, NULL, NULL,*/ NULL}, {D15, 15, NULL, /*NULL, NULL, NULL,*/ NULL}, {D16, 16, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D17, 17, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D18, 18, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D19, 19, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D20, 20, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D21, 21, NULL, /*NULL, NULL, NULL,*/ NULL}, }; + diff --git a/variants/SFE_ARTEMIS/mbed/.asm-macros b/variants/SFE_ARTEMIS/mbed/.asm-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS/mbed/.asm-macros +++ b/variants/SFE_ARTEMIS/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.asm-symbols b/variants/SFE_ARTEMIS/mbed/.asm-symbols index b5f18d87..a7e35492 100644 --- a/variants/SFE_ARTEMIS/mbed/.asm-symbols +++ b/variants/SFE_ARTEMIS/mbed/.asm-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.c-flags b/variants/SFE_ARTEMIS/mbed/.c-flags index 9573998a..33d97d23 100644 --- a/variants/SFE_ARTEMIS/mbed/.c-flags +++ b/variants/SFE_ARTEMIS/mbed/.c-flags @@ -1 +1 @@ --c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -MMD -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.c-macros b/variants/SFE_ARTEMIS/mbed/.c-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS/mbed/.c-macros +++ b/variants/SFE_ARTEMIS/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.c-symbols b/variants/SFE_ARTEMIS/mbed/.c-symbols index 2963d820..c73c3ed6 100644 --- a/variants/SFE_ARTEMIS/mbed/.c-symbols +++ b/variants/SFE_ARTEMIS/mbed/.c-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.cxx-flags b/variants/SFE_ARTEMIS/mbed/.cxx-flags index 4267aab9..9de4dbde 100644 --- a/variants/SFE_ARTEMIS/mbed/.cxx-flags +++ b/variants/SFE_ARTEMIS/mbed/.cxx-flags @@ -1 +1 @@ --Wvla -c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.cxx-macros b/variants/SFE_ARTEMIS/mbed/.cxx-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS/mbed/.cxx-macros +++ b/variants/SFE_ARTEMIS/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.cxx-symbols b/variants/SFE_ARTEMIS/mbed/.cxx-symbols index 2963d820..c73c3ed6 100644 --- a/variants/SFE_ARTEMIS/mbed/.cxx-symbols +++ b/variants/SFE_ARTEMIS/mbed/.cxx-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.ld-flags b/variants/SFE_ARTEMIS/mbed/.ld-flags index 65528a50..6341b37b 100644 --- a/variants/SFE_ARTEMIS/mbed/.ld-flags +++ b/variants/SFE_ARTEMIS/mbed/.ld-flags @@ -1 +1 @@ --DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.ld-macros b/variants/SFE_ARTEMIS/mbed/.ld-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS/mbed/.ld-macros +++ b/variants/SFE_ARTEMIS/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/.ld-symbols b/variants/SFE_ARTEMIS/mbed/.ld-symbols index 8d9a7983..7ce8ec6c 100644 --- a/variants/SFE_ARTEMIS/mbed/.ld-symbols +++ b/variants/SFE_ARTEMIS/mbed/.ld-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1602966660.542737 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701297259.6592317 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS/mbed/libmbed-os.a b/variants/SFE_ARTEMIS/mbed/libmbed-os.a index dd9b8b56..8889401e 100644 Binary files a/variants/SFE_ARTEMIS/mbed/libmbed-os.a and b/variants/SFE_ARTEMIS/mbed/libmbed-os.a differ diff --git a/variants/SFE_ARTEMIS/mbed/mbed_config.h b/variants/SFE_ARTEMIS/mbed/mbed_config.h index dfbc8694..74c06495 100644 --- a/variants/SFE_ARTEMIS/mbed/mbed_config.h +++ b/variants/SFE_ARTEMIS/mbed/mbed_config.h @@ -273,7 +273,7 @@ #define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform #define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform -#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 0 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform #define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform #define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.asm-macros b/variants/SFE_ARTEMIS_ATP/mbed/.asm-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.asm-macros +++ b/variants/SFE_ARTEMIS_ATP/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.asm-symbols b/variants/SFE_ARTEMIS_ATP/mbed/.asm-symbols index b5f18d87..a7e35492 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.asm-symbols +++ b/variants/SFE_ARTEMIS_ATP/mbed/.asm-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.c-flags b/variants/SFE_ARTEMIS_ATP/mbed/.c-flags index 9573998a..33d97d23 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.c-flags +++ b/variants/SFE_ARTEMIS_ATP/mbed/.c-flags @@ -1 +1 @@ --c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -MMD -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.c-macros b/variants/SFE_ARTEMIS_ATP/mbed/.c-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.c-macros +++ b/variants/SFE_ARTEMIS_ATP/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.c-symbols b/variants/SFE_ARTEMIS_ATP/mbed/.c-symbols index db84c41d..f86932e1 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.c-symbols +++ b/variants/SFE_ARTEMIS_ATP/mbed/.c-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_ATP -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_ATP -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_ATP -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_ATP -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.cxx-flags b/variants/SFE_ARTEMIS_ATP/mbed/.cxx-flags index 4267aab9..9de4dbde 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.cxx-flags +++ b/variants/SFE_ARTEMIS_ATP/mbed/.cxx-flags @@ -1 +1 @@ --Wvla -c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.cxx-macros b/variants/SFE_ARTEMIS_ATP/mbed/.cxx-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.cxx-macros +++ b/variants/SFE_ARTEMIS_ATP/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.cxx-symbols b/variants/SFE_ARTEMIS_ATP/mbed/.cxx-symbols index db84c41d..f86932e1 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.cxx-symbols +++ b/variants/SFE_ARTEMIS_ATP/mbed/.cxx-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_ATP -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_ATP -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_ATP -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_ATP -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.ld-flags b/variants/SFE_ARTEMIS_ATP/mbed/.ld-flags index 65528a50..6341b37b 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.ld-flags +++ b/variants/SFE_ARTEMIS_ATP/mbed/.ld-flags @@ -1 +1 @@ --DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.ld-macros b/variants/SFE_ARTEMIS_ATP/mbed/.ld-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.ld-macros +++ b/variants/SFE_ARTEMIS_ATP/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/.ld-symbols b/variants/SFE_ARTEMIS_ATP/mbed/.ld-symbols index af3793be..020ea36f 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/.ld-symbols +++ b/variants/SFE_ARTEMIS_ATP/mbed/.ld-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1602966839.2697713 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_ATP -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_ATP -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701297359.0533097 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_ATP -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_ATP -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_ATP/mbed/libmbed-os.a b/variants/SFE_ARTEMIS_ATP/mbed/libmbed-os.a index 513e33a8..d92b0922 100644 Binary files a/variants/SFE_ARTEMIS_ATP/mbed/libmbed-os.a and b/variants/SFE_ARTEMIS_ATP/mbed/libmbed-os.a differ diff --git a/variants/SFE_ARTEMIS_ATP/mbed/mbed_config.h b/variants/SFE_ARTEMIS_ATP/mbed/mbed_config.h index dfbc8694..74c06495 100644 --- a/variants/SFE_ARTEMIS_ATP/mbed/mbed_config.h +++ b/variants/SFE_ARTEMIS_ATP/mbed/mbed_config.h @@ -273,7 +273,7 @@ #define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform #define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform -#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 0 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform #define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform #define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform diff --git a/variants/SFE_ARTEMIS_DK/mbed/.asm-macros b/variants/SFE_ARTEMIS_DK/mbed/.asm-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.asm-macros +++ b/variants/SFE_ARTEMIS_DK/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.asm-symbols b/variants/SFE_ARTEMIS_DK/mbed/.asm-symbols index b5f18d87..a7e35492 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.asm-symbols +++ b/variants/SFE_ARTEMIS_DK/mbed/.asm-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.c-flags b/variants/SFE_ARTEMIS_DK/mbed/.c-flags index 9573998a..33d97d23 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.c-flags +++ b/variants/SFE_ARTEMIS_DK/mbed/.c-flags @@ -1 +1 @@ --c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -MMD -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.c-macros b/variants/SFE_ARTEMIS_DK/mbed/.c-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.c-macros +++ b/variants/SFE_ARTEMIS_DK/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.c-symbols b/variants/SFE_ARTEMIS_DK/mbed/.c-symbols index 51581606..be676ff1 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.c-symbols +++ b/variants/SFE_ARTEMIS_DK/mbed/.c-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_DK -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_DK -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_DK -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_DK -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.cxx-flags b/variants/SFE_ARTEMIS_DK/mbed/.cxx-flags index 4267aab9..9de4dbde 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.cxx-flags +++ b/variants/SFE_ARTEMIS_DK/mbed/.cxx-flags @@ -1 +1 @@ --Wvla -c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.cxx-macros b/variants/SFE_ARTEMIS_DK/mbed/.cxx-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.cxx-macros +++ b/variants/SFE_ARTEMIS_DK/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.cxx-symbols b/variants/SFE_ARTEMIS_DK/mbed/.cxx-symbols index 51581606..be676ff1 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.cxx-symbols +++ b/variants/SFE_ARTEMIS_DK/mbed/.cxx-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_DK -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_DK -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_DK -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_DK -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.ld-flags b/variants/SFE_ARTEMIS_DK/mbed/.ld-flags index 65528a50..6341b37b 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.ld-flags +++ b/variants/SFE_ARTEMIS_DK/mbed/.ld-flags @@ -1 +1 @@ --DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.ld-macros b/variants/SFE_ARTEMIS_DK/mbed/.ld-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.ld-macros +++ b/variants/SFE_ARTEMIS_DK/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/.ld-symbols b/variants/SFE_ARTEMIS_DK/mbed/.ld-symbols index f00dea85..702d3b6d 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/.ld-symbols +++ b/variants/SFE_ARTEMIS_DK/mbed/.ld-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1602967016.8622837 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_DK -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_DK -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701297458.0153637 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_DK -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_DK -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_DK/mbed/libmbed-os.a b/variants/SFE_ARTEMIS_DK/mbed/libmbed-os.a index 8aecee83..7e7767b5 100644 Binary files a/variants/SFE_ARTEMIS_DK/mbed/libmbed-os.a and b/variants/SFE_ARTEMIS_DK/mbed/libmbed-os.a differ diff --git a/variants/SFE_ARTEMIS_DK/mbed/mbed_config.h b/variants/SFE_ARTEMIS_DK/mbed/mbed_config.h index dfbc8694..74c06495 100644 --- a/variants/SFE_ARTEMIS_DK/mbed/mbed_config.h +++ b/variants/SFE_ARTEMIS_DK/mbed/mbed_config.h @@ -273,7 +273,7 @@ #define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform #define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform -#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 0 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform #define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform #define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.asm-macros b/variants/SFE_ARTEMIS_MM_PB/mbed/.asm-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.asm-macros +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.asm-symbols b/variants/SFE_ARTEMIS_MM_PB/mbed/.asm-symbols index b5f18d87..a7e35492 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.asm-symbols +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.asm-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.c-flags b/variants/SFE_ARTEMIS_MM_PB/mbed/.c-flags index 9573998a..33d97d23 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.c-flags +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.c-flags @@ -1 +1 @@ --c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -MMD -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.c-macros b/variants/SFE_ARTEMIS_MM_PB/mbed/.c-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.c-macros +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.c-symbols b/variants/SFE_ARTEMIS_MM_PB/mbed/.c-symbols index de425dc6..9ffc5cfa 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.c-symbols +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.c-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_MM_PB -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_MM_PB -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_MM_PB -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_MM_PB -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-flags b/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-flags index 4267aab9..9de4dbde 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-flags +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-flags @@ -1 +1 @@ --Wvla -c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-macros b/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-macros +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-symbols b/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-symbols index de425dc6..9ffc5cfa 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-symbols +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.cxx-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_MM_PB -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_MM_PB -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_MM_PB -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_MM_PB -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.includes b/variants/SFE_ARTEMIS_MM_PB/mbed/.includes index f50d7372..c8007d6f 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.includes +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.includes @@ -290,10 +290,6 @@ "-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Source" "-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro" "-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3" -"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_hm01b0" -"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_hm01b0/hm01b0" -"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_lis2dh12" -"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/COMPONENT_lis2dh12/lis2dh12" "-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_MM_PB" "-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_MM_PB/bsp" "-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/device" diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-flags b/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-flags index 65528a50..6341b37b 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-flags +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-flags @@ -1 +1 @@ --DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-macros b/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-macros +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-symbols b/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-symbols index 16e08615..bc3be6c3 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-symbols +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/.ld-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1602967909.9114528 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_MM_PB -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_MM_PB -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701297955.4142845 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_MM_PB -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_MM_PB -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/libmbed-os.a b/variants/SFE_ARTEMIS_MM_PB/mbed/libmbed-os.a index 3771ae1a..0b0698e5 100644 Binary files a/variants/SFE_ARTEMIS_MM_PB/mbed/libmbed-os.a and b/variants/SFE_ARTEMIS_MM_PB/mbed/libmbed-os.a differ diff --git a/variants/SFE_ARTEMIS_MM_PB/mbed/mbed_config.h b/variants/SFE_ARTEMIS_MM_PB/mbed/mbed_config.h index dfbc8694..74c06495 100644 --- a/variants/SFE_ARTEMIS_MM_PB/mbed/mbed_config.h +++ b/variants/SFE_ARTEMIS_MM_PB/mbed/mbed_config.h @@ -273,7 +273,7 @@ #define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform #define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform -#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 0 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform #define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform #define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform diff --git a/variants/SFE_ARTEMIS_MM_PB/variant.cpp b/variants/SFE_ARTEMIS_MM_PB/variant.cpp index 77b96259..7a2e7fff 100644 --- a/variants/SFE_ARTEMIS_MM_PB/variant.cpp +++ b/variants/SFE_ARTEMIS_MM_PB/variant.cpp @@ -5,6 +5,8 @@ #include "variant.h" +UART Serial1(TX1, RX1, RTS1, CTS1); + void initVariant(void){ } diff --git a/variants/SFE_ARTEMIS_MM_PB/variant.h b/variants/SFE_ARTEMIS_MM_PB/variant.h index 270ed127..be534bd4 100644 --- a/variants/SFE_ARTEMIS_MM_PB/variant.h +++ b/variants/SFE_ARTEMIS_MM_PB/variant.h @@ -29,6 +29,9 @@ #define VARIANT_Wire1_SDA I2C1_SDA #define VARIANT_Wire1_SCL I2C1_SCL +// UART +extern UART Serial1; + // temporary patch to support Arduino SD library #define SS SPI_CS #define MOSI SPI_SDO diff --git a/variants/SFE_ARTEMIS_MODULE/config/pins.cpp b/variants/SFE_ARTEMIS_MODULE/config/pins.cpp new file mode 100644 index 00000000..13a8497f --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/config/pins.cpp @@ -0,0 +1,57 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#include "bridge/pins.h" + +const pin_size_t variantPinCount = 45; + +PinState variantPinStates[variantPinCount] = { + {D0, 0, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D1, 1, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D2, 2, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D3, 3, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D4, 4, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D5, 5, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D6, 6, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D7, 7, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D8, 8, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D9, 9, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D10, 10, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D11, 11, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D12, 12, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D13, 13, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D14, 14, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D15, 15, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D16, 16, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D17, 17, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D18, 18, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D19, 19, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D20, 20, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D21, 21, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D22, 22, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D23, 23, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D24, 24, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D25, 25, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D26, 26, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D27, 27, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D28, 28, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D29, 29, NULL, /*NULL, NULL, NULL,*/ NULL}, + // {D30, 30, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D31, 31, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D32, 32, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D33, 33, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D34, 34, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D35, 35, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D36, 36, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D37, 37, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D38, 38, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D39, 39, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D40, 40, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D41, 41, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D42, 42, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D43, 43, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D44, 44, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D45, 45, NULL, /*NULL, NULL, NULL,*/ NULL}, +}; diff --git a/variants/SFE_ARTEMIS_MODULE/config/pins.h b/variants/SFE_ARTEMIS_MODULE/config/pins.h new file mode 100644 index 00000000..5b51be86 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/config/pins.h @@ -0,0 +1,12 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#ifndef _VARIANT_PINS_H_ +#define _VARIANT_PINS_H_ + +#define LED_BUILTIN LED1 //default is pin5, this value can be changed to a different number here + // or pins can be defined in mbed and the library rebuilt + +#endif // _VARIANT_PINS_H_ \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.asm-flags b/variants/SFE_ARTEMIS_MODULE/mbed/.asm-flags new file mode 100644 index 00000000..55a2bb0a --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.asm-flags @@ -0,0 +1 @@ +-c -x assembler-with-cpp \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.asm-macros b/variants/SFE_ARTEMIS_MODULE/mbed/.asm-macros new file mode 100644 index 00000000..2d6e1ff8 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.asm-symbols b/variants/SFE_ARTEMIS_MODULE/mbed/.asm-symbols new file mode 100644 index 00000000..a7e35492 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.asm-symbols @@ -0,0 +1 @@ +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.c-flags b/variants/SFE_ARTEMIS_MODULE/mbed/.c-flags new file mode 100644 index 00000000..33d97d23 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.c-flags @@ -0,0 +1 @@ +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.c-macros b/variants/SFE_ARTEMIS_MODULE/mbed/.c-macros new file mode 100644 index 00000000..2d6e1ff8 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.c-symbols b/variants/SFE_ARTEMIS_MODULE/mbed/.c-symbols new file mode 100644 index 00000000..6c4cad86 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.c-symbols @@ -0,0 +1 @@ +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_MODULE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_MODULE -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.cxx-flags b/variants/SFE_ARTEMIS_MODULE/mbed/.cxx-flags new file mode 100644 index 00000000..9de4dbde --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.cxx-flags @@ -0,0 +1 @@ +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.cxx-macros b/variants/SFE_ARTEMIS_MODULE/mbed/.cxx-macros new file mode 100644 index 00000000..2d6e1ff8 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.cxx-symbols b/variants/SFE_ARTEMIS_MODULE/mbed/.cxx-symbols new file mode 100644 index 00000000..6c4cad86 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.cxx-symbols @@ -0,0 +1 @@ +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_MODULE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_MODULE -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.includes b/variants/SFE_ARTEMIS_MODULE/mbed/.includes new file mode 100644 index 00000000..a9c61975 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.includes @@ -0,0 +1,306 @@ +"-iwithprefixbeforembed-os" +"-iwithprefixbeforembed-os/cmsis" +"-iwithprefixbeforembed-os/cmsis/TARGET_CORTEX_M" +"-iwithprefixbeforembed-os/components" +"-iwithprefixbeforembed-os/components/802.15.4_RF" +"-iwithprefixbeforembed-os/components/802.15.4_RF/atmel-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/atmel-rf-driver/atmel-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/atmel-rf-driver/source" +"-iwithprefixbeforembed-os/components/802.15.4_RF/mcr20a-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/mcr20a-rf-driver/mcr20a-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/mcr20a-rf-driver/source" +"-iwithprefixbeforembed-os/components/802.15.4_RF/stm-s2lp-rf-driver" +"-iwithprefixbeforembed-os/components/802.15.4_RF/stm-s2lp-rf-driver/source" +"-iwithprefixbeforembed-os/components/802.15.4_RF/stm-s2lp-rf-driver/stm-s2lp-rf-driver" +"-iwithprefixbeforembed-os/components/storage/blockdevice/COMPONENT_FLASHIAP" +"-iwithprefixbeforembed-os/components/storage/blockdevice/COMPONENT_FLASHIAP/COMMON" +"-iwithprefixbeforembed-os/components/wifi" +"-iwithprefixbeforembed-os/components/wifi/esp8266-driver" +"-iwithprefixbeforembed-os/components/wifi/esp8266-driver/ESP8266" +"-iwithprefixbeforembed-os/drivers/internal" +"-iwithprefixbeforembed-os/events" +"-iwithprefixbeforembed-os/events/internal" +"-iwithprefixbeforembed-os/features" +"-iwithprefixbeforembed-os/features/FEATURE_BLE" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/common" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/gap" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/generic" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/pal" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/ble/services" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/source" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/source/gap" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/source/generic" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_Ambiq_Micro" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_Ambiq_Micro/TARGET_Apollo3" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_Ambiq_Micro/hal" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_Ambiq_Micro/hal/apollo3" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/driver" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/source" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/include" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/hci" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/hci/dual_chip" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/sec" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/sec/common" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/att" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/cfg" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/dm" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/hci" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/l2c" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/ble-host/sources/stack/smp" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/platform" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/platform/include" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/include" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/include/util" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/sources" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/sources/port" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack/wsf/sources/port/baremetal" +"-iwithprefixbeforembed-os/features/FEATURE_BLE/targets/TARGET_CORDIO/stack_adaptation" +"-iwithprefixbeforembed-os/features/cellular" +"-iwithprefixbeforembed-os/features/cellular/framework" +"-iwithprefixbeforembed-os/features/cellular/framework/API" +"-iwithprefixbeforembed-os/features/cellular/framework/AT" +"-iwithprefixbeforembed-os/features/cellular/framework/common" +"-iwithprefixbeforembed-os/features/cellular/framework/device" +"-iwithprefixbeforembed-os/features/cellular/framework/targets" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/Altair" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/Altair/ALT1250" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/Altair/ALT1250/PPP" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/GEMALTO" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/GEMALTO/CINTERION" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/GENERIC" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/GENERIC/GENERIC_AT3GPP" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/MultiTech" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/MultiTech/DragonflyNano" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/MultiTech/DragonflyNano/PPP" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/BC95" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/BG96" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/EC2X" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/M26" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/QUECTEL/UG96" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/RiotMicro" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/RiotMicro/AT" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/TELIT" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/TELIT/HE910" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/TELIT/ME310" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/TELIT/ME910" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/UBLOX" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/UBLOX/AT" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/UBLOX/N2XX" +"-iwithprefixbeforembed-os/features/cellular/framework/targets/UBLOX/PPP" +"-iwithprefixbeforembed-os/features/device_key" +"-iwithprefixbeforembed-os/features/device_key/source" +"-iwithprefixbeforembed-os/features/frameworks" +"-iwithprefixbeforembed-os/features/frameworks/greentea-client" +"-iwithprefixbeforembed-os/features/frameworks/greentea-client/greentea-client" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-cli" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-cli/mbed-client-cli" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-randlib" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-randlib/mbed-client-randlib" +"-iwithprefixbeforembed-os/features/frameworks/mbed-client-randlib/mbed-client-randlib/platform" +"-iwithprefixbeforembed-os/features/frameworks/mbed-coap" +"-iwithprefixbeforembed-os/features/frameworks/mbed-coap/mbed-coap" +"-iwithprefixbeforembed-os/features/frameworks/mbed-coap/source" +"-iwithprefixbeforembed-os/features/frameworks/mbed-coap/source/include" +"-iwithprefixbeforembed-os/features/frameworks/mbed-trace" +"-iwithprefixbeforembed-os/features/frameworks/mbed-trace/mbed-trace" +"-iwithprefixbeforembed-os/features/frameworks/nanostack-libservice" +"-iwithprefixbeforembed-os/features/frameworks/nanostack-libservice/mbed-client-libservice" +"-iwithprefixbeforembed-os/features/frameworks/nanostack-libservice/mbed-client-libservice/platform" +"-iwithprefixbeforembed-os/features/frameworks/unity" +"-iwithprefixbeforembed-os/features/frameworks/unity/unity" +"-iwithprefixbeforembed-os/features/frameworks/utest" +"-iwithprefixbeforembed-os/features/frameworks/utest/utest" +"-iwithprefixbeforembed-os/features/lorawan" +"-iwithprefixbeforembed-os/features/lorawan/lorastack" +"-iwithprefixbeforembed-os/features/lorawan/lorastack/mac" +"-iwithprefixbeforembed-os/features/lorawan/lorastack/phy" +"-iwithprefixbeforembed-os/features/lorawan/system" +"-iwithprefixbeforembed-os/features/lwipstack" +"-iwithprefixbeforembed-os/features/lwipstack/lwip" +"-iwithprefixbeforembed-os/features/lwipstack/lwip-sys" +"-iwithprefixbeforembed-os/features/lwipstack/lwip-sys/arch" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat/posix" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat/posix/arpa" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat/posix/net" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/compat/posix/sys" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/lwip" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/lwip/priv" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/lwip/prot" +"-iwithprefixbeforembed-os/features/lwipstack/lwip/src/include/netif" +"-iwithprefixbeforembed-os/features/mbedtls" +"-iwithprefixbeforembed-os/features/mbedtls/inc" +"-iwithprefixbeforembed-os/features/mbedtls/inc/mbedtls" +"-iwithprefixbeforembed-os/features/mbedtls/platform" +"-iwithprefixbeforembed-os/features/mbedtls/platform/inc" +"-iwithprefixbeforembed-os/features/nanostack" +"-iwithprefixbeforembed-os/features/nanostack/coap-service" +"-iwithprefixbeforembed-os/features/nanostack/coap-service/coap-service" +"-iwithprefixbeforembed-os/features/nanostack/coap-service/source" +"-iwithprefixbeforembed-os/features/nanostack/coap-service/source/include" +"-iwithprefixbeforembed-os/features/nanostack/mbed-mesh-api" +"-iwithprefixbeforembed-os/features/nanostack/mbed-mesh-api/mbed-mesh-api" +"-iwithprefixbeforembed-os/features/nanostack/mbed-mesh-api/source" +"-iwithprefixbeforembed-os/features/nanostack/mbed-mesh-api/source/include" +"-iwithprefixbeforembed-os/features/nanostack/nanostack-hal-mbed-cmsis-rtos" +"-iwithprefixbeforembed-os/features/nanostack/nanostack-interface" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack-eventloop" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack-eventloop/nanostack-event-loop" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack-eventloop/nanostack-event-loop/platform" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack-eventloop/source" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/nanostack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/nanostack/platform" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Bootstraps" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Fragmentation" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/IPHC_Decode" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/MAC" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Mesh" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/ND" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/NVM" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Thread" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/6LoWPAN/ws" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/BorderRouter" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Common_Protocols" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Core" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Core/include" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/DHCPv6_Server" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/DHCPv6_client" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MAC" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MAC/IEEE802_15_4" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MAC/virtual_rf" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MLE" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/MPL" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/NWK_INTERFACE" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/NWK_INTERFACE/Include" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/RPL" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/Common" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/PANA" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/TLS" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/eapol" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/kmp" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/eap_tls_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/fwh_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/gkh_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/key_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Security/protocols/tls_sec_prot" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/Neighbor_cache" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/Trickle" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/blacklist" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/etx" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/fhss" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/fnv_hash" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/hmac" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/ieee_802_11" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/load_balance" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mac_neighbor_table" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/port" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/port/compiler" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/port/cpu" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/dns" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/mdns" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/poll" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/services/serial" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mdns/fnet/fnet_stack/stack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/mle_service" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/nd_proxy" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/nist_aes_kw" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/pan_blacklist" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/utils" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/Service_Libs/whiteboard" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/configs" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/configs/base" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/ipv6_stack" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/libDHCPv6" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/libNET" +"-iwithprefixbeforembed-os/features/nanostack/sal-stack-nanostack/source/libNET/src" +"-iwithprefixbeforembed-os/features/netsocket" +"-iwithprefixbeforembed-os/features/netsocket/ppp" +"-iwithprefixbeforembed-os/features/netsocket/ppp/include" +"-iwithprefixbeforembed-os/features/netsocket/ppp/include/polarssl" +"-iwithprefixbeforembed-os/features/nfc" +"-iwithprefixbeforembed-os/features/nfc/acore" +"-iwithprefixbeforembed-os/features/nfc/acore/acore" +"-iwithprefixbeforembed-os/features/nfc/controllers" +"-iwithprefixbeforembed-os/features/nfc/nfc" +"-iwithprefixbeforembed-os/features/nfc/nfc/ndef" +"-iwithprefixbeforembed-os/features/nfc/nfc/ndef/common" +"-iwithprefixbeforembed-os/features/nfc/stack" +"-iwithprefixbeforembed-os/features/nfc/stack/ndef" +"-iwithprefixbeforembed-os/features/nfc/stack/platform" +"-iwithprefixbeforembed-os/features/nfc/stack/tech" +"-iwithprefixbeforembed-os/features/nfc/stack/tech/iso7816" +"-iwithprefixbeforembed-os/features/nfc/stack/tech/isodep" +"-iwithprefixbeforembed-os/features/nfc/stack/tech/type4" +"-iwithprefixbeforembed-os/features/nfc/stack/transceiver" +"-iwithprefixbeforembed-os/features/nfc/stack/transceiver/pn512" +"-iwithprefixbeforembed-os/features/storage" +"-iwithprefixbeforembed-os/features/storage/blockdevice" +"-iwithprefixbeforembed-os/features/storage/filesystem" +"-iwithprefixbeforembed-os/features/storage/filesystem/fat" +"-iwithprefixbeforembed-os/features/storage/filesystem/fat/ChaN" +"-iwithprefixbeforembed-os/features/storage/filesystem/littlefs" +"-iwithprefixbeforembed-os/features/storage/filesystem/littlefs/littlefs" +"-iwithprefixbeforembed-os/features/storage/filesystem/littlefsv2" +"-iwithprefixbeforembed-os/features/storage/filesystem/littlefsv2/littlefs" +"-iwithprefixbeforembed-os/features/storage/kvstore" +"-iwithprefixbeforembed-os/features/storage/kvstore/conf" +"-iwithprefixbeforembed-os/features/storage/kvstore/direct_access_devicekey" +"-iwithprefixbeforembed-os/features/storage/kvstore/filesystemstore" +"-iwithprefixbeforembed-os/features/storage/kvstore/global_api" +"-iwithprefixbeforembed-os/features/storage/kvstore/include" +"-iwithprefixbeforembed-os/features/storage/kvstore/kv_map" +"-iwithprefixbeforembed-os/features/storage/kvstore/securestore" +"-iwithprefixbeforembed-os/features/storage/kvstore/tdbstore" +"-iwithprefixbeforembed-os/hal" +"-iwithprefixbeforembed-os/hal/usb" +"-iwithprefixbeforembed-os/platform" +"-iwithprefixbeforembed-os/platform/cxxsupport" +"-iwithprefixbeforembed-os/platform/internal" +"-iwithprefixbeforembed-os/platform/source" +"-iwithprefixbeforembed-os/platform/source/minimal-printf" +"-iwithprefixbeforembed-os/rtos" +"-iwithprefixbeforembed-os/rtos/source" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx4" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/Include" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/RTX" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Config" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Include" +"-iwithprefixbeforembed-os/rtos/source/TARGET_CORTEX/rtx5/RTX/Source" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_MODULE" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/TARGET_SFE_ARTEMIS_MODULE/bsp" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/device" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/CMSIS" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/CMSIS/AmbiqMicro" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/CMSIS/AmbiqMicro/Include" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/mcu" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/mcu/apollo3" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/mcu/apollo3/hal" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/TARGET_Apollo3/sdk/mcu/apollo3/regs" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/sdk" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/sdk/devices" +"-iwithprefixbeforembed-os/targets/TARGET_Ambiq_Micro/sdk/utils" diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.ld-flags b/variants/SFE_ARTEMIS_MODULE/mbed/.ld-flags new file mode 100644 index 00000000..6341b37b --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.ld-flags @@ -0,0 +1 @@ +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.ld-macros b/variants/SFE_ARTEMIS_MODULE/mbed/.ld-macros new file mode 100644 index 00000000..2d6e1ff8 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/.ld-symbols b/variants/SFE_ARTEMIS_MODULE/mbed/.ld-symbols new file mode 100644 index 00000000..c8ef00a5 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/.ld-symbols @@ -0,0 +1 @@ +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701298055.5059364 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_MODULE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_MODULE -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/libmbed-os.a b/variants/SFE_ARTEMIS_MODULE/mbed/libmbed-os.a new file mode 100644 index 00000000..532c3298 Binary files /dev/null and b/variants/SFE_ARTEMIS_MODULE/mbed/libmbed-os.a differ diff --git a/variants/SFE_ARTEMIS_MODULE/mbed/mbed_config.h b/variants/SFE_ARTEMIS_MODULE/mbed/mbed_config.h new file mode 100644 index 00000000..74c06495 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/mbed/mbed_config.h @@ -0,0 +1,398 @@ +/* + * mbed SDK + * Copyright (c) 2017 ARM Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Automatically generated configuration file. +// DO NOT EDIT, content will be overwritten. + +#ifndef __MBED_CONFIG_DATA__ +#define __MBED_CONFIG_DATA__ + +// Configuration parameters +#define ATT_NUM_SIMUL_NTF 1 // set by library:cordio +#define ATT_NUM_SIMUL_WRITE_CMD 1 // set by library:cordio +#define BLE_FEATURE_EXTENDED_ADVERTISING 1 // set by library:ble +#define BLE_FEATURE_GATT_CLIENT 1 // set by library:ble +#define BLE_FEATURE_GATT_SERVER 1 // set by library:ble +#define BLE_FEATURE_PERIODIC_ADVERTISING 1 // set by library:ble +#define BLE_FEATURE_PHY_MANAGEMENT 1 // set by library:ble +#define BLE_FEATURE_PRIVACY 1 // set by library:ble +#define BLE_FEATURE_SECURE_CONNECTIONS 1 // set by library:ble +#define BLE_FEATURE_SECURITY 1 // set by library:ble +#define BLE_FEATURE_SIGNING 1 // set by library:ble +#define BLE_FEATURE_WHITELIST 1 // set by library:ble +#define BLE_ROLE_BROADCASTER 1 // set by library:ble +#define BLE_ROLE_CENTRAL 1 // set by library:ble +#define BLE_ROLE_OBSERVER 1 // set by library:ble +#define BLE_ROLE_PERIPHERAL 1 // set by library:ble +#define BLE_SECURITY_DATABASE_MAX_ENTRIES 5 // set by library:ble +#define DM_CONN_MAX 3 // set by library:cordio +#define DM_NUM_ADV_SETS 3 // set by library:cordio +#define DM_NUM_PHYS 3 // set by library:cordio +#define DM_SYNC_MAX 1 // set by library:cordio +#define L2C_COC_CHAN_MAX 1 // set by library:cordio +#define L2C_COC_REG_MAX 1 // set by library:cordio +#define MBED_CONF_ALT1250_PPP_BAUDRATE 115200 // set by library:ALT1250_PPP +#define MBED_CONF_ALT1250_PPP_PROVIDE_DEFAULT 0 // set by library:ALT1250_PPP +#define MBED_CONF_ATMEL_RF_ASSUME_SPACED_SPI 0 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_FULL_SPI_SPEED 7500000 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_FULL_SPI_SPEED_BYTE_SPACING 250 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_IRQ_THREAD_STACK_SIZE 1024 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_LOW_SPI_SPEED 3750000 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_PROVIDE_DEFAULT 0 // set by library:atmel-rf +#define MBED_CONF_ATMEL_RF_USE_SPI_SPACING_API 0 // set by library:atmel-rf +#define MBED_CONF_BLE_PRESENT 1 // set by library:ble +#define MBED_CONF_CELLULAR_CONTROL_PLANE_OPT 0 // set by library:cellular +#define MBED_CONF_CELLULAR_DEBUG_AT 0 // set by library:cellular +#define MBED_CONF_CELLULAR_MAX_CP_DATA_RECV_LEN 1358 // set by library:cellular +#define MBED_CONF_CELLULAR_RANDOM_MAX_START_DELAY 0 // set by library:cellular +#define MBED_CONF_CELLULAR_USE_APN_LOOKUP 0 // set by library:cellular +#define MBED_CONF_CELLULAR_USE_SMS 0 // set by library:cellular +#define MBED_CONF_CORDIO_DESIRED_ATT_MTU 23 // set by library:cordio +#define MBED_CONF_CORDIO_MAX_PREPARED_WRITES 4 // set by library:cordio +#define MBED_CONF_CORDIO_PREFERRED_TX_POWER 0 // set by library:cordio +#define MBED_CONF_CORDIO_ROUTE_UNHANDLED_COMMAND_COMPLETE_EVENTS 1 // set by library:cordio +#define MBED_CONF_CORDIO_RX_ACL_BUFFER_SIZE 70 // set by library:cordio +#define MBED_CONF_DRIVERS_QSPI_CSN QSPI_FLASH1_CSN // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_IO0 QSPI_FLASH1_IO0 // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_IO1 QSPI_FLASH1_IO1 // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_IO2 QSPI_FLASH1_IO2 // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_IO3 QSPI_FLASH1_IO3 // set by library:drivers +#define MBED_CONF_DRIVERS_QSPI_SCK QSPI_FLASH1_SCK // set by library:drivers +#define MBED_CONF_DRIVERS_UART_SERIAL_RXBUF_SIZE 256 // set by library:drivers +#define MBED_CONF_DRIVERS_UART_SERIAL_TXBUF_SIZE 256 // set by library:drivers +#define MBED_CONF_ESP8266_BUILT_IN_DNS 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_DEBUG 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_POWER_OFF_TIME_MS 3 // set by library:esp8266 +#define MBED_CONF_ESP8266_POWER_ON_POLARITY 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_POWER_ON_TIME_MS 3 // set by library:esp8266 +#define MBED_CONF_ESP8266_PROVIDE_DEFAULT 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_SERIAL_BAUDRATE 115200 // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_ENABLE 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_SERVER0 "" // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_SERVER1 "" // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_SERVER2 "" // set by library:esp8266 +#define MBED_CONF_ESP8266_SNTP_TIMEZONE 0 // set by library:esp8266 +#define MBED_CONF_ESP8266_SOCKET_BUFSIZE 8192 // set by library:esp8266 +#define MBED_CONF_EVENTS_PRESENT 1 // set by library:events +#define MBED_CONF_EVENTS_SHARED_DISPATCH_FROM_APPLICATION 0 // set by library:events +#define MBED_CONF_EVENTS_SHARED_EVENTSIZE 768 // set by library:events +#define MBED_CONF_EVENTS_SHARED_HIGHPRIO_EVENTSIZE 256 // set by library:events +#define MBED_CONF_EVENTS_SHARED_HIGHPRIO_STACKSIZE 1024 // set by library:events +#define MBED_CONF_EVENTS_SHARED_STACKSIZE 2048 // set by library:events +#define MBED_CONF_EVENTS_USE_LOWPOWER_TIMER_TICKER 0 // set by library:events +#define MBED_CONF_FAT_CHAN_FFS_DBG 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_CODE_PAGE 437 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_EXFAT 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_HEAPBUF 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_LOCK 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_MINIMIZE 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_NOFSINFO 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_NORTC 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_READONLY 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_REENTRANT 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_RPATH 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_TIMEOUT 1000 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_FS_TINY 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_LFN_BUF 255 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_LFN_UNICODE 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_MAX_LFN 255 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_MAX_SS 4096 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_MIN_SS 512 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_MULTI_PARTITION 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_NORTC_MDAY 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_NORTC_MON 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_NORTC_YEAR 2017 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_SFN_BUF 12 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_STRF_ENCODE 3 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_STR_VOLUME_ID 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_SYNC_T HANDLE // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_CHMOD 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_EXPAND 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_FASTSEEK 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_FIND 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_FORWARD 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_LABEL 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_LFN 3 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_MKFS 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_STRFUNC 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_USE_TRIM 1 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_VOLUMES 4 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FF_VOLUME_STRS "RAM","NAND","CF","SD","SD2","USB","USB2","USB3" // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FLUSH_ON_NEW_CLUSTER 0 // set by library:fat_chan +#define MBED_CONF_FAT_CHAN_FLUSH_ON_NEW_SECTOR 1 // set by library:fat_chan +#define MBED_CONF_FILESYSTEM_PRESENT 1 // set by library:filesystem +#define MBED_CONF_FLASHIAP_BLOCK_DEVICE_BASE_ADDRESS 0xFFFFFFFF // set by library:flashiap-block-device +#define MBED_CONF_FLASHIAP_BLOCK_DEVICE_SIZE 0 // set by library:flashiap-block-device +#define MBED_CONF_GEMALTO_CINTERION_BAUDRATE 115200 // set by library:GEMALTO_CINTERION +#define MBED_CONF_GEMALTO_CINTERION_PROVIDE_DEFAULT 0 // set by library:GEMALTO_CINTERION +#define MBED_CONF_GENERIC_AT3GPP_BAUDRATE 115200 // set by library:GENERIC_AT3GPP +#define MBED_CONF_GENERIC_AT3GPP_PROVIDE_DEFAULT 0 // set by library:GENERIC_AT3GPP +#define MBED_CONF_LORA_ADR_ON 1 // set by library:lora +#define MBED_CONF_LORA_APPLICATION_EUI {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_APPLICATION_KEY {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_APPSKEY {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_APP_PORT 15 // set by library:lora +#define MBED_CONF_LORA_AUTOMATIC_UPLINK_MESSAGE 1 // set by library:lora +#define MBED_CONF_LORA_DEVICE_ADDRESS 0x00000000 // set by library:lora +#define MBED_CONF_LORA_DEVICE_EUI {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_DOWNLINK_PREAMBLE_LENGTH 5 // set by library:lora +#define MBED_CONF_LORA_DUTY_CYCLE_ON 1 // set by library:lora +#define MBED_CONF_LORA_DUTY_CYCLE_ON_JOIN 1 // set by library:lora +#define MBED_CONF_LORA_FSB_MASK {0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0x00FF} // set by library:lora +#define MBED_CONF_LORA_FSB_MASK_CHINA {0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF} // set by library:lora +#define MBED_CONF_LORA_LBT_ON 0 // set by library:lora +#define MBED_CONF_LORA_MAX_SYS_RX_ERROR 5 // set by library:lora +#define MBED_CONF_LORA_NB_TRIALS 12 // set by library:lora +#define MBED_CONF_LORA_NWKSKEY {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} // set by library:lora +#define MBED_CONF_LORA_OVER_THE_AIR_ACTIVATION 1 // set by library:lora +#define MBED_CONF_LORA_PHY EU868 // set by library:lora +#define MBED_CONF_LORA_PUBLIC_NETWORK 1 // set by library:lora +#define MBED_CONF_LORA_TX_MAX_SIZE 64 // set by library:lora +#define MBED_CONF_LORA_UPLINK_PREAMBLE_LENGTH 8 // set by library:lora +#define MBED_CONF_LORA_WAKEUP_TIME 5 // set by library:lora +#define MBED_CONF_LWIP_ADDR_TIMEOUT 5 // set by library:lwip +#define MBED_CONF_LWIP_ADDR_TIMEOUT_MODE 1 // set by library:lwip +#define MBED_CONF_LWIP_DEBUG_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_DEFAULT_THREAD_STACKSIZE 512 // set by library:lwip +#define MBED_CONF_LWIP_DHCP_TIMEOUT 60 // set by library:lwip +#define MBED_CONF_LWIP_ENABLE_PPP_TRACE 0 // set by library:lwip +#define MBED_CONF_LWIP_ETHERNET_ENABLED 1 // set by library:lwip +#define MBED_CONF_LWIP_IPV4_ENABLED 1 // set by library:lwip +#define MBED_CONF_LWIP_IPV6_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_IP_VER_PREF 4 // set by library:lwip +#define MBED_CONF_LWIP_L3IP_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_MBOX_SIZE 8 // set by library:lwip +#define MBED_CONF_LWIP_MEMP_NUM_TCPIP_MSG_INPKT 8 // set by library:lwip +#define MBED_CONF_LWIP_MEMP_NUM_TCP_SEG 16 // set by library:lwip +#define MBED_CONF_LWIP_MEM_SIZE 1600 // set by library:lwip +#define MBED_CONF_LWIP_NUM_NETBUF 8 // set by library:lwip +#define MBED_CONF_LWIP_NUM_PBUF 8 // set by library:lwip +#define MBED_CONF_LWIP_PBUF_POOL_SIZE 5 // set by library:lwip +#define MBED_CONF_LWIP_PPP_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_PPP_IPV4_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_PPP_IPV6_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_PPP_THREAD_STACKSIZE 768 // set by library:lwip +#define MBED_CONF_LWIP_PRESENT 1 // set by library:lwip +#define MBED_CONF_LWIP_RAW_SOCKET_ENABLED 0 // set by library:lwip +#define MBED_CONF_LWIP_SOCKET_MAX 4 // set by library:lwip +#define MBED_CONF_LWIP_TCPIP_THREAD_PRIORITY osPriorityNormal // set by library:lwip +#define MBED_CONF_LWIP_TCPIP_THREAD_STACKSIZE 1200 // set by library:lwip +#define MBED_CONF_LWIP_TCP_CLOSE_TIMEOUT 1000 // set by library:lwip +#define MBED_CONF_LWIP_TCP_ENABLED 1 // set by library:lwip +#define MBED_CONF_LWIP_TCP_MAXRTX 6 // set by library:lwip +#define MBED_CONF_LWIP_TCP_MSS 536 // set by library:lwip +#define MBED_CONF_LWIP_TCP_SERVER_MAX 4 // set by library:lwip +#define MBED_CONF_LWIP_TCP_SND_BUF (2 * TCP_MSS) // set by library:lwip +#define MBED_CONF_LWIP_TCP_SOCKET_MAX 4 // set by library:lwip +#define MBED_CONF_LWIP_TCP_SYNMAXRTX 6 // set by library:lwip +#define MBED_CONF_LWIP_TCP_WND (4 * TCP_MSS) // set by library:lwip +#define MBED_CONF_LWIP_UDP_SOCKET_MAX 4 // set by library:lwip +#define MBED_CONF_LWIP_USE_MBED_TRACE 0 // set by library:lwip +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_CHANNEL 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_CHANNEL_MASK 0x7fff800 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_CHANNEL_PAGE 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_DEVICE_TYPE NET_6LOWPAN_ROUTER // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_PANID_FILTER 0xffff // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_PSK_KEY {0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf} // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_PSK_KEY_ID 1 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_SECURITY_MODE NONE // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_6LOWPAN_ND_SEC_LEVEL 5 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_HEAP_SIZE 32500 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_HEAP_STAT_INFO NULL // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_MAC_NEIGH_TABLE_SIZE 32 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_CHANNEL 22 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_CHANNEL_MASK 0x7fff800 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_CHANNEL_PAGE 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_COMMISSIONING_DATASET_TIMESTAMP 0x10000 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_EXTENDED_PANID {0xf1, 0xb5, 0xa1, 0xb2,0xc4, 0xd5, 0xa1, 0xbd } // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_ML_PREFIX {0xfd, 0x0, 0x0d, 0xb8, 0x0, 0x0, 0x0, 0x0} // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_NETWORK_NAME "Thread Network" // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_PANID 0x0700 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_CONFIG_PSKC {0xc8, 0xa6, 0x2e, 0xae, 0xf3, 0x68, 0xf3, 0x46, 0xa9, 0x9e, 0x57, 0x85, 0x98, 0x9d, 0x1c, 0xd0} // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_DEVICE_TYPE MESH_DEVICE_TYPE_THREAD_ROUTER // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_MASTER_KEY {0x10, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88, 0x99, 0xaa, 0xbb, 0xcc, 0xdd, 0xee, 0xff} // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_PSKD "ABCDEFGH" // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_SECURITY_POLICY 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_THREAD_USE_STATIC_LINK_CONFIG 1 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_USE_MALLOC_FOR_HEAP 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_BC_CHANNEL_FUNCTION 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_BC_DWELL_INTERVAL 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_BC_FIXED_CHANNEL 65535 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_BC_INTERVAL 0 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_DEVICE_TYPE MESH_DEVICE_TYPE_WISUN_ROUTER // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_NETWORK_NAME "Wi-SUN Network" // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_OPERATING_CLASS 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_OPERATING_MODE 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_REGULATORY_DOMAIN 3 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_UC_CHANNEL_FUNCTION 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_UC_DWELL_INTERVAL 255 // set by library:mbed-mesh-api +#define MBED_CONF_MBED_MESH_API_WISUN_UC_FIXED_CHANNEL 65535 // set by library:mbed-mesh-api +#define MBED_CONF_MCR20A_PROVIDE_DEFAULT 0 // set by library:mcr20a +#define MBED_CONF_NANOSTACK_CONFIGURATION nanostack_full // set by library:nanostack +#define MBED_CONF_NANOSTACK_HAL_CRITICAL_SECTION_USABLE_FROM_INTERRUPT 0 // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_EVENT_LOOP_DISPATCH_FROM_APPLICATION 0 // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_EVENT_LOOP_THREAD_STACK_SIZE 6144 // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_EVENT_LOOP_USE_MBED_EVENTS 0 // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_KVSTORE_PATH "/kv/" // set by library:nanostack-hal +#define MBED_CONF_NANOSTACK_HAL_USE_KVSTORE 0 // set by library:nanostack-hal +#define MBED_CONF_NSAPI_DEFAULT_MESH_TYPE THREAD // set by library:nsapi +#define MBED_CONF_NSAPI_DEFAULT_STACK LWIP // set by library:nsapi +#define MBED_CONF_NSAPI_DEFAULT_WIFI_SECURITY NONE // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_ADDRESSES_LIMIT 10 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_CACHE_SIZE 3 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_RESPONSE_WAIT_TIME 10000 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_RETRIES 1 // set by library:nsapi +#define MBED_CONF_NSAPI_DNS_TOTAL_ATTEMPTS 10 // set by library:nsapi +#define MBED_CONF_NSAPI_PRESENT 1 // set by library:nsapi +#define MBED_CONF_NSAPI_SOCKET_STATS_ENABLED 0 // set by library:nsapi +#define MBED_CONF_NSAPI_SOCKET_STATS_MAX_COUNT 10 // set by library:nsapi +#define MBED_CONF_PLATFORM_CALLBACK_COMPARABLE 1 // set by library:platform +#define MBED_CONF_PLATFORM_CALLBACK_NONTRIVIAL 0 // set by library:platform +#define MBED_CONF_PLATFORM_CRASH_CAPTURE_ENABLED 0 // set by library:platform +#define MBED_CONF_PLATFORM_CTHUNK_COUNT_MAX 8 // set by library:platform +#define MBED_CONF_PLATFORM_DEFAULT_SERIAL_BAUD_RATE 9600 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_ALL_THREADS_INFO 0 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_FILENAME_CAPTURE_ENABLED 0 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_HIST_ENABLED 0 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_HIST_SIZE 4 // set by library:platform +#define MBED_CONF_PLATFORM_ERROR_REBOOT_MAX 1 // set by library:platform +#define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform +#define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform +#define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_BUFFERED_SERIAL 0 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_CONVERT_NEWLINES 1 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_CONVERT_TTY_NEWLINES 1 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_FLUSH_AT_EXIT 1 // set by library:platform +#define MBED_CONF_PLATFORM_STDIO_MINIMAL_CONSOLE_ONLY 0 // set by library:platform +#define MBED_CONF_PLATFORM_USE_MPU 1 // set by library:platform +#define MBED_CONF_PPP_ENABLED 0 // set by library:ppp +#define MBED_CONF_PPP_ENABLE_TRACE 0 // set by library:ppp +#define MBED_CONF_PPP_IPV4_ENABLED 1 // set by library:ppp +#define MBED_CONF_PPP_IPV6_ENABLED 0 // set by library:ppp +#define MBED_CONF_PPP_MBED_EVENT_QUEUE 0 // set by library:ppp +#define MBED_CONF_PPP_THREAD_STACKSIZE 816 // set by library:ppp +#define MBED_CONF_QUECTEL_BC95_BAUDRATE 9600 // set by library:QUECTEL_BC95 +#define MBED_CONF_QUECTEL_BC95_PROVIDE_DEFAULT 0 // set by library:QUECTEL_BC95 +#define MBED_CONF_QUECTEL_BG96_BAUDRATE 115200 // set by library:QUECTEL_BG96 +#define MBED_CONF_QUECTEL_BG96_PROVIDE_DEFAULT 0 // set by library:QUECTEL_BG96 +#define MBED_CONF_QUECTEL_EC2X_BAUDRATE 115200 // set by library:QUECTEL_EC2X +#define MBED_CONF_QUECTEL_EC2X_PROVIDE_DEFAULT 0 // set by library:QUECTEL_EC2X +#define MBED_CONF_QUECTEL_EC2X_START_TIMEOUT 15000 // set by library:QUECTEL_EC2X +#define MBED_CONF_QUECTEL_M26_BAUDRATE 115200 // set by library:QUECTEL_M26 +#define MBED_CONF_QUECTEL_M26_PROVIDE_DEFAULT 0 // set by library:QUECTEL_M26 +#define MBED_CONF_QUECTEL_UG96_BAUDRATE 115200 // set by library:QUECTEL_UG96 +#define MBED_CONF_QUECTEL_UG96_PROVIDE_DEFAULT 0 // set by library:QUECTEL_UG96 +#define MBED_CONF_RM1000_AT_BAUDRATE 230400 // set by library:RM1000_AT +#define MBED_CONF_RM1000_AT_PROVIDE_DEFAULT 0 // set by library:RM1000_AT +#define MBED_CONF_RTOS_API_PRESENT 1 // set by library:rtos-api +#define MBED_CONF_RTOS_EVFLAGS_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_IDLE_THREAD_STACK_SIZE 512 // set by library:rtos +#define MBED_CONF_RTOS_IDLE_THREAD_STACK_SIZE_DEBUG_EXTRA 0 // set by library:rtos +#define MBED_CONF_RTOS_IDLE_THREAD_STACK_SIZE_TICKLESS_EXTRA 256 // set by library:rtos +#define MBED_CONF_RTOS_MAIN_THREAD_STACK_SIZE 4096 // set by library:rtos +#define MBED_CONF_RTOS_MSGQUEUE_DATA_SIZE 0 // set by library:rtos +#define MBED_CONF_RTOS_MSGQUEUE_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_MUTEX_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_PRESENT 1 // set by library:rtos +#define MBED_CONF_RTOS_SEMAPHORE_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_THREAD_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_THREAD_STACK_SIZE 4096 // set by library:rtos +#define MBED_CONF_RTOS_THREAD_USER_STACK_SIZE 0 // set by library:rtos +#define MBED_CONF_RTOS_TIMER_NUM 0 // set by library:rtos +#define MBED_CONF_RTOS_TIMER_THREAD_STACK_SIZE 768 // set by library:rtos +#define MBED_CONF_S2LP_PROVIDE_DEFAULT 0 // set by library:s2lp +#define MBED_CONF_SARA4_PPP_BAUDRATE 115200 // set by library:SARA4_PPP +#define MBED_CONF_SARA4_PPP_PROVIDE_DEFAULT 0 // set by library:SARA4_PPP +#define MBED_CONF_STORAGE_DEFAULT_KV kv // set by library:storage +#define MBED_CONF_STORAGE_FILESYSTEM_BLOCKDEVICE default // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_EXTERNAL_BASE_ADDRESS 0 // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_EXTERNAL_SIZE 0 // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_FILESYSTEM default // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_FOLDER_PATH kvstore // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_INTERNAL_BASE_ADDRESS 0 // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_MOUNT_POINT kv // set by library:storage_filesystem +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_BLOCKDEVICE default // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_EXTERNAL_BASE_ADDRESS 0 // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_EXTERNAL_SIZE 0 // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_FILESYSTEM default // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_FOLDER_PATH kvstore // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_NO_RBP_MOUNT_POINT kv // set by library:storage_filesystem_no_rbp +#define MBED_CONF_STORAGE_FILESYSTEM_RBP_INTERNAL_SIZE 0 // set by library:storage_filesystem +#define MBED_CONF_STORAGE_STORAGE_TYPE default // set by library:storage +#define MBED_CONF_STORAGE_TDB_EXTERNAL_BLOCKDEVICE default // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_EXTERNAL_EXTERNAL_BASE_ADDRESS 0 // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_EXTERNAL_EXTERNAL_SIZE 0 // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_EXTERNAL_INTERNAL_BASE_ADDRESS 0 // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_EXTERNAL_NO_RBP_BLOCKDEVICE default // set by library:storage_tdb_external_no_rbp +#define MBED_CONF_STORAGE_TDB_EXTERNAL_NO_RBP_EXTERNAL_BASE_ADDRESS 0 // set by library:storage_tdb_external_no_rbp +#define MBED_CONF_STORAGE_TDB_EXTERNAL_NO_RBP_EXTERNAL_SIZE 0 // set by library:storage_tdb_external_no_rbp +#define MBED_CONF_STORAGE_TDB_EXTERNAL_RBP_INTERNAL_SIZE 0 // set by library:storage_tdb_external +#define MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_BASE_ADDRESS 0 // set by library:storage_tdb_internal +#define MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_SIZE 0 // set by library:storage_tdb_internal +#define MBED_CONF_TARGET_BOOT_STACK_SIZE 0x400 // set by library:rtos[*] +#define MBED_CONF_TARGET_CONSOLE_UART 1 // set by target:Target +#define MBED_CONF_TARGET_DEEP_SLEEP_LATENCY 0 // set by target:Target +#define MBED_CONF_TARGET_DEFAULT_ADC_VREF NAN // set by target:Target +#define MBED_CONF_TARGET_INIT_US_TICKER_AT_BOOT 0 // set by target:Target +#define MBED_CONF_TARGET_MPU_ROM_END 0x0fffffff // set by target:Target +#define MBED_CONF_TARGET_TICKLESS_FROM_US_TICKER 0 // set by target:Target +#define MBED_CONF_TARGET_XIP_ENABLE 0 // set by target:Target +#define MBED_CONF_TELIT_HE910_BAUDRATE 115200 // set by library:TELIT_HE910 +#define MBED_CONF_TELIT_HE910_PROVIDE_DEFAULT 0 // set by library:TELIT_HE910 +#define MBED_CONF_TELIT_ME310_BAUDRATE 115200 // set by library:TELIT_ME310 +#define MBED_CONF_TELIT_ME310_PROVIDE_DEFAULT 0 // set by library:TELIT_ME310 +#define MBED_CONF_TELIT_ME910_BAUDRATE 115200 // set by library:TELIT_ME910 +#define MBED_CONF_TELIT_ME910_PROVIDE_DEFAULT 0 // set by library:TELIT_ME910 +#define MBED_CONF_UBLOX_AT_BAUDRATE 115200 // set by library:UBLOX_AT +#define MBED_CONF_UBLOX_AT_PROVIDE_DEFAULT 0 // set by library:UBLOX_AT +#define MBED_CONF_UBLOX_N2XX_BAUDRATE 9600 // set by library:UBLOX_N2XX +#define MBED_CONF_UBLOX_N2XX_PROVIDE_DEFAULT 0 // set by library:UBLOX_N2XX +#define MBED_CONF_UBLOX_PPP_BAUDRATE 115200 // set by library:UBLOX_PPP +#define MBED_CONF_UBLOX_PPP_PROVIDE_DEFAULT 0 // set by library:UBLOX_PPP +#define MBED_CRC_TABLE_SIZE 16 // set by library:drivers +#define MBED_LFS2_BLOCK_CYCLES 1024 // set by library:littlefs2 +#define MBED_LFS2_BLOCK_SIZE 512 // set by library:littlefs2 +#define MBED_LFS2_CACHE_SIZE 64 // set by library:littlefs2 +#define MBED_LFS2_ENABLE_INFO 0 // set by library:littlefs2 +#define MBED_LFS2_INTRINSICS 1 // set by library:littlefs2 +#define MBED_LFS2_LOOKAHEAD_SIZE 64 // set by library:littlefs2 +#define MBED_LFS_BLOCK_SIZE 512 // set by library:littlefs +#define MBED_LFS_ENABLE_INFO 0 // set by library:littlefs +#define MBED_LFS_INTRINSICS 1 // set by library:littlefs +#define MBED_LFS_LOOKAHEAD 512 // set by library:littlefs +#define MBED_LFS_PROG_SIZE 64 // set by library:littlefs +#define MBED_LFS_READ_SIZE 64 // set by library:littlefs +#define MBED_STACK_DUMP_ENABLED 0 // set by library:platform +#define MEM_ALLOC malloc // set by library:mbed-trace +#define MEM_FREE free // set by library:mbed-trace +#define PPP_DEBUG 0 // set by library:ppp +#define SEC_CCM_CFG 1 // set by library:cordio +#define SMP_DB_MAX_DEVICES 3 // set by library:cordio +// Macros +#define MBEDTLS_CIPHER_MODE_CTR // defined by library:SecureStore +#define MBEDTLS_CMAC_C // defined by library:SecureStore +#define NSAPI_PPP_AVAILABLE (MBED_CONF_PPP_ENABLED || MBED_CONF_LWIP_PPP_ENABLED) // defined by library:ppp +#define NS_USE_EXTERNAL_MBED_TLS // defined by library:nanostack +#define UNITY_INCLUDE_CONFIG_H // defined by library:utest +#define WSF_MS_PER_TICK 1 // defined by library:cordio +#define _RTE_ // defined by library:rtos + +#endif diff --git a/variants/SFE_ARTEMIS_MODULE/variant.cpp b/variants/SFE_ARTEMIS_MODULE/variant.cpp new file mode 100644 index 00000000..77b96259 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/variant.cpp @@ -0,0 +1,10 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#include "variant.h" + +void initVariant(void){ + +} diff --git a/variants/SFE_ARTEMIS_MODULE/variant.h b/variants/SFE_ARTEMIS_MODULE/variant.h new file mode 100644 index 00000000..ced95960 --- /dev/null +++ b/variants/SFE_ARTEMIS_MODULE/variant.h @@ -0,0 +1,22 @@ +/* +// This file is subject to the terms and conditions defined in +// file 'LICENSE.md', which is part of this source code package. +*/ + +#ifndef _VARIANT_H_ +#define _VARIANT_H_ + +#include "Arduino.h" + +#include "config/pins.h" + +#define VARIANT_SPI_INTFCS 0 +#define VARIANT_WIRE_INTFCS 1 + +// Add a default wire pin so that Wire is available to libraries and sketches +// Since this is just a module no pins are labeled I2C/Wire/Qwiic by default +// 2 pins have been chosen here arbitrarily +#define VARIANT_Wire_SDA 9 +#define VARIANT_Wire_SCL 8 + +#endif // _VARIANT_H_ diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.asm-macros b/variants/SFE_ARTEMIS_NANO/mbed/.asm-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.asm-macros +++ b/variants/SFE_ARTEMIS_NANO/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.asm-symbols b/variants/SFE_ARTEMIS_NANO/mbed/.asm-symbols index b5f18d87..a7e35492 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.asm-symbols +++ b/variants/SFE_ARTEMIS_NANO/mbed/.asm-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.c-flags b/variants/SFE_ARTEMIS_NANO/mbed/.c-flags index 9573998a..33d97d23 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.c-flags +++ b/variants/SFE_ARTEMIS_NANO/mbed/.c-flags @@ -1 +1 @@ --c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -MMD -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.c-macros b/variants/SFE_ARTEMIS_NANO/mbed/.c-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.c-macros +++ b/variants/SFE_ARTEMIS_NANO/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.c-symbols b/variants/SFE_ARTEMIS_NANO/mbed/.c-symbols index f6a34b0c..8094120c 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.c-symbols +++ b/variants/SFE_ARTEMIS_NANO/mbed/.c-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_NANO -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_NANO -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_NANO -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_NANO -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.cxx-flags b/variants/SFE_ARTEMIS_NANO/mbed/.cxx-flags index 4267aab9..9de4dbde 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.cxx-flags +++ b/variants/SFE_ARTEMIS_NANO/mbed/.cxx-flags @@ -1 +1 @@ --Wvla -c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.cxx-macros b/variants/SFE_ARTEMIS_NANO/mbed/.cxx-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.cxx-macros +++ b/variants/SFE_ARTEMIS_NANO/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.cxx-symbols b/variants/SFE_ARTEMIS_NANO/mbed/.cxx-symbols index f6a34b0c..8094120c 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.cxx-symbols +++ b/variants/SFE_ARTEMIS_NANO/mbed/.cxx-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_NANO -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_NANO -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_NANO -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_NANO -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.ld-flags b/variants/SFE_ARTEMIS_NANO/mbed/.ld-flags index 65528a50..6341b37b 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.ld-flags +++ b/variants/SFE_ARTEMIS_NANO/mbed/.ld-flags @@ -1 +1 @@ --DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.ld-macros b/variants/SFE_ARTEMIS_NANO/mbed/.ld-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.ld-macros +++ b/variants/SFE_ARTEMIS_NANO/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/.ld-symbols b/variants/SFE_ARTEMIS_NANO/mbed/.ld-symbols index ca92c601..e80c88c3 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/.ld-symbols +++ b/variants/SFE_ARTEMIS_NANO/mbed/.ld-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1602967196.13303 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_NANO -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_NANO -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701297558.3384628 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_NANO -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_NANO -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_NANO/mbed/libmbed-os.a b/variants/SFE_ARTEMIS_NANO/mbed/libmbed-os.a index 91132f5e..ec680eb3 100644 Binary files a/variants/SFE_ARTEMIS_NANO/mbed/libmbed-os.a and b/variants/SFE_ARTEMIS_NANO/mbed/libmbed-os.a differ diff --git a/variants/SFE_ARTEMIS_NANO/mbed/mbed_config.h b/variants/SFE_ARTEMIS_NANO/mbed/mbed_config.h index dfbc8694..74c06495 100644 --- a/variants/SFE_ARTEMIS_NANO/mbed/mbed_config.h +++ b/variants/SFE_ARTEMIS_NANO/mbed/mbed_config.h @@ -273,7 +273,7 @@ #define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform #define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform -#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 0 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform #define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform #define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform diff --git a/variants/SFE_ARTEMIS_NANO/variant.cpp b/variants/SFE_ARTEMIS_NANO/variant.cpp index 07b0dbd6..8907223d 100644 --- a/variants/SFE_ARTEMIS_NANO/variant.cpp +++ b/variants/SFE_ARTEMIS_NANO/variant.cpp @@ -8,5 +8,5 @@ UART Serial1(SERIAL1_TX, SERIAL1_RX); void initVariant(void){ - + } diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.asm-macros b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.asm-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.asm-macros +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.asm-symbols b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.asm-symbols index b5f18d87..a7e35492 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.asm-symbols +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.asm-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-flags b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-flags index 9573998a..33d97d23 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-flags +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-flags @@ -1 +1 @@ --c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -MMD -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-macros b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-macros +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-symbols b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-symbols index 7a891260..663d88e8 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-symbols +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.c-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_THING_PLUS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_THING_PLUS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_THING_PLUS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_THING_PLUS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-flags b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-flags index 4267aab9..9de4dbde 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-flags +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-flags @@ -1 +1 @@ --Wvla -c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-macros b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-macros +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-symbols b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-symbols index 7a891260..663d88e8 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-symbols +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.cxx-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_THING_PLUS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_THING_PLUS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_THING_PLUS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_THING_PLUS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-flags b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-flags index 65528a50..6341b37b 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-flags +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-flags @@ -1 +1 @@ --DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-macros b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-macros +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-symbols b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-symbols index 03187c7f..e2b82599 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-symbols +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/.ld-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1602967373.8920674 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_THING_PLUS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_THING_PLUS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701297657.5214822 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_ARTEMIS_THING_PLUS -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_ARTEMIS_THING_PLUS -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/libmbed-os.a b/variants/SFE_ARTEMIS_THING_PLUS/mbed/libmbed-os.a index d44ae4d0..a67c2974 100644 Binary files a/variants/SFE_ARTEMIS_THING_PLUS/mbed/libmbed-os.a and b/variants/SFE_ARTEMIS_THING_PLUS/mbed/libmbed-os.a differ diff --git a/variants/SFE_ARTEMIS_THING_PLUS/mbed/mbed_config.h b/variants/SFE_ARTEMIS_THING_PLUS/mbed/mbed_config.h index dfbc8694..74c06495 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/mbed/mbed_config.h +++ b/variants/SFE_ARTEMIS_THING_PLUS/mbed/mbed_config.h @@ -273,7 +273,7 @@ #define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform #define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform -#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 0 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform #define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform #define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform diff --git a/variants/SFE_ARTEMIS_THING_PLUS/variant.h b/variants/SFE_ARTEMIS_THING_PLUS/variant.h index 0c5d8ffe..b48ecad0 100644 --- a/variants/SFE_ARTEMIS_THING_PLUS/variant.h +++ b/variants/SFE_ARTEMIS_THING_PLUS/variant.h @@ -11,7 +11,7 @@ #include "config/pins.h" #define VARIANT_SPI_INTFCS 1 -#define VARIANT_WIRE_INTFCS 1 +#define VARIANT_WIRE_INTFCS 2 // SPI #define VARIANT_SPI_SDI SPI_SDI @@ -22,6 +22,9 @@ #define VARIANT_Wire_SDA I2C_SDA #define VARIANT_Wire_SCL I2C_SCL +#define VARIANT_Wire1_SDA I2C1_SDA +#define VARIANT_Wire1_SCL I2C1_SCL + // UART extern UART Serial1; diff --git a/variants/SFE_EDGE/config/pins.cpp b/variants/SFE_EDGE/config/pins.cpp index f01db1a0..a7f818dd 100644 --- a/variants/SFE_EDGE/config/pins.cpp +++ b/variants/SFE_EDGE/config/pins.cpp @@ -5,11 +5,55 @@ #include "bridge/pins.h" -const pin_size_t variantPinCount = 4; +const pin_size_t variantPinCount = 37; PinState variantPinStates[variantPinCount] = { - {D1, 1, NULL, /*NULL, NULL, NULL,*/ NULL}, - {D38, 38, NULL, /*NULL, NULL, NULL,*/ NULL}, - {D36, 36, NULL, /*NULL, NULL, NULL,*/ NULL}, - {D3, 3, NULL, /*NULL, NULL, NULL,*/ NULL}, + {D0, 0, NULL, /*NULL, NULL, NULL,*/ NULL}, // ACCELL_INT2/2 + {D1, 1, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO 1 + //{D2, 2, NULL, /*NULL, NULL, NULL,*/ NULL}, // NOT CONNECTED + {D3, 3, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO 3 + {D4, 4, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO4/CAMERA_Y4 / 2 + {D5, 5, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO5/CAMERA_Y3 / 2 + {D6, 6, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO6/CAMERA_y0 / 2 + {D7, 7, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO7/CAMERA_XCLK/ 2 + {D8, 8, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO8/CAMERA_Y1 / 2 + {D9, 9, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO9/CAMERA_Y2 / 2 + {D10, 10, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO10/CAMERA_DVDD_EN /2 + {D11, 11, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO11/MICO / 2 + {D12, 12, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO12/CAMERA_VSYNC/2 + {D13, 13, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO13/CAMERA_PWON /2 + {D14, 14, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO14/USER_BUTTON + {D15, 15, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO15/CAMERA/RESET/2 + //{D16, 16, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + {D17, 17, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO17/ACCEL_INT1/2 + //{D18, 18, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + //{D19, 19, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + {D20, 20, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO20/SWDCK + {D21, 21, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO21/SWDIO + {D22, 22, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO22/CAMERA_Y5/2 + {D23, 23, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO23/CAMERA_PCLK/2 + {D24, 24, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO24/CAMERA_Y6/2 + {D25, 25, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO25/I2C_SDA_CAMERA/2 + {D26, 26, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO26/CAMERA_HREF/2 + {D27, 27, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO27/I2C_SCL_CAMERA/2 + {D28, 28, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO28/CAMERA_Y7/2 + {D29, 29, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO29/MIC1/2 + //{D30, 30, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + //{D31, 31, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + //{D32, 32, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + {D33, 33, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO33/SWO + //{D34, 34, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + //{D35, 35, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + {D36, 36, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO36_J3_4 + {D37, 37, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO37_LED_BLUE + {D38, 38, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO38_J3_3 + {D39, 39, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO39_QWICC_SCk + {D40, 40, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO40_QWICC_SDA + //{D41, 41, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + {D42, 42, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO42/I2C_SCLK/2 + {D43, 43, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO43/I2C_SDA/2 + {D44, 44, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO44/LED_GREEN + //{D45, 45, NULL, /*NULL, NULL, NULL,*/ NULL},// NOT CONNECTED + {D46, 46, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO46/ LED_RED + {D47, 47, NULL, /*NULL, NULL, NULL,*/ NULL}, // GPIO46/ LED_YELLOW }; diff --git a/variants/SFE_EDGE/mbed/.asm-macros b/variants/SFE_EDGE/mbed/.asm-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_EDGE/mbed/.asm-macros +++ b/variants/SFE_EDGE/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.asm-symbols b/variants/SFE_EDGE/mbed/.asm-symbols index b5f18d87..a7e35492 100644 --- a/variants/SFE_EDGE/mbed/.asm-symbols +++ b/variants/SFE_EDGE/mbed/.asm-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.c-flags b/variants/SFE_EDGE/mbed/.c-flags index 9573998a..33d97d23 100644 --- a/variants/SFE_EDGE/mbed/.c-flags +++ b/variants/SFE_EDGE/mbed/.c-flags @@ -1 +1 @@ --c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -MMD -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.c-macros b/variants/SFE_EDGE/mbed/.c-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_EDGE/mbed/.c-macros +++ b/variants/SFE_EDGE/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.c-symbols b/variants/SFE_EDGE/mbed/.c-symbols index 30ffac3b..ca3918cf 100644 --- a/variants/SFE_EDGE/mbed/.c-symbols +++ b/variants/SFE_EDGE/mbed/.c-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.cxx-flags b/variants/SFE_EDGE/mbed/.cxx-flags index 4267aab9..9de4dbde 100644 --- a/variants/SFE_EDGE/mbed/.cxx-flags +++ b/variants/SFE_EDGE/mbed/.cxx-flags @@ -1 +1 @@ --Wvla -c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.cxx-macros b/variants/SFE_EDGE/mbed/.cxx-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_EDGE/mbed/.cxx-macros +++ b/variants/SFE_EDGE/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.cxx-symbols b/variants/SFE_EDGE/mbed/.cxx-symbols index 30ffac3b..ca3918cf 100644 --- a/variants/SFE_EDGE/mbed/.cxx-symbols +++ b/variants/SFE_EDGE/mbed/.cxx-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.ld-flags b/variants/SFE_EDGE/mbed/.ld-flags index 65528a50..6341b37b 100644 --- a/variants/SFE_EDGE/mbed/.ld-flags +++ b/variants/SFE_EDGE/mbed/.ld-flags @@ -1 +1 @@ --DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.ld-macros b/variants/SFE_EDGE/mbed/.ld-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_EDGE/mbed/.ld-macros +++ b/variants/SFE_EDGE/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/.ld-symbols b/variants/SFE_EDGE/mbed/.ld-symbols index 9ce8e6af..1c85f44f 100644 --- a/variants/SFE_EDGE/mbed/.ld-symbols +++ b/variants/SFE_EDGE/mbed/.ld-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1602967551.7442298 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701297756.3886654 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_EDGE/mbed/libmbed-os.a b/variants/SFE_EDGE/mbed/libmbed-os.a index 0d42d6bf..7fa0b0c5 100644 Binary files a/variants/SFE_EDGE/mbed/libmbed-os.a and b/variants/SFE_EDGE/mbed/libmbed-os.a differ diff --git a/variants/SFE_EDGE/mbed/mbed_config.h b/variants/SFE_EDGE/mbed/mbed_config.h index dfbc8694..74c06495 100644 --- a/variants/SFE_EDGE/mbed/mbed_config.h +++ b/variants/SFE_EDGE/mbed/mbed_config.h @@ -273,7 +273,7 @@ #define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform #define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform -#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 0 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform #define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform #define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform diff --git a/variants/SFE_EDGE2/mbed/.asm-macros b/variants/SFE_EDGE2/mbed/.asm-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_EDGE2/mbed/.asm-macros +++ b/variants/SFE_EDGE2/mbed/.asm-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.asm-symbols b/variants/SFE_EDGE2/mbed/.asm-symbols index b5f18d87..a7e35492 100644 --- a/variants/SFE_EDGE2/mbed/.asm-symbols +++ b/variants/SFE_EDGE2/mbed/.asm-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCORDIO_ZERO_COPY_HCI -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.c-flags b/variants/SFE_EDGE2/mbed/.c-flags index 9573998a..33d97d23 100644 --- a/variants/SFE_EDGE2/mbed/.c-flags +++ b/variants/SFE_EDGE2/mbed/.c-flags @@ -1 +1 @@ --c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -MMD -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -std=gnu11 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.c-macros b/variants/SFE_EDGE2/mbed/.c-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_EDGE2/mbed/.c-macros +++ b/variants/SFE_EDGE2/mbed/.c-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.c-symbols b/variants/SFE_EDGE2/mbed/.c-symbols index cc747adc..2b79059e 100644 --- a/variants/SFE_EDGE2/mbed/.c-symbols +++ b/variants/SFE_EDGE2/mbed/.c-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE2 -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE2 -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE2 -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE2 -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.cxx-flags b/variants/SFE_EDGE2/mbed/.cxx-flags index 4267aab9..9de4dbde 100644 --- a/variants/SFE_EDGE2/mbed/.cxx-flags +++ b/variants/SFE_EDGE2/mbed/.cxx-flags @@ -1 +1 @@ --Wvla -c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -g -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-c -fno-rtti -std=gnu++14 -DMBED_MINIMAL_PRINTF -DMBED_TRAP_ERRORS_ENABLED=1 -Os -fdata-sections -ffunction-sections -fmessage-length=0 -fno-exceptions -fomit-frame-pointer -funsigned-char -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.cxx-macros b/variants/SFE_EDGE2/mbed/.cxx-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_EDGE2/mbed/.cxx-macros +++ b/variants/SFE_EDGE2/mbed/.cxx-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.cxx-symbols b/variants/SFE_EDGE2/mbed/.cxx-symbols index cc747adc..2b79059e 100644 --- a/variants/SFE_EDGE2/mbed/.cxx-symbols +++ b/variants/SFE_EDGE2/mbed/.cxx-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE2 -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE2 -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE2 -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE2 -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.ld-flags b/variants/SFE_EDGE2/mbed/.ld-flags index 65528a50..6341b37b 100644 --- a/variants/SFE_EDGE2/mbed/.ld-flags +++ b/variants/SFE_EDGE2/mbed/.ld-flags @@ -1 +1 @@ --DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file +-DMBED_BOOT_STACK_SIZE=1024 -DXIP_ENABLE=0 -Wl,--gc-sections -Wl,--wrap,_calloc_r -Wl,--wrap,_memalign_r -Wl,--wrap,atexit -Wl,--wrap,exit -Wl,--wrap,fprintf -Wl,--wrap,main -Wl,--wrap,printf -Wl,--wrap,snprintf -Wl,--wrap,sprintf -Wl,--wrap,vfprintf -Wl,--wrap,vprintf -Wl,--wrap,vsnprintf -Wl,--wrap,vsprintf -Wl,-n -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 -mthumb \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.ld-macros b/variants/SFE_EDGE2/mbed/.ld-macros index e69de29b..2d6e1ff8 100644 --- a/variants/SFE_EDGE2/mbed/.ld-macros +++ b/variants/SFE_EDGE2/mbed/.ld-macros @@ -0,0 +1 @@ +ARDUINO_BLE_FIX \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/.ld-symbols b/variants/SFE_EDGE2/mbed/.ld-symbols index b0a60730..f079d97a 100644 --- a/variants/SFE_EDGE2/mbed/.ld-symbols +++ b/variants/SFE_EDGE2/mbed/.ld-symbols @@ -1 +1 @@ --DAM_PACKAGE_BGA -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1602967731.0951557 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE2 -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE2 -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file +-DAM_CUSTOM_BDADDR -DAM_PACKAGE_BGA -DARDUINO_BLE_FIX -DARM_MATH_CM4 -DCOMPONENT_FLASHIAP=1 -DCOMPONENT_hm01b0=1 -DCOMPONENT_lis2dh12=1 -DCORDIO_ZERO_COPY_HCI -DDEVICE_FLASH=1 -DDEVICE_I2C=1 -DDEVICE_INTERRUPTIN=1 -DDEVICE_LPTICKER=1 -DDEVICE_MPU=1 -DDEVICE_SERIAL=1 -DDEVICE_SPI=1 -DDEVICE_STDIO_MESSAGES=1 -DDEVICE_USTICKER=1 -DFEATURE_BLE=1 -DMBED_BUILD_TIMESTAMP=1701297855.9483814 -DTARGET_AMA3B1KK -DTARGET_Ambiq_Micro -DTARGET_Apollo3 -DTARGET_CORDIO -DTARGET_CORTEX -DTARGET_CORTEX_M -DTARGET_FAMILY_Apollo3 -DTARGET_LIKE_CORTEX_M4 -DTARGET_LIKE_MBED -DTARGET_M4 -DTARGET_NAME=SFE_EDGE2 -DTARGET_RELEASE -DTARGET_RTOS_M4_M7 -DTARGET_SFE_EDGE2 -DTOOLCHAIN_GCC -DTOOLCHAIN_GCC_ARM -D__CMSIS_RTOS -D__CORTEX_M4 -D__FPU_PRESENT=1 -D__MBED_CMSIS_RTOS_CM -D__MBED__=1 \ No newline at end of file diff --git a/variants/SFE_EDGE2/mbed/libmbed-os.a b/variants/SFE_EDGE2/mbed/libmbed-os.a index f5a94210..24f1b759 100644 Binary files a/variants/SFE_EDGE2/mbed/libmbed-os.a and b/variants/SFE_EDGE2/mbed/libmbed-os.a differ diff --git a/variants/SFE_EDGE2/mbed/mbed_config.h b/variants/SFE_EDGE2/mbed/mbed_config.h index dfbc8694..74c06495 100644 --- a/variants/SFE_EDGE2/mbed/mbed_config.h +++ b/variants/SFE_EDGE2/mbed/mbed_config.h @@ -273,7 +273,7 @@ #define MBED_CONF_PLATFORM_FATAL_ERROR_AUTO_REBOOT_ENABLED 0 // set by library:platform #define MBED_CONF_PLATFORM_MAX_ERROR_FILENAME_LEN 16 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_64_BIT 1 // set by library:platform -#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 0 // set by library:platform +#define MBED_CONF_PLATFORM_MINIMAL_PRINTF_ENABLE_FLOATING_POINT 1 // set by library:platform #define MBED_CONF_PLATFORM_MINIMAL_PRINTF_SET_FLOATING_POINT_MAX_DECIMALS 6 // set by library:platform #define MBED_CONF_PLATFORM_POLL_USE_LOWPOWER_TIMER 0 // set by library:platform #define MBED_CONF_PLATFORM_STDIO_BAUD_RATE 9600 // set by library:platform