From dd6c6054e9df291db6e1c158dc7fc3cf805aa438 Mon Sep 17 00:00:00 2001 From: a*morale Date: Fri, 10 Jul 2015 00:42:05 +0200 Subject: [PATCH 1/6] Revert "OP-1810 FOC" This reverts commit 92e50c2eada1125c0acd24fe1bf786ed07969ccc. Conflicts: Makefile ground/openpilotgcs/src/plugins/config/config.pro ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp ground/openpilotgcs/src/plugins/setupwizard/pages/escpage.cpp ground/openpilotgcs/src/plugins/setupwizard/resources/connection-diagrams.svg ground/openpilotgcs/src/plugins/uavobjectutil/devicedescriptorstruct.h --- Makefile | 3 +- flight/pios/inc/pios_usb_defs.h | 7 +- .../boards/coptercontrol/board-info.mk | 23 + .../boards/coptercontrol/board_hw_defs.c | 1525 +++++++++ .../boards/coptercontrol/bootloader/Makefile | 32 + .../coptercontrol/bootloader/inc/common.h | 115 + .../bootloader/inc/pios_config.h | 53 + .../bootloader/inc/pios_usb_board_data.h | 53 + .../boards/coptercontrol/bootloader/main.c | 223 ++ .../coptercontrol/bootloader/pios_board.c | 106 + .../boards/coptercontrol/firmware/Makefile | 148 + .../coptercontrol/firmware/coptercontrol.c | 117 + .../firmware/inc/FreeRTOSConfig.h | 99 + .../coptercontrol/firmware/inc/openpilot.h | 52 + .../firmware/inc/pios_board_posix.h | 81 + .../coptercontrol/firmware/inc/pios_config.h | 188 ++ .../firmware/inc/pios_config_posix.h | 48 + .../firmware/inc/pios_usb_board_data.h | 47 + .../coptercontrol/firmware/pios_board.c | 920 +++++ .../coptercontrol/firmware/pios_board_posix.c | 145 + .../targets/boards/coptercontrol/pios_board.h | 279 ++ .../coptercontrol/pios_usb_board_data.c | 102 + .../src/plugins/config/cc_hw_settings.ui | 658 ++++ .../src/plugins/config/ccattitude.ui | 597 ++++ .../src/plugins/config/config.pro | 6 + .../plugins/config/config_cc_hw_widget.cpp | 156 + .../src/plugins/config/config_cc_hw_widget.h | 56 + .../plugins/config/configccattitudewidget.cpp | 239 ++ .../plugins/config/configccattitudewidget.h | 74 + .../src/plugins/config/configgadget.qrc | 2 + .../src/plugins/config/configgadgetwidget.cpp | 16 +- .../src/plugins/config/configoutputwidget.cpp | 13 +- .../src/plugins/config/images/PipXtreme.png | Bin 0 -> 78915 bytes .../plugins/config/images/coptercontrol.svg | 2647 +++++++++++++++ .../plugins/coreplugin/connectionmanager.cpp | 35 +- .../plugins/coreplugin/connectionmanager.h | 3 - .../src/plugins/ophid/inc/ophid_usbmon.h | 7 +- .../plugins/setupwizard/connectiondiagram.cpp | 12 + .../setupwizard/pages/controllerpage.cpp | 11 + .../src/plugins/setupwizard/pages/escpage.cpp | 3 +- .../plugins/setupwizard/pages/inputpage.cpp | 21 + .../src/plugins/setupwizard/setupwizard.cpp | 10 + .../vehicleconfigurationhelper.cpp | 62 +- .../setupwizard/vehicleconfigurationsource.h | 2 +- .../uavobjectutil/devicedescriptorstruct.h | 27 + .../src/plugins/uploader/devicewidget.cpp | 20 +- .../plugins/uploader/images/deviceID-0101.svg | 2466 ++++++++++++++ .../plugins/uploader/images/deviceID-0201.svg | 2948 +++++++++++++++++ .../plugins/uploader/images/deviceID-0301.svg | 61 + .../plugins/uploader/images/deviceID-0401.svg | 2646 +++++++++++++++ .../plugins/uploader/images/deviceID-0402.svg | 2389 +++++++++++++ .../plugins/uploader/images/gcs-board-cc.png | Bin 0 -> 242648 bytes .../uploader/images/gcs-board-cc3d.png | Bin 0 -> 247305 bytes .../src/plugins/uploader/images/pipx.png | Bin 0 -> 184786 bytes .../src/plugins/uploader/op_dfu.cpp | 4 + .../src/plugins/uploader/op_dfu.h | 1 + .../plugins/uploader/runningdevicewidget.cpp | 10 + .../src/plugins/uploader/uploader.qrc | 8 + .../plugins/uploader/uploadergadgetwidget.cpp | 5 + .../usagetracker/usagetrackerplugin.cpp | 17 +- 60 files changed, 19542 insertions(+), 56 deletions(-) create mode 100644 flight/targets/boards/coptercontrol/board-info.mk create mode 100644 flight/targets/boards/coptercontrol/board_hw_defs.c create mode 100644 flight/targets/boards/coptercontrol/bootloader/Makefile create mode 100644 flight/targets/boards/coptercontrol/bootloader/inc/common.h create mode 100644 flight/targets/boards/coptercontrol/bootloader/inc/pios_config.h create mode 100644 flight/targets/boards/coptercontrol/bootloader/inc/pios_usb_board_data.h create mode 100644 flight/targets/boards/coptercontrol/bootloader/main.c create mode 100644 flight/targets/boards/coptercontrol/bootloader/pios_board.c create mode 100644 flight/targets/boards/coptercontrol/firmware/Makefile create mode 100644 flight/targets/boards/coptercontrol/firmware/coptercontrol.c create mode 100644 flight/targets/boards/coptercontrol/firmware/inc/FreeRTOSConfig.h create mode 100644 flight/targets/boards/coptercontrol/firmware/inc/openpilot.h create mode 100644 flight/targets/boards/coptercontrol/firmware/inc/pios_board_posix.h create mode 100644 flight/targets/boards/coptercontrol/firmware/inc/pios_config.h create mode 100644 flight/targets/boards/coptercontrol/firmware/inc/pios_config_posix.h create mode 100644 flight/targets/boards/coptercontrol/firmware/inc/pios_usb_board_data.h create mode 100644 flight/targets/boards/coptercontrol/firmware/pios_board.c create mode 100644 flight/targets/boards/coptercontrol/firmware/pios_board_posix.c create mode 100644 flight/targets/boards/coptercontrol/pios_board.h create mode 100644 flight/targets/boards/coptercontrol/pios_usb_board_data.c create mode 100644 ground/openpilotgcs/src/plugins/config/cc_hw_settings.ui create mode 100644 ground/openpilotgcs/src/plugins/config/ccattitude.ui create mode 100644 ground/openpilotgcs/src/plugins/config/config_cc_hw_widget.cpp create mode 100644 ground/openpilotgcs/src/plugins/config/config_cc_hw_widget.h create mode 100644 ground/openpilotgcs/src/plugins/config/configccattitudewidget.cpp create mode 100644 ground/openpilotgcs/src/plugins/config/configccattitudewidget.h create mode 100644 ground/openpilotgcs/src/plugins/config/images/PipXtreme.png create mode 100644 ground/openpilotgcs/src/plugins/config/images/coptercontrol.svg create mode 100644 ground/openpilotgcs/src/plugins/uploader/images/deviceID-0101.svg create mode 100644 ground/openpilotgcs/src/plugins/uploader/images/deviceID-0201.svg create mode 100644 ground/openpilotgcs/src/plugins/uploader/images/deviceID-0301.svg create mode 100644 ground/openpilotgcs/src/plugins/uploader/images/deviceID-0401.svg create mode 100644 ground/openpilotgcs/src/plugins/uploader/images/deviceID-0402.svg create mode 100644 ground/openpilotgcs/src/plugins/uploader/images/gcs-board-cc.png create mode 100644 ground/openpilotgcs/src/plugins/uploader/images/gcs-board-cc3d.png create mode 100644 ground/openpilotgcs/src/plugins/uploader/images/pipx.png diff --git a/Makefile b/Makefile index 766ff8d57..4d4668cfd 100644 --- a/Makefile +++ b/Makefile @@ -214,9 +214,10 @@ export OPGCSSYNTHDIR := $(BUILD_DIR)/openpilotgcs-synthetics DIRS += $(OPGCSSYNTHDIR) # Define supported board lists -ALL_BOARDS := oplinkmini revolution osd revoproto simposix discoveryf4bare gpsplatinum revonano +ALL_BOARDS := coptercontrol oplinkmini revolution osd revoproto simposix discoveryf4bare gpsplatinum revonano # Short names of each board (used to display board name in parallel builds) +coptercontrol_short := 'cc ' oplinkmini_short := 'oplm' revolution_short := 'revo' osd_short := 'osd ' diff --git a/flight/pios/inc/pios_usb_defs.h b/flight/pios/inc/pios_usb_defs.h index 9078e1abb..164d31fb3 100644 --- a/flight/pios/inc/pios_usb_defs.h +++ b/flight/pios/inc/pios_usb_defs.h @@ -353,6 +353,7 @@ enum usb_cdc_notification { enum usb_product_ids { USB_PRODUCT_ID_OPENPILOT_MAIN = 0x415A, + USB_PRODUCT_ID_COPTERCONTROL = 0x415B, USB_PRODUCT_ID_OPLINK = 0x415C, USB_PRODUCT_ID_CC3D = 0x415D, USB_PRODUCT_ID_REVOLUTION = 0x415E, @@ -363,9 +364,9 @@ enum usb_product_ids { enum usb_op_board_ids { USB_OP_BOARD_ID_OPENPILOT_MAIN = 1, /* Board ID 2 may be unused or AHRS */ - USB_OP_BOARD_ID_OPLINK = 3, - /* USB_OP_BOARD_ID_COPTERCONTROL = 4, */ - USB_OP_BOARD_ID_REVOLUTION = 5, + USB_OP_BOARD_ID_OPLINK = 3, + USB_OP_BOARD_ID_COPTERCONTROL = 4, + USB_OP_BOARD_ID_REVOLUTION = 5, USB_OP_BOARD_ID_OSD = 6, } __attribute__((packed)); diff --git a/flight/targets/boards/coptercontrol/board-info.mk b/flight/targets/boards/coptercontrol/board-info.mk new file mode 100644 index 000000000..d58f3d71d --- /dev/null +++ b/flight/targets/boards/coptercontrol/board-info.mk @@ -0,0 +1,23 @@ +BOARD_TYPE := 0x04 +BOARD_REVISION := 0x02 +BOOTLOADER_VERSION := 0x04 +HW_TYPE := 0x01 + +MCU := cortex-m3 +CHIP := STM32F103CBT +BOARD := STM32103CB_CC_Rev1 +MODEL := MD +MODEL_SUFFIX := _CC + +OPENOCD_JTAG_CONFIG := foss-jtag.revb.cfg +OPENOCD_CONFIG := stm32f1x.cfg + +# Note: These must match the values in link_$(BOARD)_memory.ld +BL_BANK_BASE := 0x08000000 # Start of bootloader flash +BL_BANK_SIZE := 0x00003000 # Should include BD_INFO region +FW_BANK_BASE := 0x08003000 # Start of firmware flash +FW_BANK_SIZE := 0x0001D000 # Should include FW_DESC_SIZE + +FW_DESC_SIZE := 0x00000064 + +OSCILLATOR_FREQ := 8000000 diff --git a/flight/targets/boards/coptercontrol/board_hw_defs.c b/flight/targets/boards/coptercontrol/board_hw_defs.c new file mode 100644 index 000000000..17981095f --- /dev/null +++ b/flight/targets/boards/coptercontrol/board_hw_defs.c @@ -0,0 +1,1525 @@ +/** + ****************************************************************************** + * @file board_hw_defs.c + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2012. + * @author PhoenixPilot, http://github.com/PhoenixPilot, Copyright (C) 2012 + * @addtogroup OpenPilotSystem OpenPilot System + * @{ + * @addtogroup OpenPilotCore OpenPilot Core + * @{ + * @brief Defines board specific static initializers for hardware for the CopterControl board. + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#define BOARD_REVISION_CC 1 +#define BOARD_REVISION_CC3D 2 + +#if defined(PIOS_INCLUDE_LED) + +#include +static const struct pios_gpio pios_leds_cc[] = { + [PIOS_LED_HEARTBEAT] = { + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_6, + .GPIO_Mode = GPIO_Mode_Out_PP, + .GPIO_Speed = GPIO_Speed_50MHz, + }, + }, + .active_low = true + }, +}; + +static const struct pios_gpio_cfg pios_led_cfg_cc = { + .gpios = pios_leds_cc, + .num_gpios = NELEMENTS(pios_leds_cc), +}; + +static const struct pios_gpio pios_leds_cc3d[] = { + [PIOS_LED_HEARTBEAT] = { + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_3, + .GPIO_Mode = GPIO_Mode_Out_PP, + .GPIO_Speed = GPIO_Speed_50MHz, + }, + }, + .remap = GPIO_Remap_SWJ_JTAGDisable, + .active_low = true + }, +}; + +static const struct pios_gpio_cfg pios_led_cfg_cc3d = { + .gpios = pios_leds_cc3d, + .num_gpios = NELEMENTS(pios_leds_cc3d), +}; + +const struct pios_gpio_cfg *PIOS_BOARD_HW_DEFS_GetLedCfg(uint32_t board_revision) +{ + switch (board_revision) { + case BOARD_REVISION_CC: return &pios_led_cfg_cc; + + case BOARD_REVISION_CC3D: return &pios_led_cfg_cc3d; + + default: return NULL; + } +} + +#endif /* PIOS_INCLUDE_LED */ + +#if defined(PIOS_INCLUDE_SPI) + +#include + +/* Gyro interface */ +void PIOS_SPI_gyro_irq_handler(void); +void DMA1_Channel2_IRQHandler() __attribute__((alias("PIOS_SPI_gyro_irq_handler"))); +void DMA1_Channel3_IRQHandler() __attribute__((alias("PIOS_SPI_gyro_irq_handler"))); +static const struct pios_spi_cfg pios_spi_gyro_cfg = { + .regs = SPI1, + .init = { + .SPI_Mode = SPI_Mode_Master, + .SPI_Direction = SPI_Direction_2Lines_FullDuplex, + .SPI_DataSize = SPI_DataSize_8b, + .SPI_NSS = SPI_NSS_Soft, + .SPI_FirstBit = SPI_FirstBit_MSB, + .SPI_CRCPolynomial = 7, + .SPI_CPOL = SPI_CPOL_High, + .SPI_CPHA = SPI_CPHA_2Edge, + .SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_16, /* 10 Mhz */ + }, + .use_crc = false, + .dma = { + .ahb_clk = RCC_AHBPeriph_DMA1, + + .irq = { + .flags = (DMA1_FLAG_TC2 | DMA1_FLAG_TE2 | DMA1_FLAG_HT2 | DMA1_FLAG_GL2), + .init = { + .NVIC_IRQChannel = DMA1_Channel2_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + + .rx = { + .channel = DMA1_Channel2, + .init = { + .DMA_PeripheralBaseAddr = (uint32_t)&(SPI1->DR), + .DMA_DIR = DMA_DIR_PeripheralSRC, + .DMA_PeripheralInc = DMA_PeripheralInc_Disable, + .DMA_MemoryInc = DMA_MemoryInc_Enable, + .DMA_PeripheralDataSize = DMA_PeripheralDataSize_Byte, + .DMA_MemoryDataSize = DMA_MemoryDataSize_Byte, + .DMA_Mode = DMA_Mode_Normal, + .DMA_Priority = DMA_Priority_Medium, + .DMA_M2M = DMA_M2M_Disable, + }, + }, + .tx = { + .channel = DMA1_Channel3, + .init = { + .DMA_PeripheralBaseAddr = (uint32_t)&(SPI1->DR), + .DMA_DIR = DMA_DIR_PeripheralDST, + .DMA_PeripheralInc = DMA_PeripheralInc_Disable, + .DMA_MemoryInc = DMA_MemoryInc_Enable, + .DMA_PeripheralDataSize = DMA_PeripheralDataSize_Byte, + .DMA_MemoryDataSize = DMA_MemoryDataSize_Byte, + .DMA_Mode = DMA_Mode_Normal, + .DMA_Priority = DMA_Priority_Medium, + .DMA_M2M = DMA_M2M_Disable, + }, + }, + }, + .sclk = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_5, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, + .miso = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_6, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_IPU, + }, + }, + .mosi = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_7, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, + .slave_count = 1, + .ssel = { + { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_4, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_Out_PP, + }, + } + }, +}; + +static uint32_t pios_spi_gyro_id; +void PIOS_SPI_gyro_irq_handler(void) +{ + /* Call into the generic code to handle the IRQ for this specific device */ + PIOS_SPI_IRQ_Handler(pios_spi_gyro_id); +} + + +/* Flash/Accel Interface + * + * NOTE: Leave this declared as const data so that it ends up in the + * .rodata section (ie. Flash) rather than in the .bss section (RAM). + */ +void PIOS_SPI_flash_accel_irq_handler(void); +void DMA1_Channel4_IRQHandler() __attribute__((alias("PIOS_SPI_flash_accel_irq_handler"))); +void DMA1_Channel5_IRQHandler() __attribute__((alias("PIOS_SPI_flash_accel_irq_handler"))); +static const struct pios_spi_cfg pios_spi_flash_accel_cfg_cc3d = { + .regs = SPI2, + .init = { + .SPI_Mode = SPI_Mode_Master, + .SPI_Direction = SPI_Direction_2Lines_FullDuplex, + .SPI_DataSize = SPI_DataSize_8b, + .SPI_NSS = SPI_NSS_Soft, + .SPI_FirstBit = SPI_FirstBit_MSB, + .SPI_CRCPolynomial = 7, + .SPI_CPOL = SPI_CPOL_High, + .SPI_CPHA = SPI_CPHA_2Edge, + .SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8, + }, + .use_crc = false, + .dma = { + .ahb_clk = RCC_AHBPeriph_DMA1, + + .irq = { + .flags = (DMA1_FLAG_TC4 | DMA1_FLAG_TE4 | DMA1_FLAG_HT4 | DMA1_FLAG_GL4), + .init = { + .NVIC_IRQChannel = DMA1_Channel4_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_HIGH, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + + .rx = { + .channel = DMA1_Channel4, + .init = { + .DMA_PeripheralBaseAddr = (uint32_t)&(SPI2->DR), + .DMA_DIR = DMA_DIR_PeripheralSRC, + .DMA_PeripheralInc = DMA_PeripheralInc_Disable, + .DMA_MemoryInc = DMA_MemoryInc_Enable, + .DMA_PeripheralDataSize = DMA_PeripheralDataSize_Byte, + .DMA_MemoryDataSize = DMA_MemoryDataSize_Byte, + .DMA_Mode = DMA_Mode_Normal, + .DMA_Priority = DMA_Priority_High, + .DMA_M2M = DMA_M2M_Disable, + }, + }, + .tx = { + .channel = DMA1_Channel5, + .init = { + .DMA_PeripheralBaseAddr = (uint32_t)&(SPI2->DR), + .DMA_DIR = DMA_DIR_PeripheralDST, + .DMA_PeripheralInc = DMA_PeripheralInc_Disable, + .DMA_MemoryInc = DMA_MemoryInc_Enable, + .DMA_PeripheralDataSize = DMA_PeripheralDataSize_Byte, + .DMA_MemoryDataSize = DMA_MemoryDataSize_Byte, + .DMA_Mode = DMA_Mode_Normal, + .DMA_Priority = DMA_Priority_High, + .DMA_M2M = DMA_M2M_Disable, + }, + }, + }, + .sclk = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_13, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, + .miso = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_14, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_IN_FLOATING, + }, + }, + .mosi = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_15, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, + .slave_count = 2, + .ssel = { + { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_12, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_Out_PP, + } + },{ + .gpio = GPIOC, + .init = { + .GPIO_Pin = GPIO_Pin_15, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_Out_PP, + }, + } + }, +}; + +static const struct pios_spi_cfg pios_spi_flash_accel_cfg_cc = { + .regs = SPI2, + .init = { + .SPI_Mode = SPI_Mode_Master, + .SPI_Direction = SPI_Direction_2Lines_FullDuplex, + .SPI_DataSize = SPI_DataSize_8b, + .SPI_NSS = SPI_NSS_Soft, + .SPI_FirstBit = SPI_FirstBit_MSB, + .SPI_CRCPolynomial = 7, + .SPI_CPOL = SPI_CPOL_High, + .SPI_CPHA = SPI_CPHA_2Edge, + .SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8, + }, + .use_crc = false, + .dma = { + .ahb_clk = RCC_AHBPeriph_DMA1, + + .irq = { + .flags = (DMA1_FLAG_TC4 | DMA1_FLAG_TE4 | DMA1_FLAG_HT4 | DMA1_FLAG_GL4), + .init = { + .NVIC_IRQChannel = DMA1_Channel4_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_HIGH, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + + .rx = { + .channel = DMA1_Channel4, + .init = { + .DMA_PeripheralBaseAddr = (uint32_t)&(SPI2->DR), + .DMA_DIR = DMA_DIR_PeripheralSRC, + .DMA_PeripheralInc = DMA_PeripheralInc_Disable, + .DMA_MemoryInc = DMA_MemoryInc_Enable, + .DMA_PeripheralDataSize = DMA_PeripheralDataSize_Byte, + .DMA_MemoryDataSize = DMA_MemoryDataSize_Byte, + .DMA_Mode = DMA_Mode_Normal, + .DMA_Priority = DMA_Priority_High, + .DMA_M2M = DMA_M2M_Disable, + }, + }, + .tx = { + .channel = DMA1_Channel5, + .init = { + .DMA_PeripheralBaseAddr = (uint32_t)&(SPI2->DR), + .DMA_DIR = DMA_DIR_PeripheralDST, + .DMA_PeripheralInc = DMA_PeripheralInc_Disable, + .DMA_MemoryInc = DMA_MemoryInc_Enable, + .DMA_PeripheralDataSize = DMA_PeripheralDataSize_Byte, + .DMA_MemoryDataSize = DMA_MemoryDataSize_Byte, + .DMA_Mode = DMA_Mode_Normal, + .DMA_Priority = DMA_Priority_High, + .DMA_M2M = DMA_M2M_Disable, + }, + }, + }, + .sclk = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_13, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, + .miso = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_14, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_IN_FLOATING, + }, + }, + .mosi = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_15, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, + .slave_count = 2, + .ssel = { + { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_12, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_Out_PP, + } + },{ + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_7, + .GPIO_Speed = GPIO_Speed_50MHz, + .GPIO_Mode = GPIO_Mode_Out_PP, + }, + } + }, +}; + +static uint32_t pios_spi_flash_accel_id; +void PIOS_SPI_flash_accel_irq_handler(void) +{ + /* Call into the generic code to handle the IRQ for this specific device */ + PIOS_SPI_IRQ_Handler(pios_spi_flash_accel_id); +} + +#endif /* PIOS_INCLUDE_SPI */ + +#if defined(PIOS_INCLUDE_FLASH) +#include "pios_flashfs_logfs_priv.h" +#include "pios_flash_jedec_priv.h" + +static const struct flashfs_logfs_cfg flashfs_w25x_cfg = { + .fs_magic = 0x99abcdef, + .total_fs_size = 0x00080000, /* 512K bytes (128 sectors = entire chip) */ + .arena_size = 0x00010000, /* 256 * slot size */ + .slot_size = 0x00000100, /* 256 bytes */ + + .start_offset = 0, /* start at the beginning of the chip */ + .sector_size = 0x00001000, /* 4K bytes */ + .page_size = 0x00000100, /* 256 bytes */ +}; + + +static const struct flashfs_logfs_cfg flashfs_m25p_cfg = { + .fs_magic = 0x99abceef, + .total_fs_size = 0x00200000, /* 2M bytes (32 sectors = entire chip) */ + .arena_size = 0x00010000, /* 256 * slot size */ + .slot_size = 0x00000100, /* 256 bytes */ + + .start_offset = 0, /* start at the beginning of the chip */ + .sector_size = 0x00010000, /* 64K bytes */ + .page_size = 0x00000100, /* 256 bytes */ +}; + +#include "pios_flash.h" + +#endif /* PIOS_INCLUDE_FLASH */ + +/* + * ADC system + */ +#if defined(PIOS_INCLUDE_ADC) +#include "pios_adc_priv.h" +extern void PIOS_ADC_handler(void); +void DMA1_Channel1_IRQHandler() __attribute__((alias("PIOS_ADC_handler"))); +// Remap the ADC DMA handler to this one +static const struct pios_adc_cfg pios_adc_cfg = { + .dma = { + .ahb_clk = RCC_AHBPeriph_DMA1, + .irq = { + .flags = (DMA1_FLAG_TC1 | DMA1_FLAG_TE1 | DMA1_FLAG_HT1 | DMA1_FLAG_GL1), + .init = { + .NVIC_IRQChannel = DMA1_Channel1_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .rx = { + .channel = DMA1_Channel1, + .init = { + .DMA_PeripheralBaseAddr = (uint32_t)&ADC1->DR, + .DMA_DIR = DMA_DIR_PeripheralSRC, + .DMA_PeripheralInc = DMA_PeripheralInc_Disable, + .DMA_MemoryInc = DMA_MemoryInc_Enable, + .DMA_PeripheralDataSize = DMA_PeripheralDataSize_Word, + .DMA_MemoryDataSize = DMA_MemoryDataSize_Word, + .DMA_Mode = DMA_Mode_Circular, + .DMA_Priority = DMA_Priority_High, + .DMA_M2M = DMA_M2M_Disable, + }, + } + }, + .half_flag = DMA1_IT_HT1, + .full_flag = DMA1_IT_TC1, +}; + +void PIOS_ADC_handler() +{ + PIOS_ADC_DMA_Handler(); +} +#endif /* if defined(PIOS_INCLUDE_ADC) */ + +#include "pios_tim_priv.h" + +static const TIM_TimeBaseInitTypeDef tim_1_2_3_4_time_base = { + .TIM_Prescaler = (PIOS_MASTER_CLOCK / 1000000) - 1, + .TIM_ClockDivision = TIM_CKD_DIV1, + .TIM_CounterMode = TIM_CounterMode_Up, + .TIM_Period = ((1000000 / PIOS_SERVO_UPDATE_HZ) - 1), + .TIM_RepetitionCounter = 0x0000, +}; + +static const struct pios_tim_clock_cfg tim_1_cfg = { + .timer = TIM1, + .time_base_init = &tim_1_2_3_4_time_base, + .irq = { + .init = { + .NVIC_IRQChannel = TIM1_CC_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, +}; + +static const struct pios_tim_clock_cfg tim_2_cfg = { + .timer = TIM2, + .time_base_init = &tim_1_2_3_4_time_base, + .irq = { + .init = { + .NVIC_IRQChannel = TIM2_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, +}; + +static const struct pios_tim_clock_cfg tim_3_cfg = { + .timer = TIM3, + .time_base_init = &tim_1_2_3_4_time_base, + .irq = { + .init = { + .NVIC_IRQChannel = TIM3_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, +}; + +static const struct pios_tim_clock_cfg tim_4_cfg = { + .timer = TIM4, + .time_base_init = &tim_1_2_3_4_time_base, + .irq = { + .init = { + .NVIC_IRQChannel = TIM4_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, +}; + +static const struct pios_tim_channel pios_tim_rcvrport_all_channels[] = { + { + .timer = TIM4, + .timer_chan = TIM_Channel_1, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_6, + .GPIO_Mode = GPIO_Mode_IPD, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM3, + .timer_chan = TIM_Channel_2, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_5, + .GPIO_Mode = GPIO_Mode_IPD, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + .remap = GPIO_PartialRemap_TIM3, + }, + { + .timer = TIM3, + .timer_chan = TIM_Channel_3, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_0, + .GPIO_Mode = GPIO_Mode_IPD, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM3, + .timer_chan = TIM_Channel_4, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_1, + .GPIO_Mode = GPIO_Mode_IPD, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM2, + .timer_chan = TIM_Channel_1, + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_0, + .GPIO_Mode = GPIO_Mode_IPD, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM2, + .timer_chan = TIM_Channel_2, + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_1, + .GPIO_Mode = GPIO_Mode_IPD, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, +}; + +static const struct pios_tim_channel pios_tim_servoport_all_pins[] = { + { + .timer = TIM4, + .timer_chan = TIM_Channel_4, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_9, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM4, + .timer_chan = TIM_Channel_3, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_8, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM4, + .timer_chan = TIM_Channel_2, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_7, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM1, + .timer_chan = TIM_Channel_1, + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_8, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM3, + .timer_chan = TIM_Channel_1, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_4, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + .remap = GPIO_PartialRemap_TIM3, + }, + { + .timer = TIM2, + .timer_chan = TIM_Channel_3, + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_2, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, +}; + + +static const struct pios_tim_channel pios_tim_servoport_rcvrport_pins[] = { + { + .timer = TIM4, + .timer_chan = TIM_Channel_4, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_9, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM4, + .timer_chan = TIM_Channel_3, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_8, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM4, + .timer_chan = TIM_Channel_2, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_7, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM1, + .timer_chan = TIM_Channel_1, + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_8, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM3, + .timer_chan = TIM_Channel_1, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_4, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + .remap = GPIO_PartialRemap_TIM3, + }, + { + .timer = TIM2, + .timer_chan = TIM_Channel_3, + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_2, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + + // Receiver port pins + // S3-S6 inputs are used as outputs in this case + { + .timer = TIM3, + .timer_chan = TIM_Channel_3, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_0, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM3, + .timer_chan = TIM_Channel_4, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_1, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM2, + .timer_chan = TIM_Channel_1, + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_0, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, + { + .timer = TIM2, + .timer_chan = TIM_Channel_2, + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_1, + .GPIO_Mode = GPIO_Mode_AF_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + }, +}; + +static const struct pios_tim_channel pios_tim_ppm_flexi_port = { + .timer = TIM2, + .timer_chan = TIM_Channel_4, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_11, + .GPIO_Mode = GPIO_Mode_IPD, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + .remap = GPIO_PartialRemap2_TIM2, +}; + +#if defined(PIOS_INCLUDE_USART) + +#include "pios_usart_priv.h" + +static const struct pios_usart_cfg pios_usart_generic_main_cfg = { + .regs = USART1, + .init = { + .USART_BaudRate = 57600, + .USART_WordLength = USART_WordLength_8b, + .USART_Parity = USART_Parity_No, + .USART_StopBits = USART_StopBits_1, + .USART_HardwareFlowControl = USART_HardwareFlowControl_None, + .USART_Mode = USART_Mode_Rx | USART_Mode_Tx, + }, + .irq = { + .init = { + .NVIC_IRQChannel = USART1_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .rx = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_10, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IPU, + }, + }, + .tx = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_9, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, +}; + +static const struct pios_usart_cfg pios_usart_generic_flexi_cfg = { + .regs = USART3, + .init = { + .USART_BaudRate = 57600, + .USART_WordLength = USART_WordLength_8b, + .USART_Parity = USART_Parity_No, + .USART_StopBits = USART_StopBits_1, + .USART_HardwareFlowControl = USART_HardwareFlowControl_None, + .USART_Mode = USART_Mode_Rx | USART_Mode_Tx, + }, + .irq = { + .init = { + .NVIC_IRQChannel = USART3_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .rx = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_11, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IPU, + }, + }, + .tx = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_10, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, +}; + +#if defined(PIOS_INCLUDE_DSM) +/* + * Spektrum/JR DSM USART + */ +#include + +static const struct pios_usart_cfg pios_usart_dsm_main_cfg = { + .regs = USART1, + .init = { + .USART_BaudRate = 115200, + .USART_WordLength = USART_WordLength_8b, + .USART_Parity = USART_Parity_No, + .USART_StopBits = USART_StopBits_1, + .USART_HardwareFlowControl = USART_HardwareFlowControl_None, + .USART_Mode = USART_Mode_Rx, + }, + .irq = { + .init = { + .NVIC_IRQChannel = USART1_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_HIGH, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .rx = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_10, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IPU, + }, + }, + .tx = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_9, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IN_FLOATING, + }, + }, +}; + +static const struct pios_dsm_cfg pios_dsm_main_cfg = { + .bind = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_10, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_Out_PP, + }, + }, +}; + +static const struct pios_usart_cfg pios_usart_dsm_flexi_cfg = { + .regs = USART3, + .init = { + .USART_BaudRate = 115200, + .USART_WordLength = USART_WordLength_8b, + .USART_Parity = USART_Parity_No, + .USART_StopBits = USART_StopBits_1, + .USART_HardwareFlowControl = USART_HardwareFlowControl_None, + .USART_Mode = USART_Mode_Rx, + }, + .irq = { + .init = { + .NVIC_IRQChannel = USART3_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_HIGH, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .rx = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_11, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IPU, + }, + }, + .tx = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_10, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IN_FLOATING, + }, + }, +}; + +static const struct pios_dsm_cfg pios_dsm_flexi_cfg = { + .bind = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_11, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_Out_PP, + }, + }, +}; + +#endif /* PIOS_INCLUDE_DSM */ + + +#if defined(PIOS_INCLUDE_SBUS) +/* + * S.Bus USART + */ +#include + +static const struct pios_usart_cfg pios_usart_sbus_main_cfg = { + .regs = USART1, + .init = { + .USART_BaudRate = 100000, + .USART_WordLength = USART_WordLength_8b, + .USART_Parity = USART_Parity_Even, + .USART_StopBits = USART_StopBits_2, + .USART_HardwareFlowControl = USART_HardwareFlowControl_None, + .USART_Mode = USART_Mode_Rx, + }, + .irq = { + .init = { + .NVIC_IRQChannel = USART1_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_HIGH, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .rx = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_10, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IPU, + }, + }, + .tx = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_9, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IN_FLOATING, + }, + }, +}; + +static const struct pios_sbus_cfg pios_sbus_cfg = { + /* Inverter configuration */ + .inv = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_2, + .GPIO_Mode = GPIO_Mode_Out_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + .gpio_clk_func = RCC_APB2PeriphClockCmd, + .gpio_clk_periph = RCC_APB2Periph_GPIOB, + .gpio_inv_enable = Bit_SET, +}; + +#endif /* PIOS_INCLUDE_SBUS */ + +/* + * HK OSD + */ +static const struct pios_usart_cfg pios_usart_hkosd_main_cfg = { + .regs = USART1, + .init = { + .USART_BaudRate = 57600, + .USART_WordLength = USART_WordLength_8b, + .USART_Parity = USART_Parity_No, + .USART_StopBits = USART_StopBits_1, + .USART_HardwareFlowControl = USART_HardwareFlowControl_None, + .USART_Mode = USART_Mode_Rx | USART_Mode_Tx, + }, + .irq = { + .init = { + .NVIC_IRQChannel = USART1_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .rx = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_10, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IPU, + }, + }, + .tx = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_9, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, +}; + +static const struct pios_usart_cfg pios_usart_hkosd_flexi_cfg = { + .regs = USART3, + .init = { + .USART_BaudRate = 57600, + .USART_WordLength = USART_WordLength_8b, + .USART_Parity = USART_Parity_No, + .USART_StopBits = USART_StopBits_1, + .USART_HardwareFlowControl = USART_HardwareFlowControl_None, + .USART_Mode = USART_Mode_Rx | USART_Mode_Tx, + }, + .irq = { + .init = { + .NVIC_IRQChannel = USART3_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .rx = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_11, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_IPU, + }, + }, + .tx = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_10, + .GPIO_Speed = GPIO_Speed_2MHz, + .GPIO_Mode = GPIO_Mode_AF_PP, + }, + }, +}; + + +#endif /* PIOS_INCLUDE_USART */ + +#if defined(PIOS_INCLUDE_COM) + +#include "pios_com_priv.h" + +#endif /* PIOS_INCLUDE_COM */ + +#if defined(PIOS_INCLUDE_RTC) +/* + * Realtime Clock (RTC) + */ +#include + +void PIOS_RTC_IRQ_Handler(void); +void RTC_IRQHandler() __attribute__((alias("PIOS_RTC_IRQ_Handler"))); +static const struct pios_rtc_cfg pios_rtc_main_cfg = { + .clksrc = RCC_RTCCLKSource_HSE_Div128, + .prescaler = 100, + .irq = { + .init = { + .NVIC_IRQChannel = RTC_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_MID, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, +}; + +void PIOS_RTC_IRQ_Handler(void) +{ + PIOS_RTC_irq_handler(); +} + +#endif /* if defined(PIOS_INCLUDE_RTC) */ + +#if defined(PIOS_INCLUDE_SERVO) && defined(PIOS_INCLUDE_TIM) +/* + * Servo outputs + */ +#include + +const struct pios_servo_cfg pios_servo_cfg = { + .tim_oc_init = { + .TIM_OCMode = TIM_OCMode_PWM1, + .TIM_OutputState = TIM_OutputState_Enable, + .TIM_OutputNState = TIM_OutputNState_Disable, + .TIM_Pulse = PIOS_SERVOS_INITIAL_POSITION, + .TIM_OCPolarity = TIM_OCPolarity_High, + .TIM_OCNPolarity = TIM_OCPolarity_High, + .TIM_OCIdleState = TIM_OCIdleState_Reset, + .TIM_OCNIdleState = TIM_OCNIdleState_Reset, + }, + .channels = pios_tim_servoport_all_pins, + .num_channels = NELEMENTS(pios_tim_servoport_all_pins), +}; + +const struct pios_servo_cfg pios_servo_rcvr_cfg = { + .tim_oc_init = { + .TIM_OCMode = TIM_OCMode_PWM1, + .TIM_OutputState = TIM_OutputState_Enable, + .TIM_OutputNState = TIM_OutputNState_Disable, + .TIM_Pulse = PIOS_SERVOS_INITIAL_POSITION, + .TIM_OCPolarity = TIM_OCPolarity_High, + .TIM_OCNPolarity = TIM_OCPolarity_High, + .TIM_OCIdleState = TIM_OCIdleState_Reset, + .TIM_OCNIdleState = TIM_OCNIdleState_Reset, + }, + .channels = pios_tim_servoport_rcvrport_pins, + .num_channels = NELEMENTS(pios_tim_servoport_rcvrport_pins), +}; + +#endif /* PIOS_INCLUDE_SERVO && PIOS_INCLUDE_TIM */ + +/* + * PPM Inputs + */ +#if defined(PIOS_INCLUDE_PPM) +#include + +const struct pios_ppm_cfg pios_ppm_cfg = { + .tim_ic_init = { + .TIM_ICPolarity = TIM_ICPolarity_Rising, + .TIM_ICSelection = TIM_ICSelection_DirectTI, + .TIM_ICPrescaler = TIM_ICPSC_DIV1, + .TIM_ICFilter = 0x0, + }, + /* Use only the first channel for ppm */ + .channels = &pios_tim_rcvrport_all_channels[0], + .num_channels = 1, +}; + +const struct pios_ppm_cfg pios_ppm_pin8_cfg = { + .tim_ic_init = { + .TIM_ICPolarity = TIM_ICPolarity_Rising, + .TIM_ICSelection = TIM_ICSelection_DirectTI, + .TIM_ICPrescaler = TIM_ICPSC_DIV1, + .TIM_ICFilter = 0x0, + }, + /* Use only the first channel for ppm */ + .channels = &pios_tim_rcvrport_all_channels[5], + .num_channels = 1, +}; + +#endif /* PIOS_INCLUDE_PPM */ + +#if defined(PIOS_INCLUDE_PPM_FLEXI) +#include + +const struct pios_ppm_cfg pios_ppm_flexi_cfg = { + .tim_ic_init = { + .TIM_ICPolarity = TIM_ICPolarity_Rising, + .TIM_ICSelection = TIM_ICSelection_DirectTI, + .TIM_ICPrescaler = TIM_ICPSC_DIV1, + .TIM_ICFilter = 0x0, + }, + .channels = &pios_tim_ppm_flexi_port, + .num_channels = 1, +}; + +#endif /* PIOS_INCLUDE_PPM_FLEXI */ + +/* + * PWM Inputs + */ +#if defined(PIOS_INCLUDE_PWM) +#include + +const struct pios_pwm_cfg pios_pwm_cfg = { + .tim_ic_init = { + .TIM_ICPolarity = TIM_ICPolarity_Rising, + .TIM_ICSelection = TIM_ICSelection_DirectTI, + .TIM_ICPrescaler = TIM_ICPSC_DIV1, + .TIM_ICFilter = 0x0, + }, + .channels = pios_tim_rcvrport_all_channels, + .num_channels = NELEMENTS(pios_tim_rcvrport_all_channels), +}; + +const struct pios_pwm_cfg pios_pwm_with_ppm_cfg = { + .tim_ic_init = { + .TIM_ICPolarity = TIM_ICPolarity_Rising, + .TIM_ICSelection = TIM_ICSelection_DirectTI, + .TIM_ICPrescaler = TIM_ICPSC_DIV1, + .TIM_ICFilter = 0x0, + }, + /* Leave the first channel for PPM use and use the rest for PWM */ + .channels = &pios_tim_rcvrport_all_channels[1], + .num_channels = NELEMENTS(pios_tim_rcvrport_all_channels) - 1, +}; + +#endif /* if defined(PIOS_INCLUDE_PWM) */ + + +/* + * SONAR Inputs + */ +#if defined(PIOS_INCLUDE_HCSR04) +#include + +static const struct pios_tim_channel pios_tim_hcsr04_port_all_channels[] = { + { + .timer = TIM3, + .timer_chan = TIM_Channel_2, + .pin = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_5, + .GPIO_Mode = GPIO_Mode_IPD, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, + .remap = GPIO_PartialRemap_TIM3, + }, +}; + +const struct pios_hcsr04_cfg pios_hcsr04_cfg = { + .tim_ic_init = { + .TIM_ICPolarity = TIM_ICPolarity_Rising, + .TIM_ICSelection = TIM_ICSelection_DirectTI, + .TIM_ICPrescaler = TIM_ICPSC_DIV1, + .TIM_ICFilter = 0x0, + }, + .channels = pios_tim_hcsr04_port_all_channels, + .num_channels = NELEMENTS(pios_tim_hcsr04_port_all_channels), + .trigger = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_6, + .GPIO_Mode = GPIO_Mode_Out_PP, + .GPIO_Speed = GPIO_Speed_2MHz, + }, + }, +}; +#endif /* if defined(PIOS_INCLUDE_HCSR04) */ + +#if defined(PIOS_INCLUDE_I2C) + +#include + +/* + * I2C Adapters + */ + +void PIOS_I2C_flexi_adapter_ev_irq_handler(void); +void PIOS_I2C_flexi_adapter_er_irq_handler(void); +void I2C2_EV_IRQHandler() __attribute__((alias("PIOS_I2C_flexi_adapter_ev_irq_handler"))); +void I2C2_ER_IRQHandler() __attribute__((alias("PIOS_I2C_flexi_adapter_er_irq_handler"))); + +static const struct pios_i2c_adapter_cfg pios_i2c_flexi_adapter_cfg = { + .regs = I2C2, + .init = { + .I2C_Mode = I2C_Mode_I2C, + .I2C_OwnAddress1 = 0, + .I2C_Ack = I2C_Ack_Enable, + .I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit, + .I2C_DutyCycle = I2C_DutyCycle_2, + .I2C_ClockSpeed = 400000, /* bits/s */ + }, + .transfer_timeout_ms = 50, + .scl = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_10, + .GPIO_Speed = GPIO_Speed_10MHz, + .GPIO_Mode = GPIO_Mode_AF_OD, + }, + }, + .sda = { + .gpio = GPIOB, + .init = { + .GPIO_Pin = GPIO_Pin_11, + .GPIO_Speed = GPIO_Speed_10MHz, + .GPIO_Mode = GPIO_Mode_AF_OD, + }, + }, + .event = { + .flags = 0, /* FIXME: check this */ + .init = { + .NVIC_IRQChannel = I2C2_EV_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_HIGHEST, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .error = { + .flags = 0, /* FIXME: check this */ + .init = { + .NVIC_IRQChannel = I2C2_ER_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_HIGHEST, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, +}; + +uint32_t pios_i2c_flexi_adapter_id; +void PIOS_I2C_flexi_adapter_ev_irq_handler(void) +{ + /* Call into the generic code to handle the IRQ for this specific device */ + PIOS_I2C_EV_IRQ_Handler(pios_i2c_flexi_adapter_id); +} + +void PIOS_I2C_flexi_adapter_er_irq_handler(void) +{ + /* Call into the generic code to handle the IRQ for this specific device */ + PIOS_I2C_ER_IRQ_Handler(pios_i2c_flexi_adapter_id); +} + +#endif /* PIOS_INCLUDE_I2C */ + +#if defined(PIOS_INCLUDE_GCSRCVR) +#include "pios_gcsrcvr_priv.h" +#endif /* PIOS_INCLUDE_GCSRCVR */ + +#if defined(PIOS_INCLUDE_RCVR) +#include "pios_rcvr_priv.h" + +#endif /* PIOS_INCLUDE_RCVR */ + +#if defined(PIOS_INCLUDE_USB) +#include "pios_usb_priv.h" + +static const struct pios_usb_cfg pios_usb_main_cfg_cc = { + .irq = { + .init = { + .NVIC_IRQChannel = USB_LP_CAN1_RX0_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_LOW, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .vsense = { + .gpio = GPIOC, + .init = { + .GPIO_Pin = GPIO_Pin_15, + .GPIO_Speed = GPIO_Speed_10MHz, + .GPIO_Mode = GPIO_Mode_AF_OD, + }, + }, + .vsense_active_low = false +}; + +static const struct pios_usb_cfg pios_usb_main_cfg_cc3d = { + .irq = { + .init = { + .NVIC_IRQChannel = USB_LP_CAN1_RX0_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_LOW, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .vsense = { + .gpio = GPIOC, + .init = { + .GPIO_Pin = GPIO_Pin_14, + .GPIO_Speed = GPIO_Speed_10MHz, + .GPIO_Mode = GPIO_Mode_AF_OD, + }, + }, + .vsense_active_low = false +}; + +#include "pios_usb_board_data_priv.h" +#include "pios_usb_desc_hid_cdc_priv.h" +#include "pios_usb_desc_hid_only_priv.h" + +#endif /* PIOS_INCLUDE_USB */ + +#if defined(PIOS_INCLUDE_COM_MSG) + +#include + +#endif /* PIOS_INCLUDE_COM_MSG */ + +#if defined(PIOS_INCLUDE_USB_HID) +#include + +const struct pios_usb_hid_cfg pios_usb_hid_cfg = { + .data_if = 2, + .data_rx_ep = 1, + .data_tx_ep = 1, +}; + +#endif /* PIOS_INCLUDE_USB_HID */ + +#if defined(PIOS_INCLUDE_USB_RCTX) +#include + +const struct pios_usb_rctx_cfg pios_usb_rctx_cfg = { + .data_if = 2, + .data_tx_ep = 1, +}; + +#endif /* PIOS_INCLUDE_USB_RCTX */ + +#if defined(PIOS_INCLUDE_USB_CDC) +#include + +const struct pios_usb_cdc_cfg pios_usb_cdc_cfg = { + .ctrl_if = 0, + .ctrl_tx_ep = 2, + + .data_if = 1, + .data_rx_ep = 3, + .data_tx_ep = 3, +}; +#endif /* PIOS_INCLUDE_USB_CDC */ diff --git a/flight/targets/boards/coptercontrol/bootloader/Makefile b/flight/targets/boards/coptercontrol/bootloader/Makefile new file mode 100644 index 000000000..7c575411b --- /dev/null +++ b/flight/targets/boards/coptercontrol/bootloader/Makefile @@ -0,0 +1,32 @@ +# +# Copyright (c) 2009-2013, The OpenPilot Team, http://www.openpilot.org +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# + +ifndef OPENPILOT_IS_COOL + $(error Top level Makefile must be used to build this target) +endif + +## The standard CMSIS startup +SRC += $(CMSIS_DEVICEDIR)/system_stm32f10x.c + +include ../board-info.mk +include $(ROOT_DIR)/make/firmware-defs.mk +include $(ROOT_DIR)/make/boot-defs.mk +include $(ROOT_DIR)/make/common-defs.mk + +$(info Making bootloader for CopterControl, board revision $(BOARD_REVISION)) +$(info Use BOARD_REVISION=1 for CC, BOARD_REVISION=2 for CC3D (default)) diff --git a/flight/targets/boards/coptercontrol/bootloader/inc/common.h b/flight/targets/boards/coptercontrol/bootloader/inc/common.h new file mode 100644 index 000000000..e64b89014 --- /dev/null +++ b/flight/targets/boards/coptercontrol/bootloader/inc/common.h @@ -0,0 +1,115 @@ +/** + ****************************************************************************** + * @addtogroup CopterControlBL CopterControl BootLoader + * @brief These files contain the code to the CopterControl Bootloader. + * + * @{ + * @file common.c + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief This file contains various common defines for the BootLoader + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +#ifndef COMMON_H_ +#define COMMON_H_ + +// #include "board.h" + +typedef enum { + start, keepgoing, +} DownloadAction; + +/**************************************************/ +/* OP_DFU states */ +/**************************************************/ + +typedef enum { + DFUidle, // 0 + uploading, // 1 + wrong_packet_received, // 2 + too_many_packets, // 3 + too_few_packets, // 4 + Last_operation_Success, // 5 + downloading, // 6 + BLidle, // 7 + Last_operation_failed, // 8 + uploadingStarting, // 9 + outsideDevCapabilities, // 10 + CRC_Fail, // 11 + failed_jump, +// 12 +} DFUStates; +/**************************************************/ +/* OP_DFU commands */ +/**************************************************/ +typedef enum { + Reserved, // 0 + Req_Capabilities, // 1 + Rep_Capabilities, // 2 + EnterDFU, // 3 + JumpFW, // 4 + Reset, // 5 + Abort_Operation, // 6 + Upload, // 7 + Op_END, // 8 + Download_Req, // 9 + Download, // 10 + Status_Request, // 11 + Status_Rep +// 12 +} DFUCommands; + +typedef enum { + High_Density, Medium_Density +} DeviceType; +/**************************************************/ +/* OP_DFU transfer types */ +/**************************************************/ +typedef enum { + FW, // 0 + Descript +// 2 +} DFUTransfer; +/**************************************************/ +/* OP_DFU transfer port */ +/**************************************************/ +typedef enum { + Usb, // 0 + Serial +// 2 +} DFUPort; +/**************************************************/ +/* OP_DFU programable programable HW types */ +/**************************************************/ +typedef enum { + Self_flash, // 0 + Remote_flash_via_spi +// 1 +} DFUProgType; +/**************************************************/ +/* OP_DFU programable sources */ +/**************************************************/ +#define USB 0 +#define SPI 1 + +#define DownloadDelay 100000 + +#define MAX_DEL_RETRYS 3 +#define MAX_WRI_RETRYS 3 + +#endif /* COMMON_H_ */ diff --git a/flight/targets/boards/coptercontrol/bootloader/inc/pios_config.h b/flight/targets/boards/coptercontrol/bootloader/inc/pios_config.h new file mode 100644 index 000000000..43182e435 --- /dev/null +++ b/flight/targets/boards/coptercontrol/bootloader/inc/pios_config.h @@ -0,0 +1,53 @@ +/** + ****************************************************************************** + * @addtogroup CopterControlBL CopterControl BootLoader + * @brief These files contain the code to the CopterControl Bootloader. + * @{ + * @file pios_config.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief PiOS configuration header. + * Central compile time config for the project. + * In particular, pios_config.h is where you define which PiOS libraries + * and features are included in the firmware. + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef PIOS_CONFIG_H +#define PIOS_CONFIG_H + +/* Enable/Disable PiOS modules */ +#define PIOS_INCLUDE_DELAY +#define PIOS_INCLUDE_SYS +#define PIOS_INCLUDE_IRQ +#define PIOS_INCLUDE_GPIO +#define PIOS_INCLUDE_USB +#define PIOS_INCLUDE_USB_HID +#define PIOS_INCLUDE_LED +#define PIOS_INCLUDE_IAP +#define PIOS_INCLUDE_COM +#define PIOS_INCLUDE_COM_MSG +#define PIOS_INCLUDE_BL_HELPER +#define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT + +#endif /* PIOS_CONFIG_H */ + +/** + * @} + * @} + */ diff --git a/flight/targets/boards/coptercontrol/bootloader/inc/pios_usb_board_data.h b/flight/targets/boards/coptercontrol/bootloader/inc/pios_usb_board_data.h new file mode 100644 index 000000000..5a40bf4cf --- /dev/null +++ b/flight/targets/boards/coptercontrol/bootloader/inc/pios_usb_board_data.h @@ -0,0 +1,53 @@ +/** + ****************************************************************************** + * @addtogroup PIOS PIOS Core hardware abstraction layer + * @{ + * @addtogroup PIOS_USB_BOARD Board specific USB definitions + * @brief Board specific USB definitions + * @{ + * + * @file pios_usb_board_data.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief Board specific USB definitions + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef PIOS_USB_BOARD_DATA_H +#define PIOS_USB_BOARD_DATA_H + +// Note : changing below length will require changes to the USB buffer setup +#define PIOS_USB_BOARD_HID_DATA_LENGTH 64 + +#define PIOS_USB_BOARD_EP_NUM 2 + +#include /* struct usb_* */ + +#define PIOS_USB_BOARD_PRODUCT_ID USB_PRODUCT_ID_COPTERCONTROL +#define PIOS_USB_BOARD_DEVICE_VER USB_OP_DEVICE_VER(USB_OP_BOARD_ID_COPTERCONTROL, USB_OP_BOARD_MODE_BL) +#define PIOS_USB_BOARD_SN_SUFFIX "+BL" + +/* + * The bootloader uses a simplified report structure + * BL: ... + * FW: ... + * This define changes the behaviour in pios_usb_hid.c + */ +#define PIOS_USB_BOARD_BL_HID_HAS_NO_LENGTH_BYTE + +#endif /* PIOS_USB_BOARD_DATA_H */ diff --git a/flight/targets/boards/coptercontrol/bootloader/main.c b/flight/targets/boards/coptercontrol/bootloader/main.c new file mode 100644 index 000000000..15068627c --- /dev/null +++ b/flight/targets/boards/coptercontrol/bootloader/main.c @@ -0,0 +1,223 @@ +/** + ****************************************************************************** + * @addtogroup CopterControlBL CopterControl BootLoader + * @brief These files contain the code to the CopterControl Bootloader. + * + * @{ + * @file main.c + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief This is the file with the main function of the OpenPilot BootLoader + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include +#include +#include +#include +#include +#include +#include + +/* Prototype of PIOS_Board_Init() function */ +extern void PIOS_Board_Init(void); +extern void FLASH_Download(); +#define BSL_HOLD_STATE ((PIOS_USB_DETECT_GPIO_PORT->IDR & PIOS_USB_DETECT_GPIO_PIN) ? 0 : 1) + +/* Private typedef -----------------------------------------------------------*/ +typedef void (*pFunction)(void); +/* Private define ------------------------------------------------------------*/ +/* Private macro -------------------------------------------------------------*/ +/* Private variables ---------------------------------------------------------*/ +pFunction Jump_To_Application; +uint32_t JumpAddress; + +/// LEDs PWM +uint32_t period1 = 5000; // 5 mS +uint32_t sweep_steps1 = 100; // * 5 mS -> 500 mS +uint32_t period2 = 5000; // 5 mS +uint32_t sweep_steps2 = 100; // * 5 mS -> 500 mS + + +//////////////////////////////////////// +uint8_t tempcount = 0; + +/* Extern variables ----------------------------------------------------------*/ +DFUStates DeviceState; +int16_t status = 0; +uint8_t JumpToApp = FALSE; +uint8_t GO_dfu = FALSE; +uint8_t USB_connected = FALSE; +uint8_t User_DFU_request = FALSE; +static uint8_t mReceive_Buffer[63]; +/* Private function prototypes -----------------------------------------------*/ +uint32_t LedPWM(uint32_t pwm_period, uint32_t pwm_sweep_steps, uint32_t count); +uint8_t processRX(); +void jump_to_app(); + +int main() +{ + PIOS_SYS_Init(); + PIOS_Board_Init(); + PIOS_IAP_Init(); + + USB_connected = PIOS_USB_CableConnected(0); + + if (PIOS_IAP_CheckRequest() == TRUE) { + PIOS_DELAY_WaitmS(1000); + User_DFU_request = TRUE; + PIOS_IAP_ClearRequest(); + } + + GO_dfu = (USB_connected == TRUE) || (User_DFU_request == TRUE); + + if (GO_dfu == TRUE) { + PIOS_Board_Init(); + if (User_DFU_request == TRUE) { + DeviceState = DFUidle; + } else { + DeviceState = BLidle; + } + } else { + JumpToApp = TRUE; + } + + uint32_t stopwatch = 0; + uint32_t prev_ticks = PIOS_DELAY_GetuS(); + while (TRUE) { + /* Update the stopwatch */ + uint32_t elapsed_ticks = PIOS_DELAY_GetuSSince(prev_ticks); + prev_ticks += elapsed_ticks; + stopwatch += elapsed_ticks; + + if (JumpToApp == TRUE) { + jump_to_app(); + } + + switch (DeviceState) { + case Last_operation_Success: + case uploadingStarting: + case DFUidle: + period1 = 5000; + sweep_steps1 = 100; + PIOS_LED_Off(PIOS_LED_HEARTBEAT); + period2 = 0; + break; + case uploading: + period1 = 5000; + sweep_steps1 = 100; + period2 = 2500; + sweep_steps2 = 50; + break; + case downloading: + period1 = 2500; + sweep_steps1 = 50; + PIOS_LED_Off(PIOS_LED_HEARTBEAT); + period2 = 0; + break; + case BLidle: + period1 = 0; + PIOS_LED_On(PIOS_LED_HEARTBEAT); + period2 = 0; + break; + default: // error + period1 = 5000; + sweep_steps1 = 100; + period2 = 5000; + sweep_steps2 = 100; + } + + if (period1 != 0) { + if (LedPWM(period1, sweep_steps1, stopwatch)) { + PIOS_LED_On(PIOS_LED_HEARTBEAT); + } else { + PIOS_LED_Off(PIOS_LED_HEARTBEAT); + } + } else { + PIOS_LED_On(PIOS_LED_HEARTBEAT); + } + + if (period2 != 0) { + if (LedPWM(period2, sweep_steps2, stopwatch)) { + PIOS_LED_On(PIOS_LED_HEARTBEAT); + } else { + PIOS_LED_Off(PIOS_LED_HEARTBEAT); + } + } else { + PIOS_LED_Off(PIOS_LED_HEARTBEAT); + } + + if (stopwatch > 50 * 1000 * 1000) { + stopwatch = 0; + } + if ((stopwatch > 6 * 1000 * 1000) && ((DeviceState == BLidle) || (DeviceState == DFUidle && !USB_connected))) { + JumpToApp = TRUE; + } + + processRX(); + DataDownload(start); + } +} + +void jump_to_app() +{ + const struct pios_board_info *bdinfo = &pios_board_info_blob; + + if (((*(__IO uint32_t *)bdinfo->fw_base) & 0x2FFE0000) == 0x20000000) { /* Jump to user application */ + FLASH_Lock(); + RCC_APB2PeriphResetCmd(0xffffffff, ENABLE); + RCC_APB1PeriphResetCmd(0xffffffff, ENABLE); + RCC_APB2PeriphResetCmd(0xffffffff, DISABLE); + RCC_APB1PeriphResetCmd(0xffffffff, DISABLE); + _SetCNTR(0); // clear interrupt mask + _SetISTR(0); // clear all requests + JumpAddress = *(__IO uint32_t *)(bdinfo->fw_base + 4); + Jump_To_Application = (pFunction)JumpAddress; + /* Initialize user application's Stack Pointer */ + __set_MSP(*(__IO uint32_t *)bdinfo->fw_base); + Jump_To_Application(); + } else { + DeviceState = failed_jump; + return; + } +} +uint32_t LedPWM(uint32_t pwm_period, uint32_t pwm_sweep_steps, uint32_t count) +{ + uint32_t curr_step = (count / pwm_period) % pwm_sweep_steps; /* 0 - pwm_sweep_steps */ + uint32_t pwm_duty = pwm_period * curr_step / pwm_sweep_steps; /* fraction of pwm_period */ + + uint32_t curr_sweep = (count / (pwm_period * pwm_sweep_steps)); /* ticks once per full sweep */ + + if (curr_sweep & 1) { + pwm_duty = pwm_period - pwm_duty; /* reverse direction in odd sweeps */ + } + return ((count % pwm_period) > pwm_duty) ? 1 : 0; +} + +uint8_t processRX() +{ + if (PIOS_COM_MSG_Receive(PIOS_COM_TELEM_USB, mReceive_Buffer, sizeof(mReceive_Buffer))) { + processComand(mReceive_Buffer); + } + return TRUE; +} + +int32_t platform_senddata(const uint8_t *msg, uint16_t msg_len) +{ + return PIOS_COM_MSG_Send(PIOS_COM_TELEM_USB, msg, msg_len); +} diff --git a/flight/targets/boards/coptercontrol/bootloader/pios_board.c b/flight/targets/boards/coptercontrol/bootloader/pios_board.c new file mode 100644 index 000000000..e0a63193a --- /dev/null +++ b/flight/targets/boards/coptercontrol/bootloader/pios_board.c @@ -0,0 +1,106 @@ +/** + ****************************************************************************** + * + * @file pios_board.c + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief Defines board specific static initializers for hardware for the CopterControl board. + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include +#include + +/* + * Pull in the board-specific static HW definitions. + * Including .c files is a bit ugly but this allows all of + * the HW definitions to be const and static to limit their + * scope. + * + * NOTE: THIS IS THE ONLY PLACE THAT SHOULD EVER INCLUDE THIS FILE + */ +#include "../board_hw_defs.c" + +uint32_t pios_com_telem_usb_id; + +/** + * PIOS_Board_Init() + * initializes all the core subsystems on this specific hardware + * called from System/openpilot.c + */ +static bool board_init_complete = false; +void PIOS_Board_Init(void) +{ + if (board_init_complete) { + return; + } + + /* Enable Prefetch Buffer */ + FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable); + + /* Flash 2 wait state */ + FLASH_SetLatency(FLASH_Latency_2); + + /* Delay system */ + PIOS_DELAY_Init(); + + const struct pios_board_info *bdinfo = &pios_board_info_blob; + +#if defined(PIOS_INCLUDE_LED) + const struct pios_gpio_cfg *led_cfg = PIOS_BOARD_HW_DEFS_GetLedCfg(bdinfo->board_rev); + PIOS_Assert(led_cfg); + PIOS_LED_Init(led_cfg); +#endif /* PIOS_INCLUDE_LED */ + +#if defined(PIOS_INCLUDE_USB) + /* Initialize board specific USB data */ + PIOS_USB_BOARD_DATA_Init(); + + /* Activate the HID-only USB configuration */ + PIOS_USB_DESC_HID_ONLY_Init(); + + uint32_t pios_usb_id; + switch (bdinfo->board_rev) { + case BOARD_REVISION_CC: + PIOS_USB_Init(&pios_usb_id, &pios_usb_main_cfg_cc); + break; + case BOARD_REVISION_CC3D: + PIOS_USB_Init(&pios_usb_id, &pios_usb_main_cfg_cc3d); + break; + default: + PIOS_Assert(0); + } +#if defined(PIOS_INCLUDE_USB_HID) && defined(PIOS_INCLUDE_COM_MSG) + uint32_t pios_usb_hid_id; + if (PIOS_USB_HID_Init(&pios_usb_hid_id, &pios_usb_hid_cfg, pios_usb_id)) { + PIOS_Assert(0); + } + if (PIOS_COM_MSG_Init(&pios_com_telem_usb_id, &pios_usb_hid_com_driver, pios_usb_hid_id)) { + PIOS_Assert(0); + } +#endif /* PIOS_INCLUDE_USB_HID && PIOS_INCLUDE_COM_MSG */ + +#endif /* PIOS_INCLUDE_USB */ + + RCC_AHBPeriphClockCmd(RCC_AHBPeriph_CRC, ENABLE); // TODO Tirar + + board_init_complete = true; +} + +void PIOS_ADC_DMA_Handler() +{} diff --git a/flight/targets/boards/coptercontrol/firmware/Makefile b/flight/targets/boards/coptercontrol/firmware/Makefile new file mode 100644 index 000000000..d58b57e64 --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/Makefile @@ -0,0 +1,148 @@ +# +# Copyright (c) 2009-2013, The OpenPilot Team, http://www.openpilot.org +# Copyright (c) 2012, PhoenixPilot, http://github.com/PhoenixPilot +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# + +ifndef OPENPILOT_IS_COOL + $(error Top level Makefile must be used to build this target) +endif + +include ../board-info.mk +include $(ROOT_DIR)/make/firmware-defs.mk + +# ARM DSP library +USE_DSP_LIB ?= NO + +# Set to YES to build a FW version that will erase data flash memory +ERASE_FLASH ?= NO + +# Set to yes to include Gcsreceiver module +GCSRECEIVER ?= NO + +# Enable Diag tasks ? +DIAG_TASKS ?= NO + +# List of mandatory modules to include +MODULES += Attitude +MODULES += Stabilization +MODULES += Actuator +MODULES += Receiver +MODULES += ManualControl +MODULES += FirmwareIAP +MODULES += Telemetry + +# List of optional modules to include +OPTMODULES += CameraStab +OPTMODULES += ComUsbBridge +OPTMODULES += GPS +OPTMODULES += TxPID +OPTMODULES += Osd/osdoutput +#OPTMODULES += Altitude +#OPTMODULES += Fault + +SRC += $(FLIGHTLIB)/notification.c + +# Include all camera options +CDEFS += -DUSE_INPUT_LPF -DUSE_GIMBAL_LPF -DUSE_GIMBAL_FF + + + +# Erase flash firmware should be buildable from command line +ifeq ($(ERASE_FLASH), YES) + CDEFS += -DERASE_FLASH +endif + +# List C source files here (C dependencies are automatically generated). +# Use file-extension c for "c-only"-files +ifndef TESTAPP + ## The standard CMSIS startup + SRC += $(CMSIS_DEVICEDIR)/system_stm32f10x.c + + ## Application Core + SRC += ../pios_usb_board_data.c + SRC += $(OPMODULEDIR)/System/systemmod.c + SRC += $(OPSYSTEM)/coptercontrol.c + SRC += $(OPSYSTEM)/pios_board.c + SRC += $(FLIGHTLIB)/alarms.c + SRC += $(FLIGHTLIB)/instrumentation.c + SRC += $(OPUAVTALK)/uavtalk.c + SRC += $(OPUAVOBJ)/uavobjectmanager.c + SRC += $(OPUAVOBJ)/uavobjectpersistence.c + SRC += $(OPUAVOBJ)/eventdispatcher.c + + ## UAVObjects + SRC += $(OPUAVSYNTHDIR)/accessorydesired.c + SRC += $(OPUAVSYNTHDIR)/objectpersistence.c + SRC += $(OPUAVSYNTHDIR)/gcstelemetrystats.c + SRC += $(OPUAVSYNTHDIR)/flighttelemetrystats.c + SRC += $(OPUAVSYNTHDIR)/faultsettings.c + SRC += $(OPUAVSYNTHDIR)/flightstatus.c + SRC += $(OPUAVSYNTHDIR)/systemstats.c + SRC += $(OPUAVSYNTHDIR)/systemalarms.c + SRC += $(OPUAVSYNTHDIR)/systemsettings.c + SRC += $(OPUAVSYNTHDIR)/stabilizationdesired.c + SRC += $(OPUAVSYNTHDIR)/stabilizationsettings.c + SRC += $(OPUAVSYNTHDIR)/stabilizationsettingsbank1.c + SRC += $(OPUAVSYNTHDIR)/stabilizationsettingsbank2.c + SRC += $(OPUAVSYNTHDIR)/stabilizationsettingsbank3.c + SRC += $(OPUAVSYNTHDIR)/stabilizationstatus.c + SRC += $(OPUAVSYNTHDIR)/stabilizationbank.c + SRC += $(OPUAVSYNTHDIR)/actuatorcommand.c + SRC += $(OPUAVSYNTHDIR)/actuatordesired.c + SRC += $(OPUAVSYNTHDIR)/actuatorsettings.c + SRC += $(OPUAVSYNTHDIR)/accelstate.c + SRC += $(OPUAVSYNTHDIR)/accelgyrosettings.c + SRC += $(OPUAVSYNTHDIR)/gyrostate.c + SRC += $(OPUAVSYNTHDIR)/attitudestate.c + SRC += $(OPUAVSYNTHDIR)/manualcontrolcommand.c + SRC += $(OPUAVSYNTHDIR)/watchdogstatus.c + SRC += $(OPUAVSYNTHDIR)/manualcontrolsettings.c + SRC += $(OPUAVSYNTHDIR)/flightmodesettings.c + SRC += $(OPUAVSYNTHDIR)/mixersettings.c + SRC += $(OPUAVSYNTHDIR)/firmwareiapobj.c + SRC += $(OPUAVSYNTHDIR)/attitudesettings.c + SRC += $(OPUAVSYNTHDIR)/camerastabsettings.c + SRC += $(OPUAVSYNTHDIR)/cameradesired.c + SRC += $(OPUAVSYNTHDIR)/gpspositionsensor.c + SRC += $(OPUAVSYNTHDIR)/gpsvelocitysensor.c + SRC += $(OPUAVSYNTHDIR)/gpssettings.c + SRC += $(OPUAVSYNTHDIR)/hwsettings.c + SRC += $(OPUAVSYNTHDIR)/receiveractivity.c + SRC += $(OPUAVSYNTHDIR)/mixerstatus.c + SRC += $(OPUAVSYNTHDIR)/ratedesired.c + SRC += $(OPUAVSYNTHDIR)/txpidsettings.c + SRC += $(OPUAVSYNTHDIR)/mpu6000settings.c + # Command line option for Gcsreceiver module + ifeq ($(GCSRECEIVER), YES) + SRC += $(OPUAVSYNTHDIR)/gcsreceiver.c + endif + # Enable Diag tasks and UAVOs needed + ifeq ($(DIAG_TASKS), YES) + CDEFS += -DDIAG_TASKS + SRC += $(OPUAVSYNTHDIR)/taskinfo.c + SRC += $(OPUAVSYNTHDIR)/callbackinfo.c + SRC += $(OPUAVSYNTHDIR)/perfcounter.c + SRC += $(OPUAVSYNTHDIR)/i2cstats.c + endif +else + ## Test Code + SRC += $(OPTESTS)/test_common.c + SRC += $(OPTESTS)/$(TESTAPP).c +endif + +include $(ROOT_DIR)/make/apps-defs.mk +include $(ROOT_DIR)/make/common-defs.mk diff --git a/flight/targets/boards/coptercontrol/firmware/coptercontrol.c b/flight/targets/boards/coptercontrol/firmware/coptercontrol.c new file mode 100644 index 000000000..e748f6317 --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/coptercontrol.c @@ -0,0 +1,117 @@ +/** + ****************************************************************************** + * @addtogroup OpenPilotSystem OpenPilot System + * @brief These files are the core system files of OpenPilot. + * They are the ground layer just above PiOS. In practice, OpenPilot actually starts + * in the main() function of openpilot.c + * @{ + * @addtogroup OpenPilotCore OpenPilot Core + * @brief This is where the OP firmware starts. Those files also define the compile-time + * options of the firmware. + * @{ + * @file openpilot.c + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief Sets up and runs main OpenPilot tasks. + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include "inc/openpilot.h" +#include +#include + +/* Task Priorities */ +#define PRIORITY_TASK_HOOKS (tskIDLE_PRIORITY + 3) + +/* Global Variables */ + +/* Prototype of PIOS_Board_Init() function */ +extern void PIOS_Board_Init(void); +extern void Stack_Change(void); + +/** + * OpenPilot Main function: + * + * Initialize PiOS
+ * Create the "System" task (SystemModInitializein Modules/System/systemmod.c)
+ * Start FreeRTOS Scheduler (vTaskStartScheduler) (Now handled by caller) + * If something goes wrong, blink LED1 and LED2 every 100ms + * + */ +int main() +{ + /* NOTE: Do NOT modify the following start-up sequence */ + /* Any new initialization functions should be added in OpenPilotInit() */ + + /* Brings up System using CMSIS functions, enables the LEDs. */ + PIOS_SYS_Init(); + + /* Architecture dependant Hardware and + * core subsystem initialisation + * (see pios_board.c for your arch) + * */ + PIOS_Board_Init(); + +#ifdef ERASE_FLASH + PIOS_Flash_Jedec_EraseChip(); +#if defined(PIOS_LED_HEARTBEAT) + PIOS_LED_Off(PIOS_LED_HEARTBEAT); +#endif /* PIOS_LED_HEARTBEAT */ + while (1) { + ; + } +#endif + + /* Initialize modules */ + MODULE_INITIALISE_ALL + /* swap the stack to use the IRQ stack */ + Stack_Change(); + + /* Start the FreeRTOS scheduler, which should never return. + * + * NOTE: OpenPilot runs an operating system (FreeRTOS), which constantly calls + * (schedules) function files (modules). These functions never return from their + * while loops, which explains why each module has a while(1){} segment. Thus, + * the OpenPilot software actually starts at the vTaskStartScheduler() function, + * even though this is somewhat obscure. + * + * In addition, there are many main() functions in the OpenPilot firmware source tree + * This is because each main() refers to a separate hardware platform. Of course, + * C only allows one main(), so only the relevant main() function is compiled when + * making a specific firmware. + * + */ + vTaskStartScheduler(); + + /* If all is well we will never reach here as the scheduler will now be running. */ + + /* Do some indication to user that something bad just happened */ + while (1) { +#if defined(PIOS_LED_HEARTBEAT) + PIOS_LED_Toggle(PIOS_LED_HEARTBEAT); +#endif /* PIOS_LED_HEARTBEAT */ + PIOS_DELAY_WaitmS(100); + } + + return 0; +} + +/** + * @} + * @} + */ diff --git a/flight/targets/boards/coptercontrol/firmware/inc/FreeRTOSConfig.h b/flight/targets/boards/coptercontrol/firmware/inc/FreeRTOSConfig.h new file mode 100644 index 000000000..429d86ade --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/inc/FreeRTOSConfig.h @@ -0,0 +1,99 @@ +#ifndef FREERTOS_CONFIG_H +#define FREERTOS_CONFIG_H + +/*----------------------------------------------------------- +* Application specific definitions. +* +* These definitions should be adjusted for your particular hardware and +* application requirements. +* +* THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE +* FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE. +* +* See http://www.freertos.org/a00110.html. +*----------------------------------------------------------*/ + +/** + * @addtogroup PIOS PIOS + * @{ + * @addtogroup FreeRTOS FreeRTOS + * @{ + */ + +/* Notes: We use 5 task priorities */ + +#define configUSE_PREEMPTION 1 +#define configUSE_IDLE_HOOK 1 +#define configUSE_TICK_HOOK 0 +#define configUSE_MALLOC_FAILED_HOOK 1 +#define configCPU_CLOCK_HZ ((unsigned long)72000000) +#define configTICK_RATE_HZ ((portTickType)1000) +#define configMAX_PRIORITIES ((unsigned portBASE_TYPE)5) +#define configMINIMAL_STACK_SIZE ((unsigned short)48) +#define configTOTAL_HEAP_SIZE ((size_t)(53 * 256)) +#define configMAX_TASK_NAME_LEN (6) +#define configUSE_TRACE_FACILITY 0 +#define configUSE_16_BIT_TICKS 0 +#define configIDLE_SHOULD_YIELD 0 +#define configUSE_MUTEXES 1 +#define configUSE_RECURSIVE_MUTEXES 1 +#define configUSE_COUNTING_SEMAPHORES 0 +#define configUSE_ALTERNATIVE_API 0 +#define configQUEUE_REGISTRY_SIZE 0 + +/* Co-routine definitions. */ +#define configUSE_CO_ROUTINES 0 +#define configMAX_CO_ROUTINE_PRIORITIES (2) + +/* Set the following definitions to 1 to include the API function, or zero + to exclude the API function. */ + +#define INCLUDE_vTaskPrioritySet 1 +#define INCLUDE_uxTaskPriorityGet 1 +#define INCLUDE_vTaskDelete 1 +#define INCLUDE_vTaskCleanUpResources 0 +#define INCLUDE_vTaskSuspend 1 +#define INCLUDE_vTaskDelayUntil 1 +#define INCLUDE_vTaskDelay 1 +#define INCLUDE_xTaskGetSchedulerState 0 +#define INCLUDE_xTaskGetCurrentTaskHandle 1 +#define INCLUDE_uxTaskGetStackHighWaterMark 1 + +/* This is the raw value as per the Cortex-M3 NVIC. Values can be 255 + (lowest) to 1 (highest maskable) to 0 (highest non-maskable). */ +#define configKERNEL_INTERRUPT_PRIORITY 15 << 4 /* equivalent to NVIC priority 15 */ + #define configMAX_SYSCALL_INTERRUPT_PRIORITY 3 << 4 /* equivalent to NVIC priority 3 */ + +/* This is the value being used as per the ST library which permits 16 + priority values, 0 to 15. This must correspond to the + configKERNEL_INTERRUPT_PRIORITY setting. Here 15 corresponds to the lowest + NVIC value of 255. */ +#define configLIBRARY_KERNEL_INTERRUPT_PRIORITY 15 + +#if !defined(ARCH_POSIX) && !defined(ARCH_WIN32) +#define CHECK_IRQ_STACK +#endif + +/* Enable run time stats collection */ +#define configGENERATE_RUN_TIME_STATS 1 +#define INCLUDE_uxTaskGetRunTime 1 +#define INCLUDE_xTaskGetIdleTaskHandle 1 +#define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS() \ + do { \ + (*(unsigned long *)0xe000edfc) |= (1 << 24); /* DEMCR |= DEMCR_TRCENA */ \ + (*(unsigned long *)0xe0001000) |= 1; /* DWT_CTRL |= DWT_CYCCNT_ENA */ \ + } \ + while (0) +#define portGET_RUN_TIME_COUNTER_VALUE() (*(unsigned long *)0xe0001004) /* DWT_CYCCNT */ + +#ifdef DIAG_TASKS +#define configCHECK_FOR_STACK_OVERFLOW 2 +#else +#define configCHECK_FOR_STACK_OVERFLOW 1 +#endif + +/** + * @} + */ + +#endif /* FREERTOS_CONFIG_H */ diff --git a/flight/targets/boards/coptercontrol/firmware/inc/openpilot.h b/flight/targets/boards/coptercontrol/firmware/inc/openpilot.h new file mode 100644 index 000000000..5576baca6 --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/inc/openpilot.h @@ -0,0 +1,52 @@ +/** + ****************************************************************************** + * @addtogroup OpenPilotSystem OpenPilot System + * @{ + * @addtogroup OpenPilotCore OpenPilot Core + * @{ + * @file openpilot.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief Main OpenPilot header. + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef OPENPILOT_H +#define OPENPILOT_H + +/* PIOS Includes */ +#include + +/* OpenPilot Libraries */ +#include +#include +#include +#include + +#include "alarms.h" +#include + +/* Global Functions */ +void OpenPilotInit(void); + +#endif /* OPENPILOT_H */ + +/** + * @} + * @} + */ diff --git a/flight/targets/boards/coptercontrol/firmware/inc/pios_board_posix.h b/flight/targets/boards/coptercontrol/firmware/inc/pios_board_posix.h new file mode 100644 index 000000000..16364d7fa --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/inc/pios_board_posix.h @@ -0,0 +1,81 @@ +/** + ****************************************************************************** + * + * @file pios_board.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief Defines board hardware for the OpenPilot Version 1.1 hardware. + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + + +#ifndef PIOS_BOARD_H +#define PIOS_BOARD_H + + +// ------------------------ +// PIOS_LED +// ------------------------ +// #define PIOS_LED_LED1_GPIO_PORT GPIOC +// #define PIOS_LED_LED1_GPIO_PIN GPIO_Pin_12 +// #define PIOS_LED_LED1_GPIO_CLK RCC_APB2Periph_GPIOC +// #define PIOS_LED_LED2_GPIO_PORT GPIOC +// #define PIOS_LED_LED2_GPIO_PIN GPIO_Pin_13 +// #define PIOS_LED_LED2_GPIO_CLK RCC_APB2Periph_GPIOC +#define PIOS_LED_NUM 2 +// #define PIOS_LED_PORTS { PIOS_LED_LED1_GPIO_PORT, PIOS_LED_LED2_GPIO_PORT } +// #define PIOS_LED_PINS { PIOS_LED_LED1_GPIO_PIN, PIOS_LED_LED2_GPIO_PIN } +// #define PIOS_LED_CLKS { PIOS_LED_LED1_GPIO_CLK, PIOS_LED_LED2_GPIO_CLK } + + +// ------------------------- +// COM +// +// See also pios_board_posix.c +// ------------------------- +// #define PIOS_USART_TX_BUFFER_SIZE 256 +#define PIOS_COM_BUFFER_SIZE 1024 +#define PIOS_UDP_RX_BUFFER_SIZE PIOS_COM_BUFFER_SIZE + +#define PIOS_COM_TELEM_RF 0 +#define PIOS_COM_GPS 1 +#define PIOS_COM_TELEM_USB 2 + +#ifdef PIOS_ENABLE_AUX_UART +#define PIOS_COM_AUX 3 +#define PIOS_COM_DEBUG PIOS_COM_AUX +#endif + +/** + * glue macros for file IO + * STM32 uses DOSFS for file IO + */ +#define PIOS_FOPEN_READ(filename, file) (file = fopen((char *)filename, "r")) == NULL + +#define PIOS_FOPEN_WRITE(filename, file) (file = fopen((char *)filename, "w")) == NULL + +#define PIOS_FREAD(file, bufferadr, length, resultadr) (*resultadr = fread((uint8_t *)bufferadr, 1, length, *file)) != length + +#define PIOS_FWRITE(file, bufferadr, length, resultadr) *resultadr = fwrite((uint8_t *)bufferadr, 1, length, *file) + + +#define PIOS_FCLOSE(file) fclose(file) + +#define PIOS_FUNLINK(file) unlink((char *)filename) + +#endif /* PIOS_BOARD_H */ diff --git a/flight/targets/boards/coptercontrol/firmware/inc/pios_config.h b/flight/targets/boards/coptercontrol/firmware/inc/pios_config.h new file mode 100644 index 000000000..a371b908f --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/inc/pios_config.h @@ -0,0 +1,188 @@ +/** + ****************************************************************************** + * @addtogroup OpenPilotSystem OpenPilot System + * @{ + * @addtogroup OpenPilotCore OpenPilot Core + * @{ + * @file pios_config.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010-2013. + * @brief PiOS configuration header, the compile time config file for the PIOS. + * Defines which PiOS libraries and features are included in the firmware. + * @see The GNU Public License (GPL) Version 3 + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef PIOS_CONFIG_H +#define PIOS_CONFIG_H + +/* + * Below is a complete list of PIOS configurable options. + * Please do not remove or rearrange them. Only comment out + * unused options in the list. See main pios.h header for more + * details. + */ + +/* #define PIOS_INCLUDE_DEBUG_CONSOLE */ +/* #define DEBUG_LEVEL 0 */ +/* #define PIOS_ENABLE_DEBUG_PINS */ + +/* PIOS FreeRTOS support */ +#define PIOS_INCLUDE_FREERTOS + + +/* PIOS CallbackScheduler support */ +#define PIOS_INCLUDE_CALLBACKSCHEDULER + +/* PIOS bootloader helper */ +#define PIOS_INCLUDE_BL_HELPER +/* #define PIOS_INCLUDE_BL_HELPER_WRITE_SUPPORT */ + +/* PIOS system functions */ +#define PIOS_INCLUDE_DELAY +#define PIOS_INCLUDE_INITCALL +#define PIOS_INCLUDE_SYS +#define PIOS_INCLUDE_TASK_MONITOR +// #define PIOS_INCLUDE_INSTRUMENTATION +#define PIOS_INSTRUMENTATION_MAX_COUNTERS 5 + +/* PIOS hardware peripherals */ +#define PIOS_INCLUDE_IRQ +#define PIOS_INCLUDE_RTC +#define PIOS_INCLUDE_TIM +#define PIOS_INCLUDE_USART +#define PIOS_INCLUDE_ADC +/* #define PIOS_INCLUDE_I2C */ +#define PIOS_INCLUDE_SPI +#define PIOS_INCLUDE_GPIO +#define PIOS_INCLUDE_EXTI +#define PIOS_INCLUDE_WDG + +/* PIOS USB functions */ +#define PIOS_INCLUDE_USB +#define PIOS_INCLUDE_USB_HID +#define PIOS_INCLUDE_USB_CDC +#define PIOS_INCLUDE_USB_RCTX + +/* PIOS sensor interfaces */ +#define PIOS_INCLUDE_ADXL345 +/* #define PIOS_INCLUDE_BMA180 */ +/* #define PIOS_INCLUDE_L3GD20 */ +#define PIOS_INCLUDE_MPU6000 +#define PIOS_MPU6000_ACCEL +/* #define PIOS_INCLUDE_HMC5843 */ +/* #define PIOS_INCLUDE_HMC5X83 */ +/* #define PIOS_HMC5883_HAS_GPIOS */ +/* #define PIOS_INCLUDE_BMP085 */ +/* #define PIOS_INCLUDE_MS5611 */ +/* #define PIOS_INCLUDE_MPXV */ +/* #define PIOS_INCLUDE_ETASV3 */ +/* #define PIOS_INCLUDE_HCSR04 */ + +#define PIOS_SENSOR_RATE 500.0f + +/* PIOS receiver drivers */ +#define PIOS_INCLUDE_PWM +#define PIOS_INCLUDE_PPM +#define PIOS_INCLUDE_PPM_FLEXI +#define PIOS_INCLUDE_DSM +#define PIOS_INCLUDE_SBUS +/* #define PIOS_INCLUDE_GCSRCVR */ +/* #define PIOS_INCLUDE_OPLINKRCVR */ + +/* PIOS abstract receiver interface */ +#define PIOS_INCLUDE_RCVR + +/* PIOS common peripherals */ +#define PIOS_INCLUDE_LED +#define PIOS_INCLUDE_IAP +#define PIOS_INCLUDE_SERVO +/* #define PIOS_INCLUDE_I2C_ESC */ +/* #define PIOS_INCLUDE_OVERO */ +/* #define PIOS_OVERO_SPI */ +/* #define PIOS_INCLUDE_SDCARD */ +/* #define LOG_FILENAME "startup.log" */ +#define PIOS_INCLUDE_FLASH +#define PIOS_INCLUDE_FLASH_LOGFS_SETTINGS +/* #define FLASH_FREERTOS */ +/* #define PIOS_INCLUDE_FLASH_EEPROM */ +/* #define PIOS_INCLUDE_FLASH_INTERNAL */ + +/* PIOS radio modules */ +/* #define PIOS_INCLUDE_RFM22B */ +/* #define PIOS_INCLUDE_RFM22B_COM */ +/* #define PIOS_INCLUDE_PPM_OUT */ +/* #define PIOS_RFM22B_DEBUG_ON_TELEM */ + +/* PIOS misc peripherals */ +/* #define PIOS_INCLUDE_VIDEO */ +/* #define PIOS_INCLUDE_WAVE */ +/* #define PIOS_INCLUDE_UDP */ + +/* PIOS abstract comms interface with options */ +#define PIOS_INCLUDE_COM +/* #define PIOS_INCLUDE_COM_MSG */ +#define PIOS_INCLUDE_TELEMETRY_RF +/* #define PIOS_INCLUDE_COM_TELEM */ +/* #define PIOS_INCLUDE_COM_FLEXI */ +/* #define PIOS_INCLUDE_COM_AUX */ +/* #define PIOS_TELEM_PRIORITY_QUEUE */ +#define PIOS_INCLUDE_GPS +#define PIOS_GPS_MINIMAL +/* #define PIOS_INCLUDE_GPS_NMEA_PARSER */ +#define PIOS_INCLUDE_GPS_UBX_PARSER +/* #define PIOS_GPS_SETS_HOMELOCATION */ + +/* Stabilization options */ +/* #define PIOS_QUATERNION_STABILIZATION */ +#define PIOS_EXCLUDE_ADVANCED_FEATURES +/* Performance counters */ +#define IDLE_COUNTS_PER_SEC_AT_NO_LOAD 1995998 + +/* Alarm Thresholds */ +#define HEAP_LIMIT_WARNING 220 +#define HEAP_LIMIT_CRITICAL 40 +#define IRQSTACK_LIMIT_WARNING 100 +#define IRQSTACK_LIMIT_CRITICAL 60 +#define CPULOAD_LIMIT_WARNING 85 +#define CPULOAD_LIMIT_CRITICAL 95 + +/* Task stack sizes */ +#define PIOS_ACTUATOR_STACK_SIZE 820 +#define PIOS_MANUAL_STACK_SIZE 735 +#define PIOS_RECEIVER_STACK_SIZE 620 +#define PIOS_STABILIZATION_STACK_SIZE 400 + +#ifdef DIAG_TASKS +#define PIOS_SYSTEM_STACK_SIZE 740 +#else +#define PIOS_SYSTEM_STACK_SIZE 660 +#endif +#define PIOS_TELEM_RX_STACK_SIZE 410 +#define PIOS_TELEM_TX_STACK_SIZE 560 +#define PIOS_EVENTDISPATCHER_STACK_SIZE 95 + +/* This can't be too high to stop eventdispatcher thread overflowing */ +#define PIOS_EVENTDISAPTCHER_QUEUE 10 + +/* Revolution series */ +/* #define REVOLUTION */ + +#endif /* PIOS_CONFIG_H */ +/** + * @} + * @} + */ diff --git a/flight/targets/boards/coptercontrol/firmware/inc/pios_config_posix.h b/flight/targets/boards/coptercontrol/firmware/inc/pios_config_posix.h new file mode 100644 index 000000000..4e8aa47c6 --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/inc/pios_config_posix.h @@ -0,0 +1,48 @@ +/** + ****************************************************************************** + * + * @file pios_config.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief PiOS configuration header. + * Central compile time config for the project. + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + + +#ifndef PIOS_CONFIG_POSIX_H +#define PIOS_CONFIG_POSIX_H + + +/* Enable/Disable PiOS Modules */ +#define PIOS_INCLUDE_SYS +#define PIOS_INCLUDE_DELAY +#define PIOS_INCLUDE_LED +#define PIOS_INCLUDE_FREERTOS +#define PIOS_INCLUDE_CALLBACKSCHEDULER +#define PIOS_INCLUDE_TASK_MONITOR +#define PIOS_INCLUDE_COM +#define PIOS_INCLUDE_UDP +#define PIOS_INCLUDE_SERVO + + +/* Defaults for Logging */ +#define LOG_FILENAME "PIOS.LOG" +#define STARTUP_LOG_ENABLED 1 + +#endif /* PIOS_CONFIG_POSIX_H */ diff --git a/flight/targets/boards/coptercontrol/firmware/inc/pios_usb_board_data.h b/flight/targets/boards/coptercontrol/firmware/inc/pios_usb_board_data.h new file mode 100644 index 000000000..1fac7c659 --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/inc/pios_usb_board_data.h @@ -0,0 +1,47 @@ +/** + ****************************************************************************** + * @addtogroup PIOS PIOS Core hardware abstraction layer + * @{ + * @addtogroup PIOS_USB_BOARD Board specific USB definitions + * @brief Board specific USB definitions + * @{ + * + * @file pios_usb_board_data.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief Board specific USB definitions + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef PIOS_USB_BOARD_DATA_H +#define PIOS_USB_BOARD_DATA_H + +// Note : changing below length will require changes to the USB buffer setup +#define PIOS_USB_BOARD_CDC_DATA_LENGTH 64 +#define PIOS_USB_BOARD_CDC_MGMT_LENGTH 32 +#define PIOS_USB_BOARD_HID_DATA_LENGTH 64 + +#define PIOS_USB_BOARD_EP_NUM 4 + +#include /* USB_* macros */ + +#define PIOS_USB_BOARD_PRODUCT_ID USB_PRODUCT_ID_COPTERCONTROL +#define PIOS_USB_BOARD_DEVICE_VER USB_OP_DEVICE_VER(USB_OP_BOARD_ID_COPTERCONTROL, USB_OP_BOARD_MODE_FW) +#define PIOS_USB_BOARD_SN_SUFFIX "+FW" + +#endif /* PIOS_USB_BOARD_DATA_H */ diff --git a/flight/targets/boards/coptercontrol/firmware/pios_board.c b/flight/targets/boards/coptercontrol/firmware/pios_board.c new file mode 100644 index 000000000..474a21330 --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/pios_board.c @@ -0,0 +1,920 @@ +/** + ***************************************************************************** + * @file pios_board.c + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @author PhoenixPilot, http://github.com/PhoenixPilot, Copyright (C) 2012 + * @addtogroup OpenPilotSystem OpenPilot System + * @{ + * @addtogroup OpenPilotCore OpenPilot Core + * @{ + * @brief Defines board specific static initializers for hardware for the CopterControl board. + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include "inc/openpilot.h" +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef PIOS_INCLUDE_INSTRUMENTATION +#include +#endif +#if defined(PIOS_INCLUDE_ADXL345) +#include +#endif + +/* + * Pull in the board-specific static HW definitions. + * Including .c files is a bit ugly but this allows all of + * the HW definitions to be const and static to limit their + * scope. + * + * NOTE: THIS IS THE ONLY PLACE THAT SHOULD EVER INCLUDE THIS FILE + */ +#include "../board_hw_defs.c" + +/* One slot per selectable receiver group. + * eg. PWM, PPM, GCS, DSMMAINPORT, DSMFLEXIPORT, SBUS + * NOTE: No slot in this map for NONE. + */ +uint32_t pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_NONE]; + +static SystemAlarmsExtendedAlarmStatusOptions CopterControlConfigHook(); +static void ActuatorSettingsUpdatedCb(UAVObjEvent *ev); + +#define PIOS_COM_TELEM_RF_RX_BUF_LEN 32 +#define PIOS_COM_TELEM_RF_TX_BUF_LEN 12 + +#define PIOS_COM_GPS_RX_BUF_LEN 32 + +#define PIOS_COM_TELEM_USB_RX_BUF_LEN 65 +#define PIOS_COM_TELEM_USB_TX_BUF_LEN 65 + +#define PIOS_COM_BRIDGE_RX_BUF_LEN 65 +#define PIOS_COM_BRIDGE_TX_BUF_LEN 12 + +#define PIOS_COM_HKOSD_TX_BUF_LEN 22 + +#if defined(PIOS_INCLUDE_DEBUG_CONSOLE) +#define PIOS_COM_DEBUGCONSOLE_TX_BUF_LEN 40 +uint32_t pios_com_debug_id; +#endif /* PIOS_INCLUDE_DEBUG_CONSOLE */ + +uint32_t pios_com_telem_rf_id; +uint32_t pios_com_telem_usb_id; +uint32_t pios_com_vcp_id; +uint32_t pios_com_gps_id; +uint32_t pios_com_bridge_id; +uint32_t pios_com_hkosd_id; + +uint32_t pios_usb_rctx_id; + +uintptr_t pios_uavo_settings_fs_id; +uintptr_t pios_user_fs_id = 0; +/** + * Configuration for MPU6000 chip + */ +#if defined(PIOS_INCLUDE_MPU6000) +#include "pios_mpu6000.h" +#include "pios_mpu6000_config.h" +static const struct pios_exti_cfg pios_exti_mpu6000_cfg __exti_config = { + .vector = PIOS_MPU6000_IRQHandler, + .line = EXTI_Line3, + .pin = { + .gpio = GPIOA, + .init = { + .GPIO_Pin = GPIO_Pin_3, + .GPIO_Speed = GPIO_Speed_10MHz, + .GPIO_Mode = GPIO_Mode_IN_FLOATING, + }, + }, + .irq = { + .init = { + .NVIC_IRQChannel = EXTI3_IRQn, + .NVIC_IRQChannelPreemptionPriority = PIOS_IRQ_PRIO_HIGH, + .NVIC_IRQChannelSubPriority = 0, + .NVIC_IRQChannelCmd = ENABLE, + }, + }, + .exti = { + .init = { + .EXTI_Line = EXTI_Line3, // matches above GPIO pin + .EXTI_Mode = EXTI_Mode_Interrupt, + .EXTI_Trigger = EXTI_Trigger_Rising, + .EXTI_LineCmd = ENABLE, + }, + }, +}; + +static const struct pios_mpu6000_cfg pios_mpu6000_cfg = { + .exti_cfg = &pios_exti_mpu6000_cfg, + .Fifo_store = PIOS_MPU6000_FIFO_TEMP_OUT | PIOS_MPU6000_FIFO_GYRO_X_OUT | PIOS_MPU6000_FIFO_GYRO_Y_OUT | PIOS_MPU6000_FIFO_GYRO_Z_OUT, + // Clock at 8 khz, downsampled by 8 for 1000 Hz + .Smpl_rate_div_no_dlp = 7, + // Clock at 1 khz, downsampled by 1 for 1000 Hz + .Smpl_rate_div_dlp = 0, + .interrupt_cfg = PIOS_MPU6000_INT_CLR_ANYRD, + .interrupt_en = PIOS_MPU6000_INTEN_DATA_RDY, + .User_ctl = PIOS_MPU6000_USERCTL_DIS_I2C, + .Pwr_mgmt_clk = PIOS_MPU6000_PWRMGMT_PLL_X_CLK, + .accel_range = PIOS_MPU6000_ACCEL_8G, + .gyro_range = PIOS_MPU6000_SCALE_2000_DEG, + .filter = PIOS_MPU6000_LOWPASS_256_HZ, + .orientation = PIOS_MPU6000_TOP_180DEG, + .fast_prescaler = PIOS_SPI_PRESCALER_4, + .std_prescaler = PIOS_SPI_PRESCALER_64, + .max_downsample = 2 +}; +#endif /* PIOS_INCLUDE_MPU6000 */ + +/** + * PIOS_Board_Init() + * initializes all the core subsystems on this specific hardware + * called from System/openpilot.c + */ +int32_t init_test; +void PIOS_Board_Init(void) +{ + /* Delay system */ + PIOS_DELAY_Init(); + + const struct pios_board_info *bdinfo = &pios_board_info_blob; + +#if defined(PIOS_INCLUDE_LED) + const struct pios_gpio_cfg *led_cfg = PIOS_BOARD_HW_DEFS_GetLedCfg(bdinfo->board_rev); + PIOS_Assert(led_cfg); + PIOS_LED_Init(led_cfg); +#endif /* PIOS_INCLUDE_LED */ + +#ifdef PIOS_INCLUDE_INSTRUMENTATION + PIOS_Instrumentation_Init(PIOS_INSTRUMENTATION_MAX_COUNTERS); +#endif + +#if defined(PIOS_INCLUDE_SPI) + /* Set up the SPI interface to the serial flash */ + + switch (bdinfo->board_rev) { + case BOARD_REVISION_CC: + if (PIOS_SPI_Init(&pios_spi_flash_accel_id, &pios_spi_flash_accel_cfg_cc)) { + PIOS_Assert(0); + } + break; + case BOARD_REVISION_CC3D: + if (PIOS_SPI_Init(&pios_spi_flash_accel_id, &pios_spi_flash_accel_cfg_cc3d)) { + PIOS_Assert(0); + } + break; + default: + PIOS_Assert(0); + } + +#endif + + uintptr_t flash_id; + switch (bdinfo->board_rev) { + case BOARD_REVISION_CC: + if (PIOS_Flash_Jedec_Init(&flash_id, pios_spi_flash_accel_id, 1)) { + PIOS_DEBUG_Assert(0); + } + if (PIOS_FLASHFS_Logfs_Init(&pios_uavo_settings_fs_id, &flashfs_w25x_cfg, &pios_jedec_flash_driver, flash_id)) { + PIOS_DEBUG_Assert(0); + } + break; + case BOARD_REVISION_CC3D: + if (PIOS_Flash_Jedec_Init(&flash_id, pios_spi_flash_accel_id, 0)) { + PIOS_DEBUG_Assert(0); + } + if (PIOS_FLASHFS_Logfs_Init(&pios_uavo_settings_fs_id, &flashfs_m25p_cfg, &pios_jedec_flash_driver, flash_id)) { + PIOS_DEBUG_Assert(0); + } + break; + default: + PIOS_DEBUG_Assert(0); + } + + /* Initialize the task monitor */ + if (PIOS_TASK_MONITOR_Initialize(TASKINFO_RUNNING_NUMELEM)) { + PIOS_Assert(0); + } + + /* Initialize the delayed callback library */ + PIOS_CALLBACKSCHEDULER_Initialize(); + + /* Initialize UAVObject libraries */ + EventDispatcherInitialize(); + UAVObjInitialize(); + +#if defined(PIOS_INCLUDE_RTC) + /* Initialize the real-time clock and its associated tick */ + PIOS_RTC_Init(&pios_rtc_main_cfg); +#endif + PIOS_IAP_Init(); + // check for safe mode commands from gcs + if (PIOS_IAP_ReadBootCmd(0) == PIOS_IAP_CLEAR_FLASH_CMD_0 && + PIOS_IAP_ReadBootCmd(1) == PIOS_IAP_CLEAR_FLASH_CMD_1 && + PIOS_IAP_ReadBootCmd(2) == PIOS_IAP_CLEAR_FLASH_CMD_2) { + PIOS_FLASHFS_Format(pios_uavo_settings_fs_id); + PIOS_IAP_WriteBootCmd(0, 0); + PIOS_IAP_WriteBootCmd(1, 0); + PIOS_IAP_WriteBootCmd(2, 0); + } + + HwSettingsInitialize(); + +#ifndef ERASE_FLASH +#ifdef PIOS_INCLUDE_WDG + /* Initialize watchdog as early as possible to catch faults during init */ + PIOS_WDG_Init(); +#endif +#endif + + /* Initialize the alarms library */ + AlarmsInitialize(); + + /* Check for repeated boot failures */ + uint16_t boot_count = PIOS_IAP_ReadBootCount(); + if (boot_count < 3) { + PIOS_IAP_WriteBootCount(++boot_count); + AlarmsClear(SYSTEMALARMS_ALARM_BOOTFAULT); + } else { + /* Too many failed boot attempts, force hwsettings to defaults */ + HwSettingsSetDefaults(HwSettingsHandle(), 0); + AlarmsSet(SYSTEMALARMS_ALARM_BOOTFAULT, SYSTEMALARMS_ALARM_CRITICAL); + } + + /* Set up pulse timers */ + PIOS_TIM_InitClock(&tim_1_cfg); + PIOS_TIM_InitClock(&tim_2_cfg); + PIOS_TIM_InitClock(&tim_3_cfg); + PIOS_TIM_InitClock(&tim_4_cfg); + +#if defined(PIOS_INCLUDE_USB) + /* Initialize board specific USB data */ + PIOS_USB_BOARD_DATA_Init(); + + + /* Flags to determine if various USB interfaces are advertised */ + bool usb_hid_present = false; + bool usb_cdc_present = false; + +#if defined(PIOS_INCLUDE_USB_CDC) + if (PIOS_USB_DESC_HID_CDC_Init()) { + PIOS_Assert(0); + } + usb_hid_present = true; + usb_cdc_present = true; +#else + if (PIOS_USB_DESC_HID_ONLY_Init()) { + PIOS_Assert(0); + } + usb_hid_present = true; +#endif + + uint32_t pios_usb_id; + + switch (bdinfo->board_rev) { + case BOARD_REVISION_CC: + PIOS_USB_Init(&pios_usb_id, &pios_usb_main_cfg_cc); + break; + case BOARD_REVISION_CC3D: + PIOS_USB_Init(&pios_usb_id, &pios_usb_main_cfg_cc3d); + break; + default: + PIOS_Assert(0); + } + +#if defined(PIOS_INCLUDE_USB_CDC) + + uint8_t hwsettings_usb_vcpport; + /* Configure the USB VCP port */ + HwSettingsUSB_VCPPortGet(&hwsettings_usb_vcpport); + + if (!usb_cdc_present) { + /* Force VCP port function to disabled if we haven't advertised VCP in our USB descriptor */ + hwsettings_usb_vcpport = HWSETTINGS_USB_VCPPORT_DISABLED; + } + + switch (hwsettings_usb_vcpport) { + case HWSETTINGS_USB_VCPPORT_DISABLED: + break; + case HWSETTINGS_USB_VCPPORT_USBTELEMETRY: +#if defined(PIOS_INCLUDE_COM) + { + uint32_t pios_usb_cdc_id; + if (PIOS_USB_CDC_Init(&pios_usb_cdc_id, &pios_usb_cdc_cfg, pios_usb_id)) { + PIOS_Assert(0); + } + uint8_t *rx_buffer = (uint8_t *)pios_malloc(PIOS_COM_TELEM_USB_RX_BUF_LEN); + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_TELEM_USB_TX_BUF_LEN); + PIOS_Assert(rx_buffer); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_telem_usb_id, &pios_usb_cdc_com_driver, pios_usb_cdc_id, + rx_buffer, PIOS_COM_TELEM_USB_RX_BUF_LEN, + tx_buffer, PIOS_COM_TELEM_USB_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_COM */ + break; + case HWSETTINGS_USB_VCPPORT_COMBRIDGE: +#if defined(PIOS_INCLUDE_COM) + { + uint32_t pios_usb_cdc_id; + if (PIOS_USB_CDC_Init(&pios_usb_cdc_id, &pios_usb_cdc_cfg, pios_usb_id)) { + PIOS_Assert(0); + } + uint8_t *rx_buffer = (uint8_t *)pios_malloc(PIOS_COM_BRIDGE_RX_BUF_LEN); + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_BRIDGE_TX_BUF_LEN); + PIOS_Assert(rx_buffer); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_vcp_id, &pios_usb_cdc_com_driver, pios_usb_cdc_id, + rx_buffer, PIOS_COM_BRIDGE_RX_BUF_LEN, + tx_buffer, PIOS_COM_BRIDGE_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_COM */ + break; + case HWSETTINGS_USB_VCPPORT_DEBUGCONSOLE: +#if defined(PIOS_INCLUDE_COM) +#if defined(PIOS_INCLUDE_DEBUG_CONSOLE) + { + uint32_t pios_usb_cdc_id; + if (PIOS_USB_CDC_Init(&pios_usb_cdc_id, &pios_usb_cdc_cfg, pios_usb_id)) { + PIOS_Assert(0); + } + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_DEBUGCONSOLE_TX_BUF_LEN); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_debug_id, &pios_usb_cdc_com_driver, pios_usb_cdc_id, + NULL, 0, + tx_buffer, PIOS_COM_DEBUGCONSOLE_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_DEBUG_CONSOLE */ +#endif /* PIOS_INCLUDE_COM */ + break; + } +#endif /* PIOS_INCLUDE_USB_CDC */ + +#if defined(PIOS_INCLUDE_USB_HID) + /* Configure the usb HID port */ + uint8_t hwsettings_usb_hidport; + HwSettingsUSB_HIDPortGet(&hwsettings_usb_hidport); + + if (!usb_hid_present) { + /* Force HID port function to disabled if we haven't advertised HID in our USB descriptor */ + hwsettings_usb_hidport = HWSETTINGS_USB_HIDPORT_DISABLED; + } + + switch (hwsettings_usb_hidport) { + case HWSETTINGS_USB_HIDPORT_DISABLED: + break; + case HWSETTINGS_USB_HIDPORT_USBTELEMETRY: +#if defined(PIOS_INCLUDE_COM) + { + uint32_t pios_usb_hid_id; + if (PIOS_USB_HID_Init(&pios_usb_hid_id, &pios_usb_hid_cfg, pios_usb_id)) { + PIOS_Assert(0); + } + uint8_t *rx_buffer = (uint8_t *)pios_malloc(PIOS_COM_TELEM_USB_RX_BUF_LEN); + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_TELEM_USB_TX_BUF_LEN); + PIOS_Assert(rx_buffer); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_telem_usb_id, &pios_usb_hid_com_driver, pios_usb_hid_id, + rx_buffer, PIOS_COM_TELEM_USB_RX_BUF_LEN, + tx_buffer, PIOS_COM_TELEM_USB_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_COM */ + break; + case HWSETTINGS_USB_HIDPORT_RCTRANSMITTER: +#if defined(PIOS_INCLUDE_USB_RCTX) + { + if (PIOS_USB_RCTX_Init(&pios_usb_rctx_id, &pios_usb_rctx_cfg, pios_usb_id)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_USB_RCTX */ + break; + } + +#endif /* PIOS_INCLUDE_USB_HID */ + +#endif /* PIOS_INCLUDE_USB */ + + /* Configure the main IO port */ + uint8_t hwsettings_DSMxBind; + HwSettingsDSMxBindGet(&hwsettings_DSMxBind); + uint8_t hwsettings_cc_mainport; + HwSettingsCC_MainPortGet(&hwsettings_cc_mainport); + + switch (hwsettings_cc_mainport) { + case HWSETTINGS_CC_MAINPORT_DISABLED: + break; + case HWSETTINGS_CC_MAINPORT_TELEMETRY: +#if defined(PIOS_INCLUDE_TELEMETRY_RF) + { + uint32_t pios_usart_generic_id; + if (PIOS_USART_Init(&pios_usart_generic_id, &pios_usart_generic_main_cfg)) { + PIOS_Assert(0); + } + + uint8_t *rx_buffer = (uint8_t *)pios_malloc(PIOS_COM_TELEM_RF_RX_BUF_LEN); + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_TELEM_RF_TX_BUF_LEN); + PIOS_Assert(rx_buffer); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_telem_rf_id, &pios_usart_com_driver, pios_usart_generic_id, + rx_buffer, PIOS_COM_TELEM_RF_RX_BUF_LEN, + tx_buffer, PIOS_COM_TELEM_RF_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_TELEMETRY_RF */ + break; + case HWSETTINGS_CC_MAINPORT_SBUS: +#if defined(PIOS_INCLUDE_SBUS) + { + uint32_t pios_usart_sbus_id; + if (PIOS_USART_Init(&pios_usart_sbus_id, &pios_usart_sbus_main_cfg)) { + PIOS_Assert(0); + } + + uint32_t pios_sbus_id; + if (PIOS_SBus_Init(&pios_sbus_id, &pios_sbus_cfg, &pios_usart_com_driver, pios_usart_sbus_id)) { + PIOS_Assert(0); + } + + uint32_t pios_sbus_rcvr_id; + if (PIOS_RCVR_Init(&pios_sbus_rcvr_id, &pios_sbus_rcvr_driver, pios_sbus_id)) { + PIOS_Assert(0); + } + pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_SBUS] = pios_sbus_rcvr_id; + } +#endif /* PIOS_INCLUDE_SBUS */ + break; + case HWSETTINGS_CC_MAINPORT_GPS: +#if defined(PIOS_INCLUDE_GPS) + { + uint32_t pios_usart_generic_id; + if (PIOS_USART_Init(&pios_usart_generic_id, &pios_usart_generic_main_cfg)) { + PIOS_Assert(0); + } + + uint8_t *rx_buffer = (uint8_t *)pios_malloc(PIOS_COM_GPS_RX_BUF_LEN); + PIOS_Assert(rx_buffer); + if (PIOS_COM_Init(&pios_com_gps_id, &pios_usart_com_driver, pios_usart_generic_id, + rx_buffer, PIOS_COM_GPS_RX_BUF_LEN, + NULL, 0)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_GPS */ + break; + case HWSETTINGS_CC_MAINPORT_DSM: +#if defined(PIOS_INCLUDE_DSM) + { + uint32_t pios_usart_dsm_id; + if (PIOS_USART_Init(&pios_usart_dsm_id, &pios_usart_dsm_main_cfg)) { + PIOS_Assert(0); + } + + uint32_t pios_dsm_id; + if (PIOS_DSM_Init(&pios_dsm_id, + &pios_dsm_main_cfg, + &pios_usart_com_driver, + pios_usart_dsm_id, + 0)) { + PIOS_Assert(0); + } + + uint32_t pios_dsm_rcvr_id; + if (PIOS_RCVR_Init(&pios_dsm_rcvr_id, &pios_dsm_rcvr_driver, pios_dsm_id)) { + PIOS_Assert(0); + } + pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_DSMMAINPORT] = pios_dsm_rcvr_id; + } +#endif /* PIOS_INCLUDE_DSM */ + break; + case HWSETTINGS_CC_MAINPORT_DEBUGCONSOLE: +#if defined(PIOS_INCLUDE_COM) +#if defined(PIOS_INCLUDE_DEBUG_CONSOLE) + { + uint32_t pios_usart_generic_id; + if (PIOS_USART_Init(&pios_usart_generic_id, &pios_usart_generic_main_cfg)) { + PIOS_Assert(0); + } + + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_DEBUGCONSOLE_TX_BUF_LEN); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_debug_id, &pios_usart_com_driver, pios_usart_generic_id, + NULL, 0, + tx_buffer, PIOS_COM_DEBUGCONSOLE_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_DEBUG_CONSOLE */ +#endif /* PIOS_INCLUDE_COM */ + break; + case HWSETTINGS_CC_MAINPORT_COMBRIDGE: + { + uint32_t pios_usart_generic_id; + if (PIOS_USART_Init(&pios_usart_generic_id, &pios_usart_generic_main_cfg)) { + PIOS_Assert(0); + } + + uint8_t *rx_buffer = (uint8_t *)pios_malloc(PIOS_COM_BRIDGE_RX_BUF_LEN); + PIOS_Assert(rx_buffer); + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_BRIDGE_TX_BUF_LEN); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_bridge_id, &pios_usart_com_driver, pios_usart_generic_id, + rx_buffer, PIOS_COM_BRIDGE_RX_BUF_LEN, + tx_buffer, PIOS_COM_BRIDGE_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } + break; + case HWSETTINGS_CC_MAINPORT_OSDHK: + { + uint32_t pios_usart_hkosd_id; + if (PIOS_USART_Init(&pios_usart_hkosd_id, &pios_usart_hkosd_main_cfg)) { + PIOS_Assert(0); + } + + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_HKOSD_TX_BUF_LEN); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_hkosd_id, &pios_usart_com_driver, pios_usart_hkosd_id, + NULL, 0, + tx_buffer, PIOS_COM_HKOSD_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } + break; + } + + /* Configure the flexi port */ + uint8_t hwsettings_cc_flexiport; + HwSettingsCC_FlexiPortGet(&hwsettings_cc_flexiport); + + switch (hwsettings_cc_flexiport) { + case HWSETTINGS_CC_FLEXIPORT_DISABLED: + break; + case HWSETTINGS_CC_FLEXIPORT_TELEMETRY: +#if defined(PIOS_INCLUDE_TELEMETRY_RF) + { + uint32_t pios_usart_generic_id; + if (PIOS_USART_Init(&pios_usart_generic_id, &pios_usart_generic_flexi_cfg)) { + PIOS_Assert(0); + } + uint8_t *rx_buffer = (uint8_t *)pios_malloc(PIOS_COM_TELEM_RF_RX_BUF_LEN); + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_TELEM_RF_TX_BUF_LEN); + PIOS_Assert(rx_buffer); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_telem_rf_id, &pios_usart_com_driver, pios_usart_generic_id, + rx_buffer, PIOS_COM_TELEM_RF_RX_BUF_LEN, + tx_buffer, PIOS_COM_TELEM_RF_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_TELEMETRY_RF */ + break; + case HWSETTINGS_CC_FLEXIPORT_COMBRIDGE: + { + uint32_t pios_usart_generic_id; + if (PIOS_USART_Init(&pios_usart_generic_id, &pios_usart_generic_flexi_cfg)) { + PIOS_Assert(0); + } + + uint8_t *rx_buffer = (uint8_t *)pios_malloc(PIOS_COM_BRIDGE_RX_BUF_LEN); + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_BRIDGE_TX_BUF_LEN); + PIOS_Assert(rx_buffer); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_bridge_id, &pios_usart_com_driver, pios_usart_generic_id, + rx_buffer, PIOS_COM_BRIDGE_RX_BUF_LEN, + tx_buffer, PIOS_COM_BRIDGE_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } + break; + case HWSETTINGS_CC_FLEXIPORT_GPS: +#if defined(PIOS_INCLUDE_GPS) + { + uint32_t pios_usart_generic_id; + if (PIOS_USART_Init(&pios_usart_generic_id, &pios_usart_generic_flexi_cfg)) { + PIOS_Assert(0); + } + uint8_t *rx_buffer = (uint8_t *)pios_malloc(PIOS_COM_GPS_RX_BUF_LEN); + PIOS_Assert(rx_buffer); + if (PIOS_COM_Init(&pios_com_gps_id, &pios_usart_com_driver, pios_usart_generic_id, + rx_buffer, PIOS_COM_GPS_RX_BUF_LEN, + NULL, 0)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_GPS */ + break; + case HWSETTINGS_CC_FLEXIPORT_PPM: +#if defined(PIOS_INCLUDE_PPM_FLEXI) + { + uint32_t pios_ppm_id; + PIOS_PPM_Init(&pios_ppm_id, &pios_ppm_flexi_cfg); + + uint32_t pios_ppm_rcvr_id; + if (PIOS_RCVR_Init(&pios_ppm_rcvr_id, &pios_ppm_rcvr_driver, pios_ppm_id)) { + PIOS_Assert(0); + } + pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_PPM] = pios_ppm_rcvr_id; + } +#endif /* PIOS_INCLUDE_PPM_FLEXI */ + break; + case HWSETTINGS_CC_FLEXIPORT_DSM: +#if defined(PIOS_INCLUDE_DSM) + { + uint32_t pios_usart_dsm_id; + if (PIOS_USART_Init(&pios_usart_dsm_id, &pios_usart_dsm_flexi_cfg)) { + PIOS_Assert(0); + } + + uint32_t pios_dsm_id; + if (PIOS_DSM_Init(&pios_dsm_id, + &pios_dsm_flexi_cfg, + &pios_usart_com_driver, + pios_usart_dsm_id, + hwsettings_DSMxBind)) { + PIOS_Assert(0); + } + + uint32_t pios_dsm_rcvr_id; + if (PIOS_RCVR_Init(&pios_dsm_rcvr_id, &pios_dsm_rcvr_driver, pios_dsm_id)) { + PIOS_Assert(0); + } + pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_DSMFLEXIPORT] = pios_dsm_rcvr_id; + } +#endif /* PIOS_INCLUDE_DSM */ + break; + case HWSETTINGS_CC_FLEXIPORT_DEBUGCONSOLE: +#if defined(PIOS_INCLUDE_COM) +#if defined(PIOS_INCLUDE_DEBUG_CONSOLE) + { + uint32_t pios_usart_generic_id; + if (PIOS_USART_Init(&pios_usart_generic_id, &pios_usart_generic_flexi_cfg)) { + PIOS_Assert(0); + } + + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_DEBUGCONSOLE_TX_BUF_LEN); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_debug_id, &pios_usart_com_driver, pios_usart_generic_id, + NULL, 0, + tx_buffer, PIOS_COM_DEBUGCONSOLE_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_DEBUG_CONSOLE */ +#endif /* PIOS_INCLUDE_COM */ + break; + case HWSETTINGS_CC_FLEXIPORT_I2C: +#if defined(PIOS_INCLUDE_I2C) + { + if (PIOS_I2C_Init(&pios_i2c_flexi_adapter_id, &pios_i2c_flexi_adapter_cfg)) { + PIOS_Assert(0); + } + } +#endif /* PIOS_INCLUDE_I2C */ + break; + case HWSETTINGS_CC_FLEXIPORT_OSDHK: + { + uint32_t pios_usart_hkosd_id; + if (PIOS_USART_Init(&pios_usart_hkosd_id, &pios_usart_hkosd_flexi_cfg)) { + PIOS_Assert(0); + } + + uint8_t *tx_buffer = (uint8_t *)pios_malloc(PIOS_COM_HKOSD_TX_BUF_LEN); + PIOS_Assert(tx_buffer); + if (PIOS_COM_Init(&pios_com_hkosd_id, &pios_usart_com_driver, pios_usart_hkosd_id, + NULL, 0, + tx_buffer, PIOS_COM_HKOSD_TX_BUF_LEN)) { + PIOS_Assert(0); + } + } + break; + } + + /* Configure the rcvr port */ + uint8_t hwsettings_rcvrport; + HwSettingsCC_RcvrPortGet(&hwsettings_rcvrport); + + switch ((HwSettingsCC_RcvrPortOptions)hwsettings_rcvrport) { + case HWSETTINGS_CC_RCVRPORT_DISABLEDONESHOT: +#if defined(PIOS_INCLUDE_HCSR04) + { + uint32_t pios_hcsr04_id; + PIOS_HCSR04_Init(&pios_hcsr04_id, &pios_hcsr04_cfg); + } +#endif + break; + case HWSETTINGS_CC_RCVRPORT_PWMNOONESHOT: +#if defined(PIOS_INCLUDE_PWM) + { + uint32_t pios_pwm_id; + PIOS_PWM_Init(&pios_pwm_id, &pios_pwm_cfg); + + uint32_t pios_pwm_rcvr_id; + if (PIOS_RCVR_Init(&pios_pwm_rcvr_id, &pios_pwm_rcvr_driver, pios_pwm_id)) { + PIOS_Assert(0); + } + pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_PWM] = pios_pwm_rcvr_id; + } +#endif /* PIOS_INCLUDE_PWM */ + break; + case HWSETTINGS_CC_RCVRPORT_PPMNOONESHOT: + case HWSETTINGS_CC_RCVRPORT_PPMOUTPUTSNOONESHOT: + case HWSETTINGS_CC_RCVRPORT_PPM_PIN8ONESHOT: +#if defined(PIOS_INCLUDE_PPM) + { + uint32_t pios_ppm_id; + if (hwsettings_rcvrport == HWSETTINGS_CC_RCVRPORT_PPM_PIN8ONESHOT) { + PIOS_PPM_Init(&pios_ppm_id, &pios_ppm_pin8_cfg); + } else { + PIOS_PPM_Init(&pios_ppm_id, &pios_ppm_cfg); + } + + uint32_t pios_ppm_rcvr_id; + if (PIOS_RCVR_Init(&pios_ppm_rcvr_id, &pios_ppm_rcvr_driver, pios_ppm_id)) { + PIOS_Assert(0); + } + pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_PPM] = pios_ppm_rcvr_id; + } +#endif /* PIOS_INCLUDE_PPM */ + break; + case HWSETTINGS_CC_RCVRPORT_PPMPWMNOONESHOT: + /* This is a combination of PPM and PWM inputs */ +#if defined(PIOS_INCLUDE_PPM) + { + uint32_t pios_ppm_id; + PIOS_PPM_Init(&pios_ppm_id, &pios_ppm_cfg); + + uint32_t pios_ppm_rcvr_id; + if (PIOS_RCVR_Init(&pios_ppm_rcvr_id, &pios_ppm_rcvr_driver, pios_ppm_id)) { + PIOS_Assert(0); + } + pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_PPM] = pios_ppm_rcvr_id; + } +#endif /* PIOS_INCLUDE_PPM */ +#if defined(PIOS_INCLUDE_PWM) + { + uint32_t pios_pwm_id; + PIOS_PWM_Init(&pios_pwm_id, &pios_pwm_with_ppm_cfg); + + uint32_t pios_pwm_rcvr_id; + if (PIOS_RCVR_Init(&pios_pwm_rcvr_id, &pios_pwm_rcvr_driver, pios_pwm_id)) { + PIOS_Assert(0); + } + pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_PWM] = pios_pwm_rcvr_id; + } +#endif /* PIOS_INCLUDE_PWM */ + break; + case HWSETTINGS_CC_RCVRPORT_OUTPUTSONESHOT: + break; + } + +#if defined(PIOS_INCLUDE_GCSRCVR) + GCSReceiverInitialize(); + uint32_t pios_gcsrcvr_id; + PIOS_GCSRCVR_Init(&pios_gcsrcvr_id); + uint32_t pios_gcsrcvr_rcvr_id; + if (PIOS_RCVR_Init(&pios_gcsrcvr_rcvr_id, &pios_gcsrcvr_rcvr_driver, pios_gcsrcvr_id)) { + PIOS_Assert(0); + } + pios_rcvr_group_map[MANUALCONTROLSETTINGS_CHANNELGROUPS_GCS] = pios_gcsrcvr_rcvr_id; +#endif /* PIOS_INCLUDE_GCSRCVR */ + + /* Remap AFIO pin for PB4 (Servo 5 Out)*/ + GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST, ENABLE); + +#ifndef PIOS_ENABLE_DEBUG_PINS + switch ((HwSettingsCC_RcvrPortOptions)hwsettings_rcvrport) { + case HWSETTINGS_CC_RCVRPORT_DISABLEDONESHOT: + case HWSETTINGS_CC_RCVRPORT_PWMNOONESHOT: + case HWSETTINGS_CC_RCVRPORT_PPMNOONESHOT: + case HWSETTINGS_CC_RCVRPORT_PPMPWMNOONESHOT: + case HWSETTINGS_CC_RCVRPORT_PPM_PIN8ONESHOT: + PIOS_Servo_Init(&pios_servo_cfg); + break; + case HWSETTINGS_CC_RCVRPORT_PPMOUTPUTSNOONESHOT: + case HWSETTINGS_CC_RCVRPORT_OUTPUTSONESHOT: + PIOS_Servo_Init(&pios_servo_rcvr_cfg); + break; + } +#else + PIOS_DEBUG_Init(pios_tim_servoport_all_pins, NELEMENTS(pios_tim_servoport_all_pins)); +#endif /* PIOS_ENABLE_DEBUG_PINS */ + + switch (bdinfo->board_rev) { + case BOARD_REVISION_CC: + // Revision 1 with invensense gyros, start the ADC +#if defined(PIOS_INCLUDE_ADC) + PIOS_ADC_Init(&pios_adc_cfg); +#endif +#if defined(PIOS_INCLUDE_ADXL345) + PIOS_ADXL345_Init(pios_spi_flash_accel_id, 0); +#endif + break; + case BOARD_REVISION_CC3D: + // Revision 2 with MPU6000 gyros, start a SPI interface and connect to it + GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE); + +#if defined(PIOS_INCLUDE_MPU6000) + // Set up the SPI interface to the serial flash + if (PIOS_SPI_Init(&pios_spi_gyro_id, &pios_spi_gyro_cfg)) { + PIOS_Assert(0); + } + PIOS_MPU6000_Init(pios_spi_gyro_id, 0, &pios_mpu6000_cfg); + PIOS_MPU6000_CONFIG_Configure(); + init_test = !PIOS_MPU6000_Driver.test(0); +#endif /* PIOS_INCLUDE_MPU6000 */ + + break; + default: + PIOS_Assert(0); + } + + /* Make sure we have at least one telemetry link configured or else fail initialization */ + PIOS_Assert(pios_com_telem_rf_id || pios_com_telem_usb_id); + + // Attach the board config check hook + SANITYCHECK_AttachHook(&CopterControlConfigHook); + // trigger a config check if actuatorsettings are updated + ActuatorSettingsInitialize(); + ActuatorSettingsConnectCallback(ActuatorSettingsUpdatedCb); +} + +SystemAlarmsExtendedAlarmStatusOptions CopterControlConfigHook() +{ + // inhibit usage of oneshot for non supported RECEIVER port modes + uint8_t recmode; + + HwSettingsCC_RcvrPortGet(&recmode); + uint8_t flexiMode; + uint8_t modes[ACTUATORSETTINGS_BANKMODE_NUMELEM]; + ActuatorSettingsBankModeGet(modes); + HwSettingsCC_FlexiPortGet(&flexiMode); + + switch ((HwSettingsCC_RcvrPortOptions)recmode) { + // Those modes allows oneshot usage + case HWSETTINGS_CC_RCVRPORT_DISABLEDONESHOT: + case HWSETTINGS_CC_RCVRPORT_OUTPUTSONESHOT: + case HWSETTINGS_CC_RCVRPORT_PPM_PIN8ONESHOT: + if ((recmode == HWSETTINGS_CC_RCVRPORT_PPM_PIN8ONESHOT || + flexiMode == HWSETTINGS_CC_FLEXIPORT_PPM) && + (modes[3] == ACTUATORSETTINGS_BANKMODE_PWMSYNC || + modes[3] == ACTUATORSETTINGS_BANKMODE_ONESHOT125)) { + return SYSTEMALARMS_EXTENDEDALARMSTATUS_UNSUPPORTEDCONFIG_ONESHOT; + } else { + return SYSTEMALARMS_EXTENDEDALARMSTATUS_NONE; + } + + // inhibit oneshot for the following modes + case HWSETTINGS_CC_RCVRPORT_PPMNOONESHOT: + case HWSETTINGS_CC_RCVRPORT_PPMOUTPUTSNOONESHOT: + case HWSETTINGS_CC_RCVRPORT_PPMPWMNOONESHOT: + case HWSETTINGS_CC_RCVRPORT_PWMNOONESHOT: + for (uint8_t i = 0; i < ACTUATORSETTINGS_BANKMODE_NUMELEM; i++) { + if (modes[i] == ACTUATORSETTINGS_BANKMODE_PWMSYNC || + modes[i] == ACTUATORSETTINGS_BANKMODE_ONESHOT125) { + return SYSTEMALARMS_EXTENDEDALARMSTATUS_UNSUPPORTEDCONFIG_ONESHOT;; + } + + return SYSTEMALARMS_EXTENDEDALARMSTATUS_NONE; + } + } + return SYSTEMALARMS_EXTENDEDALARMSTATUS_UNSUPPORTEDCONFIG_ONESHOT;; +} +// trigger a configuration check if ActuatorSettings are changed. +void ActuatorSettingsUpdatedCb(__attribute__((unused)) UAVObjEvent *ev) +{ + configuration_check(); +} + +/** + * @} + */ diff --git a/flight/targets/boards/coptercontrol/firmware/pios_board_posix.c b/flight/targets/boards/coptercontrol/firmware/pios_board_posix.c new file mode 100644 index 000000000..7fa958a38 --- /dev/null +++ b/flight/targets/boards/coptercontrol/firmware/pios_board_posix.c @@ -0,0 +1,145 @@ +/** + ****************************************************************************** + * + * @file pios_board.c + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief Defines board specific static initializers for hardware for the OpenPilot board. + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include "inc/openpilot.h" +#include +#include +#include + +/** + * PIOS_Board_Init() + * initializes all the core systems on this specific hardware + * called from System/openpilot.c + */ +void PIOS_Board_Init(void) +{ + /* Delay system */ + PIOS_DELAY_Init(); + + /* Initialize the delayed callback library */ + PIOS_CALLBACKSCHEDULER_Initialize(); + + /* Initialize UAVObject libraries */ + EventDispatcherInitialize(); + UAVObjInitialize(); + + /* Initialize the alarms library */ + AlarmsInitialize(); + + /* Initialize the task monitor */ + if (PIOS_TASK_MONITOR_Initialize(TASKINFO_RUNNING_NUMELEM)) { + PIOS_Assert(0); + } + + /* Initialize the PiOS library */ + PIOS_COM_Init(); +} + + +const struct pios_udp_cfg pios_udp0_cfg = { + .ip = "0.0.0.0", + .port = 9000, +}; +const struct pios_udp_cfg pios_udp1_cfg = { + .ip = "0.0.0.0", + .port = 9001, +}; +const struct pios_udp_cfg pios_udp2_cfg = { + .ip = "0.0.0.0", + .port = 9002, +}; + +#ifdef PIOS_COM_AUX +/* + * AUX USART + */ +const struct pios_udp_cfg pios_udp3_cfg = { + .ip = "0.0.0.0", + .port = 9003, +}; +#endif + +/* + * Board specific number of devices. + */ +struct pios_udp_dev pios_udp_devs[] = { +#define PIOS_UDP_TELEM 0 + { + .cfg = &pios_udp0_cfg, + }, +#define PIOS_UDP_GPS 1 + { + .cfg = &pios_udp1_cfg, + }, +#define PIOS_UDP_LOCAL 2 + { + .cfg = &pios_udp2_cfg, + }, +#ifdef PIOS_COM_AUX +#define PIOS_UDP_AUX 3 + { + .cfg = &pios_udp3_cfg, + }, +#endif +}; + +uint8_t pios_udp_num_devices = NELEMENTS(pios_udp_devs); + +/* + * COM devices + */ + +/* + * Board specific number of devices. + */ +extern const struct pios_com_driver pios_serial_com_driver; +extern const struct pios_com_driver pios_udp_com_driver; + +struct pios_com_dev pios_com_devs[] = { + { + .id = PIOS_UDP_TELEM, + .driver = &pios_udp_com_driver, + }, + { + .id = PIOS_UDP_GPS, + .driver = &pios_udp_com_driver, + }, + { + .id = PIOS_UDP_LOCAL, + .driver = &pios_udp_com_driver, + }, +#ifdef PIOS_COM_AUX + { + .id = PIOS_UDP_AUX, + .driver = &pios_udp_com_driver, + }, +#endif +}; + +const uint8_t pios_com_num_devices = NELEMENTS(pios_com_devs); + +/** + * @} + */ diff --git a/flight/targets/boards/coptercontrol/pios_board.h b/flight/targets/boards/coptercontrol/pios_board.h new file mode 100644 index 000000000..f3c3e34d3 --- /dev/null +++ b/flight/targets/boards/coptercontrol/pios_board.h @@ -0,0 +1,279 @@ +/** + ****************************************************************************** + * + * @file pios_board.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief Defines board hardware for the OpenPilot Version 1.1 hardware. + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef PIOS_BOARD_H +#define PIOS_BOARD_H +// ------------------------ +// Timers and Channels Used +// ------------------------ +/* + Timer | Channel 1 | Channel 2 | Channel 3 | Channel 4 + ------+-----------+-----------+-----------+---------- + TIM1 | Servo 4 | | | + TIM2 | RC In 5 | RC In 6 | Servo 6 | + TIM3 | Servo 5 | RC In 2 | RC In 3 | RC In 4 + TIM4 | RC In 1 | Servo 3 | Servo 2 | Servo 1 + ------+-----------+-----------+-----------+---------- + */ + +// ------------------------ +// DMA Channels Used +// ------------------------ +/* Channel 1 - */ +/* Channel 2 - */ +/* Channel 3 - */ +/* Channel 4 - */ +/* Channel 5 - */ +/* Channel 6 - */ +/* Channel 7 - */ +/* Channel 8 - */ +/* Channel 9 - */ +/* Channel 10 - */ +/* Channel 11 - */ +/* Channel 12 - */ + +// ------------------------ +// BOOTLOADER_SETTINGS +// ------------------------ +#define BOARD_READABLE TRUE +#define BOARD_WRITABLE TRUE +#define MAX_DEL_RETRYS 3 + +// ------------------------ +// WATCHDOG_SETTINGS +// ------------------------ +#define PIOS_WATCHDOG_TIMEOUT 250 +#define PIOS_WDG_REGISTER BKP_DR4 +#define PIOS_WDG_ACTUATOR 0x0001 +#define PIOS_WDG_STABILIZATION 0x0002 +#define PIOS_WDG_ATTITUDE 0x0004 +#define PIOS_WDG_MANUAL 0x0008 +#define PIOS_WDG_AUTOTUNE 0x0010 + +// ------------------------ +// TELEMETRY +// ------------------------ +#define TELEM_QUEUE_SIZE 10 + +// ------------------------ +// PIOS_LED +// ------------------------ +#define PIOS_LED_HEARTBEAT 0 + +// ------------------------- +// System Settings +// ------------------------- +#define PIOS_MASTER_CLOCK 72000000 +#define PIOS_PERIPHERAL_CLOCK (PIOS_MASTER_CLOCK / 2) + +// ------------------------- +// Interrupt Priorities +// ------------------------- +#define PIOS_IRQ_PRIO_LOW 12 // lower than RTOS +#define PIOS_IRQ_PRIO_MID 8 // higher than RTOS +#define PIOS_IRQ_PRIO_HIGH 5 // for SPI, ADC, I2C etc... +#define PIOS_IRQ_PRIO_HIGHEST 4 // for USART etc... +// ------------------------ +// PIOS_I2C +// See also pios_board.c +// ------------------------ +#define PIOS_I2C_MAX_DEVS 1 +extern uint32_t pios_i2c_flexi_adapter_id; +#define PIOS_I2C_MAIN_ADAPTER (pios_i2c_flexi_adapter_id) +#define PIOS_I2C_ESC_ADAPTER (pios_i2c_flexi_adapter_id) +#define PIOS_I2C_BMP085_ADAPTER (pios_i2c_flexi_adapter_id) + +// ------------------------ +// PIOS_BMP085 +// ------------------------ +#define PIOS_BMP085_OVERSAMPLING 3 + +// ------------------------- +// SPI +// +// See also pios_board.c +// ------------------------- +#define PIOS_SPI_MAX_DEVS 2 + +// ------------------------- +// PIOS_USART +// ------------------------- +#define PIOS_USART_MAX_DEVS 2 + +// ------------------------- +// PIOS_COM +// +// See also pios_board.c +// ------------------------- +#define PIOS_COM_MAX_DEVS 3 + +extern uint32_t pios_com_telem_rf_id; +#define PIOS_COM_TELEM_RF (pios_com_telem_rf_id) + +#if defined(PIOS_INCLUDE_GPS) +extern uint32_t pios_com_gps_id; +#define PIOS_COM_GPS (pios_com_gps_id) +#endif /* PIOS_INCLUDE_GPS */ + +extern uint32_t pios_com_bridge_id; +#define PIOS_COM_BRIDGE (pios_com_bridge_id) + +extern uint32_t pios_com_vcp_id; +#define PIOS_COM_VCP (pios_com_vcp_id) + +extern uint32_t pios_com_telem_usb_id; +#define PIOS_COM_TELEM_USB (pios_com_telem_usb_id) + +#if defined(PIOS_INCLUDE_DEBUG_CONSOLE) +extern uint32_t pios_com_debug_id; +#define PIOS_COM_DEBUG (pios_com_debug_id) +#endif /* PIOS_INCLUDE_DEBUG_CONSOLE */ + +extern uint32_t pios_com_hkosd_id; +#define PIOS_COM_OSDHK (pios_com_hkosd_id) + +// ------------------------- +// ADC +// PIOS_ADC_PinGet(0) = Gyro Z +// PIOS_ADC_PinGet(1) = Gyro Y +// PIOS_ADC_PinGet(2) = Gyro X +// ------------------------- +// #define PIOS_ADC_OVERSAMPLING_RATE 1 +#define PIOS_ADC_USE_TEMP_SENSOR 1 +#define PIOS_ADC_TEMP_SENSOR_ADC ADC1 +#define PIOS_ADC_TEMP_SENSOR_ADC_CHANNEL 1 + +#define PIOS_ADC_PIN1_GPIO_PORT GPIOA // PA4 (Gyro X) +#define PIOS_ADC_PIN1_GPIO_PIN GPIO_Pin_4 // ADC12_IN4 +#define PIOS_ADC_PIN1_GPIO_CHANNEL ADC_Channel_4 +#define PIOS_ADC_PIN1_ADC ADC2 +#define PIOS_ADC_PIN1_ADC_NUMBER 1 + +#define PIOS_ADC_PIN2_GPIO_PORT GPIOA // PA5 (Gyro Y) +#define PIOS_ADC_PIN2_GPIO_PIN GPIO_Pin_5 // ADC123_IN5 +#define PIOS_ADC_PIN2_GPIO_CHANNEL ADC_Channel_5 +#define PIOS_ADC_PIN2_ADC ADC1 +#define PIOS_ADC_PIN2_ADC_NUMBER 2 + +#define PIOS_ADC_PIN3_GPIO_PORT GPIOA // PA3 (Gyro Z) +#define PIOS_ADC_PIN3_GPIO_PIN GPIO_Pin_3 // ADC12_IN3 +#define PIOS_ADC_PIN3_GPIO_CHANNEL ADC_Channel_3 +#define PIOS_ADC_PIN3_ADC ADC2 +#define PIOS_ADC_PIN3_ADC_NUMBER 2 + +#define PIOS_ADC_NUM_PINS 3 + +#define PIOS_ADC_PORTS { PIOS_ADC_PIN1_GPIO_PORT, PIOS_ADC_PIN2_GPIO_PORT, PIOS_ADC_PIN3_GPIO_PORT } +#define PIOS_ADC_PINS { PIOS_ADC_PIN1_GPIO_PIN, PIOS_ADC_PIN2_GPIO_PIN, PIOS_ADC_PIN3_GPIO_PIN } +#define PIOS_ADC_CHANNELS { PIOS_ADC_PIN1_GPIO_CHANNEL, PIOS_ADC_PIN2_GPIO_CHANNEL, PIOS_ADC_PIN3_GPIO_CHANNEL } +#define PIOS_ADC_MAPPING { PIOS_ADC_PIN1_ADC, PIOS_ADC_PIN2_ADC, PIOS_ADC_PIN3_ADC } +#define PIOS_ADC_CHANNEL_MAPPING { PIOS_ADC_PIN1_ADC_NUMBER, PIOS_ADC_PIN2_ADC_NUMBER, PIOS_ADC_PIN3_ADC_NUMBER } +#define PIOS_ADC_NUM_CHANNELS (PIOS_ADC_NUM_PINS + PIOS_ADC_USE_TEMP_SENSOR) +#define PIOS_ADC_NUM_ADC_CHANNELS 2 +#define PIOS_ADC_USE_ADC2 1 +#define PIOS_ADC_CLOCK_FUNCTION RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1 | RCC_APB2Periph_ADC2, ENABLE) +#define PIOS_ADC_ADCCLK RCC_PCLK2_Div8 +/* RCC_PCLK2_Div2: ADC clock = PCLK2/2 */ +/* RCC_PCLK2_Div4: ADC clock = PCLK2/4 */ +/* RCC_PCLK2_Div6: ADC clock = PCLK2/6 */ +/* RCC_PCLK2_Div8: ADC clock = PCLK2/8 */ +#define PIOS_ADC_SAMPLE_TIME ADC_SampleTime_239Cycles5 +/* Sample time: */ +/* With an ADCCLK = 14 MHz and a sampling time of 239.5 cycles: */ +/* Tconv = 239.5 + 12.5 = 252 cycles = 18�s */ +/* (1 / (ADCCLK / CYCLES)) = Sample Time (�S) */ +#define PIOS_ADC_IRQ_PRIO PIOS_IRQ_PRIO_LOW + +// Currently analog acquistion hard coded at 480 Hz +// PCKL2 = HCLK / 16 +// ADCCLK = PCLK2 / 2 +#define PIOS_ADC_RATE (72.0e6f / 1.0f / 8.0f / 252.0f / (PIOS_ADC_NUM_CHANNELS >> PIOS_ADC_USE_ADC2)) +#define PIOS_ADC_MAX_OVERSAMPLING 48 + +#define PIOS_ADC_TEMPERATURE_PIN 0 + +// ------------------------ +// PIOS_RCVR +// See also pios_board.c +// ------------------------ +#define PIOS_RCVR_MAX_DEVS 3 +#define PIOS_RCVR_MAX_CHANNELS 12 +#define PIOS_GCSRCVR_TIMEOUT_MS 100 + +// ------------------------- +// Receiver PPM input +// ------------------------- +#define PIOS_PPM_MAX_DEVS 1 +#define PIOS_PPM_NUM_INPUTS 12 + +// ------------------------- +// Receiver PWM input +// ------------------------- +#define PIOS_PWM_MAX_DEVS 1 +#define PIOS_PWM_NUM_INPUTS 6 + +// ------------------------- +// Receiver DSM input +// ------------------------- +#define PIOS_DSM_MAX_DEVS 2 +#define PIOS_DSM_NUM_INPUTS 12 + +// ------------------------- +// Receiver S.Bus input +// ------------------------- +#define PIOS_SBUS_MAX_DEVS 1 +#define PIOS_SBUS_NUM_INPUTS (16 + 2) + +// ------------------------- +// Servo outputs +// ------------------------- +#define PIOS_SERVO_UPDATE_HZ 50 +#define PIOS_SERVOS_INITIAL_POSITION 0 /* dont want to start motors, have no pulse till settings loaded */ +#define PIOS_SERVO_BANKS 6 + +// -------------------------- +// Timer controller settings +// -------------------------- +#define PIOS_TIM_MAX_DEVS 3 + +// ------------------------- +// GPIO +// ------------------------- +#define PIOS_GPIO_PORTS {} +#define PIOS_GPIO_PINS {} +#define PIOS_GPIO_CLKS {} +#define PIOS_GPIO_NUM 0 + +// ------------------------- +// USB +// ------------------------- +#define PIOS_USB_HID_MAX_DEVS 1 + +#define PIOS_USB_ENABLED 1 +#define PIOS_USB_DETECT_GPIO_PORT GPIOC +#define PIOS_USB_MAX_DEVS 1 +#define PIOS_USB_DETECT_GPIO_PIN GPIO_Pin_15 + +#endif /* PIOS_BOARD_H */ diff --git a/flight/targets/boards/coptercontrol/pios_usb_board_data.c b/flight/targets/boards/coptercontrol/pios_usb_board_data.c new file mode 100644 index 000000000..20c49fdcf --- /dev/null +++ b/flight/targets/boards/coptercontrol/pios_usb_board_data.c @@ -0,0 +1,102 @@ +/** + ****************************************************************************** + * @addtogroup PIOS PIOS Core hardware abstraction layer + * @{ + * @addtogroup PIOS_USB_BOARD Board specific USB definitions + * @brief Board specific USB definitions + * @{ + * + * @file pios_usb_board_data.c + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @brief Board specific USB definitions + * @see The GNU Public License (GPL) Version 3 + * + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#include "inc/pios_usb_board_data.h" /* struct usb_*, USB_* */ +#include /* PIOS_SYS_SerialNumberGet */ +#include /* PIOS_USBHOOK_* */ +#include /* PIOS_USB_UTIL_AsciiToUtf8 */ + +static const uint8_t usb_product_id[28] = { + sizeof(usb_product_id), + USB_DESC_TYPE_STRING, + 'C', 0, + 'o', 0, + 'p', 0, + 't', 0, + 'e', 0, + 'r', 0, + 'C', 0, + 'o', 0, + 'n', 0, + 't', 0, + 'r', 0, + 'o', 0, + 'l', 0, +}; + +static uint8_t usb_serial_number[2 + PIOS_SYS_SERIAL_NUM_ASCII_LEN * 2 + (sizeof(PIOS_USB_BOARD_SN_SUFFIX) - 1) * 2] = { + sizeof(usb_serial_number), + USB_DESC_TYPE_STRING, +}; + +static const struct usb_string_langid usb_lang_id = { + .bLength = sizeof(usb_lang_id), + .bDescriptorType = USB_DESC_TYPE_STRING, + .bLangID = htousbs(USB_LANGID_ENGLISH_US), +}; + +static const uint8_t usb_vendor_id[28] = { + sizeof(usb_vendor_id), + USB_DESC_TYPE_STRING, + 'o', 0, + 'p', 0, + 'e', 0, + 'n', 0, + 'p', 0, + 'i', 0, + 'l', 0, + 'o', 0, + 't', 0, + '.', 0, + 'o', 0, + 'r', 0, + 'g', 0 +}; + +int32_t PIOS_USB_BOARD_DATA_Init(void) +{ + /* Load device serial number into serial number string */ + uint8_t sn[PIOS_SYS_SERIAL_NUM_ASCII_LEN + 1]; + + PIOS_SYS_SerialNumberGet((char *)sn); + + /* Concatenate the device serial number and the appropriate suffix ("+BL" or "+FW") into the USB serial number */ + uint8_t *utf8 = &(usb_serial_number[2]); + utf8 = PIOS_USB_UTIL_AsciiToUtf8(utf8, sn, PIOS_SYS_SERIAL_NUM_ASCII_LEN); + utf8 = PIOS_USB_UTIL_AsciiToUtf8(utf8, (uint8_t *)PIOS_USB_BOARD_SN_SUFFIX, sizeof(PIOS_USB_BOARD_SN_SUFFIX) - 1); + + PIOS_USBHOOK_RegisterString(USB_STRING_DESC_PRODUCT, (uint8_t *)&usb_product_id, sizeof(usb_product_id)); + PIOS_USBHOOK_RegisterString(USB_STRING_DESC_SERIAL, (uint8_t *)&usb_serial_number, sizeof(usb_serial_number)); + + PIOS_USBHOOK_RegisterString(USB_STRING_DESC_LANG, (uint8_t *)&usb_lang_id, sizeof(usb_lang_id)); + PIOS_USBHOOK_RegisterString(USB_STRING_DESC_VENDOR, (uint8_t *)&usb_vendor_id, sizeof(usb_vendor_id)); + + return 0; +} diff --git a/ground/openpilotgcs/src/plugins/config/cc_hw_settings.ui b/ground/openpilotgcs/src/plugins/config/cc_hw_settings.ui new file mode 100644 index 000000000..e7c7ddf10 --- /dev/null +++ b/ground/openpilotgcs/src/plugins/config/cc_hw_settings.ui @@ -0,0 +1,658 @@ + + + CC_HW_Widget + + + + 0 + 0 + 646 + 596 + + + + Form + + + + + + 0 + + + + HW settings + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + 255 + 255 + 255 + + + + + + + 232 + 232 + 232 + + + + + + + + + 255 + 255 + 255 + + + + + + + 232 + 232 + 232 + + + + + + + + + 232 + 232 + 232 + + + + + + + 232 + 232 + 232 + + + + + + + + QFrame::NoFrame + + + QFrame::Plain + + + true + + + + + 0 + 0 + 624 + 510 + + + + + 12 + + + 12 + + + 12 + + + 12 + + + + + + 0 + 0 + + + + + 0 + 50 + + + + Messages + + + + + + + 75 + true + + + + + + + Qt::AutoText + + + true + + + + + + + + + + + 0 + 0 + + + + + 500 + 0 + + + + + 500 + 16777215 + + + + + 75 + true + + + + Changes on this page only take effect after board reset or power cycle + + + Qt::AlignCenter + + + true + + + + + + + Qt::Vertical + + + + 20 + 25 + + + + + + + + + + + + Select the speed here. + + + + + + + + 55 + 0 + + + + GPS speed: + + + + + + + Telemetry speed: + + + + + + + Select the speed here. + + + + + + + Select the speed here. + + + + + + + + 55 + 0 + + + + ComUsbBridge speed: + + + + + + + GPS protocol : + + + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + + + + + + USB HID Port + + + Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft + + + + + + + + + + + + + + USB VCP Port + + + Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft + + + + + + + + + + false + + + + + + + Main Port + + + Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft + + + + + + + Flexi Port + + + Qt::AlignBottom|Qt::AlignLeading|Qt::AlignLeft + + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + + Receiver Port + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Qt::Vertical + + + QSizePolicy::Fixed + + + + 20 + 10 + + + + + + + + + + + + + + + + 4 + + + + + Qt::Horizontal + + + + 369 + 20 + + + + + + + + + 0 + 0 + + + + + 25 + 25 + + + + + 25 + 25 + + + + Takes you to the wiki page + + + + + + + :/core/images/helpicon.svg:/core/images/helpicon.svg + + + + 25 + 25 + + + + true + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + + + + + + 255 + 255 + 255 + + + + + + + 232 + 232 + 232 + + + + + + + + + 255 + 255 + 255 + + + + + + + 232 + 232 + 232 + + + + + + + + + 232 + 232 + 232 + + + + + + + 232 + 232 + 232 + + + + + + + + Send to OpenPilot but don't write in SD. +Beware of not locking yourself out! + + + false + + + + + + Apply + + + + 16 + 16 + + + + false + + + + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Applies and Saves all settings to SD. +Beware of not locking yourself out! + + + false + + + + + + Save + + + + + + + + + + + + diff --git a/ground/openpilotgcs/src/plugins/config/ccattitude.ui b/ground/openpilotgcs/src/plugins/config/ccattitude.ui new file mode 100644 index 000000000..1a659982e --- /dev/null +++ b/ground/openpilotgcs/src/plugins/config/ccattitude.ui @@ -0,0 +1,597 @@ + + + ccattitude + + + + 0 + 0 + 780 + 566 + + + + Form + + + + + + 0 + + + + Attitude + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + 255 + 255 + 255 + + + + + + + 232 + 232 + 232 + + + + + + + + + 255 + 255 + 255 + + + + + + + 232 + 232 + 232 + + + + + + + + + 232 + 232 + 232 + + + + + + + 232 + 232 + 232 + + + + + + + + QFrame::NoFrame + + + QFrame::Plain + + + true + + + + + 0 + 0 + 758 + 486 + + + + + 12 + + + 12 + + + 12 + + + 12 + + + + + Rotate virtual attitude relative to board + + + + + + background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255)); +color: rgb(255, 255, 255); +border-radius: 5; +margin:1px; +font:bold; + + + Roll + + + Qt::AlignCenter + + + + + + + -180 + + + 180 + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + -180 + + + 180 + + + + + + + background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255)); +color: rgb(255, 255, 255); +border-radius: 5; +margin:1px; +font:bold; + + + Yaw + + + Qt::AlignCenter + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255)); +color: rgb(255, 255, 255); +border-radius: 5; +margin:1px; +font:bold; + + + Pitch + + + Qt::AlignCenter + + + + + + + -90 + + + 90 + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + Calibration + + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + Place aircraft very flat, and then click level to compute the accelerometer and gyro bias + + + true + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + 500 + 16777215 + + + + Launch horizontal calibration. + + + Level + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 10 + 20 + + + + + + + + + 300 + 0 + + + + 0 + + + + + + + + + If enabled, a fast recalibration of gyro zero point will be done +whenever the frame is armed. Do not move the airframe while +arming it in that case! + + + Zero gyros while arming aircraft + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + + + Filtering + + + + + + + 0 + 0 + + + + + + + Accelerometers + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 10 + 0 + + + + + + + + + 60 + 0 + + + + Accelerometer filtering. + +Sets the amount of lowpass filtering of accelerometer data +for the attitude estimation. Higher values apply a stronger +filter, which may help with drifting in attitude mode. + +Range: 0.00 - 0.20, Good starting value: 0.05 - 0.10 +Start low and raise until drift stops. + +A setting of 0.00 disables the filter. + + + 2 + + + 0.200000000000000 + + + 0.010000000000000 + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + + Qt::Vertical + + + + 20 + 10 + + + + + + + + + + + + + + + + 4 + + + + + Qt::Horizontal + + + + 380 + 20 + + + + + + + + + 0 + 0 + + + + + 25 + 25 + + + + Takes you to the wiki page + + + + + + + :/core/images/helpicon.svg:/core/images/helpicon.svg + + + + 25 + 25 + + + + true + + + + + + + + 0 + 0 + + + + Apply + + + + + + + + 0 + 0 + + + + Click to permanently save the accel bias in the CopterControl Flash. + + + Save + + + + + + + + + + + + diff --git a/ground/openpilotgcs/src/plugins/config/config.pro b/ground/openpilotgcs/src/plugins/config/config.pro index 082c89cd5..004c10d1c 100644 --- a/ground/openpilotgcs/src/plugins/config/config.pro +++ b/ground/openpilotgcs/src/plugins/config/config.pro @@ -21,6 +21,8 @@ HEADERS += \ configinputwidget.h \ configoutputwidget.h \ configvehicletypewidget.h \ + config_cc_hw_widget.h \ + configccattitudewidget.h \ configstabilizationwidget.h \ assertions.h \ defaultattitudewidget.h \ @@ -67,6 +69,8 @@ SOURCES += \ configinputwidget.cpp \ configoutputwidget.cpp \ configvehicletypewidget.cpp \ + config_cc_hw_widget.cpp \ + configccattitudewidget.cpp \ configstabilizationwidget.cpp \ defaultattitudewidget.cpp \ defaulthwsettingswidget.cpp \ @@ -104,10 +108,12 @@ FORMS += \ airframe_ground.ui \ airframe_multirotor.ui \ airframe_custom.ui \ + cc_hw_settings.ui \ stabilization.ui \ input.ui \ input_wizard.ui \ output.ui \ + ccattitude.ui \ defaultattitude.ui \ defaulthwsettings.ui \ inputchannelform.ui \ diff --git a/ground/openpilotgcs/src/plugins/config/config_cc_hw_widget.cpp b/ground/openpilotgcs/src/plugins/config/config_cc_hw_widget.cpp new file mode 100644 index 000000000..4fe823e6a --- /dev/null +++ b/ground/openpilotgcs/src/plugins/config/config_cc_hw_widget.cpp @@ -0,0 +1,156 @@ +/** + ****************************************************************************** + * + * @file configtelemetrywidget.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @addtogroup GCSPlugins GCS Plugins + * @{ + * @addtogroup ConfigPlugin Config Plugin + * @{ + * @brief The Configuration Gadget used to update settings in the firmware + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +#include "config_cc_hw_widget.h" +#include "hwsettings.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +ConfigCCHWWidget::ConfigCCHWWidget(QWidget *parent) : ConfigTaskWidget(parent) +{ + m_telemetry = new Ui_CC_HW_Widget(); + m_telemetry->setupUi(this); + + ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance(); + Core::Internal::GeneralSettings *settings = pm->getObject(); + if (!settings->useExpertMode()) { + m_telemetry->saveTelemetryToRAM->setVisible(false); + } + + + UAVObjectUtilManager *utilMngr = pm->getObject(); + int id = utilMngr->getBoardModel(); + + switch (id) { + case 0x0101: + m_telemetry->label_2->setPixmap(QPixmap(":/uploader/images/deviceID-0101.svg")); + break; + case 0x0301: + m_telemetry->label_2->setPixmap(QPixmap(":/uploader/images/deviceID-0301.svg")); + break; + case 0x0401: + m_telemetry->label_2->setPixmap(QPixmap(":/configgadget/images/coptercontrol.svg")); + break; + case 0x0402: + m_telemetry->label_2->setPixmap(QPixmap(":/configgadget/images/coptercontrol.svg")); + break; + case 0x0201: + m_telemetry->label_2->setPixmap(QPixmap(":/uploader/images/deviceID-0201.svg")); + break; + default: + m_telemetry->label_2->setPixmap(QPixmap(":/configgadget/images/coptercontrol.svg")); + break; + } + addApplySaveButtons(m_telemetry->saveTelemetryToRAM, m_telemetry->saveTelemetryToSD); + addWidgetBinding("HwSettings", "CC_FlexiPort", m_telemetry->cbFlexi); + addWidgetBinding("HwSettings", "CC_MainPort", m_telemetry->cbTele); + addWidgetBinding("HwSettings", "CC_RcvrPort", m_telemetry->cbRcvr); + addWidgetBinding("HwSettings", "USB_HIDPort", m_telemetry->cbUsbHid); + addWidgetBinding("HwSettings", "USB_VCPPort", m_telemetry->cbUsbVcp); + addWidgetBinding("HwSettings", "TelemetrySpeed", m_telemetry->telemetrySpeed); + addWidgetBinding("HwSettings", "GPSSpeed", m_telemetry->gpsSpeed); + // Add Gps protocol configuration + + HwSettings *hwSettings = HwSettings::GetInstance(getObjectManager()); + HwSettings::DataFields hwSettingsData = hwSettings->getData(); + + if (hwSettingsData.OptionalModules[HwSettings::OPTIONALMODULES_GPS] != HwSettings::OPTIONALMODULES_ENABLED) { + m_telemetry->gpsProtocol->setEnabled(false); + m_telemetry->gpsProtocol->setToolTip(tr("Enable GPS module and reboot the board to be able to select GPS protocol")); + } else { + addWidgetBinding("GPSSettings", "DataProtocol", m_telemetry->gpsProtocol); + } + + addWidgetBinding("HwSettings", "ComUsbBridgeSpeed", m_telemetry->comUsbBridgeSpeed); + connect(m_telemetry->cchwHelp, SIGNAL(clicked()), this, SLOT(openHelp())); + enableSaveButtons(false); + populateWidgets(); + refreshWidgetsValues(); + forceConnectedState(); +} + +ConfigCCHWWidget::~ConfigCCHWWidget() +{ + // Do nothing +} + +void ConfigCCHWWidget::refreshValues() +{} + +void ConfigCCHWWidget::widgetsContentsChanged() +{ + ConfigTaskWidget::widgetsContentsChanged(); + + if (((m_telemetry->cbTele->currentIndex() == HwSettings::CC_MAINPORT_DEBUGCONSOLE) && + (m_telemetry->cbFlexi->currentIndex() == HwSettings::CC_FLEXIPORT_DEBUGCONSOLE)) || + ((m_telemetry->cbFlexi->currentIndex() == HwSettings::CC_FLEXIPORT_DEBUGCONSOLE) && + (m_telemetry->cbUsbVcp->currentIndex() == HwSettings::USB_VCPPORT_DEBUGCONSOLE)) || + ((m_telemetry->cbUsbVcp->currentIndex() == HwSettings::USB_VCPPORT_DEBUGCONSOLE) && + (m_telemetry->cbTele->currentIndex() == HwSettings::CC_MAINPORT_DEBUGCONSOLE))) { + enableSaveButtons(false); + m_telemetry->problems->setText(tr("Warning: you have configured more than one DebugConsole, this currently is not supported")); + } else if (((m_telemetry->cbTele->currentIndex() == HwSettings::CC_MAINPORT_TELEMETRY) && (m_telemetry->cbFlexi->currentIndex() == HwSettings::CC_FLEXIPORT_TELEMETRY)) || + ((m_telemetry->cbTele->currentIndex() == HwSettings::CC_MAINPORT_GPS) && (m_telemetry->cbFlexi->currentIndex() == HwSettings::CC_FLEXIPORT_GPS)) || + ((m_telemetry->cbTele->currentIndex() == HwSettings::CC_MAINPORT_DEBUGCONSOLE) && (m_telemetry->cbFlexi->currentIndex() == HwSettings::CC_FLEXIPORT_DEBUGCONSOLE)) || + ((m_telemetry->cbTele->currentIndex() == HwSettings::CC_MAINPORT_COMBRIDGE) && (m_telemetry->cbFlexi->currentIndex() == HwSettings::CC_FLEXIPORT_COMBRIDGE))) { + enableSaveButtons(false); + m_telemetry->problems->setText(tr("Warning: you have configured both MainPort and FlexiPort for the same function, this currently is not supported")); + } else if ((m_telemetry->cbUsbHid->currentIndex() == HwSettings::USB_HIDPORT_USBTELEMETRY) && (m_telemetry->cbUsbVcp->currentIndex() == HwSettings::USB_VCPPORT_USBTELEMETRY)) { + enableSaveButtons(false); + m_telemetry->problems->setText(tr("Warning: you have configured both USB HID Port and USB VCP Port for the same function, this currently is not supported")); + } else if ((m_telemetry->cbUsbHid->currentIndex() != HwSettings::USB_HIDPORT_USBTELEMETRY) && (m_telemetry->cbUsbVcp->currentIndex() != HwSettings::USB_VCPPORT_USBTELEMETRY)) { + enableSaveButtons(false); + m_telemetry->problems->setText(tr("Warning: you have disabled USB Telemetry on both USB HID Port and USB VCP Port, this currently is not supported")); + } else { + m_telemetry->problems->setText(""); + enableSaveButtons(true); + } +} + +void ConfigCCHWWidget::enableSaveButtons(bool enable) +{ + m_telemetry->saveTelemetryToRAM->setEnabled(enable); + m_telemetry->saveTelemetryToSD->setEnabled(enable); +} + +void ConfigCCHWWidget::openHelp() +{ + QDesktopServices::openUrl(QUrl(tr("http://wiki.openpilot.org/x/D4AUAQ"), QUrl::StrictMode)); +} + +/** + * @} + * @} + */ diff --git a/ground/openpilotgcs/src/plugins/config/config_cc_hw_widget.h b/ground/openpilotgcs/src/plugins/config/config_cc_hw_widget.h new file mode 100644 index 000000000..313231382 --- /dev/null +++ b/ground/openpilotgcs/src/plugins/config/config_cc_hw_widget.h @@ -0,0 +1,56 @@ +/** + ****************************************************************************** + * + * @file configtelemetrytwidget.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @addtogroup GCSPlugins GCS Plugins + * @{ + * @addtogroup ConfigPlugin Config Plugin + * @{ + * @brief Telemetry configuration panel + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +#ifndef CONFIGCCHWWIDGET_H +#define CONFIGCCHWWIDGET_H + +#include "ui_cc_hw_settings.h" +#include "../uavobjectwidgetutils/configtaskwidget.h" +#include "extensionsystem/pluginmanager.h" +#include "uavobjectmanager.h" +#include "uavobject.h" +#include +#include +#include "smartsavebutton.h" + +class ConfigCCHWWidget : public ConfigTaskWidget { + Q_OBJECT + +public: + ConfigCCHWWidget(QWidget *parent = 0); + ~ConfigCCHWWidget(); +private slots: + void openHelp(); + void refreshValues(); + void widgetsContentsChanged(); + void enableSaveButtons(bool enable); + +private: + Ui_CC_HW_Widget *m_telemetry; + QSvgRenderer *m_renderer; +}; + +#endif // CONFIGCCHWWIDGET_H diff --git a/ground/openpilotgcs/src/plugins/config/configccattitudewidget.cpp b/ground/openpilotgcs/src/plugins/config/configccattitudewidget.cpp new file mode 100644 index 000000000..4e872735b --- /dev/null +++ b/ground/openpilotgcs/src/plugins/config/configccattitudewidget.cpp @@ -0,0 +1,239 @@ +/** + ****************************************************************************** + * + * @file configccattitudewidget.cpp + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @addtogroup GCSPlugins GCS Plugins + * @{ + * @addtogroup ConfigPlugin Config Plugin + * @{ + * @brief Configure Attitude module on CopterControl + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +#include "configccattitudewidget.h" +#include "ui_ccattitude.h" +#include "utils/coordinateconversions.h" +#include "attitudesettings.h" +#include +#include +#include +#include +#include +#include "accelstate.h" +#include "accelgyrosettings.h" +#include "gyrostate.h" +#include +#include +#include +ConfigCCAttitudeWidget::ConfigCCAttitudeWidget(QWidget *parent) : + ConfigTaskWidget(parent), + ui(new Ui_ccattitude) +{ + ui->setupUi(this); + connect(ui->zeroBias, SIGNAL(clicked()), this, SLOT(startAccelCalibration())); + + ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance(); + Core::Internal::GeneralSettings *settings = pm->getObject(); + if (!settings->useExpertMode()) { + ui->applyButton->setVisible(false); + } + + addApplySaveButtons(ui->applyButton, ui->saveButton); + addUAVObject("AttitudeSettings"); + addUAVObject("AccelGyroSettings"); + + // Connect the help button + connect(ui->ccAttitudeHelp, SIGNAL(clicked()), this, SLOT(openHelp())); + + addWidgetBinding("AttitudeSettings", "ZeroDuringArming", ui->zeroGyroBiasOnArming); + addWidgetBinding("AttitudeSettings", "AccelTau", ui->accelTauSpinbox); + + addWidgetBinding("AttitudeSettings", "BoardRotation", ui->rollBias, AttitudeSettings::BOARDROTATION_ROLL); + addWidgetBinding("AttitudeSettings", "BoardRotation", ui->pitchBias, AttitudeSettings::BOARDROTATION_PITCH); + addWidgetBinding("AttitudeSettings", "BoardRotation", ui->yawBias, AttitudeSettings::BOARDROTATION_YAW); + addWidget(ui->zeroBias); + populateWidgets(); + refreshWidgetsValues(); + forceConnectedState(); +} + +ConfigCCAttitudeWidget::~ConfigCCAttitudeWidget() +{ + delete ui; +} + +void ConfigCCAttitudeWidget::sensorsUpdated(UAVObject *obj) +{ + if (!timer.isActive()) { + // ignore updates that come in after the timer has expired + return; + } + + AccelState *accelState = AccelState::GetInstance(getObjectManager()); + GyroState *gyroState = GyroState::GetInstance(getObjectManager()); + + // Accumulate samples until we have _at least_ NUM_SENSOR_UPDATES samples + // for both gyros and accels. + // Note that, at present, we stash the samples and then compute the bias + // at the end, even though the mean could be accumulated as we go. + // In future, a better algorithm could be used. + if (obj->getObjID() == AccelState::OBJID) { + accelUpdates++; + AccelState::DataFields accelStateData = accelState->getData(); + x_accum.append(accelStateData.x); + y_accum.append(accelStateData.y); + z_accum.append(accelStateData.z); + } else if (obj->getObjID() == GyroState::OBJID) { + gyroUpdates++; + GyroState::DataFields gyroStateData = gyroState->getData(); + x_gyro_accum.append(gyroStateData.x); + y_gyro_accum.append(gyroStateData.y); + z_gyro_accum.append(gyroStateData.z); + } + + // update the progress indicator + ui->zeroBiasProgress->setValue((float)qMin(accelUpdates, gyroUpdates) / NUM_SENSOR_UPDATES * 100); + + // If we have enough samples, then stop sampling and compute the biases + if (accelUpdates >= NUM_SENSOR_UPDATES && gyroUpdates >= NUM_SENSOR_UPDATES) { + timer.stop(); + disconnect(obj, SIGNAL(objectUpdated(UAVObject *)), this, SLOT(sensorsUpdated(UAVObject *))); + disconnect(&timer, SIGNAL(timeout()), this, SLOT(timeout())); + + float x_bias = OpenPilot::CalibrationUtils::listMean(x_accum); + float y_bias = OpenPilot::CalibrationUtils::listMean(y_accum); + float z_bias = OpenPilot::CalibrationUtils::listMean(z_accum) + 9.81; + + float x_gyro_bias = OpenPilot::CalibrationUtils::listMean(x_gyro_accum); + float y_gyro_bias = OpenPilot::CalibrationUtils::listMean(y_gyro_accum); + float z_gyro_bias = OpenPilot::CalibrationUtils::listMean(z_gyro_accum); + accelState->setMetadata(initialAccelStateMdata); + gyroState->setMetadata(initialGyroStateMdata); + + AccelGyroSettings::DataFields accelGyroSettingsData = AccelGyroSettings::GetInstance(getObjectManager())->getData(); + AttitudeSettings::DataFields attitudeSettingsData = AttitudeSettings::GetInstance(getObjectManager())->getData(); + // We offset the gyro bias by current bias to help precision + accelGyroSettingsData.accel_bias[0] += x_bias; + accelGyroSettingsData.accel_bias[1] += y_bias; + accelGyroSettingsData.accel_bias[2] += z_bias; + accelGyroSettingsData.gyro_bias[0] = -x_gyro_bias; + accelGyroSettingsData.gyro_bias[1] = -y_gyro_bias; + accelGyroSettingsData.gyro_bias[2] = -z_gyro_bias; + attitudeSettingsData.BiasCorrectGyro = AttitudeSettings::BIASCORRECTGYRO_TRUE; + AttitudeSettings::GetInstance(getObjectManager())->setData(attitudeSettingsData); + AccelGyroSettings::GetInstance(getObjectManager())->setData(accelGyroSettingsData); + this->setDirty(true); + + // reenable controls + enableControls(true); + } +} + +void ConfigCCAttitudeWidget::timeout() +{ + UAVDataObject *obj = AccelState::GetInstance(getObjectManager()); + + disconnect(obj, SIGNAL(objectUpdated(UAVObject *)), this, SLOT(sensorsUpdated(UAVObject *))); + disconnect(&timer, SIGNAL(timeout()), this, SLOT(timeout())); + + AccelState *accelState = AccelState::GetInstance(getObjectManager()); + GyroState *gyroState = GyroState::GetInstance(getObjectManager()); + accelState->setMetadata(initialAccelStateMdata); + gyroState->setMetadata(initialGyroStateMdata); + + QMessageBox msgBox; + msgBox.setText(tr("Calibration timed out before receiving required updates.")); + msgBox.setStandardButtons(QMessageBox::Ok); + msgBox.setDefaultButton(QMessageBox::Ok); + msgBox.exec(); + + // reset progress indicator + ui->zeroBiasProgress->setValue(0); + // reenable controls + enableControls(true); +} + +void ConfigCCAttitudeWidget::startAccelCalibration() +{ + // disable controls during sampling + enableControls(false); + + accelUpdates = 0; + gyroUpdates = 0; + x_accum.clear(); + y_accum.clear(); + z_accum.clear(); + x_gyro_accum.clear(); + y_gyro_accum.clear(); + z_gyro_accum.clear(); + + // Disable gyro bias correction to see raw data + AttitudeSettings::DataFields attitudeSettingsData = AttitudeSettings::GetInstance(getObjectManager())->getData(); + attitudeSettingsData.BiasCorrectGyro = AttitudeSettings::BIASCORRECTGYRO_FALSE; + AttitudeSettings::GetInstance(getObjectManager())->setData(attitudeSettingsData); + + // Set up to receive updates + UAVDataObject *accelState = AccelState::GetInstance(getObjectManager()); + UAVDataObject *gyroState = GyroState::GetInstance(getObjectManager()); + connect(accelState, SIGNAL(objectUpdated(UAVObject *)), this, SLOT(sensorsUpdated(UAVObject *))); + connect(gyroState, SIGNAL(objectUpdated(UAVObject *)), this, SLOT(sensorsUpdated(UAVObject *))); + + // Speed up updates + initialAccelStateMdata = accelState->getMetadata(); + UAVObject::Metadata accelStateMdata = initialAccelStateMdata; + UAVObject::SetFlightTelemetryUpdateMode(accelStateMdata, UAVObject::UPDATEMODE_PERIODIC); + accelStateMdata.flightTelemetryUpdatePeriod = 30; // ms + accelState->setMetadata(accelStateMdata); + + initialGyroStateMdata = gyroState->getMetadata(); + UAVObject::Metadata gyroStateMdata = initialGyroStateMdata; + UAVObject::SetFlightTelemetryUpdateMode(gyroStateMdata, UAVObject::UPDATEMODE_PERIODIC); + gyroStateMdata.flightTelemetryUpdatePeriod = 30; // ms + gyroState->setMetadata(gyroStateMdata); + + // Set up timeout timer + timer.setSingleShot(true); + timer.start(5000 + (NUM_SENSOR_UPDATES * qMax(accelStateMdata.flightTelemetryUpdatePeriod, + gyroStateMdata.flightTelemetryUpdatePeriod))); + connect(&timer, SIGNAL(timeout()), this, SLOT(timeout())); +} + +void ConfigCCAttitudeWidget::openHelp() +{ + QDesktopServices::openUrl(QUrl(tr("http://wiki.openpilot.org/x/44Cf"), QUrl::StrictMode)); +} + +void ConfigCCAttitudeWidget::setAccelFiltering(bool active) +{ + Q_UNUSED(active); + setDirty(true); +} + +void ConfigCCAttitudeWidget::enableControls(bool enable) +{ + ui->zeroBias->setEnabled(enable); + ui->zeroGyroBiasOnArming->setEnabled(enable); + ui->accelTauSpinbox->setEnabled(enable); + ConfigTaskWidget::enableControls(enable); +} + +void ConfigCCAttitudeWidget::updateObjectsFromWidgets() +{ + ConfigTaskWidget::updateObjectsFromWidgets(); + + ui->zeroBiasProgress->setValue(0); +} diff --git a/ground/openpilotgcs/src/plugins/config/configccattitudewidget.h b/ground/openpilotgcs/src/plugins/config/configccattitudewidget.h new file mode 100644 index 000000000..b4d84a5b9 --- /dev/null +++ b/ground/openpilotgcs/src/plugins/config/configccattitudewidget.h @@ -0,0 +1,74 @@ +/** + ****************************************************************************** + * + * @file configccattitudewidget.h + * @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010. + * @addtogroup GCSPlugins GCS Plugins + * @{ + * @addtogroup ConfigPlugin Config Plugin + * @{ + * @brief Configure the properties of the attitude module in CopterControl + *****************************************************************************/ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +#ifndef CCATTITUDEWIDGET_H +#define CCATTITUDEWIDGET_H + +#include "ui_ccattitude.h" +#include "../uavobjectwidgetutils/configtaskwidget.h" +#include "extensionsystem/pluginmanager.h" +#include "uavobjectmanager.h" +#include "uavobject.h" +#include +#include + +class Ui_Widget; + +class ConfigCCAttitudeWidget : public ConfigTaskWidget { + Q_OBJECT + +public: + explicit ConfigCCAttitudeWidget(QWidget *parent = 0); + ~ConfigCCAttitudeWidget(); + + virtual void updateObjectsFromWidgets(); + +private slots: + void sensorsUpdated(UAVObject *obj); + void timeout(); + void startAccelCalibration(); + void openHelp(); + void setAccelFiltering(bool active); + +private: + Ui_ccattitude *ui; + QTimer timer; + UAVObject::Metadata initialAccelStateMdata; + UAVObject::Metadata initialGyroStateMdata; + + int accelUpdates; + int gyroUpdates; + + QList x_accum, y_accum, z_accum; + QList x_gyro_accum, y_gyro_accum, z_gyro_accum; + + static const float DEFAULT_ENABLED_ACCEL_TAU = 0.1; + static const int NUM_SENSOR_UPDATES = 300; +protected: + virtual void enableControls(bool enable); +}; + +#endif // CCATTITUDEWIDGET_H diff --git a/ground/openpilotgcs/src/plugins/config/configgadget.qrc b/ground/openpilotgcs/src/plugins/config/configgadget.qrc index 6e96f1872..7767c9953 100644 --- a/ground/openpilotgcs/src/plugins/config/configgadget.qrc +++ b/ground/openpilotgcs/src/plugins/config/configgadget.qrc @@ -12,7 +12,9 @@ images/fixedwing-shapes.svg images/ground-shapes.svg images/ccpm_setup.svg + images/PipXtreme.png images/help.png + images/coptercontrol.svg images/TX2.svg images/output_selected.png images/output_normal.png diff --git a/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp b/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp index bb1a923f7..3a10d3eaa 100644 --- a/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp +++ b/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp @@ -28,12 +28,14 @@ #include "configgadgetwidget.h" #include "configvehicletypewidget.h" +#include "configccattitudewidget.h" #include "configinputwidget.h" #include "configoutputwidget.h" #include "configstabilizationwidget.h" #include "configcamerastabilizationwidget.h" #include "configtxpidwidget.h" #include "configrevohwwidget.h" +#include "config_cc_hw_widget.h" #include "configoplinkwidget.h" #include "configrevowidget.h" #include "configrevonanohwwidget.h" @@ -182,15 +184,21 @@ void ConfigGadgetWidget::onAutopilotConnect() UAVObjectUtilManager *utilMngr = pm->getObject(); if (utilMngr) { int board = utilMngr->getBoardModel(); - if ((board & 0xff00) == 0x0900) { + if ((board & 0xff00) == 1024) { + // CopterControl family + QWidget *qwd = new ConfigCCAttitudeWidget(this); + stackWidget->replaceTab(ConfigGadgetWidget::sensors, qwd); + + qwd = new ConfigCCHWWidget(this); + stackWidget->replaceTab(ConfigGadgetWidget::hardware, qwd); + } else if ((board & 0xff00) == 0x0900) { // Revolution family QWidget *qwd = new ConfigRevoWidget(this); stackWidget->replaceTab(ConfigGadgetWidget::sensors, qwd); - if (board == 0x0903) { - qwd = new ConfigRevoHWWidget(this); + + qwd = new ConfigRevoHWWidget(this); } else if (board == 0x0905) { qwd = new ConfigRevoNanoHWWidget(this); - } stackWidget->replaceTab(ConfigGadgetWidget::hardware, qwd); } else { // Unknown board diff --git a/ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp b/ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp index a60c77dac..482d57018 100644 --- a/ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp +++ b/ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp @@ -353,8 +353,12 @@ void ConfigOutputWidget::refreshWidgetsValues(UAVObject *obj) if (utilMngr) { int board = utilMngr->getBoardModel(); - // Setup labels and combos for banks according to board type - if (board == 0x0903) { + // Setup labels and combos for banks according to board type + if ((board & 0xff00) == 0x0400) { + // Coptercontrol family of boards 4 timer banks + bankLabels << "1 (1-3)" << "2 (4)" << "3 (5,7-8)" << "4 (6,9-10)"; + channelBanks << 1 << 1 << 1 << 2 << 3 << 4 << 3 << 3 << 4 << 4; + } else if (board == 0x0903) { // Revolution family of boards 6 timer banks bankLabels << "1 (1-2)" << "2 (3)" << "3 (4)" << "4 (5-6)" << "5 (7,12)" << "6 (8-11)"; channelBanks << 1 << 1 << 2 << 3 << 4 << 4 << 5 << 6 << 6 << 6 << 6 << 5; @@ -472,7 +476,10 @@ void ConfigOutputWidget::updateWarnings(UAVObject *) if (systemAlarms.Alarm[SystemAlarms::ALARM_SYSTEMCONFIGURATION] > SystemAlarms::ALARM_WARNING) { switch (systemAlarms.ExtendedAlarmStatus[SystemAlarms::EXTENDEDALARMSTATUS_SYSTEMCONFIGURATION]) { case SystemAlarms::EXTENDEDALARMSTATUS_UNSUPPORTEDCONFIG_ONESHOT: - setWarning(tr("OneShot and PWMSync output DO NOT work with Receiver Port is 'PWM'
")); + setWarning(tr("OneShot and PWMSync output only works with Receiver Port settings marked with '+OneShot'
" + "When using Receiver Port setting 'PPM_PIN8+OneShot' " + "Bank %2 must be set to PWM") + .arg(m_banks.at(3).color().name()).arg(m_banks.at(3).label()->text())); return; } } diff --git a/ground/openpilotgcs/src/plugins/config/images/PipXtreme.png b/ground/openpilotgcs/src/plugins/config/images/PipXtreme.png new file mode 100644 index 0000000000000000000000000000000000000000..cd9396e6c0cba462963e10eee2497294bef92a71 GIT binary patch literal 78915 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̋&1x0|kG&AbGp`G1#LdQQF^gVdal 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 + + +image/svg+xml \ No newline at end of file diff --git a/ground/openpilotgcs/src/plugins/coreplugin/connectionmanager.cpp b/ground/openpilotgcs/src/plugins/coreplugin/connectionmanager.cpp index ed0599128..a225b97e6 100644 --- a/ground/openpilotgcs/src/plugins/coreplugin/connectionmanager.cpp +++ b/ground/openpilotgcs/src/plugins/coreplugin/connectionmanager.cpp @@ -89,8 +89,6 @@ void ConnectionManager::init() // new connection object from plugins QObject::connect(ExtensionSystem::PluginManager::instance(), SIGNAL(objectAdded(QObject *)), this, SLOT(objectAdded(QObject *))); QObject::connect(ExtensionSystem::PluginManager::instance(), SIGNAL(aboutToRemoveObject(QObject *)), this, SLOT(aboutToRemoveObject(QObject *))); - - ccWarningClosed = true; } @@ -437,23 +435,16 @@ void ConnectionManager::devChanged(IConnection *connection) } // clear device list combobox m_availableDevList->clear(); - ccFound = false; // remove registered devices of this IConnection from the list updateConnectionList(connection); updateConnectionDropdown(); - if (ccFound && ccWarningClosed) { - ccWarningClosed = false; - QMessageBox::information(this, tr("CopterControl Not Supported"), - tr("This version of OpenPilot GCS does not support CC and CC3D boards.\n\nPlease use OpenPilot GCS version 15.02.xx instead")); - ccWarningClosed = true; - } - qDebug() << "# devices " << m_devList.count(); emit availableDevicesChanged(m_devList); + // disable connection button if the liNameif (m_availableDevList->count() > 0) if (m_availableDevList->count() > 0) { m_connectBtn->setEnabled(true); @@ -466,21 +457,17 @@ void ConnectionManager::updateConnectionDropdown() { // add all the list again to the combobox foreach(DevListItem d, m_devList) { - if (!d.getConName().contains("CopterControl")) { - m_availableDevList->addItem(d.getConName()); - m_availableDevList->setItemData(m_availableDevList->count() - 1, d.getConName(), Qt::ToolTipRole); - if (!m_ioDev && d.getConName().startsWith("USB")) { - if (m_mainWindow->generalSettings()->autoConnect() || m_mainWindow->generalSettings()->autoSelect()) { - m_availableDevList->setCurrentIndex(m_availableDevList->count() - 1); - } - if (m_mainWindow->generalSettings()->autoConnect() && polling) { - qDebug() << "Automatically opening device"; - connectDevice(d); - qDebug() << "ConnectionManager::updateConnectionDropdown autoconnected USB device"; - } + m_availableDevList->addItem(d.getConName()); + m_availableDevList->setItemData(m_availableDevList->count() - 1, d.getConName(), Qt::ToolTipRole); + if (!m_ioDev && d.getConName().startsWith("USB")) { + if (m_mainWindow->generalSettings()->autoConnect() || m_mainWindow->generalSettings()->autoSelect()) { + m_availableDevList->setCurrentIndex(m_availableDevList->count() - 1); + } + if (m_mainWindow->generalSettings()->autoConnect() && polling) { + qDebug() << "Automatically opening device"; + connectDevice(d); + qDebug() << "ConnectionManager::updateConnectionDropdown autoconnected USB device"; } - } else { - ccFound = true; } } if (m_ioDev) { diff --git a/ground/openpilotgcs/src/plugins/coreplugin/connectionmanager.h b/ground/openpilotgcs/src/plugins/coreplugin/connectionmanager.h index 1b133d831..b19cc7c5d 100644 --- a/ground/openpilotgcs/src/plugins/coreplugin/connectionmanager.h +++ b/ground/openpilotgcs/src/plugins/coreplugin/connectionmanager.h @@ -38,7 +38,6 @@ #include #include #include -#include #include "core_global.h" #include @@ -150,8 +149,6 @@ protected: private: bool connectDevice(); bool polling; - bool ccFound; - bool ccWarningClosed; Internal::MainWindow *m_mainWindow; QList connectionBackup; QTimer *reconnect; diff --git a/ground/openpilotgcs/src/plugins/ophid/inc/ophid_usbmon.h b/ground/openpilotgcs/src/plugins/ophid/inc/ophid_usbmon.h index ac806e33c..eda27387f 100644 --- a/ground/openpilotgcs/src/plugins/ophid/inc/ophid_usbmon.h +++ b/ground/openpilotgcs/src/plugins/ophid/inc/ophid_usbmon.h @@ -135,9 +135,10 @@ public: }; enum USBConstants { - idVendor_OpenPilot = 0x20a0, - idProduct_OpenPilot = 0x415a, - idProduct_OPLinkMini = 0x415c + idVendor_OpenPilot = 0x20a0, + idProduct_OpenPilot = 0x415a, + idProduct_CopterControl = 0x415b, + idProduct_OPLinkMini = 0x415c }; static USBMonitor *instance(); diff --git a/ground/openpilotgcs/src/plugins/setupwizard/connectiondiagram.cpp b/ground/openpilotgcs/src/plugins/setupwizard/connectiondiagram.cpp index 619c22b63..c6f8b1d69 100644 --- a/ground/openpilotgcs/src/plugins/setupwizard/connectiondiagram.cpp +++ b/ground/openpilotgcs/src/plugins/setupwizard/connectiondiagram.cpp @@ -81,6 +81,10 @@ void ConnectionDiagram::setupGraphicsScene() QList elementsToShow; switch (m_configSource->getControllerType()) { + case VehicleConfigurationSource::CONTROLLER_CC: + case VehicleConfigurationSource::CONTROLLER_CC3D: + elementsToShow << "controller-cc"; + break; case VehicleConfigurationSource::CONTROLLER_REVO: elementsToShow << "controller-revo"; break; @@ -160,6 +164,14 @@ void ConnectionDiagram::setupGraphicsScene() QString prefix = ""; QString suffix = ""; switch (m_configSource->getControllerType()) { + case VehicleConfigurationSource::CONTROLLER_CC: + case VehicleConfigurationSource::CONTROLLER_CC3D: + prefix = "cc-"; + if (m_configSource->getEscType() == VehicleConfigurationSource::ESC_ONESHOT || + m_configSource->getEscType() == VehicleConfigurationSource::ESC_SYNCHED) { + suffix = "-oneshot"; + } + break; case VehicleConfigurationSource::CONTROLLER_REVO: prefix = "revo-"; break; diff --git a/ground/openpilotgcs/src/plugins/setupwizard/pages/controllerpage.cpp b/ground/openpilotgcs/src/plugins/setupwizard/pages/controllerpage.cpp index 57396610a..3597e2cd9 100644 --- a/ground/openpilotgcs/src/plugins/setupwizard/pages/controllerpage.cpp +++ b/ground/openpilotgcs/src/plugins/setupwizard/pages/controllerpage.cpp @@ -80,6 +80,9 @@ bool ControllerPage::isComplete() const bool ControllerPage::validatePage() { getWizard()->setControllerType((SetupWizard::CONTROLLER_TYPE)ui->boardTypeCombo->itemData(ui->boardTypeCombo->currentIndex()).toInt()); + if (getWizard()->getControllerType() == SetupWizard::CONTROLLER_CC || getWizard()->getControllerType() == SetupWizard::CONTROLLER_CC3D) { + getWizard()->setGpsType(SetupWizard::GPS_DISABLED); + } return true; } @@ -98,6 +101,12 @@ SetupWizard::CONTROLLER_TYPE ControllerPage::getControllerType() case 0x0301: return SetupWizard::CONTROLLER_OPLINK; + case 0x0401: + return SetupWizard::CONTROLLER_CC; + + case 0x0402: + return SetupWizard::CONTROLLER_CC3D; + case 0x0903: return SetupWizard::CONTROLLER_REVO; @@ -123,6 +132,8 @@ void ControllerPage::setupBoardTypes() QVariant v(0); ui->boardTypeCombo->addItem(tr(""), SetupWizard::CONTROLLER_UNKNOWN); + ui->boardTypeCombo->addItem(tr("OpenPilot CopterControl"), SetupWizard::CONTROLLER_CC); + ui->boardTypeCombo->addItem(tr("OpenPilot CopterControl 3D"), SetupWizard::CONTROLLER_CC3D); ui->boardTypeCombo->addItem(tr("OpenPilot Revolution"), SetupWizard::CONTROLLER_REVO); ui->boardTypeCombo->addItem(tr("OpenPilot OPLink Radio Modem"), SetupWizard::CONTROLLER_OPLINK); ui->boardTypeCombo->addItem(tr("OpenPilot DiscoveryF4"), SetupWizard::CONTROLLER_DISCOVERYF4); diff --git a/ground/openpilotgcs/src/plugins/setupwizard/pages/escpage.cpp b/ground/openpilotgcs/src/plugins/setupwizard/pages/escpage.cpp index 245ed42f0..8b84ec861 100644 --- a/ground/openpilotgcs/src/plugins/setupwizard/pages/escpage.cpp +++ b/ground/openpilotgcs/src/plugins/setupwizard/pages/escpage.cpp @@ -77,9 +77,10 @@ bool EscPage::isSynchOrOneShotAvailable() switch (getWizard()->getControllerType()) { case SetupWizard::CONTROLLER_NANO: + case SetupWizard::CONTROLLER_CC: + case SetupWizard::CONTROLLER_CC3D: available = getWizard()->getInputType() != SetupWizard::INPUT_PWM; break; - default: break; } diff --git a/ground/openpilotgcs/src/plugins/setupwizard/pages/inputpage.cpp b/ground/openpilotgcs/src/plugins/setupwizard/pages/inputpage.cpp index e5b752cdf..25ab2000a 100644 --- a/ground/openpilotgcs/src/plugins/setupwizard/pages/inputpage.cpp +++ b/ground/openpilotgcs/src/plugins/setupwizard/pages/inputpage.cpp @@ -74,6 +74,27 @@ bool InputPage::restartNeeded(VehicleConfigurationSource::INPUT_TYPE selectedTyp HwSettings *hwSettings = HwSettings::GetInstance(uavoManager); HwSettings::DataFields data = hwSettings->getData(); switch (getWizard()->getControllerType()) { + case SetupWizard::CONTROLLER_CC: + case SetupWizard::CONTROLLER_CC3D: + { + switch (selectedType) { + case VehicleConfigurationSource::INPUT_PWM: + return data.CC_RcvrPort != HwSettings::CC_RCVRPORT_PWMNOONESHOT; + + case VehicleConfigurationSource::INPUT_PPM: + return data.CC_RcvrPort != HwSettings::CC_RCVRPORT_PPMNOONESHOT; + + case VehicleConfigurationSource::INPUT_SBUS: + return data.CC_MainPort != HwSettings::CC_MAINPORT_SBUS; + + case VehicleConfigurationSource::INPUT_DSM: + // TODO: Handle all of the DSM types ?? Which is most common? + return data.CC_MainPort != HwSettings::CC_MAINPORT_DSM; + + default: return true; + } + break; + } case SetupWizard::CONTROLLER_REVO: case SetupWizard::CONTROLLER_DISCOVERYF4: case SetupWizard::CONTROLLER_NANO: diff --git a/ground/openpilotgcs/src/plugins/setupwizard/setupwizard.cpp b/ground/openpilotgcs/src/plugins/setupwizard/setupwizard.cpp index 4707cc47f..28b33f15f 100644 --- a/ground/openpilotgcs/src/plugins/setupwizard/setupwizard.cpp +++ b/ground/openpilotgcs/src/plugins/setupwizard/setupwizard.cpp @@ -95,6 +95,8 @@ int SetupWizard::nextId() const case PAGE_CONTROLLER: { switch (getControllerType()) { + case CONTROLLER_CC: + case CONTROLLER_CC3D: case CONTROLLER_REVO: case CONTROLLER_DISCOVERYF4: return PAGE_INPUT; @@ -207,6 +209,8 @@ int SetupWizard::nextId() const case PAGE_SUMMARY: { switch (getControllerType()) { + case CONTROLLER_CC: + case CONTROLLER_CC3D: case CONTROLLER_REVO: case CONTROLLER_NANO: case CONTROLLER_DISCOVERYF4: @@ -238,6 +242,12 @@ QString SetupWizard::getSummaryText() summary.append("").append(tr("Controller type: ")).append(""); switch (getControllerType()) { + case CONTROLLER_CC: + summary.append(tr("OpenPilot CopterControl")); + break; + case CONTROLLER_CC3D: + summary.append(tr("OpenPilot CopterControl 3D")); + break; case CONTROLLER_REVO: summary.append(tr("OpenPilot Revolution")); break; diff --git a/ground/openpilotgcs/src/plugins/setupwizard/vehicleconfigurationhelper.cpp b/ground/openpilotgcs/src/plugins/setupwizard/vehicleconfigurationhelper.cpp index 501afc8e9..26ce346b6 100644 --- a/ground/openpilotgcs/src/plugins/setupwizard/vehicleconfigurationhelper.cpp +++ b/ground/openpilotgcs/src/plugins/setupwizard/vehicleconfigurationhelper.cpp @@ -100,7 +100,15 @@ bool VehicleConfigurationHelper::setupHardwareSettings(bool save) bool VehicleConfigurationHelper::isApplicable(UAVObject *dataObj) { - return true; + switch (m_configSource->getControllerType()) { + case VehicleConfigurationSource::CONTROLLER_CC: + case VehicleConfigurationSource::CONTROLLER_CC3D: + if (dataObj->getName() == "EKFConfiguration") { + return false; + } + default: + return true; + } } void VehicleConfigurationHelper::addModifiedObject(UAVDataObject *object, QString description) @@ -128,6 +136,39 @@ void VehicleConfigurationHelper::applyHardwareConfiguration() data.OptionalModules[HwSettings::OPTIONALMODULES_AIRSPEED] = 0; switch (m_configSource->getControllerType()) { + case VehicleConfigurationSource::CONTROLLER_CC: + case VehicleConfigurationSource::CONTROLLER_CC3D: + // Reset all ports + data.CC_RcvrPort = HwSettings::CC_RCVRPORT_DISABLEDONESHOT; + + // Default mainport to be active telemetry link + data.CC_MainPort = HwSettings::CC_MAINPORT_TELEMETRY; + + data.CC_FlexiPort = HwSettings::CC_FLEXIPORT_DISABLED; + switch (m_configSource->getInputType()) { + case VehicleConfigurationSource::INPUT_PWM: + data.CC_RcvrPort = HwSettings::CC_RCVRPORT_PWMNOONESHOT; + break; + case VehicleConfigurationSource::INPUT_PPM: + if (m_configSource->getEscType() == VehicleConfigurationSource::ESC_ONESHOT || + m_configSource->getEscType() == VehicleConfigurationSource::ESC_SYNCHED) { + data.CC_RcvrPort = HwSettings::CC_RCVRPORT_PPM_PIN8ONESHOT; + } else { + data.CC_RcvrPort = HwSettings::CC_RCVRPORT_PPMNOONESHOT; + } + break; + case VehicleConfigurationSource::INPUT_SBUS: + // We have to set teletry on flexport since s.bus needs the mainport. + data.CC_MainPort = HwSettings::CC_MAINPORT_SBUS; + data.CC_FlexiPort = HwSettings::CC_FLEXIPORT_TELEMETRY; + break; + case VehicleConfigurationSource::INPUT_DSM: + data.CC_FlexiPort = HwSettings::CC_FLEXIPORT_DSM; + break; + default: + break; + } + break; case VehicleConfigurationSource::CONTROLLER_REVO: case VehicleConfigurationSource::CONTROLLER_NANO: case VehicleConfigurationSource::CONTROLLER_DISCOVERYF4: @@ -393,7 +434,10 @@ void VehicleConfigurationHelper::applyActuatorConfiguration() // Servo always on channel 4 data.BankUpdateFreq[0] = escFrequence; data.BankMode[0] = bankMode; - if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO) { + if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_CC || + m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_CC3D) { + data.BankUpdateFreq[1] = servoFrequence; + } else if (m_configSource->getControllerType() == VehicleConfigurationSource::CONTROLLER_REVO) { data.BankUpdateFreq[1] = escFrequence; data.BankMode[1] = bankMode; data.BankUpdateFreq[2] = servoFrequence; @@ -596,6 +640,20 @@ void VehicleConfigurationHelper::applySensorBiasConfiguration() addModifiedObject(accelGyroSettings, tr("Writing gyro and accelerometer bias settings")); switch (m_configSource->getControllerType()) { + case VehicleConfigurationSource::CONTROLLER_CC: + case VehicleConfigurationSource::CONTROLLER_CC3D: + { + AttitudeSettings *copterControlCalibration = AttitudeSettings::GetInstance(m_uavoManager); + Q_ASSERT(copterControlCalibration); + AttitudeSettings::DataFields data = copterControlCalibration->getData(); + + data.AccelTau = DEFAULT_ENABLED_ACCEL_TAU; + data.BiasCorrectGyro = AttitudeSettings::BIASCORRECTGYRO_TRUE; + + copterControlCalibration->setData(data); + addModifiedObject(copterControlCalibration, tr("Writing board settings")); + break; + } case VehicleConfigurationSource::CONTROLLER_REVO: case VehicleConfigurationSource::CONTROLLER_NANO: { diff --git a/ground/openpilotgcs/src/plugins/setupwizard/vehicleconfigurationsource.h b/ground/openpilotgcs/src/plugins/setupwizard/vehicleconfigurationsource.h index 07a769e5c..44e2a8d81 100644 --- a/ground/openpilotgcs/src/plugins/setupwizard/vehicleconfigurationsource.h +++ b/ground/openpilotgcs/src/plugins/setupwizard/vehicleconfigurationsource.h @@ -57,7 +57,7 @@ class VehicleConfigurationSource { public: VehicleConfigurationSource(); - enum CONTROLLER_TYPE { CONTROLLER_UNKNOWN, CONTROLLER_REVO, CONTROLLER_NANO, CONTROLLER_OPLINK, CONTROLLER_DISCOVERYF4 }; + enum CONTROLLER_TYPE { CONTROLLER_UNKNOWN, CONTROLLER_CC, CONTROLLER_CC3D, CONTROLLER_REVO, CONTROLLER_NANO, CONTROLLER_OPLINK, CONTROLLER_DISCOVERYF4 }; enum VEHICLE_TYPE { VEHICLE_UNKNOWN, VEHICLE_MULTI, VEHICLE_FIXEDWING, VEHICLE_HELI, VEHICLE_SURFACE }; enum VEHICLE_SUB_TYPE { MULTI_ROTOR_UNKNOWN, MULTI_ROTOR_TRI_Y, MULTI_ROTOR_QUAD_X, MULTI_ROTOR_QUAD_PLUS, MULTI_ROTOR_QUAD_H, MULTI_ROTOR_HEXA, MULTI_ROTOR_HEXA_H, MULTI_ROTOR_HEXA_X, MULTI_ROTOR_HEXA_COAX_Y, MULTI_ROTOR_OCTO, diff --git a/ground/openpilotgcs/src/plugins/uavobjectutil/devicedescriptorstruct.h b/ground/openpilotgcs/src/plugins/uavobjectutil/devicedescriptorstruct.h index 23a162fe1..e2760a219 100644 --- a/ground/openpilotgcs/src/plugins/uavobjectutil/devicedescriptorstruct.h +++ b/ground/openpilotgcs/src/plugins/uavobjectutil/devicedescriptorstruct.h @@ -14,18 +14,43 @@ public: static QString idToBoardName(int id) { switch (id) { + case 0x0101: + // MB + return QString("OpenPilot MainBoard"); + + break; + case 0x0201: + // INS + return QString("OpenPilot INS"); + + break; case 0x0301: // OPLink Mini return QString("OPLink"); + break; + case 0x0401: + // Coptercontrol + return QString("CopterControl"); + + break; + case 0x0402: + // Coptercontrol 3D + // It would be nice to say CC3D here but since currently we use string comparisons + // for firmware compatibility and the filename path that would break + return QString("CopterControl"); + + break; case 0x0901: // Revolution return QString("Revolution"); + break; case 0x0903: // Revo Mini return QString("Revolution"); + break; case 0x0904: return QString("DiscoveryF4"); @@ -36,6 +61,8 @@ public: default: return QString(""); + + break; } } deviceDescriptorStruct() {} diff --git a/ground/openpilotgcs/src/plugins/uploader/devicewidget.cpp b/ground/openpilotgcs/src/plugins/uploader/devicewidget.cpp index af120d9b3..c99bd286d 100644 --- a/ground/openpilotgcs/src/plugins/uploader/devicewidget.cpp +++ b/ground/openpilotgcs/src/plugins/uploader/devicewidget.cpp @@ -78,11 +78,6 @@ void DeviceWidget::populate() { int id = m_dfu->devices[deviceID].ID; - // Exclude CC/CC3D - if ((id == 0x0401) || (id == 0x0402)) { - return; - } - myDevice->lbldevID->setText(tr("Device ID: ") + QString::number(id, 16)); // DeviceID tells us what sort of HW we have detected: // display a nice icon: @@ -91,10 +86,22 @@ void DeviceWidget::populate() myDevice->lblHWRev->setText(tr("HW Revision: ") + QString::number(id & 0x00FF, 16)); switch (id) { + case 0x0101: + case 0x0201: + devicePic.load(""); + break; case 0x0301: devicePic.load(":/uploader/images/gcs-board-oplink.png"); break; + case 0x0401: + devicePic.load(":/uploader/images/gcs-board-cc.png"); + break; + case 0x0402: + devicePic.load(":/uploader/images/gcs-board-cc3d.png"); + break; case 0x0903: + devicePic.load(":/uploader/images/gcs-board-revo.png"); + break; case 0x0904: devicePic.load(":/uploader/images/gcs-board-revo.png"); break; @@ -357,7 +364,8 @@ void DeviceWidget::uploadFirmware() // - Check whether board type matches firmware: int board = m_dfu->devices[deviceID].ID; int firmwareBoard = ((desc.at(12) & 0xff) << 8) + (desc.at(13) & 0xff); - if ((board == 0x901 && firmwareBoard == 0x902) || // L3GD20 revo supports Revolution firmware + if ((board == 0x401 && firmwareBoard == 0x402) || + (board == 0x901 && firmwareBoard == 0x902) || // L3GD20 revo supports Revolution firmware (board == 0x902 && firmwareBoard == 0x903)) { // RevoMini1 supporetd by RevoMini2 firmware // These firmwares are designed to be backwards compatible } else if (firmwareBoard != board) { diff --git a/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0101.svg b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0101.svg new file mode 100644 index 000000000..adc9a3d05 --- /dev/null +++ b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0101.svg @@ -0,0 +1,2466 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0201.svg b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0201.svg new file mode 100644 index 000000000..3b6a15ebb --- /dev/null +++ b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0201.svg @@ -0,0 +1,2948 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0301.svg b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0301.svg new file mode 100644 index 000000000..be0166618 --- /dev/null +++ b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0301.svg @@ -0,0 +1,61 @@ + + + + + + + + image/svg+xml + + + + + + + + + diff --git a/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0401.svg b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0401.svg new file mode 100644 index 000000000..d18741f4a --- /dev/null +++ b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0401.svg @@ -0,0 +1,2646 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0402.svg b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0402.svg new file mode 100644 index 000000000..90121943d --- /dev/null +++ b/ground/openpilotgcs/src/plugins/uploader/images/deviceID-0402.svg @@ -0,0 +1,2389 @@ + + + +image/svg+xmlCC3D + \ No newline at end of file diff --git a/ground/openpilotgcs/src/plugins/uploader/images/gcs-board-cc.png b/ground/openpilotgcs/src/plugins/uploader/images/gcs-board-cc.png new file mode 100644 index 0000000000000000000000000000000000000000..ee6affc3cd5e5d5d7208418dcf1b53b41a7c6d29 GIT binary patch literal 242648 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 }oaD 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 w91n^$X4%lQ)JHf@w(QI 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 Q0|q`+%JI)60WrCM0n@N9!T%<1l>MB`8e+DHZb; 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

UtHFIM{OWBKmo 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%0D;1{M*S1v# zx(fOI2w}$!kN)E6OD2DGe?DjCz^7z&d+n#}JQN1*4{L9>$dRd}>o>WjhWvfp`|K;_ zsh#>9{H?{gPRCvZ-BOdI`(Yg_Oy6((Hs9kR_qeSTZ9B3V0anb+%mlG08@|t>E1)l} zcbC3&=|vGII<;+tB9jl}e-NO_yKL^S5-|HhzgNLM z`VB{Se$4(SkyeyH#^Tb`+3AaZ@5@tlE^NoSNtjs#O)AMCQb3-d1DpR3{nINcZysU1 zCj4et2ZrE3M0vtvBn8eB2@P1uMR*f{qvCT!f)*%8U zIa-Qu{N4({zlKtXWzG;EVG}X5mmoh0!{Gnlg$%^3)l&b$Q=}eZO2VD$wI_@V=)a&~ zfl>$XhD~2u^!50Y9bY}Ap~XOU09q)U^RR``lMK&lIE6kc(^ZWML$N>(lkg_4h?x`(IOy6p1eFPG$)b zZs#JqDpyxmeq=%sA0tXOA?9jqJc#Dv)Y_P$vT|^|L??dPGE=sgP#E$0-}hztCed33 z3Tm~z(fRu6nCr+}EuXXb@p0JSadwd=qjUf4-%-m+k5v_Sp+lbva-PaLklh+?aTEPS z&7<7D=ci~{Mpv@EO0m5D3BWq=HbYbbDvZnem4=MhH)DVs0>lmF>9a2wE2BQg`P1hh}kQ-B_Z>deH13HU?2 z-W6k4!=fq9xssyrH$siMQ;OuLGe`$lcgXcQ)_A7pbhBC|XMS zOG`_k-oiY3SL{PvmSy2GMHe3Gn-tedBOE=6%wYOg`H$wX#(s zzn_*en0T##z@rf^yXyJ96M@Z`T-Sdf=p5pg{RgjpUftknZyzAr;ZA9BHIheJq2{W* zjXWa<1J!5GJCAIBdo_73sz};AIZQ5=6@ODjjcZWMVOe_Vq4z=GOLsTJ?&%wHe-IYY zhMH$+o>rL_Ek7DYO!9=X#47Qj=#!40uOi8cnlBEfbJ1?1Z7C`)?s)SCQU)=2oUUK5 zw_H8*Ku$1(tpAR#sEM8)58LuDVR~ktw8Y5^Xm|icv|5NFV}Mv$0M-az7~^8@JIG41A_M6S@K@(g|f4!zx}lS-YXY!)B1ZR zgq4j>Pez|aW+k_2KMF*1SZ3DPiS{0=pC+L;AhPRGo%U@`9g+P+i4y` zwXe@1eXuz8XroyNB`$N0sfMs7eCouM6eC@~- z*>{GDjFdRy_qtY_f^1f=4z}f2nZAD27k?-Db@iXda|iMctA71+S6vNd(pi$&vZAD) zQ(hheP6ogL4k>Opp2SaAygTa?x4riIqJJ$#I)HSrx8sAf!*TVohl5}5GH(L_$s2*s z5!4mB1w+A5d`Opu%FKy?0|YUfAS(knHN?lz$$tOsuVE`V?aS9x?-?Cc@77w%b4%_f z>c@j$eFSztq*OwqW4G zl0po_z$bxlLc#%?6Bkz#N2^SV+OeshJf=I9^oe&1LNCO5-TnNCP)ydjrv$Y-gicQy zM7vZD9%hM#Zs@L!$#d?u&O)JnfC`kgfgK+`L5c+gG+8cT9>ZcK(f=u8QJX%QT~_)O z-^r5G6caPNCL|iSUo*e|gY7YvZq)j}|GGB6e}gKEWyLx4kv~iXlis+|UwFh(w!Sz& zPh=e*IPJ#_tsVA(0g@*?(nO*Pv1S55NWkVKJ5cc6`8~r?oRwDtJd2x1Q~xp*`U`!c6smFGOtN@ABvsZBSvH2M+w&(lLyLS6R)MsmxYB~fB}$L6Q+)1EV-cX zi3JC89FT}Su$;S@5*~_~?V>sGYbXh{-P|fF&B}+cc9TJYE~WjRxrx+V1h<{D`o1;M z1WiS8ir66-0`R)xjN&Cl!N>RuLHhFNND(}u$$C=f{L9v)3-kJfb!HW~tt4BxMp`v{ z!;0U1AdlZsV(n7yD_b+Mj>eQwEx`(jib}vR=L8`gAe6B90@U)Z>V zUI6{|58shix4wv2wU5(-9m=PVoIgMrj3u#XMZ(~F@aA5!kCM0ARx5V+=M{Q;!A^hO zx2#$8uIE_f<_|ii3%A5h#G~eE_`*SM|_P-DVK@TTAb&7R?P@s7DUM%X0i4pj(!hJJ3Oo z?dW4(t`){KW%?MzG#h1jy@D$yr*!JEyradc$8hClJO>2X1EIZ;Vb@J8jtH4 z`REh|=AQaa^P_9Tm&Na@y)4^k7W2UsvpVd#2vEY5cGhj1lY>Jh2wdE;664~}`GQYm z1{>upA60yFO}yh>5HmQxdZFGc8gL6gRNq!M$Hk*n02Xp!Ab=YNd^qD;kx^i|pR3Pu zdf}dqW}EnP7cNANE)b+U)Fg6z?~}g{uZb7t(SJ@j((b8bRp*o^t?MUMvv*C4^siQs z+Jbwo+3b=xu!KqYLGQ+QU^;bzO9jV_APR9np4%UT;0AY%qD+MS@uOw^)`4q>#11EY zuKB?h*2eX@MiO)lVK0QP2=X!tfsf3vO61@k0fm8nZFU80I|M~bhk}pjd|dJEZD$Ek z7kbE3GZxP7%{cy~*tGBe&p{XUt^E%NgR#QB&v6$fC>1_J_pVj*EGyx|dWD((!Xzj6ZYjf8T-G{`)nD`C@$1x8#s-_WR-)hC-roCH{<7CTTrjfanGx z>(3XwuyGDS6^5VrT~^}fdZ zKnRTh>Y*nhWKy^=iKHCs{yIN*(9`Y9{UyT?-Abq=KpYvCFn|T-rG^(vve-;m(TRCW_;%e`6E;YHOKCIH^k`VPvQjPO@L{c(do5w ztVZUt{Ab$>x-?|K-qazTM=$|s>BWt$KkriCHc*`o`G;!YKz^ddVok7A+GAw9!+0aG zOorGt0;$;C+}tJHf5Lh5?R`z;~G{4`pskk}mc;=ph5XW#$>h=hI)O5x`gYRQ{03EfNh;6$tqL{kFa z5D-r*QD)ZyS!hlGc2bIA`!cbW5~de?SJa`~>p$r5GJFQ@i{gnJm~USZKgn-BRB9B& znfNT-vGH2~kDXiK2?zW+qSbX1b8l`qTe{`Uvp7PNVbqqh{9LEuUG#a@_);Cm?$WMl z*kO`ERaGJ}pSxxSZwqt+;BECl_IFqVPKPd}hv-8W7Fws>xt}JqYj5~-b5?~g(eu565LdMjlZBahgBs|MKZ9kPcN8z|s$emgOti_kr&62TAyi5!uVvge|>_fAPk z@FDLN3jMJ9rRWXIZ>~RAJ_pn2TxPyK^-BEmDUY)ycnye+Wj`0;zFKla(KSli?sHOq z)zH9Pv+oDxw$*du`@OMsYY7Pn*<=Y_TRZ}Hl7t(h(e~)WLlf1HjWk2^ zhJEWrAIjo|I2<(z+#P}&d=kjCxl6_he*(H1=v#)HZ^&Zsi;$UeUNUQI+PnQ|wc+C+ zd*uH>%;?9#O!YHBPP^;l;UI#SI=roX==yuamm~Z_?D%s^*bgvP6CDwe>J3{t>yy!g z8SSL$K}n~>ZRd>15*U@0XpYhUjn5(HQz74@&ll<5O`?=d9(W?NJCc?>h{4?4q-*HI z2W_}ga7X!$+$m&vrzECa#z+{)h;3s;%Y5PhL4q>&TqXma0kHY?%u|c+n=5Z%)5Q4F zie)nhnS)HOo5-PE_oFa%U!7u)R>AX)b)(z$8Gy&Bs})MI7W`JEZn`&r11oibj-q2A zeEYy8`$tAn#4k=eU!>_ z?k@r`-$Q|Pk}byIa{K%$p|wXtM?(&Y#NRjL*LQTdJy;uW{;$KwqeVrK=~5hh97U`J z37?+jT|chg3};O*lhZaIQudiAis+=v_SV9R{4!zliNhK?e4cME|mll@Y5`*{#%$^7)js3Ea$*BU}-DeQ25(_V)k##+B%3&8jP4O4m}hK)Z`8c zt3unj#r8(28Mrnbga8o>n!)Yd7Mxu^k5BH~w~~zjU0q$nix<8Mw&B3+SEZfx$*;bZi4vbv2X*y-BB0d@X|*h&#BW};6>Kf@3rEd&y|94YAtx7v5C?RSHkaf2IaBphl&}) zdcBXdw6tQic!=aNyq5T-Uz8S9#6Vp51yT0xNu!kU7CYNG6tkDC3*@lwMteQzlKnlHW1E@5_ z+EoHALvIb)^Vn0j+lVyKObqy%>+U<(#2ewre3ARY7md|&l?Yu;Z2e2^CKkG{px=1} zGfCx$Aj~#!fK@7trD^0RO)5CLFo7wNj8?s`MA_cqdISP`&6-cFRCAa&+=jirs@t(AE}t zc=9B0rglr232>$XAWG2+!5@J`msog2_H0;Y+`I3I0%Tr&`rUh2Bm{^ zdLI7ohg1{7+7h}RKG4Z0d^yhpA75~3k>9GbmP~~m!f1s95|R*9vDCssKJk>-Svw0v z$&Vh&zIr+LHyhcoUz(A9quHi#d!=Ax*0~w?+B--W&#O1>#;J{Y zNT+v$U>N$Gxyy`p2j@Mh<1Ep*L0wCeM^5-niOL)wqP?yu&AJYe~!LU%hHeNlnGZNV@#~ZU`~fr$ugbpn*N3-EKO1UyTdw z4Pmno@t@Ny@`Qk#w!osDYYv;pL2<>m*pg^j%q#fCsQ-011ABrw8f*Ep2VWd2=Z4VQHzh_S=-I>oKCz(vHJTbfqeqnfCH#frkTQ zkEEM>-P5V4Q_`$tYOSdEm{j?^bYiI7Jiq+OzN(R+K}UVX|M;)UpT1pwH*w;Q-$d!2 zg9ia67HawY*T^{dZ9KNW0EhGpt0BS)03zG{nLkB3xiu`v6mN1Xt{^-vC^*imZx z@?YDBzfo)1(g$(~^PC=sW~re+%w{gFtHcAImP$ySFaS6ZGJXVHS3Mc_*>k~AvK~!m4Zi)9(_p&Yl(a* z=v#r3rljo0K!|r%+)`En3vY+=4n_l2q&eTM`3|;ZY+27k&o?O8r0LcV%xR zie0DK)86M1nwB#8G~V$UY+giDan0A)t!?vZ5Z9la#6LT3t(Q<#skd-NoGUR_O4xs? zSB!NJNB?8PX34KLOzT_iS955{d+%kw3C=lH#zid%ClQDPM{zlM8uFdD0TV(Ch=PnS z0Ko`@tJ<`W?7NN@ncs-cx+Lyv?9^*u|9hDu?`%fWh_P58^VWU4igWJ~JRbsEK!*S4 zJ%YW8^4uf_S)maqW=KL0mpO39u2%PZrs%|oa}plem0y!FRd_W{vhADmjQ{kBZ$?pH zi))F?YV09ps8s&KGwYq!;(usAKN+|3`Y4^}8Q=C*>%jTTSv^NYY-NwrlLtYL7K*qo zNH?!YU+l`cq>{61kB0pikqt)F4VceRfuWg%1bc#rftb8R@}VGk&`kH>^&CY;H4;x01dPrPufN_<+ZzDxVg-JjFd z%$j+py0jmWZBy!1I>~0|DlF&WvD@{U&f&bE_%r{Zxy5r$7fy!9H8@yQ&E&qLQ^8m1 zFj*^GcVEiX*1$)+gZqq*a_jFe2wYLkm}?kb8u-~5yZwnl$U8elPLvm5;FW2bv0w1n zT8l&HfGvPuGb#WELcirwS_*+Q-ui(tH5DhD%tZ~ED3Srw9Y+KxBqDNStXx^6Z~Yl_ zT$|6@P8qpI&J>y3_34U{u%KYW(z886y^6a3&d;4gaqTwf{IM|X$rW}}XdIC=Pl&Jy zR0&AR;V$td??4Mts`g~9LvvA4=hKd`)QH*%y%dbF&X$i~6Q=#P9%gZ(I}6qRB4 z^_ILZ*n}i1ffTrRPViMrOUwO(eTj8<8@T2?@5A(u8@7!|Nt0dg(1j~NfcfYRq0}PU zs>b*|zGBmJT@pohLOIoTs2)Tb19fN|#X>9Gqd~V;7 zY>)R&Q8Sesc=%if}pv1Mv>UDucI1N zK4NWA?c}ddYOVCCeX-=a!gtK9&co5$taxxEY|v3V^yR0$r`OHyeyPf#BjM|PsaDCQ ze#-U9?=$X;_Prd)%5aBFm&k0D`2ECkUXYv=F<(eDL7%`YQZ7g0=N^_yyU)NP=*ve5 zTLlkicZ!pvuD0{iw4rBgy(HV8J%f&bkWyde+5t{F$y++nHX$BuyogXO}JnpU~$ z;jRP0T)v&j+;kMsx3R^j?qI7`J1O-sTWwdO-(jclx48q{>U4PXJ37?i>+2XBJJ7s2 zEkZ0ghMv3Y*r~O{%7QI|%<7k-UtOv>ZQo|lMecBXT4C+0dXf!D{S|i~qS6qF6yS!x zLrwb|L0nY&3;@I&nFsM9^Z_~e-xf}gl5g>;^CxB@ZX2TmqaTr93LOtddFY!>JZnP3 zM|_6uJ9d$|zYnb$Z)Q+1PO{-LF;4mW?GUp*Nn5Zsb!9|hHGk1d#* zGwxt+uZ;TO3f`0E$!PY*Y2Ix-3|F#G=%;G&5c}lq#ocCqx|Ch4RT89Yb*{L%Q6|u| zC(=W6d&{x}V<5};1=-7#+6mkaQjX25(~jMBKUU7G(>!(P$1?LrECGI&mVp4G(a4|S zL?k44uRTM?8&w}4DO6E3Ovr9P29fcQS?&kNax$x<+J|{A>IToG1Wdd&TXRS;m>Yfa zuI6lW2$Sh~iTgDBX|Q5@k|)6dnbl_N=VT1=lxdLUC;{wG=nxBisqauVLM_O~?^u(_ zMS})f(T-N%{3>@nhv?JN9+!IvdUTzHDwbQ1VY)Up(~(p#X8%RrN1vmDrvuQ3D}Lesl8; zvD;o@IIwy7`99w&+K7#;(C*;1gX%m)u#4#Op{#?*lTr%?<)qa{GC3->cXkZsM&e(@ zJ@z$S{8VYfrEc6^c2~Cbh~l>Oh>+)BKJ2@?Sory4!;j5n?Yq^sy8kxW%+1eZ&#O-N z`J58Qh@Clgb@!oa0H6jB4(X&-_PN*ZTEESs@>|pu2E19Ue_z({hdiRsdOzPYhZ>*D zTqJtDi5f)G6mnC_mw@lAV6yFh`$0$B zTlF+hsI{q08^-OlE2lg0?lo_Qd3Xy6jM)usl zJqi0q^ruf0uWfhRdI(cSbA*L-v<8vN6bg0~B}}foktL#vz@d^W^sKv0zKSL?Q}Jma zLT3N|{rX40^V4QA2;F({Jyd~{aFBq|0R~LC7~tGM;2p-k!)!6dd6K4&GXHkf$gCBv znfGciaH}I#`H`EL^qZ+EF19!EKRod~HmXw0o)5dbfy07Aif;T56WJ}K;+|yFHT!Zg z+smoTw6tunhf(}qpOZ*bXTRz=pVw`(Ice_OTli$rJHs{Cw35C^m?s8vgyYl-{>VW? z3ycM!T5Xu?eg3S^dKftAb0u^Tqa%8F=z;;sagqn#FIhpdVNri`hqb}2uZ}L87Y|!i zJxm*xXQj~8T$jCSx_8fay=S-+CRBs`mXZR`WHQw0&m6gI#be$ZB$yIhcqY3<_kFD_ z1YpqI4@`yPAk~6KNWR@*Ra4Ypg8sk`X;643h}(7~qN>eR4S;3ztEM^v@XuvuPL@ z;h{#2fF2G#EX&6DT!vzRtg$((F@5F9Z-KWG-+dW;mhzw3j-W8?f=F?eyv`G+7UgHU z#oL>&`mZla;!=-*#`R|ZoZqcO5*)D!=d^Wo`^U%2X5PM)_I5lvwBhH)!qOF6sqXiV zEQ=#fO)VpAR*#Z@RzWIDFhNf%vy-+hc&rKtG4ft7SBtl>+E{cJ`v`7xZhOS{Sj)w z1St_cJ$=#T5Xf!aSEHVgisPme899(jl@Aqf1o7S}0bTd{&70!=K{Yvd z)4Of|=iFpu$TJ|W9lDzr5DOhWny~MbEw{r*jT!P{m-oeDdwu5|Is0N#-Ca0W1hT~> ziwyU_MDi^m$LO1@E>iY5aR6nEaBCvQ2+6op1pWg`rO3mFKk+mE4r5LJtW_g~mtmm5 z^0@05b|f%^Clq8dTugoNKzRK&bF7#l#YS$2eKo_|O#9Oe2``QKbIWuoNjg$A?stg2 zdo>fk?$X;$o5Z}vUD~!>TV8T2-21={4moIG?pFX|^_YCMXWVZ^TOuQF#L{?6gTb6( zhlPFDMOVsPGd+t7tF$fFeREn5Y7<U3zfk2)e$uQ!T%rBdnHOLhzlS6LXC6 zjG{%yX%iDU?08NvH2gN+m`cP~5-kS!3#^Y_@Pg$UTnKl%j#Z5*Xg*tniZ~BHx&>p$ zvu8Jpp6ihW^F{#2hP#WuX0*w_{=UOC3k$gq)iu;JDy%n`O~NXKt7~y4i4=dlVVF~~ zc$`dLk2^G6Nx>x}KKdM=Zn#cf^7(BTYtU5V;21oIdgh8**r!C2u*ctajZCe6)O=&X zu-)C*Lwe})v*NgSx(^|&fEtVBjKU}q`3R=nZMu{3Ukt^oT9aXaCL$<^5K*`lF3#M`xpQ0ozdbf-jBjmg zObIyk&4W`A(O6WCK%#;6fH;P(;|+!PtIeAHh%N0nWhy)g`Za85=kYqkcW@C`7*s-$ z`M3tv569jzV~d78ZB8}wvQGRe&$7+gcdzPi*CCT*Qtq91uO+g${yyloeVL)RPvgga zJ&K!mzhvg4;qRYZYTzdiOgtnH6&2csWXN=!GQV}_llo76)vcF>^?%917)uH zV&LIU@0hA)i`c(Ss=KZ7smvy;|dV=$R4!jw#74 z92hKR1003sM9tFe9B|Uihk33A>)`PXQ@(9SW?s<0Ip*4K^E91|>xA)J>y9#4CLb_dy-o=Xqcje*XfjjZdYt(Wn;+26C zO_FL+*HP`hn$~vxiw>Hcw{9aJ%-8omC_Ukebu9pyz`yldHc}So|7X-)&y+r{+-;h5 zKdex(<^rqz0JZW_U%bUlKWoZ~FlhXdoQ)TZb>(lz7?tC!#nmBq0jCUc*#BRdA-grF zd*<&6lJcRh-;2$<;3-)pojKBVifcE8!X3XJf(>T3=n~oRN)4SSxw=Ld4GRDun`IAq%408o&+ekim3aLhETN9*lO9a zon7NPV}GrJ*6S_j0hQE`j`8h-%;7bGQI_wK^JG*yjMw&Z(>hP3;EF1u|B0Oh!0Vv6 zp7UhE%-@}QJmtXyo&(e#2n|9oqBqj#;E{tXKwM1hIrF&5-M!iLrrq49Siw* zzL;BYCYYBpvNM$1B6hD1)8f#Hp6ps3U4*TZlaVab85LzjJU;wp)-pvYB<-C|Z3yq* zgQk7|QIM*|LmD)L7$|HGCIyIweLp>?zDDR#*z_?ABGvmO57c6Y)1jM&&P<42hW9+G~q!g+@gdpU?WU8rRuM^p#I! z{A>^~eruW2D{A^Ts%+38^NY=f#0U^2ENRk)OURB{nm+N%iVD$Lz1e}h5lyr5wMd?X z!VrlQIp7hq$g6d+=i)YL=epsto3|I644UtQa&=N~)kYx}!SG-)Gtz*<~L zGos+bP0C>EcSohys(Q=c%_`7oWLr7KMKEb<)JB+`K`}D_yD>EK=+bt8qv+DMLoCDO zaZ+okSCt*n&qNB-$LF{4(~9pb5D_c3wnR8GAP;~&}`V9x0VAo&SZr~639Tt?syw1 zZt@q&{d1eAB1qU-3Mud+VGMveW7`zn-wzEw2}DFZL z7SA1YB9?^u=4LWgH^+NzrCi=oztX5Zx<^m5>D7p8nC+EI48)>Ao_neH?_(Dmk?oEo z-C;a!5W*4<4$SW;Fdal*0k&hl2BCYxf8&_>M&G@#w#f^1o(?H4 z&DfRc@^E91YIq5x3StsP28ZG}SfWWky4NDm3tcE7?p^mI?2S+lgY^QT2Fk3ELt|U8 z>5S&6WcFhwgT;NC0^1@jZz^%B=RUa9obi~kNF<@-5fB+;iPaeh z>8})|4_5-qiEvvu1E7&0h94AK9v&Xl{q;XCQ?JcyT+V*gd#4UyY|v4N`5mh}O9GfU z6vuPt>F0$$aa(<;<$1)7{>Uy!%i5Nk3)}yHnQGBwvprbz`Oweb*<#c`cI)Jn_{h z-L_RwQC*9ut5w=7M6~6nk2A!yU59c&rFgI|8g-~`(hU?l{DegmgxbG9mnN~7&PPj`Pi3{ca3r?Hs8Goga6_^LX z9Fenrh=#mCPMLFy=Mq=%#qj54a17<;sc47T!-fbsNs5*`iWlxPB&TRsEG1J3Jl)YT zLW?K+{`t9;_>$^R^K$``9hN=&SoUoVe`!<9Ox%=Z3ra!n3tLZLZ?8P;l(1i*_mWv` zcuC}#R^eO`JK8F*&Ku*wg@X8N)l;|05SBa>L>sWnmf6;0=bB`=QXpI=M06~+nWNdk zo7i}LZTUg}qBsfPPQRS~{gxF^S$aI3Oq}2%&h? zOIKB+Y|-gwFD$1WSs4PfWHJUPBV7c@0)tzxYMb%9oBWL$U$L=zcp={*waI^D=@z%0 z+rlbPeSEl>P!PBWs1=gtfz^6AmvJ<((;e_i*Y1_ZzD?6^>&`DvK^{5Qu-xBysvtJ| zty}i;?!k4FWSdf@;?gdGX!#0%6Th8bot&yh?xb|j$RR-VO7ntnuiZa#|`Tk=f?@gcW=d z_*-Jn8oU1wTBJe|S{LLT<;=F0 z+~TDEu)JVH2Eb7WHt@&(Oq>4+2AbZqT6%d2XdU=r?Abz5?gfkuzTiIV4B#QWODn{J zLELGcgv|Q-^Mfi26KLck@tC1^1FBF(E|--2DKvcBhM?Ns(+s7mlBtpBo*)q((K}%J z+u%K4`#nB5x|m-cGfJx(XT)@^d9@RRf1_S7#bugU#(<$Kd& z-z4n7p41%5FQ=KbumxD z$?ciQXBNhw6Cha0QKe*q|)R7 zhNCvl76$*P1+abJofG>qpGzHWFyTl)#_})l0{RU`f`V<>0%i;{k%dfd_vz}b^V*c> zqGFWAc#MiyKeRg-Pw*TT3VRSmq9i8yR^Z^-PV`fgKw$l#dm>g=`7Jn^6Jwjwq0EgS z6qBMM>b-l3NF>m!L|_)sCUExy0}Si|zc{maD^XT(>#>xsdEyN&C|nHhrt(Eu9p3~D zsX3j_@#Ak|18`0R{SOQ%;Vk37pp211G^KO$fnK-xR)8##OJ4Fil!Kgb{O9+l+^gT^ zo@sMWE>u!IhlzpJK_+U5dIv*+9M|G0bBYThQnmB@EtS2q52lW>#L>s|u9zK-FB-XP z8IpVA`PqLQAMk7|TU(V?dNI?~YJaotBU*dTJ3mTt2&P*1?_m#(QQTfZ$H8x#?)~;^ znO?0^<172IA4Bt_TVmBFyA?2&SIyFgw|ud$2y4=nWn9U%PZfi-VlkdZU|i>60^H62PpC+ z5N0`?6Fdc2Mpn|v#rXbNw4|F$X&Kw zwsX-H=EVu#Vo^7n7F6yhSdKnnap*GGv_+7S_fqS=!s6n?G~@(ZIJ$u68H@CgFHT4z ziP3-2n5|C@qv;H^!%io)Etxsc^u@ulI zFe>a-LveuOq7S75PZ1u4~{C;^sro+r>hY#F&J3Op*@!~1ls&H@w3Yj|; zZO`u(zdO0{#^&Ke5=ECEuB_XfPC3Yj{CUb!bhebWZ;lF1Y;11lxVNSnZgJ*|2!3^) z{FLNm3r9zd)k}TGPSvOR+p49ct1UEdEL5ImV3yrF75u8FpusZb`r%t4kMAguKGcn* zjIQ}PrZJfctNJdfhr>s@d|+E6gn;u63aAsC*9 z;l}HD143^63cW#qY!H$4zkjbGoj!vv$Is1BYc=mddI0nhJ9>;HtY3A61Nu$gA+RRPiSI(8pa{jWfJ;a=}GbdZin%Q@i z?tJ);wC=~m?rk4qGDRrK-K5fc2!ZK7SSWrx3{LvepG}b8v+;D{EwTM`&W}t>ukYKt zzs$DSg-K<10Dn3Unsm2G9%B3)Z8IGaD>OM{FXS*Pi2g)>1J+`h*l~_I)8=vehPDQSGJ%2yE1|rftBs zif+WYr+gkdRRWj>Ku9JJ89HR^>bddA(z2|8#8OE@@!OX#dbd87o_{hxehz`!2z5|C z;w%C-3m1fRr_M~|-MwlIH)yOfc24_F_j~_g?sAKIQ1+-Kz-MG^45D|D=1uX`>6uiRZ?Akj z6~O#>I$`JUHAAn=8gK50%M?H4Nvsn(jON^HsYQ7Bqi&2P-u;r0`R@!Q;S4aA5B+A; zXYi1zd2UvC?=y2;<*-1CH%7@5?o+(b1Y3+g)^YaQ9d1uLl96}z!1GI$LPG(`BouvC z4xfi6UsJuV=rPc}-MF()e8mIuy<44~(kIzOfJYFbVJxK5iDs)YI6pf(OKdtI)~#bF z!6XsQOl)352qDn8W!Q?^h)7xR&t^Bat|Cbff>A^|8WduG@y+Ao-nVfx1(~{vsD5bV zG`>=+E7-ai<&pnKis609S@FGmD()t)YxeqfT5#9+=~w*-X-L4n>e5q zd&ZhgMY0cMb-HTQ*SbpPGcIykEI%UsJ@_oP=|je$n{*@qxL_XWSwOLpO|X&rt$xNh zD<qy#;qYgX|)dw0cP#+6kaK0ZDWQx3Bt=F4#H*p=i2M(oZ2yGZrbUmp5 zdGU?dh~|58WmZzkl5<&`vv>ENsHUE&by{iT{_7(Wo!BH)DJa52ax6i|E;dIHYysv~ z02A0eVAs}j5KN~8ty3n+uHcE{M2Tt*rj0?lw&jU+r_iRTn)o=9T)hv$x2Em(`JQcl z;PAYF_RHIe6$i;d%L->$0lI;KPRK5FYF2ywZ))I!=w;RWWT+66ri_5Se07GYf#oU$ zcc}!m3q%IpKMh%O>UoX>J=~WPas&;S8cbNP7K#!hNVPG*VeA8w5iZ48=9TFm@P>x7KhRsJ~iA}LWywdI$%?k z_4?-DGI+Y%p%wwq)A0At?}pWP=ZSaIF2g?w^R#ZjGX2h7suVjXOUx%OR4;}Gj2W|N z%F`HyytKbJquz8?R=reFuV7C2^e5f>>8ED4BPxcpK=*19=zCbTqVqv6e7u??v;vshd zUjRxOv4IE^2$(D6%B1ak`|-(+n}X{+Q#VzGBMjrWezOx@Fg$%E;B+H~=D8C!^!4@S zPaGhe5T{OQLvV#gX=B6JSyBMtA%-Io0!Hv{1iS|oXcycps#vC*si(F_Oh!yByu3uK z`$P8e%dZ=^*G~7?>o8@FNiB%i9?)ZGdh^h^yS~7GHoKP>1pt5kl6Xooc!3nHqLgt~ zR@Q%d=z%h%#!8tT>^BW- zgr;8dO$M5YKQ(Qs>hzyzqY{!^7tT3+&Nad#`EnP96hnH2x=Ox8~-CHas0zn-|5fs+G0WV4lFc3 z0&*^peP%;mlVvoZKZ1GjYCf(AL8`T&WaG6YkVE_dh?w=hukstHI!*S$GaW!Dkoe?&UEM9vYr}Mtrv%7a}(yqAwY-vxrO6zFpBX729 zqdjfcZqOy;^Qc(UTfV!n?1=oO+{n6@1z<5XH!I;?2ik-g5;tAIEaC2rBRvawJpf=> z@YGLvzz%?Lpht(YrT@8m7@tu&0hNMC32GOR3=CAbMu-F}OxiGSLz4>4i+IedHlAHg z-CkU~Nk3;qE0S!j8zh9fi1qvadj(7{Tta(63RqiPvvA8x_Hc$bm4j$l!;i<%H7pbm zOcs1sv_zPf@UCMXMo1{a%a;g;e2NeZPDq(DZT%c=ZD+@QRh5!%B5rKplSuF7YHfM{ zY_kQQTgA<1j`Hr53f;lUa1TcWZ{jZ>y0H36R7@xifRE;|+$nSHT)NC5Rd`e}8Y@uj z2Sp-2DgA!((Wjz!)i~Rve)-OLK#}FUzmIwoBEocyYPz;5NJwi+!xj0AWwE|Rl)`X- zmX3Ewm+HT%v6b)#??;x&z|S(iXd+<&J08}{9uV`+ETSoT9NT^i0mmO z&%tc0xtY6!Hc_ZF=HV;}%*=?Gn4goAP>$b&=H-NlNM>&&biZ@x zdFOwp)|?kR!kVIb0;FHUF>qk*{Sq=|Dpr^_e~4_1ZTg01Jrt`QY0;~4w@0R&!JkU% z(yNrAf?B*k9+A?@Q%H`yXg|)j!;)jCg5Rp{-|F5unQp2#lePgxZq?-D@0p%0*$B~s zIE@by7yopB)f?pVoki0^gb&oEM@S&jj)fvbP)LX%U;~wgu{0n#BBuo$eyDOtvOYJ} z)ouIFc?-mMui>ck+FFH>31D@IU96opn^mvhH>u!x#$zfjAG+D3G3%g_MW2Qk4bSQR zi}*f}v9RnqeQdL}_3p2ex*8hynk-H4QpVHYLjA{AVg3G(%6f`FA*3_KJq#Du_(wLoQrrASYwSySdDI-|9{7gerZ7A? z0Df+3=*Ud^6M0ZN(toV@N{Bd*5eXZQ%)J#VX>T=eFxNnLGt4 zQfc^NnZDo8rzoTw6Sw0$sV4iI!LG9%e{&T%we}u}0JT#94Ey_h))XP9YFC(vR838n|E^wJ z{hw;X5^n} z^Ca4g_hr~@18o@^El^d6)g4fCVr@iBD+uO->pw+_2(e@;h&8K~{h}qI4taO(5x*zhM1BWH(_g^{W@{H7z|o z9B9J<6(X7()$9!@MxsejVeGou`1Wm}&jH>50jkd|Q&%r)G_%+W@AYAd7_k~=;&JN_ zzT3;*A_U+PbR&35Vv>1lQT$R|+TI|5?6P!B6FVS6Vyy&n4@`{FPUhY&R5uCwWz@3D z(;@`j5zMmxb1<|^vFFSC_yq|Ll16fwXG984Nc84k zKiEF##BfiRRT9`-ln4!Qxn!ahuc2aB)RdvDznt}XMQF$O^p8Wvrm z+J{~gP13mo>n9nVvYi?`Dt^{oEQ?V=&X;O?_sOTWMSQuR&S?l={zZ9^<~_rw#JwSw zH)UC+A-DWr>Lsx(2G{}A0~7~r{++>B_~!Lv9}y07ZPjPegWlte??PVN(}2w@zb5Qq zHZe5WbH)Ep`pn$G<|-4BZooA<`Gr&(0bpD6I^V%NP7G7H-6oTEovy;o0Lf2sXVvv{ z?#etmx0SJ1u-Fj81@^?BySmGE(wF@^0h;crWOB>ubxWFXSr z@FPOpyc4bB~0}G zWx4(yyu(Bh(V&yGfkwM-aMr?1k}+iT=!M>u0>N|RZv4+XQ4FzM1or~|)bRYZv9lvn zjK+=*%0sl!@Z`W>%%Md8k7|!?KPqqX*=zA2vSLRG9WZ)#xPcHv$giFQRxpuek5MH4 zFGq(^9Rod^fp^ZN1YqRAh?^GUw1l{-*WTb-|B;|T)cm6E=SOxsQf#yGNbox z^};Ky7vCl|s`Pf>N@}vapPJf$Zx4T4Mn>HuGgRLlv@6KR+pJ0r&`;KyM?wHp?ETvs z{0_n<83G{lMCQ6|i7Dsw)27)bXn-IoL9Pn{g%VC`py7h3`NM70KB?PcBZsDv((t6j z<@XA;OU+V^Fi*+R4%Oz4%NkVg&AD1yuGY+;y*LnYaUXeO&{zR*-3xdrB(Fu*Dg9~s zN9n4#ZBhJ%55X*NFe=Drks5^LsAPS%>v)hHe@Rg$o%dd`esU<;8P%*tREybFh~k1& zblIaChn98*%d+LhYD8}h3098;B{)(c1Cr6Sm;HC!Z0g2-!#h!tJsMs9yNa6iO`KIz^vEU229stVI+Q8- z@CU6`t_igCNwtGd`RMP&iJq)}XPJ4yr{MKP4r`?WYBnRkDQAv5*P{YKvV(a5ktPc6 z0-T1F-9Mr-lG4VMDGBP)?@X7V*)9>9qqmASGKEOe>cPks1j3xi`PR+9W}9L7TXd0% za5jX}x6y?^^fL|(!8*b50Z)donZxve2ZQMW{?vHs;7s9)V~jX3{Mt~ZnhWuf>U!x* z2kZWLeBY?*D?bVwB7mgh2T|?`ZVpI&{~RO;HV5-A;9crq>%f#4D@(u)hzP-?4||0~?=iqUo-#7>+@za2y^r;!p9Bo*wxPxAu~ zr3h=1g;1WYE}#N1RbV7=f!clhRAlXa$`dwm9=KnCh&K{&9PTzaBoO)Zz&P>Zf|SIs z^z@?J6^?fSnX3}}x#hhwm?SwAf}#xK+Iyb_?C+iFtzPnXt+mZ7(dRWnnUtgmG4_qT zsq|+~i{OA&gnkGr*RgVdlmOE;Fc! zZLru!(Ls@9Q>4J*+Su5z`ZTh7F)e&c(nj*DdouKY41e*sRkw_Q>j4HQ;bccFz`fyH z_b*U%G|>jI;gh1G18~;-`7`@LpkSPm^TwJtdWd?AH}LoZ-w&PRInkudva+}a#%n4U za-kQ;++)~LN#zl{k+0Ckz$3GRQ~^_L0_r9Nt3bCfxFRTmP>0Zd4GB?%KP@zCaOK1; zh*E?V2aX(EG*jE|pi@C}d_ZCu7TGwO9MoYsoC;-S?l=JujP!t+f^ZYXXbcNj!D4rc ztr~Juh-Ey8|B%L7miFju-B4=HU940q@^ArK}!H9>$)0Z zDGxEUaK8Auad?Nt+4LZl<2@KEGRn$;!RGNl?akJ|Y5vZ#gf$e&-G`wgy}S3oq2vS6 zrh5fw!y0IrjvN(cVx`_^E_n_*UH`iOX5?FoDCldzzkG&<0sW|@5aI8sqZ9YV!9(gIb9|E4^`Y7Qe0<>w z(X9}F1!x)=T+VLd0(6$>a`-rtebfiK6aiTu<_rhbdWY$okzxG!*N8!66s5o~6EU<2 zH5*Py?v%&zyZwegrEka|AF)@Ylp`8`cyWVJOVHMcyj;TQ=c@njB!|B83!Q5rX$n`b z7X3Q(8EbhcY++WMPd9oR+<0)9aK3Q-u^7U%3z{;zVuEM==g+gpQ>!-b6)u-qmGI_S zpSc<7%6=8T#noqbF4EJ{fj%o8Z-qr4uu42k9fc^v))t~oX@Fp>X?|mM<}-kR*4Dj1 zW6)B-1|NlJgutWWf&`B3+qWd>Ah3i3g=)ENbL{{xb>4%9qtJoRc^y7-Bomr90Ml?O zXn|=hSnl2*-W%Tb7MZ%?@o-d?%KG)f-AdlEqfc-L+3Z-Gz-FI?l3Y)8=*&#g!32_MU=n!aggc3BO0km^$x~N_v*qiUR zc{#CgCAfZ>ns$|gWvwA?b{qLmg2+jvO-Y#QSXo+Jq@pu!IEeP8sAdgZ$oia6+A|sM zAbMt-EUENCSq(Ry?(L0L2~vW&=kp49yQ<6v_7Plf>xw?lJ2H=%no5#irT+h7d=HNP z9I0(fq}V&$xj~(Aa63#lw%Xda9REv(UO^wd1gKw{Il^z=u)$YE==5o6?vx$06gljd z*e*F#+~;flKQ6#zf8)tlbNe3p&MWrz^(H=e$Qq|YvH#BLmCe$n(OPGdrIeYm#aAbv z7mF+g=__7mSI{tiW*}sh7%zNx@}tq@+rlqD*afsi;z0fF=xELOmPc2U@Ss_Fw7&R6 zkEMZucnGCYRGE4SyK=v5D64|g*5VndOXGe6)2r#u2cFY^)#o}DQ!-m1^LX`JA0%wk z)njX~Y8GOSu5{zJ-#+_w#y>&wZ~A8KnVIA_Be`iWUIek77yCKcU+Qy3H!Q?TAxlev z!b@C&HHypQMcl7n+#vaL$5H4T-t`(*9SzNtIuDrT>dQGs|A1X7sz%Ff#~Fk6SRH4{ zy#G{-EK|5>Wt-+@yuPh2jtVqxA7P2y8))GoA{s*-NK8XBf1l!!6+BfOs=1VYON*#HP2?Gx^{!iMBU3E|@{ z*0;4D{?Kg8;Jqqdh~FIF3Fi5Vh|0PEX^%o}ekD71;kjac(Q;e_fQ!`7ccJ@3-!(%1 z$70Fq#4uxx39GBX7+0BDH2dj96(wlYqOE#j6xdD4cHG+RnOWL2yCL=c!1f!j&2GOL zOu*D48T4k52`^d=tR(_y!{s;m86#@ATITUV3*~9&+Fj;5TFt8%t=+oKjN8;UFM*^- zY22>Nhl7&LtsL2@O?%a`(Tn)*|1UN7AG;(%6=P7Kch?l>}} zh9jyJ>I%Xd3=d?ks?F~n!i*2%4-5-nPYTB&F1tY-AOcG?Eo#7lLE!E#N&hm#_vl&S z+=ZiG&}F_wNjrbTn|1YWv!#$d345FpmLAxb?mBYh2%r#n;{w?_6to>ip%}TKk%oW< zciFpl`7d;s51L=Ovj4?b{+rDUK4@MM`4x^ACpg?DA4JEB>|&c(|Wf8 zU1jK3xZ^@$0EBz#%Efhpf$8Ml{9$YTA@NwBrSdafRWrJU-%||Ae1Q8BC%nC{?}cH8 z4u$kPXn+mkF|`k3Z4I%D7Nr(RkW?csMq+I4o5H>mDh^oy&~{~`DUz%Hd9w5OCi@dE z@DyaoSLpLLx`-+dA|U`E2msdnuKZ56ir4mfdMDA|!~R1f*!{)LYyT}K2zOgZ!=X9C z97C>qV8jqD8;ZxXROMfk-A{4<2mAN8`1L8)*Ly^|@_R3sDq?P@###14bKJe|znO}U zyVgx?s_%6jT&RR@SPGrS!14|6L;z$k10A-)*5UG{dS#-I_pnA^^RFkJV^rLAJ)_;0 zZq0wQ^o4F@0PTOr9KX*Iw9tHFDbwG7J;`4-x#>Gh)(uBE(47Z;grJy%(&6yo!>=b6 z9&0LQYugRY9gd07S{uE(!CA8&uqJv`HJO<%OvuYKQd@{1ibB;w_#_b0FI+?*kAP3# z;Gp{(d+UMaA)0`Yd6%7uD!S&)WcK#!njhf*hErT`D;%XPF3QO?!P3$*;b510lrDTO zCN;T!&}n#5;Ni%zn(zqSR)Oxn8ow&)pZyKJ9!)<{Y;qAs{OFOfWCYi5cD_XbQ-Dvk zf6Id(Q$wbtK~rn|dQyC%NYD*OH11vb^x!=P#>T@4aTyHQXxnUpC(`n#gja!v1qe*p zCV28>13FkxlF`|qlOh<_IB@_dFmnM5!`}e-U+&0~kOMga3kq0L@ly9ab^6w}ooudg z|BaUqzH*1~+Gu5ZxVZ&;zJLe=H5E49j1fCwWE))2@PnK><=#Ej!T6QWsT+i_69pII z7(xjWR?pgB0HR-{6%=Q*xH@ut17Ld$Z*3SyLkolS-{7T6_X$yCIa^~dfu$}wy}*M7 zkM1u#g_<3mea@rKs*|Zn`+^Xf|K0TL>=GSqOXmX7fNRQHZaiqVCKU#VK*zz zY?0q#CxZVkPed!ZwY4>vdCK_H8@t|l1$GtAm_amuHo%@i1Op%CzZ?TbT#QI+g9Ra6 zPg_O|FPP=;C~4Y;H7|ZhBFRIYE7m5FhvD2Y`^Bac99f#jfU6Q~1t@={;!8tt^lF~= z4nIliv@5%>^5muP8@#F5Jwgtc{abr-!*R^iarnb?tuN*hv1p2{D*Dz{m=Ai1rl_t? z&r!MvB_@*v$!ta{WqyNS{(HN!=cJL875Q}&EtW!ZG1LwtE?cy@buxKdwqps>b#~F4 z=1j23wvsS2{kK2n{FB}|e*}CHUm(B^gu} zXa|sK{IrYPBRAXB>2iez*9tb@@$vE4_@x=TJRYz4;_f(-EP0^iojlhFca~J9X2?)r zXyyMYREV5GD?6W5K_} z`+Bg<1x5Bs#Tm88S2R4IJfc#?WjGnzo=>7r0+k(41w${i4!S=`Rj`i5@-Nbg7F9TO zyN@^{+<>4sfg$?=oNAIL{Iqy2fW2kGHK5W6#HnvS6MP_%tK!6g4378>fHK&wjSvBb z=s4gR%GOe{%PaN41B#mk6i_AKKOj`TS0(o_r3R?C%KT5u%&#ASuc2|iwj{@dz(?Cj(a zx^%2AQ%E#C`~ride==}L@`=osMM`T55d47$O(07V4Fvp{%bgUiH13K11KH+8xNwn> z&){LID_ZY3Q&d00-|U}gI8~jC-Ohxor*g|+bi92IdVd(4&ZF`W5~KF4x>eoDwV=LG z1FbzK`X}qE_4UabWTM%R#VLhDRW1p)w|AnBPGJh1F)W z#k1tX7xX1J(y7St>PSD<=vYvIUET)y1(E){vNk5E27MGDRTy$25huPh=kkxaQ^ekl zE_}YH%|HItt6Mlp0CM#TjW1eRk*2pdLZTp;co+Q&-j-8{A4hv{kWk*a^Q9AmCxv}m z^8;#=c4H<9-}_iT3|`4x{*K|Uz_mh%E*wV?l@+5U!TfL&gIzw%v60h((+Mg&{wRnl zr@UO3T?Cf_S`^%2FwjX8^1zva=O=>ikwhMX<_MZx>|WB^ZB3^h^xNQK!2QZU9)@;0*$qv0WS;HBwI*cqR?&P9aa zRB3ZBAbVjmTPf3}ao(^zU#7m}Z0jb)b@}wmfPy8Fn4)#2d%>iCkH_vte*ecX&z5}F z>{x1gd$zs`8R>RBQTSnCyTD2hPt4)!rEfoy2G%$U7X@qsM(To; zRn!j59SxXweCYp|ea9_-kq_zm>aH6B>Ltb5t~cM$1YOS`D0C@}x(1eo%zB})* zO_1p}e}c3Cd`bd3##E1orMmUG!)lPs2l;8kq{|y*q)#Do!Y4;WM1itWXR~e^bf@bq8t%0UN z8{Pyb5HB>tr`>;1q8(DuEVssvbr%jO=p*pRBe?gnOKd!=M?Tc!^b=F zV#=~6>+>-oS_2YpPY*Y9qcR6xe*RF(r&T0fKjwn(nxkt@8(Jm8zd^V~A;!tYfQZo# zBO}manM;?_gXy7%nEd)80eH%6I@9_tcx1q#FPjC7^DRGTW^8b7(Pcoo7~VFu{BaE_8$dw-6Bjr>eNs157%1^;>U3ly=7p}1F#n-sL-{K%iVA3W(p^hQLzx3M5q#<8Wz+En1(nL zmT7Hgml%Lh#~f92LFquI*Ttt{%AtpHh8x?VwpVxIN6dwjQ z?gR>;2JK5hzKM4kz86mM$9bI8JJs^FBJMulNVT?cSL`rlXkVP>Drf*oB#AbW3h8Ma zRdvTV&veKIY|D<~*xsp2wK^pfup~`!OGBpm?+5!bLvR!^OMz9UuAy-QL0Z_+!y*Cm z4;9}^>$c1eGR+c`xP*jDLWxLp7%uBJJy+DNWn>hF31nu;b#6$`)MuOnmmH)eKdX-= zZx4%N8CjlcJuBIE`m#Ik8e_!RQcTlu^LdGO!Zbt~Bnztab}yv@-2|<=py#nKhIT}5 z>9BKG7N%QYwG{S`W+AoRUe<{dNh;5NeiLS^Z`adrHxuZcvTXb_R)}|55NBz{|uXfL2D!dzJ;hgh-w5% z38DeSk;8t5SQkV@#57sLbMObg{tHdZ0&nmO435zwHco}pYB=<7d% zjTWT2>=d;#ON2X+@A6ZH;YaPZ_&VtV-QNiQcK-R1MWbUDLc6+L-Fz|6jkAXIM@R0z zC;41=Y0pwY1daZ_t~T;efFxKSVQ~tKm^l`e0?r+Xsl^n@9zs@{JnZCj-R~8RpcQAM z!hTC_F1=5hg^zoAe@Coe=Cyw70gypc3^9ckf`w_8$#Vaw`!yGINw3xMnG=(xiGTl@4=(w9$WqLS`v{=ew z#^><^Dx9Aawid7}dN0UGDDegZrvs{3fo9`t%JdR{`M(}G0y~Z`cSMt>esjm=I-KBX zw6>n@Uq=hy-mZbc87(|#%Ds!l89243`MUIxtC%M#Wjb$f z^9cwL0wWZJ&53|@0a&{?UdgO10S_Ka5iE8v2NQ-&Eao(&Bym1wO1o1tEq1-FzVmW` z>X2L91((|6p-&`Fss}hbM`5qcnU$53Q#ka9znQ#^Ui-Y+IZfIo^TtFq-7#J&H*H&m zjL$Dc9=x-THP>;zh=U1B7xb*)BK-@#*s%k2C)^B1@%p!$9>Dw2`OLmb2YCgi+ zwl6o#?4OxvEIOJs{{U0I2X)0fl)v^gJnazW;9JGyYgcBdU2TSXi8#x~Cri7IOk)t-W!(nK4lMAb2|kTtwe|2fF$ zs|Sl>bgWY5G|8>n)G2K<&tktxibxY*UP#ZNnSmq$PkMOQN^pq9$tb`6QQh)XaH6UuokvCV7oznQ2O#EZ(wHKHLYbv%Fm57rRENQ7^u&j zKPIE8a(L0Fx-L#Ny;X5s*`7Lb0HARD`-6V5x(IRwf z>Rp|fvk_^6D4(O~QPGD4pGr0tRDjI^N|A~@HMMF?6O#LOhJ}S;lmwIMl<%@2E(id2 z#QhG5_HSd(lN3*s!$-h*{&UUWpRu%uut5Y#9;|?8y$YDQ#!y~R}NLL3{7u{+4-tcej zsc+Z;6zqAY-Pv3fONT3*jpwk4ZfXRT1O3Ju&sV=4{TK8CXc1ZSp#IzkgS*|SoMxi2 z^Y`8#Ww9qMD5*2La;?7c{Ge6b^S5>NBDY#}E|{3?WAZ4rUC{3p+}GogM^wn3k!2lx^Sh3s-qV+;%X?hg8Se zJ*-J$PmU7I>n`lRQUP^n+iZ}4?+rkXp^8uhtw(ITs3_-}!S{qg0Fo4=Yj7ZHrH2<(WO9oa6aHj2?o@0hP_ zy^Jk(K5t9Tk;z~D{gFaJtvgN%&2CW_e$Bm zCoQ&Kb2qp9DF%qUP~hHf7)!4A+c!=~lMm_}Xj9T;Uuw9Ay9CG=3u7DiS5W@I#U2Et zz?P`;sjpA@6a#few*IwD=9Zq=RLr&rr#CZW`k#Cb&_Rp}XK7~L#WT`$9-&^b^Ueb9 zh4{3=;JB_JfH-dA^bM?jTY_CMu`)|*G{-OoYQ)!K!*;oego?L~Mw7ZYFtJcp~>d0M~E?+n*<~wywu--lDeC%90y^?&t1~TZ4n0 z7mOZMu`AZi9Dqk)Eyxo*Ydxv!TT@s2KV!Rk!%a20Vbrl;rFN{m#)C1_D9G`c+`(?o zYo#&N(*ot!3#u&Q;u2w%rOX}^BCdQ#MkaQPW02diae?hOq;4qd44&?y;cBfJEyFEu z9B+kyUsH`DM30{k6qLdP0SAo<6JuIq@=&M__kLDSXON)KziIR_Gwg?spGc>@Qel)_ zp?)c`uiGMZhKfn9#bo(KxNq~Gpl5Dk;ktQn*m~4G0s8ijm9f;Z_a_I2T~k*X)Xpvt z`YB+nEGV z$881@eJ@tc3NS_#ygQsDyQYCV4y6w_H6|!!W#yY0db+w6!gQ#hY4^WFr4A58Hm`FC zX>>TeU|j<{K#{~d0{RNFQVDGFXL~wU45+pk=KnKvs$Htt^dmfuE?fxD4hJ=duJ+Ve85^6dl&@7(~LcbOfscph>{MMyN&< znhx(?5|qF7Flo=RTt13$D>{9@ffI?Hi|o5;OQ>Tye+!@P5PtA-?M>M!k89;$en5bK z%6mQ|xJP}u7Q6|ssj_YWHs7(Z$LKc5eG*Lp8c5)CDXMyZj_@sR(6|Qhh(C#qW>4_i zB6FO$Wq`s1HAG^Dx}IJGR2Jxh(nee5)qC}X!reVR@f^Dhb}KJbXkY8Ax2|cTHF9T- zTJG7rr!*AJzH)){a}hVczEY|vn*;qb8|YmH&ZoDxr%X@qm*4(ZK#$-A@5I!DK2)cP zvrr$jc%@7r!JsVOneiRl9EIG|9td#}*;M9`xKjCjSBF=f7H3x)X@*MoXim!}t*%aa z#X3H_-lVM?e`wcom8%UyUgzB=OZF7i(vp%o5E!t2Cwxfeyed5kQqkM(tmrd&`#xjY z!jy|S*6@!GHx+pMfIm>r2$ujN`4^WZAq)dk83ZL+U-?rE@bTMy@~%Z#ZnUmG3vA<* z^j%^*>XfQ)X&QEf3uj0k_~cYHMYU?mb^Tapb=H$7_hHlkZZ|QpKY^_yvfL*aBz*Nd zZVDdWd-tAow;jqPel~DjN0Cv0qp&l*T><7M*hbe05!4%OvM_+dECVb^oN@1^O7%vq zjo8%=cum7T1xz}4Cy{*uiIywWg1hr=r=19JM*v^IoMqC{=!lWlt)5e3nBq- zWn#{yS_1fvE(0nraQ7giqRpeXoXS^3UQQ^-(7vidEN^_+b@=lS1GZjnje5 z`paunhYGC>I1#@}76i*H47cKsc?ayasrQOKdY14)fO2oN3P%oC(W6!aY2gQfv#f^U z59og@F6!8Goy>W=H{)4?fsS?_yOe5L)V5Q<7%$0;4ZYb&lDd8Lq1R3LuZ51i`4`*? zg}e=z89@5MyOe>^7v4u0rUWS`@S~9FxFm-~O}^I*prId=ak;;GkGla@wID#DcgKhh zxX-yYc$=Txz(BdgAl7k5H7ld@E90F0K!mY!<2!ctJii$AoQ@&S700U$WSWy- zj9KI^_*IA1)*hz_aTt6KND78{s8r{(J`?_IfRcePPv>q)eeXmWF5kUkF}6p_$o06! z;<2r%xa;x^{-syb3`h!5@vIBQ00-03w&is;gYO}^ z+SB&GER83S;{g5qRR{V=3^)hGaFUb5!We;+L>Qpm1yF zs%*0kG&)!i;DFxL=VBM?{+gSfelA108aDtI^!SlAbagp355Uoez>3;?dUjiGA4U1a zY>ZPe566a&xJ9wVfTIK^DCE$Vm&e0O=fp|LHuRhSi3@k1tgmx^&#}9nm%eH>jH-#p zy^Rvr4fy9-swqQr4NO^Jvg3zF4-D_Alxs?lJ1^yJvuBPh(?8wZ(q#K5@aqZNO!i{R zyWX0UMeP?qDYAAJ%69#|!Jgi{teBI$*T_F)Vq{6nz^JWxo)t?z)P16_$<3wMwu;Yb zb2(xY?ui7?7@A$ff>9Xl6Ve4t+3sCIb>2_Dd~qBxJV`eb-i!S{;p48Q^#)5mAOeUc z4+)*Be@o(J_7`P|c@&SZUM0n$*(q##gR`etBG-6(TIa zjW3naL1%p}q^Zdni-f1L_zj4go{Lf@>ocn&H$LYQUe`ZAHIPFKh9&p0gOqlcx)<2T zPKFkhfyUaJcmj%r$DMYd1mQwsKV}q%7;0GO;X0-1UFw&^7CB^#2Zui?;Q<4pIr>3> z=om$!n=-f#W|5?DuWR;l39r(S-R(0tc#?v%+-Fj^Pasn+F2liC4ZJ8KRnt}&7xWg) z-$0)67@7&)H(?_I@02%q{h2iph(=DVurNLVK?2sfpWzgN8Zhi9)IrgzS%AQivMzYI z^|R_5!^o=n1O;~dUqohTu|ClP#9PTcj;y?+2s*#y{YD1%~~%rzF@dXbJ#L zpa6pcj}7k#n!>y?*$%+&AG^BX_(II`=~!5!7=!k5I13hVgyTLv{Ut;|iVO7E>mSnG zW0Du^Sl_s$TXC!{owo(6P*}EqAiTaMz*r2n@Ffg~A!!4<1i0*T*LaGLVG9P$r;7$= z*eJ<{_L0o_yu7dD{EYkl9_wIEp+8+eKjwBR1Scy#ioWHwH}!k&j}!gJMI)nXEt(r9adzquFI1e>{LwoRWG@&$F2HU&VC*>+7n1 zL01v@cxr@ZhQcn%iNSPy-|iYMZtL8a3F7lgp+mWn%M$ z1G8t}`tWdu0%>lt896sRTe6QhICG>CRyFfZ&2L8%V1&#w+{=QC5kVg)uOr z9w7q>hjmww3~N&2yl>X$p4jI~b7!ujVMW141GuGxng>25LW#2RrCXb@v~qy`67G4p zZ_Cm3po8C2P(qrz7}YHA`KF_%ArM77f=>uK%71}u_n-_x8ON?3 zR3#;AXPyn?eE$y~Qod>&hrHqw=B}Of`a%2bx+2@9j@-)X*xK9}+q{pgEa}mH866^f zdmav!tP4t%?RMu3@)1!ui!~eeQt*sI)qOeN%mcTXd&JHJ3k36uzWUXyj(tt;-8}NA zTr@&I7D#$r>h6@WmpMM6z#oON1Vjn&B$a`1V8;qa*y9Hf+5}R;`Fjk5$ZE@gv5Ub6 z-Q;d`CpX>@UhBAZz{JziG@LX=G@(YDob!dXY}e>dFCmD6U+T(0l(bS_r|tulCuUI) zZaxgZ_Uw8ivXQ~%Z3EE1+?HPS;tRvS;%tNqf~r85XJX-RLz6)e^3*_eLEU1x$1r}0 zuWZ`-ii%PFUym;8&dKt%&7QXAKqK+}vMb3{hr1+b9(uZ#uqqlXLDq8){BhjX-XL+J zCP2UE(wQlR?Awc?MqV(y^M-utHd`Pv>NNIvF$C8OWAl@ zP;W3-qXiqo0xund4!{QZnA9Ou)rm=oonlMf$yXT3A=c86bq2E=q%^mvc=ixn%xJE# znj$a*Oh3_BTpvEnWk-5!?WIX9g`23DKhGD1-}~(2p1NK#2kCGHEMg;qo%RaxL_{|O zZZ*(dY+DHPFbpQvrL;)Qfgvdo0E}g0&93EFFi`}LHKr-B{eJk-`PFr7TQvqadCar) zN=>W^?m}A*XBN=JP_tRD*nmj`*%4bl6_5pZbKqZKU~2kq+-=BB3|{~wX&#m`rC4%n z=EUw&)w8>^_Vc_XsQXD+f8s&|g(c~|JWd5Z4Vv-PxWlv@FS`G(mKhp|+q~Q}7H*+S zUS`My?R5 za{9%L1RXuST=82?>8ZXz5_B4QI^3Pwrx-S7(?u(fplakbS^jmG%DlUDwqxto$bS)= z8{WLsNxg$trY*w$v2gX_A7Ko+Q!1c~vf=DE7?%e&HwK*l{yBtj;%$lI%CgjF6lG%T ziz-Lhl*!6vq{{n>G@tlxp)KvX{rU39i-Gk$$o_E(f%camet-?APnoH;trEi<)MM4A zZD6+I(j|3FP_0Sg**k3Kh;2Nqn=;_0`rpG~eOn+8VR&zAt6+P? z%HRnOG!QUM**B!NRP^x$KGc-Hi)Is#bfdH8uO3jH?P!uQyru1sE=(NMcDpk#6S!#&?PXZd zrR>JS`oNyLHoG#P&P;{U2d_j247VBBn_&Emkoe1mN>A)|{Z>n;2I8F6A3A4#Opg|R zZ7GC44o+?TPwHUJ>Fr@Om(R5>x8qpqTk9=m!XX!8WU_S9HS7;ROgY!-aa+23_ZrJhS-kIGQ<7h7C&PF$>Ajg%r!R9$ zNrq;QzQOKj)uSuJMz1M^8KZiO0lho^@|u%qZ9W6 zhj_X4?HbH_=U|re075irO>BJ7^nz7!8<~}m(t)y>_B7pMWedqx$SaA4=yl;PFPKAP z!-a>3HQ&expu!Vq3~_@D>Mo(eeERh1CVuQG4}vQqpN<3q;<=z#k-eyl`h?#Xt1pD` zB;nY@ijXT`1nVcl#^5a-pZc z5j)pXoocU}QAV;CiztXN&?VfdHRn=H4z1slUm={oVKepq!qG#27$uatqtp&A{$-wK zyPL99r~818PH^0vRk;Hd=G3)C!cPm_;0QSO01!Kmes{{FsML#6BBpP})XOomFz;hs z^qKue-k!?q@+_R7QxN&>u(>%th5JPH~LV%n|6YSQN0K+ zxY8cD<)m@>=d_*&7Dkl5IC;I4DAb zj!cj8m;d9DN1R1ta=*zk7o6QY%=SrfR*B6@M{U|(y&rtD6Nz|I(erMBqy?0#{4|q& zt$f_6UxMWVj_f|htDrx*M!(>gKD8oqhxe9YL3&wPRKoP$XFuq+Y%Jvhv?W-aI$@LKjBf9FWYw)b}|{4Q>#(Yt0WnFi(1a8%F`yM7TWU z{aG;j_>bs~!P~nt^yHZ$cB>z1(5+&MI~*>L|+R~H>kedpwe6+EciAHZJ)A&s21%qOvi4jSda#VscL+E)&kR`lhB&u5VGSXAvPLO z(O4ED@ly>lf7q~)q4LAFYb#WrvaFEM5ORw<0n0nvD`2=oY$$d-d2f8pyqeie<=jIf zT9aeFJ6Eoz$uLuvJkockJoymWFv4_HB3CI}b~5h@HZ1~F?TGS73Ou$VN!OPA3nO= z+x@EU@wrvtwSxyXz6X4FvEnNY4FlwkmKMPM<;$0)AyU1o-+ZF)^XE5&?Jsse#9M>` z;Huw*k?-%Mfw$vs^I6#Mti8Lswgc3BfUZdBmc={|S{{t#3rm%*?#%1vE{MKPo!+jG z#lLCQ*p7;=w`!d};z;j~#D4vcMm`e;4iAWj4tyGS^BVK144X2?I>drTN}RCq|HDs-h0fkk6G${)`PKeWYp%|SvhvdI z2enr`KeiX&X=>tlW+(z%Pu}RKoFpUs9ij1_;K0?_*SoLo3Hn{IYdo6$v2Nb@&!3O- z^7a_S2i<<2pRdyKfFN(eU zQ?3eji1VFfSM1^X?!_~vmh~Bg?yxOaz#zuhVbk_-L||h`fUpBaP}yU=HehF=OMnj? z=pV|qOTf8+D`WK99WZ5llD^(bVMS|^Cnq}T!2?to>_jmhknColr{9i+oF*lec7Fjd zF_ctvIi>g+@h<@j7mz=+M^)|<)R1%PS)&&9k85-kv{>b z;Wk4RJ_k4uv4`j&8qwx+Km-MTK~!^PBxRh>?XcY&K}z?c-{!tO92;0x^CRSc*QpDJAK56vO( z;x-KZunPeq1uhhL-g07d@QuR*Tb_#uXhjkr5Hh0F6GdF`F!=f}o#MXcW@eED^2E2> zf^2=GThwuqt?o)iz`49m36SG53MhSew<3|?7QQdE(*a0>zjM&H@lTo0G`+{L%w^Rfng39V;MAhE0|;`9A=^T$aZ*-9!_ z?PS?wg=Py2A}VTauxL7ET}od4jd?8s=OQY@LCN@5Ent^J51cZu_xs#P`$%)mk12HJ zqrEWk+aM4N&DAc?2Ut)MxEW;jO3;kp(*?`^N`EB_*|?)lp2056t3%X8P85dWW5$=s zNFQ6={HeRUOEs;dN|d721tjmw(2~M|iD0VSx#JDfQbaK9AW~om&M(}t^tph;9kUR@ zn2pAwPR)cRwQBBckgV)VzGXQGv<=d}Ar}!_KCMTAlZn zcj56UI`ZP-Q|edSL(8uC_|TR1$e{DxbLAxDM4(Ijx2YZj)seL{iCqztZ6Y&VI^*t# z>Y||d8=BjM=O64lY1A&>chbQ7s@_;#PSftiXJs0uMr~;g*uu+XY7Tn5(8$pyaI%jd znQy-D7W$bfH>iNCtfNC)qeR=b;Mk~;?p+4T9SJn0kq(r;rfw>sz5?>{CGmNJzkj^mHn0a}sO86HoA3n>&vzC|3GNQ`_P%{985d^|Xc-cll5IzM$TznV(W%Vej{W zzso?6HzDul#>Sbtpe7*UtT%vz0dE3Pn6M5;pNF~@<8*49W$6lKsYE_sKRu1zzANhg z#|2o_3e;+RatUG#0L;iGC6bPbRVTJU5S7CIfshfYs)A-KoDjNLb$?4KEv2-(mzVxq zCN9JNe)})kGn>i7>4%ke8&%yjm@bAI9eX$ID{u&it`lbA1bhrH7CGiunk3LKQDEJH z?HH;MYnkmubLYqLM&6t*5gK`&V5DK02WcXC&r?(n99rC}Xm=41k%dqR{V&?wRQRO; zF%cm2`qF?J4DnzAWGhVAh+{#r)@im*1v&)=Yp}y)_bOc63=P*{8E>Sz>l$PjB<$ zDreW7Ns+%G%<%5VZ>(96GHMADqZG3g-f2co&6nN`|zz! zFdW!#Nm0^>*e&W?!c+n3x-7Uu++cuS_ zyt8vxH#2+l{kz~6pXwVR_OdJ16WXnfrBo{q4{B(gd2M*U@le-mb3@h+#$yD~CTxQU z^Cm|qGpisYhrc5F2|7fkett7iDbx2%XN`#i6M??H(7%=3WI6o+J3qG7 zD~;FLTcA$8(`h%hJh%O)+utK4H!05)9?ogxUTW`#xAb8jkjRWCZ z425~g23L(%;3c4oDr%fDkd0pB+#b!o+p%0zi@l--d6gM|b;_@1SZ$2Gli%i)<45q* z7bdYYMySY0<^c?MkgyWgkMNd)7DXnQSNFx^FXeUX*AGSmX~pIblM7l#sIdYBV$khK(+PulK@~XZ)7}VE+@M zlXu=H&TDvKn_}~KxA;q?iHRvD8RcE|?de}nrHE~;*K7)~Q$X~QcmJxyLXO%ToP%Hd zYdu$&X2ytw0PL=YAdn~WNXrc0Gp)BXVaVbwX*a2K+6wy#tm8pBsy40R52-!>?1NH% z=g!OJh6QFFw!#|<>@K&CJiA?KT)2rKX9kU3ZD&1okr+=g23&rlCgoQj|Mb3pr>;?2 zoH6zI;k{Nq)f=Y}I0KA$2t;4hm^<(Z>FCxgG*Xz~{C_lk2RN5~-~Nv%vye@al`>KZ ziR`ixDqFT>Q=}nV*&|Y9YY5qd5E7CotIVuaA|oNi|Ge(!|Gr1Zdpys5KlB^d^}Rly zbF$qWp`oE}8Mt7Vd4{TU;L5po3(bGd{NU!=RqBzRxYXBkmYDy=&A&e`C`iOP1F@p8 zIz$~pX8Z6^#TWhe!-0QHz_7tD!pCyv(6YnhVdoKCd?~O8%ISNgLEDf?P^#@ zaNLA%wRCOSpH-HZ^X08U*l$84jidOy?zQ5X)uiBp-=OG#1S=!jf`Ly^qj6^06EbP6 z(k*}%-3!UWO{8eb-)<^g|GA61%_}|Pro4RSUaLd?N?Td27+F7Z7tz(^T)BTZchY@d z1kGJL^V;jB;uh;w=iBNkZxouBh}G^jiHmPa)YgBbs+FZa7jNb|qBf*vWNRsL zk4$J;yHk5*-R2ATFUjg{TYiXlrxem02}+y0q?5jVdgWi18AJS?omaJ~sD*z1_@N51 zJIG1QhGH_SXzT{8%Y{)EwG{)x9iR17P=d$oY1EUa<(yjT~ zBYNWdz|wMt$6dPykDJl4iijZ1&2Tmx@|w|fT{*`{6Tr<)O% ztA;BUCv0GVABFkpu=IN!j!Kdpx&8?b8l3V==jE-}wbx1NZbjk9=8zjb?5R5?2b2TpJ`Q1NJg zg?!S%0}48_(od1F>x=_#I)R5BeIL*6-3J&(5|u;mJ~G}HE1@kO^{hlU$;=0RX-^6Z zTX0pQv=E1TZeDaXm(fMu<3ARBxJBE?5ggD0F-Zu(aWLQzT)Mi~y#MgJu3uP4J1^iZ zJ);r6QS3dKe%(QYK2Y#OML?F~*O4F9xr~hEP7M-Aof_c;#T^Q!JU5TI#RHnKX6zQA z!Q4N;B*Wxm67vXn$N56G(La5aT|GS%(GySFKY#par1V?(NLHrzc28;1sT)jrEvMG| zy6bv}C-L{uOYX*F2o-2SK62Y5n)Tf+c2+hxOVI*H!JD%RN9D+GN?2P-qcvj8*Ub|s| z<=D^V(EZ=je$^Z^w)ed4t{^fUfxNyWTfm)rzP8jK*h27uo78uN&A>BiKwz>d$ z{pgN}W{kjryN)?7KJuz6I`=e0spCUtg~eEfa)}C6tG#L#b5{27bf_2|>Gr(O3kmki ztB8O$y{#GupInwf0K|>}6hEVM0@HFZkR2KBM`Y#LSRmG>blqMRa&1XeUbEwgzQeid z^RaLG17o#l2R?qhjW(M2?s><6*vHUI5P9-42=-idOUg0($5I!_iG~ZB7EQiAD?gJ=t9ovq+z>9x zuX|bh74J^4z9lR%Bu9!M@1hRxSyKCwOmVfcygakAk`2EQiM%Qpev$F3XK1*M1QTYs z0ArWWGm`qu;7bWfRtlq-JIN0osDjhL;s;ue-G10B&UQu?_T!F22KfvQ2gwUhkhjUu zOzX*y1igwYN8&jk7l@WJ%I$EU!S|ROs1)%8)VUHviO*Pw+r*0BChe2_vnKMBZ+Mrb zCIwzuelDtD4NWNI9vvBh@F~!5bH(B_<^ZDd6Um+k@(ja?i+dC3HyH`|%SIsUx`23y zXVO`mEZ66%wh>edB3CStER3hk(|4b|d222_IYM!iPrt)s=wQw829e$Cqo&qe%Np@; z*!Ivlu)~hg6Pz9Pm+m0meA2Tj?U#>S`pUIhKP15~_+c3IrE9uZq$B70h0KOM6!HHX zK~R=j4EMC%_0ZB4;ebePo7I;;~LhB zh>NwhRdlkL{Vl~5t3T3V!g|k|mFwY`1C<|pde7P1_{({7t-T*n0WX)RF|UrH_o5kd z|HT42{V;BlS3A`$6(dvAJCqN;{NdM1O6GmcA|uA8-g;%6bqaoHh#C-P@qsx>Hg!8z zBCZl^7Z$nB35W*p4JeATs>r2j?fvOl^-_WkyOFfR$5FSLZ5%P;GATC1KP2@WHd1BnUp5z&iO^)`CEB4vQ%OqEQHBixtIB@HOvJ!=p9y1Y&fZPoP zo&ik2{4AmUZhxx;9cW2hEyx<|n13X4_LCd;nUN`);2Z|N_|5K_Wq`b|2L?DzOigoZ zSV)|OUWn10m#Ysb$~7_iT17S~pCe%VriyP#puWPB!P*#74sd?NON573=nggRW+$gS zn8)!R5R&!i(_3|ToVVkQq@`V2tsPyLtK0lH?Ezr6!IHO_hbvL7gyU?w;fX*2GTBs~ ztwGf99oX?Z@SEi2cOe6N^^U@tmZ<34@pg-iLs*qJzQ$}&LBB#A0T}%8NiWR0`EkJu zns6ijC|>*tj66^xM}X(#Jp2o772G7(wtsnxt~R!Vf}vKwMBD#Fov@K^@mN7`ZOo_H z-R2U;Pic?yNTGoQD%U=M7RS3A3fUtUBxt+#kTZ{!#)AkI?|T-9FdZbEHjnN z<5@#{S5C58-)RfKd-vMk;Zb?SuY?kZA}%AKNEo8==j?Ui&YR~@lMBlVgke;Hyrx5H z1IIrlJt$1BI3JM{`{oBm7)YK4ynlRDIsgpDQR^|$mAK^nd$LQV)&E1(so83WIQoZO+7z`G4a z0%!(e{6Y%LbS1QqNWUP|k&r-bhav$22%u))L-n=0b-u*BO|5=?eV7I!RAP7xeCtL- z)6S!-{#HOEYc2*0K5;1n9|wDbZwtQ{U!i;`#n7O$6u<$q`n2}OSFO`~cW3ZcK8?NE zf92DvnJ4$jVNrm%Xks`hBXb*(v{rBxRG(ty&-9$!==WwjTal?_O&fy=#s|=F5ju{Z zCLrNe$ShWX8YxY17lEkmVWDj`mWN9CywBLN)gXmczNb$eV@t0&>|@uwli8Met(K7# z(c5dba2lsz>M>KK!(K(O@YtpF>)YFGX#!pz0(mZ>pb!Hzjuub`D0#|*imx2k4E>f3 zSASekh=6v?8lxWN^LFzs0lfMr{Zut~`{fE8H-~-Wv+By**2L^&wl~pfH>wqH!3rQ8Io53O&cvC6` zE`0yaX}FtTV@J1bNE={@?hR%s_a#`OA0GpV7#R$`&<14pg&~LD9AN>6L9yhr*dB{` zrt?@un3=r21g{3YCXdy635?W4-t3ejc?Ik0GpW6v4pHXj_e>Q|)TKIv3Tk8-Un%<# zp)E&QbBae~tYEa0xMnuP#hDIKJua1sU+}@nt)Q7ZGxEAq(|tJ{&#AN$-U z-j{L@+Y0dr4kbhVpi8=)vF7&|=Xaox8=n-f#!JwU1OfT^mcn20xw>^|&3E=3HfvKF z>6olxT3i?HkACm)&eTJNL5b@$g|<=y8L1a~!^4$&W!aZfx>h zDg~%QATsW8x%khljBRg~|C5JG6IXd4);$Rm@p9tyRURDWkSk$Eg;>yD(Zt;RVKZ~Y za=}(52B@rXF&DXw9#@YK2E#dl`Yy;1^#dd_1bJP`PYX)zTx~nPc(dnAG=<3EtT*w< zfb%y@l{_ymk22)PWS8u=@&#eaQw5vl14(WZGTRANeqLU78!tF{NLB!FdmxSuqFPw} zlE*YP4kf6nh#QHl^RM5L30-;fy*P6Ry+{Tx6-eCI=2wQ%JE}o@lqpN~H$R2yz86b! zF_2P2q2qAA#k${c=Gx5iH4xJ%Zgv)yGyZX-mnt(kVmC*9-zBwZMhY^VsblV4J&AVk3>_ZZKWqK#B zd*RM1W9g@@Y18m;-nMcn*j?j28{B;{^n4-ixd!Oo+(0XC&>-UK*HOXn;PUb#H@+NB zZz%0NP8&TzWPxqLE+MUFVG#qNVs=FZE0A$zv_&9JJ(7@=;9CHlAZVyz`0o0_%8x6_ zmnZieq-%mz;eAzA)hLVF!L^%oS#)0ijq}U_0vhB^5{H2uo@p&)LLVH=Fj6VI0u-rc zXUpND+HVkBK>Isn{b^iiW9NfqwaPX=BTb7po6?n!Ce?3K+-W0!+#M)ADo2~to@hZO z7_4jsHxi)7CVWP`Jy7)%`ybp3l*^KRgTulZ`~CX=yqy}40U|@zYDf2BW*I?fI09hh zQxawdeM}&+K#Oq3R|=f9FEz%ULKR5jz2J3_GfD;nFHuG5wEGG5*A$mQ8mWj0;l2tp ziO*Mg=$eSG3IN@K$H&z0qnK9QHhY zYMgBx2NwP?s4-%|046Je0;!gkM%o@lGzHRJt!#{!@=R&N->ALM_ zL(Sql#FO9b)^%WvtM3-f7rDZ2RIr^&nMpPk-vTN7JzZ!q$+Ds31i&){rLj-HGY{=` zd<~hm;HbdHBlraYu7eR+g>Gnj^aSw?MYt4T9Ky2*r$tErOf$$?m`RK5L~akr^KZ`n z?__8e#hEX0>=-Q) z5x_X&P{qABj_f3SsM+PauzF;@R}Zl8u^Jq3HP#G>f0YcyGA0B#!Euefw3Ogwjd&m4 zh-fc3v&!y`ynU-3P#&nb&r%~k7{O1p1B?w1&ib7(vxPu3bWP zFT;ne1b&Ls5;_hdJ5gCgq^m7W!A?GU`58LX!;M!GCT$LT=Bt@#`QG$@5D)kPi|7P8 z=aKQW4VMt6CG4%lp(^>sOhLm#E3cO(?KJOwZ7bAU;ReQ(vqR3EDg94R%jcDydE0XB zpLqq8@uo`)a_sx7qkdbbC2%5N{qa>?Jw^Gr1J-T}Xt>MDf2^(HI#BzIDDoXg)`w); z)h`@KwWXqK`b5-#?8{@U#9V>Q`_L2`6E#VraL|p#; z`+|~EU&>-^J@hLB9T*wbR`h@GNw?i&Xez4d`^~LcGh0Z4$z@kWa-TH8mjBX2Y^BNkCJ*%19+9ZJ;;N4@XzGqvMkM~k|Eh@B^ z7@3$Tqb3g5c!xji>xk}(?XWMdsDPI1)UYFtp|i9xaZ;F!e9|79d^o!wv2?eQl*|Q4 zIRN;~`1p8eG270Po{Ge3Be#$zPpF4*`{DqOkz1sidp@!K`#aU4%jz_z;Xf{CT*VZPR-f#jTmwvM!*QNJs6TW>;KM z9iG5ToL5=G;{)YR_mYzXQK!on_Y!Xts~X%Ec+D5bx-2EA^jJ@mI}4C$>hB$Wq`EIy zZKJkly{_l_@kGrA`*y)*P@rl!UD<^$Fe2*%O9e^}vhHW;=fZr?ef2Oq9sG$9@HPA_ zY&5J}6vVeL?6%y>cOg@^)FC0z`sYd%Yur%Hk)$v8C!D)xI!KcXp^D<$3!$-uyYdQ8 zi%pDtIP&0;i$Kg};GS0d{r(vO&m#WeuU{k*Vxj4Anq-cI2q!i;IgN2g5pY?SQP9&CLI18ZsDu^805FbGHmX?*7KE#PD)S&e8F& zrSTR6!~UX67j|Bjy_?*5N%(}KX1O}E+XY{xvm58%kXH>KY-3}Ozc50R)E?UXxHCI< zpW!BaCe#=q?%i*r%pv#Z%^{oIzru6O`+?&Z5cNyS*6*HX+x_F67G=}zZEc0551%rI zDBUx6@&?i8g*`<;Be20TgX|j$crg8Qg>!~yQKe0PJD4SG?d8RS+NPJlkC4(BfwV)& z25=FQLX6X>kcS}38U)py$x_C>9p!yhZ~V@zTU`9d%aKWBdt`yVv@b)5GEQmA`wi-2 z4ft7;ol3M18N@Y&zP@S6d$3bXtePpuM7Hg%Ae%!3Ws_r-8CgcoFYlbb+C*XA$yPgR zTJZzuf%uFl6ga1X1vIcZ;NtQhoF%qjyb+WxN5f)ndGTWIlbJ{Zr0sd;#d(fI$k)G- z>Ny?}XMBWKxO0ifm*MgKr3a3x!MYfStRe#i_6YTOid#)&P|`-Q9SEF|Daz-;11pgC z<-`L1J^b(dtAD4{gGMcGDd%n5Lp#WrQ+ac!S}@p1o@$MEnoc4zI5hMG(1yQ1E^G!E zp1(?oiy!efGMB$H0KeUUeTQliW)(N!1jeYSS*f$HXIr+d)0>{)*v*S@p(R*qgW;{=C;PVjBqbbz634jwhh1^A z)8F3x^MpvNK>>a9?+Zn9TX_q&c^(eVW?tO0+c1+g)=HqKck10{dH=}k#YHB2`$vpn zs=OLiA%bzYk<-S}5;Gc9S2z4wW;-O!k4~kgr{8KQ;?Xt^XAp=v9ZS0j2{U>|TL6O* z2T66cCT$P&weTL!%f$dG#o}WrVZ{3jai91HXsF4nNzoP>y3{EzH}J7ZNppTC*)(%NIzHQsLqQ*)9hY{Y|7a1ywG9X|EOV(dHlN-Z)WBf z#>_igzrtzUUn~R82p)lbY-e>2nH7ZSbGhW02R@kD$pcZJe*oDChHBr;`J-(8>dw0j+i1aLO*dgIZJ1P}Z>vQP1Jz92M!Py*7v*lF*h<50P z`B)=@?0RQXBqFa}J9}vB+7$pJfNB7vqZ_N6PR77#?hg!~dpM&SXT6(#t^`@JBjPo{ z&Ujw#^ciaO8RkEGW<6Tx`=1+&e{bT;Gr7$4^OSudUw{STJi%FdV|-`&O9bTLg%Inv z?AEF0y&FkxXS#(&rd9Uk?@ZbszbowRGOi^!7f|H&?clXq9!wvv5-#XsHzY_EfkC`8ZNHneoh9+^m& zho-sl=SsJanCIq&QsZRmw=>Ip_qE4iMZSH)X7#o7#&*B?Z5D4$;zU!}c$ z_lWALPuUe)TUiudX=a_gaDfZZH^PT^R^f+ zbpH0Si<^Xy(*wwyJI)hz!lLFJeUiuee8cs@yLzv;u?O;M-vDS7q!yh2`6=KRa*!KPVQ-F$_5~mgY=jM2Z z@a=;ydej%}EVae5wkQ=Lp|Iu#lvL4Kd^eyhaM2t)$v}~xpHB!P@xd#KM;P-m;21gy z&rv|edikti*McLAl>hL~|D zv&HX?2KR@H2GBre@5~gdjK-T@Uvx=)ti3M1eV1%7Sht-xw*v=fUxV386%mx;@6_~s zexD^c^1?7viR-7cJX{gY@YH)it`C(O5$HEE4XYV}BjF6&pGZzJ@sDHP-ys-Jf~=lM zPopIQTV>wGS6*Xwm!*GFJ31vCV(Z{?;M~Q8_4KzpTZ|EN5fm5abi3I{?)S%R%u*O% znSi(Yn~B|NBrj?%y`M-fHWk=c>POplE5R*>k;2N+%4#gmM{eU?fy492!I(p2`?4d& za2=jU3CnKCzPC?y)QP6#Wtduw2AbClSV>*tG>DyLVkod_o3^LOVP?vC^lgx{&o|yF zvwvoxJH0NPC`}-!I;A!P-JW8pa5&;yTQXH{;npTDY^WPJW5o(x6kh}UF)%dr z=r_MI1}Aq5e(#fYLoCdYQL-igX$<5PSiE$0y*`0`#~}p)Ew+7tsN6(AxIWto;uzdDX^C#gl=jjczbdlQgJBX8@ z?3yzR*BnRc_BMg^y**1;rPagY?K~p|G%zaSA$VHhpCkmCN|5(ufUt$yA6QpbCq?lu zmlOMYDn!IM9b4K8s|F6A9>5@ipCQ0`f-QwO96Sp#&tlkF`_*WSr4R5ECG=tj0TxKG z!rltpkz!BOHXfOP1HRuPKzpdY`@TonO1JucURLp`4#xufZ@Nw=H*nu^Q#0!6jS)(0 zk5zXCq8=2Th+_nc|0Ga}=T-$r+sFMHx;5S@zN7nXSE4A;_jb}Y#$6wQXV z`*bdh`7PmexK5|XY$MwK%!7O7o`42j?DfoWYu1U0ZoIJ*PENa)_1@KrxKWbr^Zq+q zve^+WndsVPBX0N)BafP#m{RGXqor$ERw9Vaw`XC@%FIDo_U*6UBUcOIDh|< z;T-p2g!}yd@hJ#t<)CeiL?NxE)?>aXA%qph$Vd@_4T5chP#xYr6g;v3Dd;)GyZ5B3 zB9f&5d^J5jzPyik5+W|m$;kI@a{^O_Uy`YO z*#JDQ*p5O+e-csWQ5-0R0HaX$n)+gked(UWHxKtEK0YOWg0GC?l-+}qa~w=ZLfFN| z&dvhbB)_q^Hjpnfa*O)cU)#;c-7^C>kFJpvhm#08rDeAtH%Ls$?GBiI0or8=XH`{k zK$(o#6#NCr|K4mSwb?XC76a>cmLhkj}>trkt%!d!2?krHiwRXp^Pl&NKbxR{4jSHQEa^> zprM_1<3(*z(Y(X{#A**MS>XwJmHYk)datEkF8x)@>m4ZUpSi+YzaNNlWQ+xdcQrRR z>7hBA`$7e0^R|4d*cJ8B{=lj=#l)AkZSsc-ACwHH77dE6P8~Q6-ROIgMQSu)Ei8(B zEPv>?Zo$I_0E<7E3m1m-y{rdHG<3-O{04=en-&-lHCTO=dyESK)cniQugW z1PJ3DTj3gjK^z$HJ3Ace?Imz=!(I=uZ_n2DoPo!E5Aue0ns}ILO3Q(e$D5Ozf4N2S zx+zjNDe57>!RsOH5i-&3E&d%OOJav|kPLN~2|n%j=gR#3PPvHCQ2YFrYpqTqxh&KP zox-0^Uab8nUY2mi`<2`#a@;TMGKS9`fRC#(~RPk zmFO1{9R~Tl%~Wmn>n;y{dhBNtmF>$|o4gG3k@kS8Z4U!ggYBERNG|C|&}u4~UjuRQ z>lZT`WW8Ws4;4SFno?*!Xf>g{pUrWqr9?CWQ$Em5EJX0{5PMFl4*n~gfsBM#hCo{& z;lSLDG745;1d>K)(!L}*yhCn2{@udlozvss`0?1w)TP30hd1ff#p;I}GAYLa6^t$@&8)(FIbCPv?}ZI7=J32CxI^z$w(bVxD~ zuzGYarfPA3W!*f_cj`v$&&5lEeJmtO1HQGNyD7<)i*y!A{+S_Elu9q-_)m5r7Y%0_ zU@8o=^Kv^#J>{{nbW#>}wGd1M@_vR~73|CJ%o|c+GwI1wTBo?4sqrSdP$|=(wt<*u zJ}>wP7eoC?c))aGMt|OV?|@B+q%9<#?rcT6A9;IZga<(#ZWEJjqyEj-DpsK)QuS@BHO&T*bbBR_|xWbzS1hW6T)hPmFL@%?4st^eNns|aWCEC)yI!sNMFH+ zf?iR$&?jKf1b%%=l~3;d;0=@l_BWjR?hq zl${Kui_cV|;XG7Z%7y*JW)IuR^PB%<`Qp^cKIzirf`P4H;HnQGPGQ(#t4-q^zX4pt zZ$`$nr8Y1l{J?*?S6g@MPZpk?6<{n%N=hQM&oRC~Y=|;w_{*hw4((HWF3lN*XH^g| zc+98R$cX_Inh(61Kr41aGm9@0+OkZt)u)E_wiPFZYKnyZeNZmS+FUlTX{|hN zIN95wP%RKFtl+sa0zfEqZqC*58#07@$WMMrw+-ie7B3L(0GR>+nB;vqQ~kOfoPxXA z`~!oj9bIoD&@kHcaX0c!iD3Y50#mBw35`$DcxXXwGd@mEPy-$I3sVO+kE2cN!uy`G zE#Enwl`$)r=<@G!3_CeF*vl;CXb@v%FW2aqH{aTfAf#U zCYSf@cfvsL72^X{zWc;$fw%UwESAvv6kq7%A=)Uw;PCS|QTpaJZ|~B3Vnmy8HxBav za<4(}{Fi!<$0bIg-roprF%i74`0SftBZ3qNFb{1^6iP$@4K@j!--ENj+$hCO@%;k_ zhWuUX|H~GW1NNoru)TW}?k=XV2}zt115u1MMu2oR!}u8>=S1XTfrDszp|vV3;^@SJ zObYFUpV6e=(CN2v>BmSd0a_=Cn>WHg0mHUx#G$9u>y8tNZid~FBEvs=-WkqtiVWV} z&A%B%m5T=s3W_Bc{5f;iitfZl_1l?e6c!YO49-4klno1rzr$c1rS-TQH#}Z7c4-{5 zl?RUi4+UP(g!~-W#V2P2Ojdp`FdKxFwD+Fe@}EXi zI^f0HmG{nHj=z?mQ<>z6o{*4{34ixa{PJbVKszsN3k6IJB{7~2`b(zbcA5G!SMnxR z!j{#JPRG!JvG_upIVDPgy$8V%BwiTd5Y`J_CplE=AIqKC%46Zz$S+WnIDELYVa4p* zGcsp!I`ELx8fGMFkTLei&{VBkY%k}V<2|qSwT;e2*y-_$I!?s8 zX$de95Ej9Y6BbW}f8S0M3^o={-KMD~9YxaArC2s8vZ3c5TcD^$$X1!Swj2*o8A*O4 z+}YTGL2cj^Wtid33V)9GDugW>BfOpaz}DM}ixP1J@Z& zNj&=iyg_W`59#3kM1Zr3QYl1$hSA*)w(hr|tEO+V`K{ivXnvPEY{^bN!0{|$&T#R{ z#bQ}4lZ)OFnIEqkv=Jt zcZ93Zr+0=7nsTYuxf~>-YTJ}N6?R*1a_N(y=m zGC*9RZM|Pep2}mGA}N$e?O#OYOvtM}^~B7638*tU3^QI;lD~RPGj{d1S@WdV6;TXU zm@G&c4ZrYt!F(K@V#N-`X$-o9BR7ASrUzKD8;OQQD0uAUFBW>Uv}aVK>o4|6;wg@c zgQ(`fX1D!T5Np)ZwOWjvqOE^(u0C9>N8cANMA+F(oDVWkSt7)-y7&oonrD094cD^2 zn-Rvx%cA2tr|e&yyqW(XgZw47oVgcEI)w5T(+Dm&XggmaMCEPA4&Igila!vGV&TSE zaUem1771=MJYrPh1@ND7_CR?_1uz&aI0FTlTkSF{0RVEkWxhCX`>fZxyyvx2bfO>m z(JK;=A{AUiA_|lTAaoI6nA6O6!QP%%gOBJfi&Fw-1+5T15Q0U!lYV0>(ZuX5wat^` zS-7!$Pw*8nN=D}Ti^hWC<;LG-H2gB0e zHFLIS>?WNmOzE&kBjm<4P+OH}a(hNBdO_NZ{0!#96rZ_?KcZ`X+b zy!@x=(zFgtsbFNbws@R<~$tY_MeN}n`OJ@4DpoUPJ#=UWG+MtsH4iuoW< z98X9_x~;UqLU-+87lvXN9Ul-$G?a*nk*<9EAoyZ+JOV0Z5%)IzAmQ+{U53#iIV$pq ze}a(;Lnq9Zx1g_qj0x((ur!#epS zCBmfWAPKerLbC>;ABKrR2E$CLO~?B7&T}2)s*1nQndC@q@erfA)g<|jU=|!C8(|zO zb~65O{D&p`RwhL;?wpMdQ1TFXQGqIgvlnzPK7wozV4z!wNe17ik^2tef)K@AFH@;N zxprLUAh4VHW8|RMy7IvTMprQQfp*433)K&UEn5tszk>@a21gqbNnTldfK!)7gKaki zXlIJAJ&Cf*GoUM9$u9vzqRVqe+ruJq-kI`^2Seb!_Q>9@uHd>la{{B>ZF28igs5xF zVy0K5=k>VjD)Ecoyt=>rx-886rw69uQ9L@F2d;ALmi)m9asf6Lv(2_TEp zx~`4~7q?vJnFglT4hx|>0nLcT2!X{e&{_X-Fb!Xp-5$L`1?jqFN>-U)o?|dZ zH^{FH1tG@gsV|Iyl#K^+AH$z*}&E*oTTQ7F9xx~DC4XaBy5t7(ru9D#Df_7HY_V#5P>AK*mC zaT2eOmkKk*f6(CW<7S_?R#aD;Sc<*p+wIt|vsPuyPZoGonrn>ktYtDm~gt!4oI4qB!h*%NONl3T9qnv zi1V|%4E}EDBd`aX#4=r}jZq%g``);J+j}}RYSR(<5`=0Gw<|7gSla<8fo-rYHNHki z{blMZ4{#Xl07Nq^271_er6M1*8{HL?ar5N9p9HM~{`dGn*^@b*FQDi9$3?f5@IXS# zzI7p9s{5NH%e?xd;>)u1&^P%qhZ>(grfq#1Pie!;dfh7zxlHO1{*fV1Uvys^eLg);-ns9|cX^i5XJ*hfp0yA#({ig{LrY9LPox8fZ=u~)l zkniq0f|iF83yp4{ucp0Lfr64snG+K${uu#j$ngNXdDYm+_byF70$_qMu}>nXgWuxs zxwBBuzAXGpzrWsv&C@P+z|CY(s{QV{A99-PEGlUy<*RFsVI^D`k2ugYy)@-F`oQ0L zFI8=@jlf0u+Bp*$?wjHaRDU&K5x+a6$FW=UfA_wut$;=~DwS?(Vc&eCp%B?@4f|$N z@udrUWsjv~_Lr*V^F9k;T8Iec`?Nf>OR2#oN zco*^pIDoOI*Gi24b}%5iWcW$BUEP`l$0#X6;zt@et4oQA@J#qn@9z$O6AtN$#0v7Jr|%)&%+oy zuQgt0sPHI2!Xp88pOe;b{BNt**O=%Ib<%mwqO*hW&*T4)Lq&49Q|KT`0|>k6){g9_ zPiaKk5n#y{%aWnHD$uWzmX-9@Wq+bFHY04ZVmCEDoZE7=9lRz=p9qU8L|1rT!9}A4 z*I4HS(maBDO~`mfj?pvy3&fKva8BkoV#5IIip=`iw`9ID>+kjLf4N9Xr;>x4gu(2Ms$8 zgGJ?f#`g|%h+sp-Zi^p6^1EcVJj^?Z=5Ni0Lrh_Kh>n9bYHGW)_u?)xCQJC1VMs$L zJ)l#kad#_crqD=5BLPAB9Ci~Rzj$7Q#!f17hi~_-hKv?Gqo6ULOg17@(^JJ&Ae)-0G@seEpD+iGJ6WvPzaOkQ zX}_EiW3#Vx4_DH_x?Aa$?*+X3CsEJ_hL%VZilT1ty6Jb<>N7aWekQVyvo_2+k>=7 zRgR|x>@+gBAPt1$3v|=Lg9pQK`RxKmj?36z_?goNZBXcv{1c;N>{}U{qn^pCE?rw) z?XR)>KP|w#l}QGDtDTmn&>g%1tol`#E3&Al6;C{F*`C7lPL-kl9(6;svZ1Il4cIEo zNLcf7_kVP&xOb<5>L97FdkxW;=o3JJ2Onn?E5$j&KLlwfI7cgXVqTAm8iP=eP%gjk z?k0>X7$NkmOf@`Pk06BxTLjiK%>5wwlBlDOHma13P;j>p4+?MZyRVa42NV1boa@qS z_ZM_K`N(`83?3;AR1{J} zON-NIb(k&*sF1hZKX~YnGOZO&prS@AmeIyB2K+e2W|ZKJHtjvW;3329O5(VGWX(XO zqq^q!m6=Vqy}Jra(oH=g4ZJQ#v9dGroMypIGhgYq?)A~xo1N}j$AvR98>8PhVkwhp ziP-b4#J)JXh1YSH?(35~|3ech*+1n!e_bNl=`j?fy&)!)YMiDZsbX;ohtX)7O&s$ zEQPRQf)$3I8qa+Q(_Z>M`8XoJd z;T+jM)tDV~JRC9EIHCA4A;hzWseZkQxIesx)S9U%cqWsPVk5QcZdv<(xwkU z^fYlzeo#2P%7`IIDJCq;gPo4`*RmHtAKnYRWK!`Vv&pN8$<@{^Y?qX}WaqxH4J_k#IQfR)nOAB1ID?)MA!y{v^cICX>+T@+H5jr%I(2|2^!Fqs0 z0zPiOlnxl*p<)B`VxkqoTzmG>^*VEb$yy<)kXJ6g#{>u0E_dUZh!wE`eFMeFNQDbX zw_Q~TCZX+<{e7^$dwMeAGJg8$dxDMbx*z@<0)8RUfSrXQ_yO%*;YD>JL+ECro<8N2 zi1eW?*!^au(Bwt)Hp+(-&)q_TC4j!GfiNRX`0q0=FWYGPZJqqdJWh@Mov0 zSMz?F@d^8Lv17#lZ^w|2Rn_A@k|MSVy(H@zc?fWi$2zre^SNHW^0U=2Z{#gaiTO_7 zT-L|}qw}sE%GzcJ-`aD1pK-$S#1^N$2u$ZyYpVoF=%;6bvbniD@nkixxrPS-9Ex7` z$!TeiI9=^5J)fm3HyCUTL%ao<()88jtGCXc=nUuk5V`%qz2>@CM}9=Tpu7HuN#GH= zB^^n%XF%0Ge@Eflr6R3w4~%$AgJWO*K=ddc347wynV*ZaQ8qw8n>OtMH`ISB7og%s zcM*144Mk|EQASq)$i$c7KTwyEbR;+uKT zh@kU@k6S9s%DSYmQve5-P2JjFf&j#`KH%M2*fsg^(qw$0^vkCpLn&UzR7v=IT*A zueL=`D2`CNR?_=J5b8t_ifSQT{yq^@RJ*99>UNahR?lVqVoLpRhHXuJv*2><3Sulz zg110-O^n}Pw`75wgzFX|W|%iOW*~ZOVG4UyCAOm?GKTwqz#|Ozzfk(Ih~y#_628Uk z?t`ti6cj;D@Giq*ckU)5??9_Q!U9&i|M(teo|*n#!yyq#QD4uLsmrkWuYU8igtpH7 zP6{&C2o_)|O}OIU4-L`5c7L6T@iMwIF^VoVy3IY9YMi;I5E7Us9F9$kc&z^R=cT%r zdOx7@DQCRStuJRuC;8kmqBr-EsF`dYUg8ZPdwe=`#J*9zF)Y`e;za(oQKmd4%ZtDdC5mQaS0J5hUV zyClPnhPSPqOJy#CjQfP{vF_~B@P5|9bDb`I_0?V?$VQbf0IIb;tPu@k?yci=o~-!k zARI<`jQ8~RVur!LvI0g48Ve4?5x+?u{t4ac8!nV4tlR}l;>(r#e}?lFtf}|78sd>g zfFW4S{?mM6B;9{IYR{)vw~z7c;R8JyB|Y*{v7-F70ee#XpuNObKzHaohFB`IyV%m0 zk?u~wc{ft$-lC!+h|XN^X@9xFHJHXX^@KUyv7U@8EPP;e_GN)vN-RTAfQrSaI8N1x z^8TCVipo+o(?^Di1V{q4t^(ZK{fI494_oTchn>O`DiQyC%G^G?-)qFNT&_t%Hc4R0 zdDl^~F_!1UyXH{m&a<(4mbj4dzr{~pvZDEfzRcDp#RW8^cY#=i9Sc?_)4`oVs<&`YL`A z-PSFTk(G1DlRp6b2TK>hkz*Lzf+-)56DY zrh4dp2wK(I1_rq< zGCZkfQH}CvUeXeO)O=HTw?dZk!2#6pbR9i!OgppSN7*%@;bX>K>axckMhI z*=0Ii8x3BrQ)6uXhuw`XAN7p?dF%O8xWkZ9PEE*cu#C>P^2Z=7BU>?rZt??Tx~vxs zC;?T#)PzhC$QX)2=xwdw-2t$N?SxpWkz50Fwvn!X?1SrI89(TYcMCFhB{pXKHA@`T zNWBYu%;X3csX#uy)Xdny{|{VJm;xP!!b)lbYn1n7u=1;do5CE9YT9*x41nAn=H=Q; z@J5IzkhzO^1+R#FZpb-sVFH~bo@O8cdmQ<uuwn`YDF)kySpIFuRJ+wO5dggeuqEU&o%dZnr>Q!% zk{EB~NSVE5a+h#`)n&x#@^NxGz4W-2)6Egf7bLXvR#=$c$Jygjp^ES*bE#2k!uYZ%4C+6|z)M^guHdA@^jH^Njhqi!dE*;6nw8`5N z7dB1*2YJ}T4u*ovHU9=nhi$x5X2nKtJ5H&@8zJl}qvV62sho6aU_$lhA-apt30ZBO zCm&yCT^*~J*Rr|*1=3aM6YownuTj0VU)pRLNqPPH>gd(9^y#bLk8800Okvj0V-_?n z-qoh#+_I4RQRnoJS2_dg*RH+)$YFWCc<^3>rG+G?gQz#xvEkaoHOIa-{N`)55~KX}YiYg0lQ9OW*^Y*rER! zk1Qg&U?~A{wu(g%97lgx%fuh~ay6O?r|62?)S)(&R3nXzoGB?}8y)p){i`?5lLuJ- zzM2TmtR5LNZ@zw|M`&>F)2C_-XX)Q;=P#Z4I4pmBhv%ij9P7QFrI(DKQWsI(gL3fm z@RiYtH;H5UJ9H|3na>$2F_h&5LMHLz+seA%^SZi?OPXU|TEc-$WcxCM50HJk{3p3- zY;~U{BSr6?;VDm#G3DI_1*yM&dqd^1$o;|U%ApdjxnT7nF|w-4`_ILcEwdgz4A|HZ zfu;JZ&JYIh4qMIkKLyl{IMdKcGe0j8pvb$oyF`yR?!c>yjnTs4xb5*I!Ks7!<&@6S zX4Gq+F0QQ1w-0RQGe}tu44)`sS)N?hl$0IYtc`7)8t`P64y|yxcrg>zXi5z5$i(uT z(p<9BD`oO~^Xr!+)D^H4eC23C2pzDJd)h)kMlp{a^@Y|3PH1_7XMLv&=8)rv?f4B* z!iP*CoFROPnjSNKVn4jEzgt*qAE@>i0?0uKO#AyUAr$)N#!~tj3yafuo&smGLI)Y5 z^5Ml&+B>Oy_-RN5%V7@9hx+gcdLpO^2?aW5%RL1&KC~%gn1}io13d8c_WAiDSCfR% zQFQ_3GiP=ZYBtzH@Dgo}5!#0$8)FlbHw(0%v|2yZG^ECF=a(F1k21Sx=P-LD*@imM z!>sbP`E_xCG!Pr16>O`LuCFRg2&t*5xU3H0N`ldsrxQhR^% z>4~2K+qN&DGLH=uXSZ;8QiAFv^7lPs_kuBK$LN^8%?|$PnMl%;gcsX z1vKtyGd1xq$@K_~mAT&Mz5Qu!e|VrUm3r2*rpzj{mrq3(N4%($+HDyYDTXgJ179gO zsq$T~&=Hn&X#kgs1IPwJhlIPpT?W&1HLpwMAWC7;-5Y{;#XYN*sr|)&?%qgmZ}Y-L z3vv;=_^p5*5i308rou9gGp`Ryy0+UMBB~4W3k#RvKbW{I%K`gfeSJFWk@qJKESOC8 zSEh8i2q@xVh!c}|8!5rPePh`{LN zABQ}0VWJ>fbAb|hHg5l^7NM7az=9&u#x~NsB1!%1>nl;b8Pi25ILF(VvAUX)lA^~P zg4k%HKV^7FPM23-A7#^}?B2}td&MlMT0KKip0|WtZH2{YzYRB(3J7pU#id@qgC`GEt6y zzFb|mS3|%2OROut7q1y1oeLbdcC36}u5P23uTGJ&J@7G1k=b-qglz3^#wT}aslMW> zsQpNb{ro5C0b`VHbr9v#SF3I@)f z^~CtYk@{FmiB^0X+7j%O(3IkcMnDkyVXoQkKQ)0W1$=u@sRGxzOm_GRUGL4d61b

V6p^DMWRt?Qn~%=^1p_ba47aj-YV z$%JHFATe!-@YwD5_aL;?f9{dvN=Do_U;X2Hsg%9#?mXJu3T5Bqo6k6HZ7OP}vj*)i^U)T72+R5Ty_Y?vq!kV~)g&4QV_ zsyioSML$N@w#w+=Yd6(}-?cUK))uXR)k zzbNl*+BsU6G@-B=Q}gH_quOCFuX8BQx=y#lf)Iw8nrgw}9LOsnC-)ZgoRR6$|D)-; z!?|qxenShDm6Z@erEHOvJwlWbGO~A8WEV;HN>(yb3K5bJT2=_jUdhT1A^ZLOx}Wzx zoRlBlCz5L3lOZ=SFEX?7 z^9%jp^RU*d7VJ+(eAo8ul>MfteEZd?@7{_*^Jm%dZ@v&a3|78ueqg&Rwcd<{iWnL+ z7_kXSXwZ&)Ls2K%{g5>YZxUc!l(v^8Mm@ZO6g6r0$B&_z=KO2p?_WDiP_2k<{T)U> zsPO3@{TAr0g_?L%xT*dxY^DHJl<+xiVahO^oT zMruT(6YvSBd>^T08E%b@u{TSsa}lD43I1y_Xd!xxao$Ao(Gz<(5KHp`dr4{%1(WQ%wC4vI_W7SCTmT==&)&u{6Yc$ zhx+!+xn-P`r4qIDaL*LbX8}+Fh2QG=t6A>OYL=7PeV_~`X1~6RWKAI#U z)pp;6CW_jK{#w)(3JS&v2z8K0a&+~Pk{?pIFZdlHPT|bVS167D^2$4w+#w;sLXS8{jMLGrejNS1nXiNu4Zrf|Ua^78C( z@fbTg-p0$^WPumwG7fYIf4;UpQFxK7nSw73kU!B%Q&ro7R3>MWCTXZGurHVU_TZeQ zhjp;k`{t*mq)mpxnm6Qj$o{6fHjt5PMDcSOiv2z50t zxC-bWTdE;Vl%UIL^(VsJcG<>9NcW=liDCQq;qCWeC=LZZc|Io7>rm895WmK-4Xvy% z2|>UJd;nBq?U3UywM{%}$mgu!GEGbh@WKO&F&5tqaoZUQ1eH}OMQa;_iX2zWn2^}a3P%71oFFiyiIig58dnvvl0dN zMgXT8C})8M)1qi1sc_?Sh*!IRU#N9^3bWB-TL13q*=_HiD3`|Wj`$RDt^$igRt(MU zT9O1&K_j}+4_-SPKYMW${oYAQ7S7ImUfcomA~ZyZ+5>WcEV2o`7d*w`ad?(B4%y8!1YBmdUAaKw%*`n)?<^nv zk?09oE2jW??DlMB=RMm_Mbqtp`T#iZb?TYstf59_Hg?f8E!0Kda&hGQ>Ybv(J6 zS}ZXdnbNvbpH%{`GC2)`V3c4s$B+aElEH8$`D=AfAc$s&4Fm;(>;#BMMkI{`@8&%kyi{2KeSzvMC=e-q6$zml#hTYZtZxML_F|Lul=dy$nie_pU(&9 zwm)FRZNA+&{=J1_D>38W1Xi*GfWRsYuLsSlTy1;&TnNuV3&coNwFSBUs-2pbpx%`qq|y2+RLJrHWCOj`<^ z0MVnQ8P6*xUz25ehVN-ikd+D#<|bz0B#z-EQ#IRvBeyVrMJ`WEvi@!{J$aP6OeKV^ z=x3@%3jiT5>!CSTdZ;>Z=T6>LShrT2LpcjbDTDnTUy>3Nhu|9|6n5Ma%OiOo*ppk_ z%V`#pQ8&|Df+8R@Bn&_b8>7_jis`2avNEm)&*hs^WPe)TA<_~f4Mcv1`8w`;sVONZ zXf+pkt=NS{qa!xVpKwcm$l<1n=+NBn)%uvW0h$Z!3xuf6H<(TUSKQ;sEnGY<)Adc3XRoR^&v@J1^}DY8M5j*J>C2bk*%3V0{o*<2 zlM;7HWNJ}G)=KFnB9~SE?2DE0U>xT@=#%{PsS{><#Vm7%h*Oi3^o7T>_h3N0*_1t0d1c3$ce4vPb}m7*xn054 zP>^vXUj5^-{~bO^FcUN{)|+awSlryu4GC z111SAqgo!4)c&aYOjMf@9AVRgRjCE(4Vr&X;Xklb1UnKM7OuTbv)xN1m4=m{5VXyB z7#kEwCz$ad(h^xB_J2P%_U!SLDSm-)?(p;RWhBSU2t9GI^V@RL`!y)b@&Q9MIv$#1 z@)EhiBO<d;ql~iGnt!p98{vk=eC81c}2rz z3e+polG@_p;}=mgiq0b`d;u31^hACnQuAlUk9Z9Upv+lTV4GF z{+PB+yndXke&n(HIgd4aQ`?O=uGP8|%x{)V2n$?Vjr&Y)L% zXENLLlcY7Mf@>+e&9yXn6WKPlZf3L!_xB$wD@~|2sTp>O;RM*yu_QFuN-opv=q2gUdvS1CmGbAbeC@bi_Lx%r3HS!SEq47wspD( zTWMxwXUnHLVpKsE$Vjp=-KVL_*n|0AmBxW59>6R?9z~)2_Y6#<*PKhQNm9tQ$}CSI zey!Ba{{F%OJ#Nz54WoArTmnY8=k7{pW^}DN)Y|mA*|hZsO=*>LUC|iY&G$&6KZq^3 z?9&^dF42mw5R%qp(e^~a`s+um++{6qwZ=~ z1U>`99YtiVOHVl^9Vh#(Ik!Fs3#S?hn$Y`N`wO{%VXh(ocsIDg&owoBv9RE1%;cd6 zhVBxVB#|+mFPH}KY625Qh!H3abbVe&fvltOBgzvh8dNxt@TXvqpb9Tr*785^n|_-GyNu9e7f21Ff|KbU<9{7 zV(g{9VqPKgV7mn<2hjz+y+=b6lh~i7gBhG|Jw4}Nb?0LCT|nfB%fg7#u=vXzK%}JE zV}l*+>^2CHm0xnb*)F;BdeR40?*4cAv6$(?yhK~5XU`qA33fK=?{rTwIT)|Ht<5vN z(|IcrUT@lh3dv^gdG{$Lx*t+q2jPI`RIcdzla$AmSbVpW@_6Ab0*;-*NnCPca17C> z<~S-;^4P4*MrxEA`Zp#3KkGi_L>h7@$TCQIczLw4YR^f>T7!dsE&GE;Qy`4gtY1dCR z@PXxoVXO_;Crfn8O81N#N+Wk70|cqCgjg~>oUWm zDp!NpVk3VaE)1MV_y=(e-BT;0QBf5S^Y4wezh=yS$dmFlO8F^Xa*#;~OP^c(aylQK zKfG*8KOxS4hg1xhz~-lmnh6ca%w#_xrUjeW(b=hMWTc=$1>|%Ujg|L44b>f($Th5e zY4=Mn*<5#QZON8Ftc!rym)vNkB+WAw0=6zPRUVxzXW%7&hMGS%mcOy-3|VM3xg4dM zrHDn*KDqAm3Y*Ow$JDzn5f(aGdbfA<<st$em;CGv|5p!0s@txuiZ+k2q_o*5T~IpG2Sz`jb&(SGJdvig@CBOn9dauqfQthF&v*_`3kVqA~>hFyZ-s zTvRf@nsNPITF2&sDIx9#hTKAc4eKnZpCu+K7i|K17V1|zg0KfDIl8Ijfv z6)A+*_+C68)1R5Xc`EK-RvE(~3^YY|j%yBGt+Syjc`Ugnw!U#;f#vAYqeziV0JsE( zdMBOI<$A;Pap{V^lR{N~DFp>5&l)nAnVW~t&hGYz&VOy`$)OrRUOkZSC31r!TrquH zx_0`FY5?_+a=RxRg@)SWjr&#G>#2AG6tuJikrlAIDwmyelu(g|G#}s}^JB?3P)%3N zGpM|rNNJ|4{c-5`_8S>u@3(qp zoT|ogYzIQCGj3oEVWkdrLYb8D#kZ#(B(qf+gk-P>#Igkw1`x}~9``_$;Yb%Uv1gY24Ip`O1SD8E^=3VCd8bh2?#dy zcbm(-gu-)3_3#=Jn!51@fGP%R?y$@H-JD?U2EH(`3tfHv(?4r7e|`ORC@A(~{F;;S zBL?v`LGMasG;iMfbiKL$i#?ZVL*&I!Jqrkc3*QP~Vt>-o-X6?sb-dBN&5+77p1Lh! z+VyKnRFcWk+>z3un>Pj@4}r;vuCJd0_WIMU{J`FGx&{Z;ue3>9j{5@tty*om@oQ?T zO-75Po9?CEt^Rq$>F9uk+@e+-ydD4&CQqG(`NV_YM<6hLTymAmFtmEXarwzfD}JBF z#RkHA{^pIR54%&t>$Db0ud9O%B3`Sv21%BkE7$IPJ#~_dD7vObPda@EGlC1y0zC?U z^|dkqMFILxHpNlOC!9*J5v*H;!b-3nXd(u!iPSgowN|&G9(5PDjXf9Ylllm<*w)rN z5CEZ5m*#TuBU<_)0^r?NF4Q{}4yGml9f_Gbvyfig zHax#Dk(FibpzWj7XmNUYn6=B!=Fh1!N6YKYR32p6aGbE7k`PR6R8d2};@Fe)^gU8M zYCO|gqSvo|jl8Ed{U}B8OA6V8{(>XVFR`SkwRXBkT$1!*if_O?aZJKU~f2}Ez;j@)P_(I4v>zLP+bvaEU&QD92QLm}{NU~!zaf1KkN5crG`zV}Ea z!IaZkZ1F-f1P?Tzu|G4A{2%_4wsi4m5UNRfXRyuk@HtEj?hx=pxt*)*vG7NS_W+kCS1CjLOUsKuw)M$$t z(bFvmB`$#7C2lj_2+Mlz|is{#sGgnxY zV(!bcBC62&mpbG~1}dseWRVJm%@5y(yFMR&K9Xx&+tjE+NRj_EB(Gt%`@l*0^KRdw zrbkoCIu-rO+e<1U&b$n|pHT+^XfO_!)JYqi4x;b(GB`;O9pV=$#bkcn#wLaUq44tF z`83orpz6s=8T|PM!bXf>9$L*d6+4uRH!GHp~y&TrXdRE>I02dqT+u zhedJ@2#2t+hEPDGCPhZbn9|O9Y5e*{ACZf`zbSj{bu7b}LU2PZDJp8`Xr+qiPz8dN zh3*WJLkuxz$wW^A(S{AxVthWeqNH`(-;_8E?k`!uywb# zkdgSJ_?3bV_9Oawhl7nB18|ofTwG)Yjf)W`iVcm$b^Dke4WX~q0AoLbHbx;tV2eG_ zM5NX_R)k~49{agFKn1@TwXDuiflQn+RR5hZ)mS0#p<(h8k<_ag!D{F8DUk3h8W`|b zRP+loOscGlkucR#(@Hmo~OS zG8EZkVHGBe%;_#(WW8qn@%7+b7O)l?BX0!QMf|e3k=<65h|{N^>mtdJK6q5-{hm?& zfT1c3Rd)=8qBJ96&cNFGzsd84gW-V01o~RYEZ}8g$C7v=3N(1l}$j zv5w^x2*NQb(O>fFP^4bmEn=mIX$v4HX@(Ud;#s}Io&}e-t)w_@JIqy@(8r2abtE+( z-5(a#_v8DEmEWGKm=%9X*p)b_^7HU~DYktAK$K8Z3jm{#l99rnepH!^ND3acfbQRA zHwK+dG2)W^Cs)%U#pTqF(2`v3so{`}=cy`EOT4s9sWAT#2-RI57Yvo^4EKNTw~`Dg ze$o=OJ`fzj%!xMwj+rkDg_6nF&Z@ApS{{3U!sm@PrGTJR^{6v>WbMuJ?LOzwWJbCs zXY4@WzX967;gXP$0JC4@X`MVE3$EdcmBx>_Z+$6jM43cIMa8?{A4wn|N1r`p&`>tt ze4`tqcrV~@(ANT|RUOXy{V`8f&RjgKoEGB7NP?KeCN^y+uawn>K^NYxOxcHA!YfODqk3YC_#^j zgoK)|E*%n*OL||ft6>g_sW*!_`H)$iIjgx}ia)*0S5I2%%y@7|WW1qgFd_dJX9GL| z1X=`_Jo<3uI23!h{jL?yVEt8$k;QchVos4QgOcY=mNK?9Jm*^*tGQ#+tOJ2_2kV*+ z?wVY3FE;>W@i-zvjlh@0)C-W1@OLX(6gu2{YHh4}@Q(5ClNuz&dN0Ew2Qvx_@AdSs z6G;t7*X-V*2r&iN9wUjlaG~42&P}d%-HsgaEfsXcVeM<`)90x#- z@t=;qPR`iHY(ZxTS!*Z=EI-JBEN3$`u;c`${bM~(-~XpuJa5F4s3Le9bPYr`PzAg< zD|Gqm$Sq++m+I#bRbeIW#>y;OJgO$~t9lQS7RfGuV?@6`UL0SCz!#>^sa0Y4*XCAs z|Dq>uf1w43Lo|+WmT1Q}?@|r~IgM#1D;*B{1U=^!2sse$Mt~cz#d!8t-*p)-e5C69 zcVn@6@$Yct6$69t3{JqBaRR|CAzYM?=uDr^b+S?KBWoJnpFy`r?igKwW6qn)>5XR# zsRNtL=&uZLxfCSM_IJ3mPzK(=zQkrKF;=J_$ zmFu9sf0Q)`AC)vrAHs+`qkjXe>pD4vCs-}J0D)?2df7o`PW%2Y1P zG+5+WixVK0$G&UU0NAj?4u5}f#T%Y@=p-mYtDX02RhAm~dYS85;QPlch+6?SEDXe0 z+!4Ege_`HVme{LZXS(^N@agJFm94O);EXz)BjV!wpj$<%N}{^eZuDYYVz=7tSW9m& zXg^#$T~MG;NY={lRLHxsW*Gd*klk*%%!dOckLoF5e*WrOrmE1UhY)E}XSLnoYOt#& zn*Dz*fQm|^c`>6YkmxMng=ix$8fO2ccNm2^Fr6YfWOlpL$z6>;ypsVqu}>#$ARKVt{gpAFDxph3?g>brgG^Jh7}? z{$!P3d6V>c@GQ`N)RYjea3CKkKd8R#u=@DC;1Osa9NhnKbp-j(tqjlKB0F(_=+4#m z&6A^TL_vc)nqe2HSayr1=;S{3mcG0{ zu%_vjTES-EB)5f$Hs_8D?6E_HT~u;o=rG24Oo4p=gkOAsyUQ-T{9wk17#0;~vNYt5 z0Jw+6ZEl5MTwIkUx^6z2=e&Ku zRrGA|(_~U*UOOTupaHM|#5XWth+h{$SQo1_*&OAx;XHTFRT_X4MX)f?^JnGd`;way zE8^>pu5Z{zOCE@+n)#a7|FuP$l4QR>%!nf!tNf$~Q=S$VYx^+W-}S-x{>6Ctx31QY zK742Z8kEi%a{O|_{^uhyRB|Q-U4907dY*#Rp$C1`4g#iaK5}B$WjrDpFaYr)Eg88d z5j&m_T0rC1jWi_hY~~<#mzJMhe%CxD^RBb-jl`Bs)e$(7yZidgOiV!c z?0^ShzkizLNg6ozL4-kxzGVXF0rTS{3_3r=W0w)%J+!C0iqw=(O_kWP~O7 z<8lU}h^R3+4MHjf+4sBmk}R0Pk78ED@qoz?>n&mFId;q(3f!u50#dppchmY0>+kwA zAhS3o|0YJm?B=!C47^Dl!-O~l!VU{R3~(^etM9Rl)IkCSxVd+>Rr(G&ad>gZKEdz5 z*@uTIVg3Q7O32+zOipgwd_f$4K)<=OqmV0S>$tq7>p_5J>FK8-=p`7r(Rc`SfjYFi zMZ%PJ=GwSxQ`KiPJ}8Xjg&ESz%SChMyC-}StGv0*OjlgA2C3RL{5(9OA&U%kJ%8ci zMZl0plqeDtb$FXr8sbw9QQl zzSK@nj8kAFF*L+%vhQ}Yns3-S;fuFMI+?GMtGK0T{*tEAXUmM*$mV2D`%xTXC(B0^ z!$++on)Qmu$Vy*As$McLLE9v&pnss_WT9{sW&62X@OC)DVac>4A+6IM&_G04}o7{DZtHur{8`h+$|F5#FvJKlib`K6v4lC zWzh@05k7Fz%;H1?abj+VDHbUBaR|(xd*$LW{IZlWXdvPD-$?*I8D>r@xmMNquzL1z zS&edqaMN5)n*}+{Aso&R*xJdB+A3|jTiRvs^thziv9j1C(pzg6htMn4Rdwj~XJ1*% zf)K}L&}Zd%h{dz4+Jf#}Gd}&1f#>zzdek@l9dLsuC)b!1wDpv6_eMyoO?cXd3>XDQ zb_YMFDu1I_C1)n`>FLGYe^ye_o*V`zh6;Oo{I7*k^1N$_Kfc6Wmsp>s0@oMxDLpca zIZZK!^L_^8>Ki;q4OiO4UDNJT_~!gaGZVAM*4y3BNB}L2tcr4l;E`TE-aD%D+uE6!m|H=?fUl{F>ur-H!^>eQDqHQnvc{Hn06_IXd~PgEqV46eErxb}$A4nr754nY39Pd0 zN-?iy0e;>1E#tR=XA2^TXBip(*bE>FfMT=Ejm@Z>xq%P3)(zjqWU-CkpYT&Jc=hUn z7-RE5P>=Y#imFqqby4*rW6M$IiBLWO;e)+Ij7tPOji;7y^3m$cy+kF4D|)v6vajf!PASE_G##!Z1;2MJ@)bIT)GM6`M^5G z`NcO3O>(>L+>}`RCBEy9ZclHrpLWZrEB!SwV-W*_#3(*gfD-+bYp^MBKz?EPlOCwNjf2stoUuO`Smlsm*U z`?Rdb@^9VTv!<@lH>UYSBMqItR{S;o#`wOSwl+kNj?R>rn)=DX-I%W%kpg{Xf*--+ zJ1;m=@k@4}-LSXkmKSi=GrVAR&Y{=(A=7ud9&o1r@o|qT1*D1;K3?x9CeLkRv<2>S zt5VRn^kyCL+m{qV8b2&}0#rE%wo(L+Rj=t=i5S&!Yvx6pO;hpaTouTbhP*+)VC!Uv zKjtvVRP#HNUF^818|uliF(X_NVRJBte1@LtgYm00roe}R;wfs20ZbbgR%(Gy0``R~ zd}-?Wf%+O>>z+e#-e!O7lk(x0`uQU3@y|FN!yy8eU{lNo6*{2tzZhfjeRe8E^Jb}T z`50Mo?U7ni&CbgkBdj5iNn#v=Z7aA|%P-{R@9N%K1FFDW>vrnWFO1ipUlO$p&7>;N zn{4#;PfQenTtmgul7m3jMk!O)FzUje< z&C*_xn%`xhtp)K8`f^j4tx47 zUPnjA?^Qv;{M51Y>bT@Z{sRz}jyDvFjbRSlb>GY-;BEg|#d0#Igvx`<5M*5VLrbraN;W+eB#AocvLw*&tuROxHf&&9rbLpD2h5KfD!e9A?gDR z++Xj?M{C7ame7jhNXLHz?L`nuuCBrt*7Zin)p^wQN)t2hytS^jtX&UPKqWPI}T}-_&jzw2@rq3n?GZ_>7G54j( z_pKZPR6%jTX<_65HO-CIZc|GGx;5}ZbOjt)oZt%B68EfSA$Bm~ZDdHEj0PC>7$1Abf1 zywlH)bYB$NRm${R^aVeS{L9+0vArB>-gRDc72$((%{|X73lkHL0DvfUG9`^~NaSbD z?tW~0{lfKiyHcSxyK93lvsQ~XJPU3{6{nc^^|%f_O6cDa-02BQ~F?dol21;@%525U#qSr@5bjZ zL2Y|-8X!*B&OEDg;U1t67r@0h%9r-*1gcCE+MlqEkJOPP=HP$R z87%(Zq06!wpzn28mei>PUl?;zvCxt({As(i`0XM$3N(2CGtUylVCeMVMQnEyNBvtn zhELKFKT(4L zg>|+nUTDdW+#BD}1g-Cj+&}Zh`Tg*on!CD!Ju-XCM6`RgMdeJ%>$8)832tY$XvNm{ z_Ha)6ly4>dC+)~1%d4tNUNi2Bjir1fw#ulMr6MC!k*8Yb;o?t1ajFMRu10lHTGG7;)0oA>DLEZ=5>pv&=(&oGOh7PQFBX@I`RR_rxJ8IOjNy{&{*) zXWmm>#H>+KY@wJja4Y;{tg++6Gwglz#Z0T_M>~r*S7j9*nq$TS!33zRM^8`K#pAAg ziA6}pO4dvDH88r_c}ox_*z7CNwR9NJe{nyOSL>>rgx%m z!yZ%|j%b(?g_2ci)ZT*27IlSzb4ZH>V}ki~0v>yWT>`bII25$Buvp97DPZmO zO)1lu`2A4kfEVCu%|~4Z$HHRz_cpzW`=W&R0aHv z1wMT7n>`|T*3&?o@tlv(IFg~pThc#eUgmRgX38#Y{M+??6_^{GWvQwWM7`yuEF^ROHkjwC zZNC2geZr2$Mjg4shRy-BC3CXp-9$^eDl1Y-1Z_D{cla4I5hH*wcz||A)_%e~QE>H< zEK6dF$X5t-VL8r#Y|v%=EHqGycNspU9c;Zj*VldBzI@(DgX*)`2eED8C&unVfd-Y!WM6!FrWnFd`i8l`2e@|SEj-}c!Fx&N|;#oYaB` zYiF{ub!RU@KG&s)Ks&IcKnVE~KZ6dcWShVB2&yeUF)^(CErL`v3)t4tIQRi6^dAoU z{gsJek_5L1!%Pgpo=Z3eL`8FKo5Mc(r9Za~tl_35CHR!kb^0Cw49GD?o8y%3SEz&_ zHU=$;hcG)^nI`NEH3@_VxMA=_xw>$fR+O5V=A23D)^&^A%KH`}$WGl?=0KeBeAxxk zK$PvY_WRt9ixb3xnm5W5b2cvOq{#428%FB(lbd_P!_WNn*6QB$Jp7jC=gyk(D`rkk zj}J?F?~^<5twlYkKac&;qolH?>d6Mh#fW5@l)W0U>z=l9UZ&xyk{b8 zc%@toLtZx5z)kM?k987-rP;UIp@a$gr(M!6Jd!9ta9yDvDs*riaWr zp;=;zgCW91DEVg0bt(XkT)5v&n5Iz z@(+*`-3h<2Ln8(%J+re3(gW8rzSs{6*?Fn6(Dv+$VMyjIAx^t zI!R|mzsi~IzbP9>LQ;y3E@zv!?#~#U8;9qLpdAH24dNZl!THv@8&96y%*oEqC@PAL zh&V(~Prn0PlBebwgyXSMT*svkXAc?^Y>LMcjIBrMiW&d01M}51c<9@kxBqkY5b{n( zQh9B}7V>R<@1A`*2rhpZJvC_%tXT;tvr)8es-g{U2c8U^e;`ai(Rx1Mu~)&EfcCwz z)gCvKvZoU*Tj3+098b8~f9MeDMeUfKg?&>q#F}U&Mr}$QsM{TrY`w$oX&jALPXucl1!uFo!>LLVXNb zR$KLG13GMkoPV|KL@1K}&{=m@%D`9gE^hjR2UqoWsJ5u@xsOjY;Jw(1`-wa;3;`qt z3?knGnsp$skAL>ebMM|f&{Qv8zQhU^`bJ1F%-qZCbW_t38X0b=8|KNCcRTpTa9hpY zWEU^#?^TTuaK_XQdI`rf0We;~yJpOnh?yzr@qP_SBaQD5>_YszO|E0F!vTDLxwy^U z<>7h#y;6C!>>bhHq zjh5ZE+En?f*Yx*+{)mQr9m)Yg`@0%4*WWRj>2?GY;;kWO!9J*QM%q9Xy?7V^el1)wkJeU}a`@dr@M$T0@%j6En2j z6%|c{^NB#(5@2k=S%ljXLk)q6=H~}My~o60(qgo7u7da&JH-J)WCI~=NK@+sMQ~K} zc*;5-DWyTDx>g)yh>&oIljx9qSL0rd-k~d z$aA=-da$X#}sbEm%IzgQDuzGxvdcRJ=Ud7doQXK76N^EZEU?DwtOits$`saY@ z@QjAI3v7k;y*IWKG;QK`?^{miWHi$?F*mP>GIS4tT@C%lA%jd^N36~^6f*CZKFb)n zokNf*zp(CE^AS~-Iaqb!Ie8Sl&EGu%&#ZG8BRSGIzwrBC{HabASYNLj!9Zu>_^NZ> zBQMW?dMRK{<4Ba>Qhj~Axb%1CC)*THU z8a9M8_x7q@yh!=M__pKQ2xFf2?=LU~%fjK<{H=xTP2Sja_QSp8`aJG*=d}kze78oO z4vqTGEzg_r1?NpcbUF|9;j?&PluVD_-S_4kM#qwk^OygLscTCgcO``@2a;5qg6TA-72 zm3DZ77VExtO^Wr^%{7gai(Q5*>fy#^2mdOYW=x&m0d9^kz#vSOFq{fAxS5DelWO2N zx^@=MXTCcZZsQt8vOd}VG)`g&ZI+g9sD7IY4qkcNvl1R0*o8C*vgA(yt zCdI<>`-ktLV?CFyTw#?+4H=yKG*#@D;3L80jR0^~)Xtw{}^PwOkG);4`iM!NRij(*2w^gx=BqW6SHs5E)7I<-6XXp6z z_a2ASn4AIwt79g+NAJaRDFM#R>RDQPYOkjm{V;8pfA0n7W`Em(FfsYF{`u=f_LsI! z-K^LbMMb9)i_|li_u#4Oh$!HcKC;V1a=@1KRJFgR*KCd9-8tW`2J@VE6*eE1;_{5P z3|C6a@<5Aw{7MfZ#6d$PTMOO&p`c^cpM@%CL`rO(U0ttMZWnSrv8Km~0@?`-0o2Nb zCK61`gFhy+QlEj32k3?z-g>x!nxSjHcU?GJ*W=@EuVdO}G$lD{$qcYUBfkM*cxsIy zFZ~glCY&AglK5oE$Bqta0s%YsZt)NbCG$J=rM>Nrd{&hR5&M=xp7Z=(SF?dNxpK#{ zVMtP()R#$pfwFMs`w#;?BzmMjA|uPC#5Tlkm&VCxVac&SNFP-~(qw(gKMe=Ho@OhE zF^+Gp3|g3v9$H_%IkciL>tb&o+uGWTJ*WQHucy+U2Klip3{#@-(md~DUzWuCy6PsB zoYHgi0}h&mH2DiQ&xdHpo>^PmIg;AEa*((x#Ge@f)WYtwT*w8ue(UcJUXzg6T7BKBl&)DgOyWp=^c@l zb?3w9w|_A3FY?M3->FeBOdn0p(g?VDe^=&}lQ@9C>ffj!bd$j(*x1;Zc1!HASybK9k`+E13L2{VkLxrAV_K~gK}CxX&Y zopXdtMf7HVina)KD7IWV9xJT^)K2%6yGO#Rg)Rt!(SpF&RjuVzeZj5`X#?7_f)O(u ziyByD{t#^itvKw0RC4K6RZOaFkO9Gyfbi;>+>5#o zTW_YIAJY)s+7P25(WL9iD)*aJ#+jH+7Z%9(Im7r^)X} z|8DM`nX%tvPCnb0XyNMWUr7l(`{$Xiw77d%Ui#lCJw=gCyUShgT*#hnGlN$5;~ zNDI^99pe_~Vm{K?vNB_-)!#7K_*ThX&}_%5Mm+vCB5i_x$Wa_umpZ2+CzYA)>6%M^ zo*~KSIPS~8Jik}_yk;w1WXAE!W$O;%-LtNx%P!-zucFQc%aLvcagc6Bjwf5uc}Co& z`21b4_EmW8aD-D*^Ek$GXn*}rcPOVz5FI&qvB0q(`pllPGKd78mb8YxJ3ad1_KR_5 zrs~cW2K!5uiqCDCV%SXS2?^nZ83g(e;qpEhbWTu*7F1Twex?$Bsl{7!nl2{pYi~}t zO^xq~zzn^0uNNFEQ(l4@S~I?O3j_}gl3WNdl7Om069_x>DK;r_VWxcRGJXgiQrO3S zuB_Kv6k+4y6A_un4MH?y7}Px5glT%sA6Mve$6_hqlj5+i7b-i z+QiL#=h;48Sq)h&@!56fT}}Lnjf44ld2z1-zx}@!z*js@*`V7+szd!#Es@}^%NUT} z*NrcBV*e}IBlTOOOKH*52PuI8H8nyJ$3#^)sWNG!4m};oNSa@|q@}X;f`^=lQscq= zDwUb;=V6VVIhFp+<2OwtF&ZYSpqO0?Z_zPo>W4snFd@NW5!RXGJk>!Y`S(L|U-`KJ z>`cS+eCJAT*Roy_@O10s;+)XXZE=cbpiN-^#m*&1`q%-@e)XR^nHE~ddOxSeCoU~t zXJIj}9_zYOx9UBh6gxeC3#%9sy`j@lCRHiPq1~^xXGVd^H{s=@3l=WHZ(im9a6WPS zfV_l1!*u3qaDJQX$N{lC%o)spB;GLR$XAX7C?vN+z=9dbkjGW(DWcp#X5uTABH*Olg?cCpddEQ_?s4pM!H zWf(f06E@+`tYNhg37nf=gzypUBWQk(*!H70-bn$W5ET{O_@y9e0=ZcHg89Xga1g;rx&?mLEw5jvilSo~sQ49>u{<3H3 z6RyZq-lC{V9gSS+tlnPUd-o!)j#QZSC!ff!{q~IoHBq}sS>-QX()n=WpoIlBRF`jJ z4c#p)dV-5jd2e@pmf2wf>3bD)FY7vGd9^ubKN9Y|^#ATW+Oj+ag#HcBdmkdRGp+tY z!T+_Tg&d>LI8p7xtsj#2Gv=9zMttu*eLp)@dOiBE?MmCi(G^c|#h4#&{WwFUnSUr~ zm|0lT;7z;&h`!>-EK79r6aw%~lN{Inczk_)%!yRopcCWc@zhTItT}`Cyy!~ilktpS zk2?@b7c2X1#LrXv=Sr%U$Ur*tj^dKPan+lSq$Sxdp(WL8s!g{LOYgZh0W z<`E<6K8v12BoQ$PJKhF7z(IDN;SlA1A}HLt;=UF4)#Z1T*ogj&bBj8?Crih+{9E6& zoMLu#q|N48ziEjvcFqjW1#GQtxPE9?Zx1^lgXOBBAwe$$oC->I@M3DmKk1h^U(|~i3zDL+TKLmp-`{g|i~}H6_DQ71tFT{D%onY0&-uqdm0n}i zS~}nPO7n2NTE16Vl;O&z0m*Aj-DCfox=}Ay%CMiPlC!~?L(b0xvQi$>=;7MP)}Efv zo2N6&=NFlo;}jJ{=y(nM|dobTUR8coCV zKhp7By%rbByh5w&IV^M1Z2k3y!_&{r(-Q8my#GGZXX+xc3axcX662 z+c?+{k9D0{qo?vd=p!IGua$I->RN7gZ?U|TVCIc$*<;$59rd7p9h7byre{1Sx)p$|rCNfX$1LyU} zJ_hQCg{#sKUp3?)+kZYJmU;g(=KF4*24|ub|5=g;I|S^Pc0RPikTm_@kQ92jNuUWv znHBr#85uI9{j;*t{F*w7nnD?PBIBdAR1c(2uWs(I+uW}rIDP2Xo1&51^))r;8yalw z>E~JT|;^bPXb0D5D;qoMg*sO1H3K0}&7rkrI%SZb@lHy1PSKxvK6_73|X#wf_*Pio#-}RmAoHH}m%qZ~g{XA>k>9p7tE#|gO1!n;Oa092zk(CO* zaQ*~P{zZ_uwtGt7$HxAcRg_P+ZFp^NY-GU$1`h)K2lOb6`V27^`LtVO*jQzF$rg`$f{j1C zX)R(1OUut^1X-DZ+ZEZ0$vEQjvHDVU9R*8%lU=>w8y6elhM#6jKKEQhr>vRLbG&Hb zXlav6btihZVcI?PMt#g}|JWNoKzj5xUh39)4#*;dc85*QKei8{znJDf{UD@nJn<7H za+tEX^nV78J>wG-zgzE!E<$_|EH{7!!aRa_v%r9dLMd8nYiQ^|m`Yy~(0uN8qd0;C z=d-g5Fhv9v@%sT8+feDrluLps;ZSix@(~ELllp&cfB^S zcRRQQR0$#}U&7A!XKRa2jWVIG7;a5iRB{1kx8?2a=#XqrrpU31k){E=zydICaKS>G zh8$1>)}DXr6rtr8njNO5B2cIgIiaKL*|kNf9$S6CW#|jJ``)^PSOxko(xEc|nAk?I z!;fCC-m_ROp#lts%T$fUJtb8*j(1;Aw}} zD?`I~CF;qgRZ`175tZ1~b}eZe8D%#%rXUOEhKCY->dVJaWqTfZKV4hb1BK=CRP7#Q4Q4Qun>woBVyg`3V-0k5 zG7T>^TAFS8{C83*@87W8AMLhQ9B~h?#4+(U-al&<>$b;tqTl;SKVcy>b#ohW@-MG2 zB8a#Lgb1t$w1Txu_N-vWud0%CFrr}X@1JVm55n|@u~t*oKmzv6w+M##^QWq`fxfzk z>Ra^&%Yl!^mX@7P`}vZOnap(qZr(a+N{iW5!H?UunNf;n^fP45$!?fk^51tC1PPS4 zNYtzYtypPiKX*|b6JkJz=TUJ&-=n2I8JjI3bQF@X{6JqpZ?@w?; zz_|jseZa_EQNf3*T<2d{bHx9Yg!l20|AD;}o*I!f_WT!Y7)a|j+=BQkD!5%#oPX{e zWz_Y}eoCRkRZqQGcIL0Ds)C~vGNcg-A0D343SS>}xZ~l`SnzxiNl(iowqaV&cU@K^ z>h~)`07b!W7HZ4+_~jLief+7ih=2)`#=#5nA8z*)hN5ZKPc$jyM^ADWPvEE4_+Wm2 z)Cfqo2qL4iYi@2-0Z`Q#yBG0pW(m+p#Z&>fd`McJcb&g-`?;Q+Qwtqz`|P}Ye3wO5 z*~%s9K}tf_Xjw27(Q#m#O2uTwjjo?_QjUpc0N5v&SPZm_F%AVe%LYcmMVHovU$f~_ z6tggU@FtF!akUB!;pFee!x?0Dq`#|_@luF5NJ7z;5ATY?Q0laLO2`MgcV*_ME#VpR zkEg<{dLZKuWLi4TwS~+hcD3_*y3&T4S23Xvb7aQ?gGGvmq!27~X$HLBzKw*gA5maY& z+HQJgI*jjmS~Ri^C5KqFScbSir09uh2)}GZ-3zp+HP!I}uM$1s0tiig18G5f#1 zZ^rMg5M!pv(F%Vu-ml-I}hz z$_OpiKX1oYf84ZDXP-}T+_20*5M&GuR*$f+H#dKJUh2QJ#53^e93aY9>LcMSay15g z8lah{1I8ck&~U{m)=Bry zUb@Cp7&g31s&tP(gpxoA^#s$^-pU}CfPkz>TFD2)$|+XaD`pbLpoxbtTCgRK&CKM0 zHVYDbz_bYc2#^#6H`x1QC{{dz1aolw(J~rNx3xA&w#PeC5VR^N9_VU~7#2wC9>^xv zkGf5*h%!848gy4*)g8A*lG5nwM<8n|RNO?XP?GirU8HT@f8WzggPxOLpnXZAYMeo!}jE1;XG}woRVu50UnfRo+D2vJfpp69dOjc`5Gv$v!5c z2H)6-c=qqsxl``wG|YRm$l_1oW)P)e;0kagrbOiHVStiu1U2{2GNxI zhN#|t>2#s%G(%0ni?^5j;wpe{MY`%P{LGevp*Gap@R^Fx08g*SAG=wXA(meUT}#d{ zk~?60>4RWc`{TZK0h#e|N}lhZnj$E>Xb%~&G;cWnFpq%PK)O5I)4jXXx16?Er0xod zkbE-+oJNXr4lG>tNYy!P-s&2xm?9uoVle1h@8^Ra}G1d->n0+Ml|h&dfT4Zh0B!pX;CWjEwx;EG<`3ZyLTvo||X? zdv36gy?uWy>~MPueWGvKZO22q8YN}y>>LD92`+O_()L<)reB=pp=BjUTi4^tm{l-> zBJJf~KLsRMZXESYt{UAfB*rn|BWt}HX0KVb9&g~tlGu9>i)ViS7jz1@CUNE7LXXic zPtmc~#-jDP-uo5E0&wE*PPwEZY7#Jg{~Q|&p~R5BX4^xh>-P5f7D*0n=@j>y04!C< zMm&l2eyQFNn|-bS2Q=R;-IN5;k62qSs$jO_5kn>VwZ$=-i&IAIiAhYlx-5 zGqU6>D^L5aoX9_)P)gM|b@y7p0Y4m>@TvnO6w+R(;8afs;n9j!j9!s8$&#=(LWIoW zmH~auIGa5~7&Vwn6korD8wXOzUYdTe`YAbuMG`0BP#f264_YU`QLpS(fh)L@eIf$L@h%qdln%_lZZrr+T zfHp)UK*r*+dVz~d9rTH%| z@4nB_i#5+0=vUb5AQc6c1#PG;RHAI;wqQkkrJ$8SRMDJnq_-h+gT)A%3VwV}4vt9~ z8WHLZJ^$M(z;z-NFj^f+xh8MU6*{48#q z{8M7#n%KPZbojlsPFzpt*XioruY1-gN!ndC#cQbfrz0`4W|{g$OcXZ-^$4}M^s1;R z!rMPmr?`K+A!r(#qZ5knYLE-VI@lY4x7#Xa^w(Io429bhxtqk%0mnA8^GR)>+^Kbs zw{)M$raiIM*}IAv@vV*kZGGoSrhFi3FVhBnpXx`LIa6Dlt({%E6$uCl;NygL z0MJJ`u8o7m4~YPU24?o}fEYz&7cBx{&nY0#^X;2Zt$uOVC#hOI7?%wmqK&S*=P<3a zh0Q+t&Hzg_vSj%V1>=>K2cjgu{Oao>Pq>l9^`JWyf| zVQH`=fw1DuLn)lOotHh>Io4sh$M`<4L`F-o2tmiqr_dAAKi?{Kw42!6 z_an3OqilE8H_+ko0DxaeX+K2ChUzl8{vfH~gLbiYm|5-fY3(0Jd*O_R%_+|~dAO%( zg#OX&KM-#Fjkz`5*b6uCl88nPPFxJm=?AOiw_-L=k)JL+j1alaYDUH6b_gLt;G%=D z=I`8*&}!hk^IO8X_G876{-H#66rc{+azH#Fg$slUaOBwN$7@>6Js`D&i-kUIP>?MECNU7WL19}L zluN*-M@u+qY)QXmHq3+fKFNVq15sjGm@f)xVy1NI#^G`pJ%h8!bBO{g`bCy;Fi+Z>`or}k)7%Dx8gel`c zI>QvhDL?2*5}XMr2Qm9#KTT9_vW6!MeGP$HeZuDEcglI8`}-KsM7J{2SWk zFPvC^erK|3-Q-qy-1ws$N9U%B_m zP?`ng@c<$Rm1Q7~rQIiF?izj6PXgC3qxv$54Occc#)D%aig(1qD)n4+Nz|9KM?i(2S|>C;I&a-F9T8K~G^mfHVh0`;J66*g7~M88(9}E)iSS zZ|0vyUOH#ish$>d9~ZF>gkkgp%{N>F3t%`V z6ZQQFzhbUKat>0F2KWKUfE-mZPrXGTGa1UTUyqCsYzRD&aLd#m$y?l#?0%J<=CdyR z%TnyQr)S-h4|IB%7SBL$bDpm{sh z_>E0Xk!Bpw!7+qd~w73~76fsWEifby$^dxaZKgR*8VjcQwx;N0iH7P&kgM1o999n#_n zYXE0i9|b}Xw^t>!FK)YQJ3CCB`hGlyVmAMm$=X@|rBRo|q4O!9nXP@*W0IvqUEg=b z>!31%q^DFg^rh|F=z&vBJ}FR-C)OfQ0e^sn7YcR3#}6zt5dKgpHxK2;INh!VeD<^| zOl{XjMn~1Ow1PpTdXSgJn{a=Y^F4N|RJ{;G%xeq$8MVKicsy%ig-rIBG_XE!0H z27!5YQBl%#)zl1H8xHGTG)!EO-OS~R`hi>bjK^~)|rp#u(AFkEW-RCY1})mNM-GY z(aP~Lzy*=Kz?X{5&{V`*PBG?5Af$j<3vw~vg==(2)VdciPd68Ng5hR&q{KHK46+^F z<@llEaN<+pV*x_>N((i-#-{8(JJoSvxS}bj8QGxj9FCHd@6kxN?g>t5tBE|Z-k}}A zh*7w*Ap$PEG7vo*UG5w06*>5Xi(c-D=9ZQD_bc>v9lVT-*`ueYM=});x27M)%Ysx9 zzDJN_fSH}A*r0+ldovrqc6*W=oA=>e`Ue$R3>f7%jlDuC6xW4@SsXu0v~V+0QMlWf z%zrQrkcucPDM}2r6;4d7e(_g_6w`gpvUyesL>zEjArEd;C%}g=`9O#R@celw(2;rk z#F|`9=TR^9XZ8 z2CO4*k*{X(79%O;YHCC9mnp-7TLrcHTdiWA)78wbIj}k%Vf>Fx|Io_aFI4*H@U$5d zqv|eDg~a!3rHy8<07Szy9GSOxp{%fvdl&7kt3XRI#iyms>RC#>afUVqd@crm2@%)n zD?<+)4GUL|V)YQWxJeepe2=_olu9K50)ueAs^PV_$4%@x1DKXHwT}I9v);BdJ z1X9C`i;IA#>fC28wfgB_)6<~21pYPXP!5t%NBcA87ctY?8QmyCxU$l1&J~jJhEaPV zc5n$v<>lk14xtX~4AdXPthyd_hg_%&a2`cJzh;*yI{S7O;e_-;6cYsc$SW!))Lz?^ ztQCW)^gT@|LKm?69rpsg4$$QI%#6GKYx$upxbn?7p=$4onp~T3arT0ClB>GfZB(in zrq_*@#Oj^TW?hOR&r4GE*+2x!?xa_5l-7e80n(hlzQ1b)CA*E=K2hvGt8#G6r88h% z9z|Vt?G1_sQffbva_6ysiu)0@0vj@Xg!VHH-TUjK(8|aQ;|ILNi8qC}PmD4)La38m zlUh2kw-+}_eL4vxP{HCjtp&5L~`|NVBj_lFux8S+quyMr!M_I`J3SFU*2 z>p%0LWhmt;fs^0|Wa)c(2|^Yvqz?cIi;T|+=JYtwn%lW#Wn+W%*bjWE~gycTj8duzvyx!pXrgSHm%}7L4))km94jKG%%Tp>VlQXXOxU5(zXq z`7vgV8q{rzArsD4ILTG`qtcb~@r^g5>%w^qJ&&;RAKF#FYj20_{HUL^vj)D7v_72Q zLyX@o3`Xsq&k1PWmuQWPxs-S~z^S}7ow5iZ4HDs3QL#X*Cvl?_%N9Bt0f@a-RoU|FO`{V2jH+I(=me zn{Xa6Q3R!#8T|W+i^{CbMv$jmj0}aK%pVL8u?1ZyT#p}1gUnw#K7)bwQenu<(=!>l zcYrK;h#@xbGWYNGG?PUwv++*z`2%I|t&iPXOC~<<4zo@DO+M#H1ixZ#>Z7y|ALgL! z$JExgk4jeTk!bB_tBE!kibsJ$yTJPHaoh7YKzvGK|3Q58XmA+mQsN%Dso)oJ{-Ml6 z^?-~Y18wcG?->J#PqRt=+Ak$Wp3xCbE)VB}3uT|J+bm;_Q+-P$@R2v^3v%AKPYkaK2L*wOQ(L%J&L3IL%albQf6m zjg5`Rf}`%d)b%)++N<`^Z~_Ma;Az|n3v2Pr5eD_v=KrG2#Ov9_%)$pRc2|!3EJdDi z#{cdZyG=jSzEuL&Fwm)2F=?hGFlz&_QSLd8Hc*V`aPMkV=QEIMg1Hy)hOi)%FwVi& zML2s?S7OsYTG%~+GKF^@%s{C&V?CfN0Hp;7vH0%EW4B|Hee!N+T4tALO!Oj$F0JK* zj0O+uE95lP^ik>h`+38k>K}O7Q$T7^)4y!?9T>x@{%iYsC#PI_IC0L29SDafBE|YI z4}Q0oUC{rOx6oFr^Y7`6x_ZI)=Ajhle^?=<9CC%sAl($Rt7>w3^WB$2;)DYI1h4ou zO`31JKk;hi(bZx&++sbWTC&{&Kchvtd%YLGa#e==eT2Em8m1(v(Q=L-1>Lm_5LaZV zh5C4UPRN`y`Siq9}s1OE1)7Ud+~>Zm9^j2p%bL=WF^fPB;dq#;{TE}jSt48c-ixIFcVdC zCiT5+@6LmR=c4<67uTC7qx*R*y~!w4TJBufjRY$1)t?$T4@gX2yzrAr*7~XOwmV@x((^O0FlBx z0ZS1`60LqgxvJR>m2zu3+v1X;k;%?*qhl;Eg-tcMA!>Aj;q;6j<~RRAW^(RdV}RlD zLN~BDsy#aF7IcTWVFQP17Jvf{I#71+t^Y@46qGdeK%X}NTfm#7T?z=@TG{eqmg46xbnUZ~)}p3}A5OHkci&pCf!_}k zmcgUpT#(UY;2PTccV3awBnpc6@4W?;qAmBxhV@2ohT+H2p&QX?CwfurO zG0xgRmUV2L1DCyJG#GN1qAvaz?M*hHr<}DLo!#EwpEo!!6dz`aoGq>)IQ&qro)Cc< zcE!#xHmz@s%;xTWTTPDr#~4gpEhSD=XI8v%0{BBuzUq1aqzy+d2gL3{GTg6pN(`Xf z|F72w2w2s>6E-iww}*JqczKuG9%<0)jF{B+5HQLPF#2qX*!wgUQQ^Hee;XO;<~sdE z1s@@jAZr3Le^EuH$vIY7@ZaQ|B4D4-JCIe~f><({1RNPF@BVj<;r?9xmkrgJ0W>nx z`1)nyDm3J?bkSW%v4Vi0o}4@3=5XEmdI5AF3wj^T>+HVj@3vm3(IU_n+o-{ryxkji zS&Dy0umgH6W94%I)-d<>4m&6Q2H6{+K=mmi!M9;vET%=bG6_iM!)4LND5#Agta3UfJ zzU>Hz2RY0z9JmT>W_eXs7`}q1;DTG6X6}VanB`CURqT`F8N8QjWq8@`MO|@5^<)6) z`7(6}nzb|0-&|U3JFkm3W<}IH$g?D2WR#XE0@?^@1_BkVt*x!LRjk3eV{9rMPEAMc z?7QdNeraH#ztKEv6pdCpn#OWEHlf?PqDD+IF<4OIo8;hkx=tqO{?V}psXw_Chg77I zQx=MfwT0)|UnCelZ8r?Q`GP~vB^Aiz=+wQaHcgk_5lmcki8XpH@K44Yvo)L_k>b=y z0|s15FwA`I>XMczjBs<{1XdsBoA1AVEi+I6Yz7Sr;JQE*RS!loy(4CoIhF~MY5 zQvF0(zULOk1bT{uSfALEbD%m?>)9Do*%%IaRD`i~-vAr50Xz;Jo+ulM*H?n5Yn`SdStC`*~&r3fTw zMQAhp_4xDMmyl2so^*Xo%zSQ5ui8w0+4TLk{AuICqAOWkIt^}-!>@$f?qTNKquRaW z7uo-uG$Wk~Ghsb0#|j|GV2aD5P9R!*R}+0h|I7AT1jYfCbOQnb=B5gA?Zf6r;N?qRp$x*90i z!Ny(pVb@58n7sc#*~d$}b%a4MB*GT6p^`fKt2isfEQdpy}``U_^EH zPEBDuG@tYG+3ULmn6tL_YvP6J6csjSlx10w95-|vxW~lDGbE#vM*(K^rOF+20T407 z%0-9PdBy2oh^j=+@Oh7j#Uxj|yi|R7T&)Ji;qenHjl6GgE`UK8Y5RidYif!NNjl_r zTZ@a;9JXgp8yuRP?Dg9j9|X_>apFk{H3iO6i_J*f|9S*YhA}(eKbSsrMAj3C;A+#3`{&~x;xo9$Jv{s7%OZh z7`HzJ+aF>Mky%CemQrgll)bjvKnbp zKW)b-9?iM&!J(^Q=v|Yt56{RE{sTt!2YihK1BzfBK&oXL4L=hDl@qYbXLbER|rCl$0r`$ZpD`$qDkq02My%S0FJiz`v~=^OhOmR^vKUd&TmM5m_*wk=G;Ii~~(|7?5@ zye!A5sU&W+4Y-=u8?2gflBA?KIrINLK0^z<3Ku>62}Zz^$7GU7!LLOs2`1sx#bnO9 z_NuVD#}cE*Wch7k!Pa5>z|J6JZQnJBtA*?+M*ul4mK`pFQd1v@rN6JJ*zj%6U;xJ^ zr-+DQSH?pkU1s#2i99n(i0XxV8vZ31i9l2G44_)@$^rllv|m5Sg<-9u6**cmoe%Os zGTULwU)|V%gx%QQB_zy9Au{r%x5#dY>vA=JnNNa$o1Yk6AltCDqE%_A#YNIrlKM?+-}zwiTy2&ZIq9pfeR6CyP268u^*jeLBoNTN%SOB^!MypieKw|Yw#hBLA`N*bK{IUk2E~VDGGH{M0@aE|NYx~ z^SGe-}w%zne`-?Sm*5W})4#hd>=rcVqG6o8)7AY$<-99+809bWnXj z(|XFEx&Z`*fKyba{V)8SAvzFoPjY@4hc66*N~fmuy9L|^#{+TuGrpA_cGbnd@3HQ* z5BNjPWMSNZW-!_h{qIuH2-O@vxI%Q$WR0v#d*c6FmvDoOX=r4^yc%Z`85k&kImJGd z3X;j?`Mtw{LV-j18RrItd&*1v38pihEzRQwNuf`)NyE|RcUqo<4)L)@^yX_`x(h)llwiK&T^p&`Tmyp*3nr>si_NKcJ){z9YfD_ zVb!vI!kZ#7#NA++Rxd?6>cPwrkNs#;stJ?;U@Ex+x%7bP62f=hRjzOHcT-rT-86#% zglHgyxTmRi>SISH7H@T%`M{=Gl7qMqcU@)8S)+fm(6CEEPUvn9VJBeOvI_+A+isQ%oKZ05es^&`2uKC{! z%h<^M+giwg1r{!B2>5t9s({vVVo-IhPl4zuZr9RoF^iU_N~1cH6m@#~IyGvoWu?Mh zIlLo`Aa83Y??aBUhHV0kg+)$kTpgi%y#m2)MK7&a9+lg_i(l~6csyg=sC&jz)rv@5 zkxWY8JwCr!%QT+^c!~kCl7St!*z~Z)@&4BU%Evo|OOh`ti`6;1Y&lJD9w;g)2@3XS z$hk3iJZ0jO?~Rg)X@k)HSTSuC{EHH`mE)4@d)~UjZ}W2>y}_+oGxq4`Zec;=?Opt{ z(|KR7+vOq7ez~%kn60X&z4wd~ty5ZsR!*+-NaoKY^NRao=>mo?=Wl%S-jx9%9|n3L z=unM`(NQQ)F0R(}XTi{}O%L7_##itY93LNls-XcsnL*)0GNe4O_wV1og93RG z+1utr+|e}mhvGscwZMWBM$o?{8I>Pk+v@D z(nNI3LeCVhd{#&#dib{9Bhu#Bt7m98;a|(J+q7cIsTSaWvp}rz6}W#!uvp9gDdy|lL1((G9 z9Vzjd%u;U1nh2xzu>OtS^4^XK8oiZK;B$HzNb-54BmHd0(0`N{7!~09pe&u-@5~AP z=1mxcUL-FM=fX6N<^LLrh#!E67~I}c_!7Iv4Qgn6%l#>?mwp?KR`1D1U*(*B)VD5K zE1n^8EW>@VA?Rs@8bxhQFmr83q51|;#n#*mG3ABc4+YAZ_7?f+ zl`O8#rfgRi>a-$iLweC;83^f7{`5DlHjH#&$UA4+o+3F1s>;H1R)2AkV;q6G^d=7v zk^?OP0V0rWQzTs@s}d)mJ(lLgMQmtdZ5?(Jri_3+uRLfardmQMS1Ve%-A z_9<7jSej61=7tVmxNX51jS3-Vuh%6_VmUlx^HXG)V7t^mu`S6GAn@bG1{Kk_CFfPZ zNuv}L6)*S#`xzBxVk-8TA`my6*<_JW};9mcXEpfdn;8r-~4s&yJD{E-H&G9#0 zLQxq`U!oqUB??-Y*Y4pJ4e(InK9oL?SW|U zjpn{{o5{}}FS(KRZK|FPT10Y8U*Bq6(_@jiHB-pGh-%qkQn z#C>oXSaOC$KcuA5t|s{+?}_}K^2~lcN{Sl~OG@2eQJciPKbuX4m|Ts8V0t&P3zKRJ z!K?ZB*me$j?-<5c^z4oD%TmCjVsF0;WrVr)^(p_!Rz%?;gg6$KUW7V~>by@v@@@N$ zBlN1F3JRbQ4Zs)emZ9odU%}>my=Dmyk3%e!6m49Ujy>7R?RoDsLx=ZCNiyZ*_>@>Y zmiWI4t(FcZx942ayl^GJ4;_99Im~PYI5M;@%qQ|KH+mb;cQt;x)RL8rU4xMsx)eZw zC~ad?u=IPyy}szfo%-En=USH0uaGc_&|Y++!KB09WrGDjeNRu~40P6Si1FXB?%wQ~ z>HNw6*@^^|6mT&E4FJXJ!mtSc)ja+IrkTGgEmV{^WM^SOXFa%u9+(zSldqUy4%!z@ zSafuCAzI>$82yEAkn03x5}E-Kuc^chGxd?Tov~WNeSC*GS4~Ntl1GuYc8#jOTuJqS zH?n+$EsFMG?>~R`MBia

@4+M6#s9fD<~tTubG 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%0AG_)y0N7h^HE8_|3OoF;*=&=iaDSrPr^O)ngWW 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 literal 0 HcmV?d00001 diff --git a/ground/openpilotgcs/src/plugins/uploader/images/pipx.png b/ground/openpilotgcs/src/plugins/uploader/images/pipx.png new file mode 100644 index 0000000000000000000000000000000000000000..47c8bb4e1885c159e5387238a2fc2ea8d9c84fcd GIT binary patch literal 184786 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 XL|AOM`2t4p)y2D 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�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 zjv=`3Aqav1D-eET2s*lu5(devicePicture->scene()->clear(); switch (id) { + case 0x0101: + case 0x0201: + devicePic.load(""); + break; case 0x0301: devicePic.load(":/uploader/images/gcs-board-oplink.png"); break; + case 0x0401: + devicePic.load(":/uploader/images/gcs-board-cc.png"); + break; + case 0x0402: + devicePic.load(":/uploader/images/gcs-board-cc3d.png"); + break; case 0x0903: devicePic.load(":/uploader/images/gcs-board-revo.png"); break; diff --git a/ground/openpilotgcs/src/plugins/uploader/uploader.qrc b/ground/openpilotgcs/src/plugins/uploader/uploader.qrc index 240b06dc8..642cca091 100644 --- a/ground/openpilotgcs/src/plugins/uploader/uploader.qrc +++ b/ground/openpilotgcs/src/plugins/uploader/uploader.qrc @@ -5,9 +5,17 @@ images/process-stop.svg images/dialog-apply.svg images/gtk-info.svg + images/deviceID-0401.svg + images/deviceID-0301.svg + images/deviceID-0201.svg + images/deviceID-0101.svg images/application-certificate.svg images/warning.svg images/error.svg + images/deviceID-0402.svg + images/gcs-board-cc.png + images/gcs-board-cc3d.png + images/pipx.png images/gcs-board-oplink.png images/gcs-board-revo.png images/gcs-board-nano.png diff --git a/ground/openpilotgcs/src/plugins/uploader/uploadergadgetwidget.cpp b/ground/openpilotgcs/src/plugins/uploader/uploadergadgetwidget.cpp index e218704b1..2897b7e2c 100644 --- a/ground/openpilotgcs/src/plugins/uploader/uploadergadgetwidget.cpp +++ b/ground/openpilotgcs/src/plugins/uploader/uploadergadgetwidget.cpp @@ -752,6 +752,10 @@ bool UploaderGadgetWidget::autoUpdate(bool erase) case 0x301: filename = "fw_oplinkmini"; break; + case 0x401: + case 0x402: + filename = "fw_coptercontrol"; + break; case 0x501: filename = "fw_osd"; break; @@ -813,6 +817,7 @@ bool UploaderGadgetWidget::autoUpdate(bool erase) commonSystemBoot(false, erase); // Wait for board to connect to GCS again after boot and erase + // For older board like CC3D this can take some time // Theres a special case with OPLink if (!telemetryManager->isConnected() && !m_oplinkwatchdog.isConnected()) { progressUpdate(erase ? BOOTING_AND_ERASING : BOOTING, QVariant()); diff --git a/ground/openpilotgcs/src/plugins/usagetracker/usagetrackerplugin.cpp b/ground/openpilotgcs/src/plugins/usagetracker/usagetrackerplugin.cpp index 7c25f784a..3371e826f 100644 --- a/ground/openpilotgcs/src/plugins/usagetracker/usagetrackerplugin.cpp +++ b/ground/openpilotgcs/src/plugins/usagetracker/usagetrackerplugin.cpp @@ -182,11 +182,18 @@ void UsageTrackerPlugin::collectUsageParameters(QMap ¶mete parameters["conf_receiver"] = getUAVFieldValue(objManager, "ManualControlSettings", "ChannelGroups", 0); parameters["conf_vehicle"] = getUAVFieldValue(objManager, "SystemSettings", "AirframeType"); - // Revolution family - parameters["conf_rport"] = getUAVFieldValue(objManager, "HwSettings", "RM_RcvrPort"); - parameters["conf_mport"] = getUAVFieldValue(objManager, "HwSettings", "RM_MainPort"); - parameters["conf_fport"] = getUAVFieldValue(objManager, "HwSettings", "RM_FlexiPort"); - parameters["conf_fusion"] = getUAVFieldValue(objManager, "RevoSettings", "FusionAlgorithm"); + if ((boardModel & 0xff00) == 0x0400) { + // CopterControl family + parameters["conf_rport"] = getUAVFieldValue(objManager, "HwSettings", "CC_RcvrPort"); + parameters["conf_mport"] = getUAVFieldValue(objManager, "HwSettings", "CC_MainPort"); + parameters["conf_fport"] = getUAVFieldValue(objManager, "HwSettings", "CC_FlexiPort"); + } else if ((boardModel & 0xff00) == 0x0900) { + // Revolution family + parameters["conf_rport"] = getUAVFieldValue(objManager, "HwSettings", "RM_RcvrPort"); + parameters["conf_mport"] = getUAVFieldValue(objManager, "HwSettings", "RM_MainPort"); + parameters["conf_fport"] = getUAVFieldValue(objManager, "HwSettings", "RM_FlexiPort"); + parameters["conf_fusion"] = getUAVFieldValue(objManager, "RevoSettings", "FusionAlgorithm"); + } parameters["conf_uport"] = getUAVFieldValue(objManager, "HwSettings", "USB_HIDPort"); parameters["conf_vport"] = getUAVFieldValue(objManager, "HwSettings", "USB_VCPPort"); From 62a585c18838e6028edd34b31fbde62addbf8927 Mon Sep 17 00:00:00 2001 From: a*morale Date: Tue, 14 Jul 2015 01:59:38 +0200 Subject: [PATCH 2/6] LP-5 - Include missing UAVOs, add removed cc fields into hwsettings --- flight/targets/boards/coptercontrol/firmware/Makefile | 8 ++++++-- shared/uavobjectdefinition/hwsettings.xml | 4 ++++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/flight/targets/boards/coptercontrol/firmware/Makefile b/flight/targets/boards/coptercontrol/firmware/Makefile index d58b57e64..221820cf8 100644 --- a/flight/targets/boards/coptercontrol/firmware/Makefile +++ b/flight/targets/boards/coptercontrol/firmware/Makefile @@ -82,8 +82,10 @@ ifndef TESTAPP SRC += $(OPUAVTALK)/uavtalk.c SRC += $(OPUAVOBJ)/uavobjectmanager.c SRC += $(OPUAVOBJ)/uavobjectpersistence.c + SRC += $(PIOSCOMMON)/pios_flashfs_logfs.c + SRC += $(PIOSCOMMON)/pios_flash_jedec.c SRC += $(OPUAVOBJ)/eventdispatcher.c - + ## UAVObjects SRC += $(OPUAVSYNTHDIR)/accessorydesired.c SRC += $(OPUAVSYNTHDIR)/objectpersistence.c @@ -122,10 +124,12 @@ ifndef TESTAPP SRC += $(OPUAVSYNTHDIR)/gpssettings.c SRC += $(OPUAVSYNTHDIR)/hwsettings.c SRC += $(OPUAVSYNTHDIR)/receiveractivity.c + SRC += $(OPUAVSYNTHDIR)/receiverstatus.c SRC += $(OPUAVSYNTHDIR)/mixerstatus.c SRC += $(OPUAVSYNTHDIR)/ratedesired.c SRC += $(OPUAVSYNTHDIR)/txpidsettings.c - SRC += $(OPUAVSYNTHDIR)/mpu6000settings.c + SRC += $(OPUAVSYNTHDIR)/txpidstatus.c + SRC += $(OPUAVSYNTHDIR)/mpugyroaccelsettings.c # Command line option for Gcsreceiver module ifeq ($(GCSRECEIVER), YES) SRC += $(OPUAVSYNTHDIR)/gcsreceiver.c diff --git a/shared/uavobjectdefinition/hwsettings.xml b/shared/uavobjectdefinition/hwsettings.xml index 83585105a..fc412bd49 100644 --- a/shared/uavobjectdefinition/hwsettings.xml +++ b/shared/uavobjectdefinition/hwsettings.xml @@ -1,6 +1,10 @@ Selection of optional hardware configurations. + + + + From 1ef9fc51d6da738fc13524189958195deb0d6a97 Mon Sep 17 00:00:00 2001 From: a*morale Date: Tue, 14 Jul 2015 01:59:59 +0200 Subject: [PATCH 3/6] LP-5 - exclude AH from outerloop --- flight/modules/Stabilization/outerloop.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/flight/modules/Stabilization/outerloop.c b/flight/modules/Stabilization/outerloop.c index 0517892ff..b2265abf6 100644 --- a/flight/modules/Stabilization/outerloop.c +++ b/flight/modules/Stabilization/outerloop.c @@ -105,8 +105,9 @@ static void stabilizationOuterloopTask() int t; float dT = PIOS_DELTATIME_GetAverageSeconds(&timeval); StabilizationStatusOuterLoopOptions newThrustMode = StabilizationStatusOuterLoopToArray(enabled)[STABILIZATIONSTATUS_OUTERLOOP_THRUST]; - bool reinit = (newThrustMode != previous_mode[STABILIZATIONSTATUS_OUTERLOOP_THRUST]); + +#ifndef PIOS_EXCLUDE_ADVANCED_FEATURES // Trigger a disable message to the alt hold on reinit to prevent that loop from running when not in use. if (reinit) { if (previous_mode[STABILIZATIONSTATUS_OUTERLOOP_THRUST] == STABILIZATIONSTATUS_OUTERLOOP_ALTITUDE || @@ -117,17 +118,20 @@ static void stabilizationOuterloopTask() } } } +#endif // update previous mode previous_mode[STABILIZATIONSTATUS_OUTERLOOP_THRUST] = newThrustMode; // calculate the thrust desired switch (newThrustMode) { +#ifndef PIOS_EXCLUDE_ADVANCED_FEATURES case STABILIZATIONSTATUS_OUTERLOOP_ALTITUDE: rateDesiredAxis[STABILIZATIONSTATUS_OUTERLOOP_THRUST] = stabilizationAltitudeHold(stabilizationDesiredAxis[STABILIZATIONSTATUS_OUTERLOOP_THRUST], ALTITUDEHOLD, reinit); break; case STABILIZATIONSTATUS_OUTERLOOP_ALTITUDEVARIO: rateDesiredAxis[STABILIZATIONSTATUS_OUTERLOOP_THRUST] = stabilizationAltitudeHold(stabilizationDesiredAxis[STABILIZATIONSTATUS_OUTERLOOP_THRUST], ALTITUDEVARIO, reinit); break; +#endif case STABILIZATIONSTATUS_OUTERLOOP_DIRECT: case STABILIZATIONSTATUS_OUTERLOOP_DIRECTWITHLIMITS: default: From 81ea0b9232c21ba86755f3f6ba04ada3f9a5251d Mon Sep 17 00:00:00 2001 From: a*morale Date: Tue, 14 Jul 2015 23:11:44 +0200 Subject: [PATCH 4/6] LP-5 Fix revert issue --- .../src/plugins/config/configgadgetwidget.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp b/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp index 3a10d3eaa..f717283f3 100644 --- a/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp +++ b/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp @@ -184,22 +184,21 @@ void ConfigGadgetWidget::onAutopilotConnect() UAVObjectUtilManager *utilMngr = pm->getObject(); if (utilMngr) { int board = utilMngr->getBoardModel(); - if ((board & 0xff00) == 1024) { + if ((board & 0xff00) == 0x0400) { // CopterControl family QWidget *qwd = new ConfigCCAttitudeWidget(this); stackWidget->replaceTab(ConfigGadgetWidget::sensors, qwd); - qwd = new ConfigCCHWWidget(this); stackWidget->replaceTab(ConfigGadgetWidget::hardware, qwd); } else if ((board & 0xff00) == 0x0900) { // Revolution family QWidget *qwd = new ConfigRevoWidget(this); stackWidget->replaceTab(ConfigGadgetWidget::sensors, qwd); - qwd = new ConfigRevoHWWidget(this); - } else if (board == 0x0905) { + if (board == 0x0905) { qwd = new ConfigRevoNanoHWWidget(this); - stackWidget->replaceTab(ConfigGadgetWidget::hardware, qwd); + } + stackWidget->replaceTab(ConfigGadgetWidget::hardware, qwd); } else { // Unknown board qDebug() << "Unknown board " << board; From 5e9a034e6e2acfbf4da57a4c397056337eece3f9 Mon Sep 17 00:00:00 2001 From: Alessio Morale Date: Wed, 15 Jul 2015 22:53:48 +0200 Subject: [PATCH 5/6] LP-5 - Uncrustification --- ground/openpilotgcs/src/app/main.cpp | 1 + ground/openpilotgcs/src/libs/utils/pathutils.cpp | 1 + .../src/plugins/config/configgadgetwidget.cpp | 2 +- .../src/plugins/config/configoutputwidget.cpp | 2 +- .../src/plugins/coreplugin/coreconstants.h | 4 ++-- .../setupwizard/vehicletemplateexportdialog.cpp | 2 +- .../plugins/usagetracker/usagetrackerplugin.cpp | 14 +++++++------- 7 files changed, 14 insertions(+), 12 deletions(-) diff --git a/ground/openpilotgcs/src/app/main.cpp b/ground/openpilotgcs/src/app/main.cpp index e0b251e09..e2eecad66 100644 --- a/ground/openpilotgcs/src/app/main.cpp +++ b/ground/openpilotgcs/src/app/main.cpp @@ -301,6 +301,7 @@ inline QStringList getPluginPaths() QStringList rc; QString pluginPath = QApplication::applicationDirPath(); + pluginPath += QLatin1Char('/'); pluginPath += QLatin1String(PLUGIN_REL_PATH); rc.push_back(pluginPath); diff --git a/ground/openpilotgcs/src/libs/utils/pathutils.cpp b/ground/openpilotgcs/src/libs/utils/pathutils.cpp index 5c545a340..7a9ead317 100644 --- a/ground/openpilotgcs/src/libs/utils/pathutils.cpp +++ b/ground/openpilotgcs/src/libs/utils/pathutils.cpp @@ -41,6 +41,7 @@ namespace Utils { QString GetDataPath() { QString dataPath = QApplication::applicationDirPath(); + dataPath += QLatin1Char('/'); dataPath += QLatin1String(DATA_REL_PATH); dataPath += QLatin1Char('/'); diff --git a/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp b/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp index f717283f3..4782b767a 100644 --- a/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp +++ b/ground/openpilotgcs/src/plugins/config/configgadgetwidget.cpp @@ -198,7 +198,7 @@ void ConfigGadgetWidget::onAutopilotConnect() if (board == 0x0905) { qwd = new ConfigRevoNanoHWWidget(this); } - stackWidget->replaceTab(ConfigGadgetWidget::hardware, qwd); + stackWidget->replaceTab(ConfigGadgetWidget::hardware, qwd); } else { // Unknown board qDebug() << "Unknown board " << board; diff --git a/ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp b/ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp index 482d57018..baeeb9877 100644 --- a/ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp +++ b/ground/openpilotgcs/src/plugins/config/configoutputwidget.cpp @@ -353,7 +353,7 @@ void ConfigOutputWidget::refreshWidgetsValues(UAVObject *obj) if (utilMngr) { int board = utilMngr->getBoardModel(); - // Setup labels and combos for banks according to board type + // Setup labels and combos for banks according to board type if ((board & 0xff00) == 0x0400) { // Coptercontrol family of boards 4 timer banks bankLabels << "1 (1-3)" << "2 (4)" << "3 (5,7-8)" << "4 (6,9-10)"; diff --git a/ground/openpilotgcs/src/plugins/coreplugin/coreconstants.h b/ground/openpilotgcs/src/plugins/coreplugin/coreconstants.h index dd974bb13..f1fdc716f 100644 --- a/ground/openpilotgcs/src/plugins/coreplugin/coreconstants.h +++ b/ground/openpilotgcs/src/plugins/coreplugin/coreconstants.h @@ -129,7 +129,7 @@ const char *const GO_FORWARD = "GCS.GoForward"; const char *const GOTOPREVIOUSGROUP = "GCS.GotoPreviousTabGroup"; const char *const GOTONEXTGROUP = "GCS.GotoNextTabGroup"; const char *const WINDOWSLIST = "GCS.WindowsList"; -const char *const ABOUT_LIBREPILOTGCS = "GCS.AboutLibrePilotGCS"; +const char *const ABOUT_LIBREPILOTGCS = "GCS.AboutLibrePilotGCS"; const char *const ABOUT_PLUGINS = "GCS.AboutPlugins"; const char *const ABOUT_AUTHORS = "GCS.AboutAuthors"; const char *const ABOUT_QT = "GCS.AboutQt"; @@ -212,7 +212,7 @@ const char *const ICON_PLUGIN = ":/core/images/pluginicon.png"; const char *const ICON_EXIT = ":/core/images/exiticon.png"; const char *const ICON_OPTIONS = ":/core/images/optionsicon.png"; const char *const ICON_HELP = ":/core/images/helpicon.png"; -const char *const ICON_LIBREPILOT = ":/core/images/librepiloticon.png"; +const char *const ICON_LIBREPILOT = ":/core/images/librepiloticon.png"; // wizard kind diff --git a/ground/openpilotgcs/src/plugins/setupwizard/vehicletemplateexportdialog.cpp b/ground/openpilotgcs/src/plugins/setupwizard/vehicletemplateexportdialog.cpp index 7693f62c3..301a49e16 100644 --- a/ground/openpilotgcs/src/plugins/setupwizard/vehicletemplateexportdialog.cpp +++ b/ground/openpilotgcs/src/plugins/setupwizard/vehicletemplateexportdialog.cpp @@ -50,7 +50,7 @@ const char *VehicleTemplateExportDialog::EXPORT_FIXEDWING_NAME = "fixedwing"; const char *VehicleTemplateExportDialog::EXPORT_MULTI_NAME = "multirotor"; -const char *VehicleTemplateExportDialog::EXPORT_HELI_NAME = "helicopter"; +const char *VehicleTemplateExportDialog::EXPORT_HELI_NAME = "helicopter"; const char *VehicleTemplateExportDialog::EXPORT_SURFACE_NAME = "surface"; const char *VehicleTemplateExportDialog::EXPORT_CUSTOM_NAME = "custom"; diff --git a/ground/openpilotgcs/src/plugins/usagetracker/usagetrackerplugin.cpp b/ground/openpilotgcs/src/plugins/usagetracker/usagetrackerplugin.cpp index 3371e826f..c561ab41f 100644 --- a/ground/openpilotgcs/src/plugins/usagetracker/usagetrackerplugin.cpp +++ b/ground/openpilotgcs/src/plugins/usagetracker/usagetrackerplugin.cpp @@ -164,16 +164,16 @@ void UsageTrackerPlugin::collectUsageParameters(QMap ¶mete parameters["board_type"] = "0x" + QString::number(boardModel, 16).toLower(); parameters["board_serial"] = utilMngr->getBoardCPUSerial().toHex(); parameters["bl_version"] = QString::number(utilMngr->getBootloaderRevision()); - parameters["fw_tag"] = devDesc.gitTag; - parameters["fw_hash"] = devDesc.gitHash; + parameters["fw_tag"] = devDesc.gitTag; + parameters["fw_hash"] = devDesc.gitHash; #if (QT_VERSION >= QT_VERSION_CHECK(5, 4, 0)) - parameters["os_version"] = QSysInfo::prettyProductName() + " " + QSysInfo::currentCpuArchitecture(); + parameters["os_version"] = QSysInfo::prettyProductName() + " " + QSysInfo::currentCpuArchitecture(); #else - parameters["os_version"] = "none"; + parameters["os_version"] = "none"; #endif - parameters["os_threads"] = QString::number(QThread::idealThreadCount()); - parameters["os_timezone"] = QTimeZone::systemTimeZoneId(); - parameters["gcs_version"] = VersionInfo::revision(); + parameters["os_threads"] = QString::number(QThread::idealThreadCount()); + parameters["os_timezone"] = QTimeZone::systemTimeZoneId(); + parameters["gcs_version"] = VersionInfo::revision(); // Configuration parameters ExtensionSystem::PluginManager *pm = ExtensionSystem::PluginManager::instance(); From 711ef272c1655701465071a094928de69a079918 Mon Sep 17 00:00:00 2001 From: Alessio Morale Date: Thu, 16 Jul 2015 01:01:02 +0200 Subject: [PATCH 6/6] LP-5 - Use a single Task for telemetry when no radio is available --- flight/modules/Telemetry/telemetry.c | 46 ++++++++++++++++------------ 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/flight/modules/Telemetry/telemetry.c b/flight/modules/Telemetry/telemetry.c index 39d681a68..d386d21b3 100644 --- a/flight/modules/Telemetry/telemetry.c +++ b/flight/modules/Telemetry/telemetry.c @@ -95,6 +95,9 @@ #define STATS_UPDATE_PERIOD_MS 4000 #define CONNECTION_TIMEOUT_MS 8000 +#ifdef PIOS_INCLUDE_RFM22B +#define HAS_RADIO +#endif // Private types typedef struct { // Determine port on which to communicate telemetry information @@ -111,12 +114,14 @@ typedef struct { // Telemetry stream UAVTalkConnection uavTalkCon; } channelContext; - +#ifdef HAS_RADIO // Main telemetry channel static channelContext localChannel; static int32_t transmitLocalData(uint8_t *data, int32_t length); static void registerLocalObject(UAVObjHandle obj); static uint32_t localPort(); +static void updateSettings(channelContext *channel); +#endif // OPLink telemetry channel static channelContext radioChannel; @@ -150,7 +155,6 @@ static int32_t setLoggingPeriod( int32_t updatePeriodMs); static void updateTelemetryStats(); static void gcsTelemetryStatsUpdated(); -static void updateSettings(channelContext *channel); /** * Initialise the telemetry module @@ -159,6 +163,7 @@ static void updateSettings(channelContext *channel); */ int32_t TelemetryStart(void) { +#ifdef HAS_RADIO // Only start the local telemetry tasks if needed if (localPort()) { UAVObjIterate(®isterLocalObject); @@ -187,8 +192,8 @@ int32_t TelemetryStart(void) PIOS_TASK_MONITOR_RegisterTask(TASKINFO_RUNNING_TELEMETRYRX, localChannel.rxTaskHandle); } - - // Start the telemetry tasks associated with Radio/USB +#endif /* ifdef HAS_RADIO */ + // Start the telemetry tasks associated with Radio/USB UAVObjIterate(®isterRadioObject); // Listen to objects of interest @@ -229,9 +234,6 @@ void TelemetryInitializeChannel(channelContext *channel) sizeof(UAVObjEvent)); #endif /* PIOS_TELEM_PRIORITY_QUEUE */ - // Initialise UAVTalk - channel->uavTalkCon = UAVTalkInitialize(&transmitLocalData); - // Create periodic event that will be used to update the telemetry stats UAVObjEvent ev; memset(&ev, 0, sizeof(UAVObjEvent)); @@ -267,7 +269,7 @@ int32_t TelemetryInitialize(void) radio_port = PIOS_COM_RF; } #else /* PIOS_INCLUDE_RFM22B */ - radio_port = 0; + radio_port = PIOS_COM_TELEM_RF; #endif /* PIOS_INCLUDE_RFM22B */ FlightTelemetryStatsInitialize(); @@ -279,10 +281,9 @@ int32_t TelemetryInitialize(void) // Reset link stats txErrors = 0; txRetries = 0; - +#ifdef HAS_RADIO // Set channel port handlers localChannel.getPort = localPort; - radioChannel.getPort = radioPort; // Set the local telemetry baud rate updateSettings(&localChannel); @@ -295,6 +296,9 @@ int32_t TelemetryInitialize(void) localChannel.uavTalkCon = UAVTalkInitialize(&transmitLocalData); } +#endif + // Set channel port handlers + radioChannel.getPort = radioPort; // Initialise channel TelemetryInitializeChannel(&radioChannel); // Initialise UAVTalk @@ -304,7 +308,7 @@ int32_t TelemetryInitialize(void) } MODULE_INITCALL(TelemetryInitialize, TelemetryStart); - +#ifdef HAS_RADIO /** * Register a new object, adds object to local list and connects the queue depending on the object's * telemetry settings. @@ -327,7 +331,7 @@ static void registerLocalObject(UAVObjHandle obj) EV_NONE); } } - +#endif static void registerRadioObject(UAVObjHandle obj) { if (UAVObjIsMetaobject(obj)) { @@ -635,7 +639,7 @@ static void telemetryRxTask(void *parameters) } } - +#ifdef HAS_RADIO /** * Determine the port to be used for communication on the telemetry channel * \return com port number @@ -644,7 +648,7 @@ static uint32_t localPort() { return PIOS_COM_TELEM_RF; } - +#endif /** * Determine the port to be used for communication on the radio channel @@ -664,7 +668,7 @@ static uint32_t radioPort() return port; } - +#ifdef HAS_RADIO /** * Transmit data buffer to the modem or USB port. * \param[in] data Data buffer to send @@ -682,7 +686,7 @@ static int32_t transmitLocalData(uint8_t *data, int32_t length) return -1; } - +#endif /** * Transmit data buffer to the radioport. @@ -804,9 +808,10 @@ static void updateTelemetryStats() uint32_t timeNow; // Get stats - UAVTalkGetStats(localChannel.uavTalkCon, &utalkStats, true); - UAVTalkAddStats(radioChannel.uavTalkCon, &utalkStats, true); - + UAVTalkGetStats(radioChannel.uavTalkCon, &utalkStats, true); +#ifdef HAS_RADIO + UAVTalkAddStats(localChannel.uavTalkCon, &utalkStats, true); +#endif // Get object data FlightTelemetryStatsGet(&flightStats); GCSTelemetryStatsGet(&gcsStats); @@ -888,6 +893,7 @@ static void updateTelemetryStats() } } +#ifdef HAS_RADIO /** * Update the telemetry settings, called on startup. * FIXME: This should be in the TelemetrySettings object. But objects @@ -931,7 +937,7 @@ static void updateSettings(channelContext *channel) } } - +#endif /* ifdef HAS_RADIO */ /** * @} * @}

Ru?x{Jg7Z?B9LgFq}8jhU|Ll8#eN_bU$NF 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