diff --git a/CI/build/conf/cores_config.json b/CI/build/conf/cores_config.json index 8e152b82eb..cf2e815813 100644 --- a/CI/build/conf/cores_config.json +++ b/CI/build/conf/cores_config.json @@ -210,7 +210,8 @@ "RAK811_TRACKERA", "REMRAM_V1", "STEVAL_MKSBOX1V1", - "THUNDER_PACK", + "THUNDERPACK_F411", + "THUNDERPACK_L072", "Wraith32_V1" ] }, @@ -225,7 +226,8 @@ "RAK811_TRACKERA", "REMRAM_V1", "STEVAL_MKSBOX1V1", - "THUNDER_PACK" + "THUNDERPACK_F411", + "THUNDERPACK_L072" ] }, { @@ -277,7 +279,7 @@ "applicable": false, "boards": [ "GENERIC_F401RB", "GENERIC_F401RC", "GENERIC_F401RD", "GENERIC_F401RE", - "HY_TinySTM103TB", "THUNDER_PACK" + "HY_TinySTM103TB", "THUNDERPACK_F411", "THUNDERPACK_L072" ] }, { diff --git a/README.md b/README.md index bd8e3858e1..02de4844ae 100644 --- a/README.md +++ b/README.md @@ -152,11 +152,12 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d | :yellow_heart: | Generic F423CH | **1.9.0** | | | :yellow_heart: | Generic F423RH | **1.9.0** | | | :yellow_heart: | Generic F446R(C-E) | **1.9.0** | | +| :yellow_heart: | [ThunderPack v1.1+](https://github.com/jgillick/ThunderPack) | **1.9.0** | Based on STM32F411CEUx | | Status | Generic STM32L0xx | Release | Comment | | :---: | --- | :---: | :--- | | :green_heart: | [PX-HER0](https://piconomix.com/fwlib/_p_i_c_o_n_o_m_i_x__s_t_m32__h_e_r_o__b_o_a_r_d.html) | *1.8.0* | | -| :green_heart: | [ThunderPack](https://github.com/jgillick/ThunderPack) | *1.8.0* | | +| :green_heart: | [ThunderPack v1.0](https://github.com/jgillick/ThunderPack) | *1.8.0* | Based on STM32L072KZTx | | Status | 3D printer boards | Release | Comment | | :---: | --- | :---: | :--- | diff --git a/boards.txt b/boards.txt index 290aaae90e..6bab9a1a0c 100644 --- a/boards.txt +++ b/boards.txt @@ -1128,6 +1128,14 @@ GenF4.menu.pnum.FEATHER_F405.build.board=FEATHER_F405 GenF4.menu.pnum.FEATHER_F405.build.product_line=STM32F405xx GenF4.menu.pnum.FEATHER_F405.build.variant=FEATHER_F405 +# ThunderPack F411xxE +GenF4.menu.pnum.THUNDERPACK_F411=ThunderPack v1.1+ +GenF4.menu.pnum.THUNDERPACK_F411.upload.maximum_size=524288 +GenF4.menu.pnum.THUNDERPACK_F411.upload.maximum_data_size=131072 +GenF4.menu.pnum.THUNDERPACK_F411.build.board=THUNDERPACK_F411 +GenF4.menu.pnum.THUNDERPACK_F411.build.product_line=STM32F411xE +GenF4.menu.pnum.THUNDERPACK_F411.build.variant=THUNDERPACK + # Generic F446RE GenF4.menu.pnum.Generic_F446RE=Generic F446RE GenF4.menu.pnum.Generic_F446RE.upload.maximum_size=524288 @@ -1438,12 +1446,12 @@ GenL0.build.series=STM32L0xx GenL0.build.cmsis_lib_gcc=arm_cortexM0l_math # ThunderPack -GenL0.menu.pnum.THUNDER_PACK=ThunderPack -GenL0.menu.pnum.THUNDER_PACK.upload.maximum_size=196608 -GenL0.menu.pnum.THUNDER_PACK.upload.maximum_data_size=20480 -GenL0.menu.pnum.THUNDER_PACK.build.board=THUNDER_PACK -GenL0.menu.pnum.THUNDER_PACK.build.product_line=STM32L072xx -GenL0.menu.pnum.THUNDER_PACK.build.variant=THUNDER_PACK +GenL0.menu.pnum.THUNDERPACK_L072=ThunderPack v1.0 +GenL0.menu.pnum.THUNDERPACK_L072.upload.maximum_size=196608 +GenL0.menu.pnum.THUNDERPACK_L072.upload.maximum_data_size=20480 +GenL0.menu.pnum.THUNDERPACK_L072.build.board=THUNDERPACK_L072 +GenL0.menu.pnum.THUNDERPACK_L072.build.product_line=STM32L072xx +GenL0.menu.pnum.THUNDERPACK_L072.build.variant=THUNDERPACK # Piconomix PX-HER0 board GenL0.menu.pnum.PX_HER0=PX-HER0 diff --git a/variants/THUNDER_PACK/PeripheralPins.c b/variants/THUNDERPACK/PeripheralPins.c similarity index 50% rename from variants/THUNDER_PACK/PeripheralPins.c rename to variants/THUNDERPACK/PeripheralPins.c index fdfc6b0b2f..87163b6cae 100644 --- a/variants/THUNDER_PACK/PeripheralPins.c +++ b/variants/THUNDERPACK/PeripheralPins.c @@ -1,6 +1,6 @@ /* ******************************************************************************* - * Copyright (c) 2019, STMicroelectronics + * Copyright (c) 2020, STMicroelectronics * All rights reserved. * * This software component is licensed by ST under BSD 3-Clause license, @@ -9,7 +9,9 @@ * opensource.org/licenses/BSD-3-Clause * ******************************************************************************* - * Automatically generated from STM32L072K(B-Z)Tx.xml + * Automatically generated from STM32F411C(C-E)Ux.xml + * and merged manually with the STM32L072K(B-Z)Tx.xml + * to fit ThunderPack requirements */ #include "Arduino.h" #include "PeripheralPins.h" @@ -24,17 +26,17 @@ #ifdef HAL_ADC_MODULE_ENABLED WEAK const PinMap PinMap_ADC[] = { - {PA_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC_IN4 - {PA_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC_IN5 - {PA_6, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC_IN6 - {PA_7, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC_IN7 + {PA_4, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 4, 0)}, // ADC1_IN4 + {PA_5, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 5, 0)}, // ADC1_IN5 + {PA_6, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 6, 0)}, // ADC1_IN6 + {PA_7, ADC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 7, 0)}, // ADC1_IN7 {NC, NP, 0} }; #endif //*** DAC *** -#ifdef HAL_DAC_MODULE_ENABLED +#if defined(HAL_DAC_MODULE_ENABLED) && defined(ARDUINO_THUNDERPACK_L072) WEAK const PinMap PinMap_DAC[] = { {PA_4, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 1, 0)}, // DAC_OUT1 {PA_5, DAC1, STM_PIN_DATA_EXT(STM_MODE_ANALOG, GPIO_NOPULL, 0, 2, 0)}, // DAC_OUT2 @@ -46,17 +48,26 @@ WEAK const PinMap PinMap_DAC[] = { #ifdef HAL_I2C_MODULE_ENABLED WEAK const PinMap PinMap_I2C_SDA[] = { +#ifdef ARDUINO_THUNDERPACK_L072 {PA_10, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, {PB_7, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF1_I2C1)}, +#else /* ARDUINO_THUNDERPACK_F411 */ + {PB_7, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, +#endif {NC, NP, 0} }; #endif #ifdef HAL_I2C_MODULE_ENABLED WEAK const PinMap PinMap_I2C_SCL[] = { +#ifdef ARDUINO_THUNDERPACK_L072 {PA_8, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF7_I2C3)}, {PA_9, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF6_I2C1)}, {PB_6, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF1_I2C1)}, +#else /* ARDUINO_THUNDERPACK_F411 */ + {PA_8, I2C3, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C3)}, + {PB_6, I2C1, STM_PIN_DATA(STM_MODE_AF_OD, GPIO_NOPULL, GPIO_AF4_I2C1)}, +#endif {NC, NP, 0} }; #endif @@ -65,6 +76,7 @@ WEAK const PinMap PinMap_I2C_SCL[] = { #ifdef HAL_TIM_MODULE_ENABLED WEAK const PinMap PinMap_PWM[] = { +#ifdef ARDUINO_THUNDERPACK_L072 {PA_0, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 1, 0)}, // TIM2_CH1 {PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 2, 0)}, // TIM2_CH2 {PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM2, 3, 0)}, // TIM2_CH3 @@ -78,6 +90,26 @@ WEAK const PinMap PinMap_PWM[] = { // {PA_7, TIM22, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_TIM22, 2, 0)}, // TIM22_CH2 {PB_5, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM3, 2, 0)}, // TIM3_CH2 // {PB_5, TIM22, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_TIM22, 2, 0)}, // TIM22_CH2 +#else /* ARDUINO_THUNDERPACK_F411 */ + {PA_0, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + {PA_1, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 2, 0)}, // TIM2_CH2 + {PA_2, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 3, 0)}, // TIM2_CH3 + // {PA_2, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 3, 0)}, // TIM5_CH3 + // {PA_2, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 1, 0)}, // TIM9_CH1 + {PA_3, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 4, 0)}, // TIM2_CH4 + // {PA_3, TIM5, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM5, 4, 0)}, // TIM5_CH4 + // {PA_3, TIM9, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF3_TIM9, 2, 0)}, // TIM9_CH2 + // {PA_5, TIM2, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM2, 1, 0)}, // TIM2_CH1 + {PA_6, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 1, 0)}, // TIM3_CH1 + // {PA_7, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 1)}, // TIM1_CH1N + {PA_7, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + {PA_8, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 1, 0)}, // TIM1_CH1 + {PA_9, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 2, 0)}, // TIM1_CH2 + {PA_10, TIM1, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF1_TIM1, 3, 0)}, // TIM1_CH3 + {PB_5, TIM3, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM3, 2, 0)}, // TIM3_CH2 + {PB_6, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 1, 0)}, // TIM4_CH1 + {PB_7, TIM4, STM_PIN_DATA_EXT(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF2_TIM4, 2, 0)}, // TIM4_CH2 +#endif {NC, NP, 0} }; #endif @@ -86,19 +118,29 @@ WEAK const PinMap PinMap_PWM[] = { #ifdef HAL_UART_MODULE_ENABLED WEAK const PinMap PinMap_UART_TX[] = { +#ifdef ARDUINO_THUNDERPACK_L072 {PA_9, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART1)}, // {PA_14, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_LPUART1)}, {PA_14, USART2, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART2)}, {PB_6, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART1)}, +#else /* ARDUINO_THUNDERPACK_F411 */ + {PA_9, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_6, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, +#endif {NC, NP, 0} }; #endif #ifdef HAL_UART_MODULE_ENABLED WEAK const PinMap PinMap_UART_RX[] = { +#ifdef ARDUINO_THUNDERPACK_L072 {PA_10, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_USART1)}, {PA_13, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_LPUART1)}, {PB_7, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_USART1)}, +#else /* ARDUINO_THUNDERPACK_F411 */ + {PA_10, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, + {PB_7, USART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF7_USART1)}, +#endif {NC, NP, 0} }; #endif @@ -111,8 +153,6 @@ WEAK const PinMap PinMap_UART_RTS[] = { #ifdef HAL_UART_MODULE_ENABLED WEAK const PinMap PinMap_UART_CTS[] = { - {PA_6, LPUART1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF4_LPUART1)}, - {PB_7, USART4, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_USART4)}, {NC, NP, 0} }; #endif @@ -121,29 +161,49 @@ WEAK const PinMap PinMap_UART_CTS[] = { #ifdef HAL_SPI_MODULE_ENABLED WEAK const PinMap PinMap_SPI_MOSI[] = { +#ifdef ARDUINO_THUNDERPACK_L072 {PA_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, {PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, +#else /* ARDUINO_THUNDERPACK_F411 */ + {PA_7, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PA_10, SPI5, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI5)}, + // {PB_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + {PB_5, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, +#endif {NC, NP, 0} }; #endif #ifdef HAL_SPI_MODULE_ENABLED WEAK const PinMap PinMap_SPI_MISO[] = { +#ifdef ARDUINO_THUNDERPACK_L072 {PA_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, +#else /* ARDUINO_THUNDERPACK_F411 */ + {PA_6, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, +#endif {NC, NP, 0} }; #endif #ifdef HAL_SPI_MODULE_ENABLED WEAK const PinMap PinMap_SPI_SCLK[] = { +#ifdef ARDUINO_THUNDERPACK_L072 {PA_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, +#else /* ARDUINO_THUNDERPACK_F411 */ + {PA_5, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, +#endif {NC, NP, 0} }; #endif #ifdef HAL_SPI_MODULE_ENABLED WEAK const PinMap PinMap_SPI_SSEL[] = { +#ifdef ARDUINO_THUNDERPACK_L072 {PA_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF0_SPI1)}, +#else /* ARDUINO_THUNDERPACK_F411 */ + {PA_4, SPI1, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF5_SPI1)}, + // {PA_4, SPI3, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF6_SPI3)}, +#endif {NC, NP, 0} }; #endif @@ -156,7 +216,7 @@ WEAK const PinMap PinMap_SPI_SSEL[] = { //*** USB *** -#ifdef HAL_PCD_MODULE_ENABLED +#if defined(HAL_PCD_MODULE_ENABLED) && defined(ARDUINO_THUNDERPACK_L072) WEAK const PinMap PinMap_USB[] = { {PA_11, USB, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_DM {PA_12, USB, STM_PIN_DATA(STM_MODE_INPUT, GPIO_NOPULL, GPIO_AF_NONE)}, // USB_DP @@ -165,8 +225,31 @@ WEAK const PinMap PinMap_USB[] = { }; #endif -//*** No USB_OTG_FS *** +#if defined(HAL_PCD_MODULE_ENABLED) && defined(ARDUINO_THUNDERPACK_F411) +WEAK const PinMap PinMap_USB_OTG_FS[] = { + {PA_11, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DM + {PA_12, USB_OTG_FS, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF10_OTG_FS)}, // USB_OTG_FS_DP + {NC, NP, 0} +}; +#endif //*** No USB_OTG_HS *** -//*** No SD *** \ No newline at end of file +//*** SD *** + +#if defined(HAL_SD_MODULE_ENABLED) && defined(ARDUINO_THUNDERPACK_F411) +WEAK const PinMap PinMap_SD[] = { + {PA_6, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF12_SDIO)}, // SDIO_CMD + {PA_8, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D1 + {PA_9, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D2 + {PB_4, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D0 + {PB_5, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D3 + {PB_7, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D0 + {PB_8, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D4 + {PB_9, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D5 + {PB_10, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D7 + {PB_14, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_PULLUP, GPIO_AF12_SDIO)}, // SDIO_D6 + {PB_15, SDIO, STM_PIN_DATA(STM_MODE_AF_PP, GPIO_NOPULL, GPIO_AF12_SDIO)}, // SDIO_CK + {NC, NP, 0} +}; +#endif diff --git a/variants/THUNDER_PACK/PinNamesVar.h b/variants/THUNDERPACK/PinNamesVar.h similarity index 62% rename from variants/THUNDER_PACK/PinNamesVar.h rename to variants/THUNDERPACK/PinNamesVar.h index b030548b3f..f013c66a7c 100644 --- a/variants/THUNDER_PACK/PinNamesVar.h +++ b/variants/THUNDERPACK/PinNamesVar.h @@ -3,7 +3,11 @@ SYS_WKUP1 = PA_0, #endif #ifdef PWR_WAKEUP_PIN2 +#ifdef ARDUINO_THUNDERPACK_L072 SYS_WKUP2 = PC_13, +#else /* ARDUINO_THUNDERPACK_F411 */ +SYS_WKUP2 = NC, +#endif #endif #ifdef PWR_WAKEUP_PIN3 SYS_WKUP3 = NC, @@ -25,7 +29,15 @@ SYS_WKUP8 = NC, #endif /* USB */ #ifdef USBCON +#ifdef ARDUINO_THUNDERPACK_L072 USB_DM = PA_11, USB_DP = PA_12, USB_NOE = PA_13, +#else /* ARDUINO_THUNDERPACK_F411 */ +USB_OTG_FS_SOF = PA_8, +USB_OTG_FS_VBUS = PA_9, +USB_OTG_FS_ID = PA_10, +USB_OTG_FS_DM = PA_11, +USB_OTG_FS_DP = PA_12, +#endif #endif \ No newline at end of file diff --git a/variants/THUNDER_PACK/readme.txt b/variants/THUNDERPACK/README.md similarity index 65% rename from variants/THUNDER_PACK/readme.txt rename to variants/THUNDERPACK/README.md index a45af9d07d..33914051f0 100644 --- a/variants/THUNDER_PACK/readme.txt +++ b/variants/THUNDERPACK/README.md @@ -1,4 +1,7 @@ # ThunderPack A self-contained microcontroller, battery and power management system that fits in your pocket. +* ThunderPack v1.0 based on STM32L072KZTx +* ThunderPack v1.1+ based on STM32F411CEUx + More info: https://github.com/jgillick/ThunderPack \ No newline at end of file diff --git a/variants/THUNDERPACK/ldscript.ld b/variants/THUNDERPACK/ldscript.ld new file mode 100644 index 0000000000..cc0d1c092a --- /dev/null +++ b/variants/THUNDERPACK/ldscript.ld @@ -0,0 +1,179 @@ +/** + ****************************************************************************** + * @file LinkerScript.ld + * @author Auto-generated by STM32CubeIDE + * @brief Linker script for ThunderPack + * - STM32F411CEUx Device from STM32F4 series + * 512Kbytes FLASH + * 128Kbytes RAM + * - STM32L072KZTx Device from STM32L0 series + * 192Kbytes FLASH + * 20Kbytes RAM + * + * Set heap size, stack size and stack location according + * to application requirements. + * + * Set memory bank area and size if external memory is used + ****************************************************************************** + * @attention + * + *