Paparazzi UAS v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
disco.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2017 Gautier Hattenberger <gautier.hattenberger@enac.fr>
3 *
4 * This file is part of paparazzi.
5 *
6 * paparazzi is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2, or (at your option)
9 * any later version.
10 *
11 * paparazzi is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with paparazzi; see the file COPYING. If not, see
18 * <http://www.gnu.org/licenses/>.
19 *
20 */
21
22#ifndef CONFIG_DISCO
23#define CONFIG_DISCO
24
25#define BOARD_DISCO
26
27#include "std.h"
28
30#define UART1_DEV /dev/ttyPA1
31
32#define GPS_UBX_ENABLE_NMEA_DATA_MASK 0xff
33
37#ifndef UART2_DEV
38#define UART2_DEV /dev/ttyUSB0
39#endif
40#ifndef UART4_DEV
41#define UART4_DEV /dev/ttyUSB1
42#endif
43#ifndef UART5_DEV
44#define UART5_DEV /dev/ttyACM0
45#endif
46#ifndef UART6_DEV
47#define UART6_DEV /dev/ttyACM1
48#endif
49
51#ifndef UART3_DEV
52#define UART3_DEV /dev/uart-sbus
53#endif
54
55/* Default actuators driver */
56#define DEFAULT_ACTUATORS "boards/disco/actuators.h"
57#define ActuatorDefaultSet(_x,_y) ActuatorsDiscoSet(_x,_y)
58#define ActuatorsDefaultInit() ActuatorsDiscoInit()
59#define ActuatorsDefaultCommit() ActuatorsDiscoCommit()
60
61/* Cameras */
63
64// re-use the Parrot Bebop video drivers
67
68extern struct video_config_t bottom_camera;
69extern struct video_config_t front_camera;
70
71/* ISP */
72//struct mt9f002_t mt9f002;
73
74/* by default baro module is used */
75#ifndef USE_BARO_BOARD
76#define USE_BARO_BOARD 0
77#endif
78
79/* The ADC from the sonar */
80#if USE_ADC0
81#define ADC0_ID 0
82#define ADC0_CHANNELS 2
83#define ADC0_CHANNELS_CNT 1
84#define ADC0_BUF_LENGTH 8192
85#endif
86
87/* The SPI from the sonar */
88#if USE_SPI0
89#define SPI0_MODE 0
90#define SPI0_BITS_PER_WORD 8
91#define SPI0_MAX_SPEED_HZ 320000
92#endif
93
94/* Configuration values of airspeed sensor onboard the Parrot Disco C.H.U.C.K */
95#define MS45XX_I2C_DEV i2c1
96#define MS45XX_PRESSURE_RANGE 4
97#define MS45XX_PRESSURE_TYPE 1
98#define MS45XX_OUTPUT_TYPE 1
99#define MS45XX_PRESSURE_OUTPUT_TYPE_InH2O 1
100#ifndef USE_AIRSPEED_LOWPASS_FILTER
101#define USE_AIRSPEED_LOWPASS_FILTER 1
102#endif
103//#if USE_AIRSPEED_LOWPASS_FILTER /* Always used now */
104#ifndef MS45XX_LOWPASS_TAU
105#define MS45XX_LOWPASS_TAU 0.15
106#endif
107//#endif
108
109/* To be flexible and be able to disable use of airspeed in state this could have been in the airframe file ofcourse
110 * but most users just want to have perfectly flying Disco, so enable per default... */
111#ifndef USE_AIRSPEED
112#define USE_AIRSPEED 1
113#endif
114
115/* These are the default Disco values for sonar */
116#define SONAR_BEBOP_TRANSITION_HIGH_TO_LOW 0.75 //m
117#define SONAR_BEBOP_TRANSITION_LOW_TO_HIGH 1.5 //m
118#define SONAR_BEBOP_TRANSITION_COUNT 50
119#define SONAR_BEBOP_PEAK_THRESHOLD 50
120
121#endif /* CONFIG_DISCO */
struct video_config_t front_camera
Video thread dummy for simulation.
Definition board.c:43
struct video_config_t bottom_camera
Definition board.c:68
Initialization and configuration of the MT9F002 CMOS Chip.
Initialization and configuration of the MT9V117 CMOS Chip.
V4L2 device settings.