Skip to content

Commit c4d2778

Browse files
committed
feat(boards): add board definitions ftSwarm family
The goal of the ftSwarm project is to build small networked controllers for DIY and toy applications. Since they are networked with each other, they can act like a swarm. This commit adds these boards as targets because they need special board-level framework handling
1 parent 77b56f7 commit c4d2778

9 files changed

Lines changed: 1625 additions & 0 deletions

File tree

boards.txt

Lines changed: 613 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
/*
2+
* Pins_Arduino.h
3+
*
4+
* ftSwarmControlUSBC hardware definitions
5+
*
6+
* (C) 2021-26 Christian Bergschneider & Stefan Fuss
7+
*
8+
*/
9+
10+
#ifndef Pins_Arduino_h
11+
#define Pins_Arduino_h
12+
13+
#include <driver/gpio.h>
14+
#include <driver/adc.h>
15+
16+
// my hardware features
17+
#define FTSWARM_BOARD_CONTROL_USBC
18+
#define FTSWARM_HAL_INPUTS 11
19+
#define FTSWARM_HAL_AX_INPUTS 6
20+
#define FTSWARM_HAL_MOTORS 2
21+
#define FTSWARM_HAL_BUTTONS 8
22+
#define FTSWARM_HAL_JOYSTICKS 2
23+
#define FTSWARM_HAL_FIRSTJPOTI 7
24+
#define FTSWARM_HAL_OLEDS 1
25+
#define FTSWARM_HAL_HC165 1
26+
27+
#define FTSWARM_JOY1LR FTSWARM_HAL_FIRSTJPOTI
28+
#define FTSWARM_JOY1FB FTSWARM_HAL_FIRSTJPOTI+1
29+
#define FTSWARM_JOY2LR FTSWARM_HAL_FIRSTJPOTI+2
30+
#define FTSWARM_JOY2FB FTSWARM_HAL_FIRSTJPOTI+3
31+
32+
// to solve some hen & egg problems
33+
static const int8_t FTSWARM_HAL_IO_DIGITAL = 1;
34+
static const int8_t FTSWARM_HAL_IO_ANALOG = 2;
35+
static const int8_t FTSWARM_HAL_IO_PWRCTL = 3;
36+
static const int8_t FTSWARM_HAL_IO_MOTOR = 4;
37+
static const int8_t FTSWARM_HAL_IO_STEPPER = 5;
38+
static const int8_t FTSWARM_HAL_IO_JOYSTICKPOTI = 6;
39+
static const int8_t FTSWARM_HAL_IO_RCSERVO = 7;
40+
static const int8_t FTSWARM_HAL_IO_WHEELDRIVE = 8;
41+
static const int8_t FTSWARM_HAL_IO_RCP = 9;
42+
43+
static const int8_t FTSWARM_HAL_FLAG_NONE = 0x00;
44+
static const int8_t FTSWARM_HAL_FLAG_HIDDEN = 0x01;
45+
46+
static const int8_t GYRO_NONE = 0;
47+
static const int8_t GYRO_6050 = 1;
48+
static const int8_t GYRO_LSM6 = 2;
49+
50+
static const int8_t GYRO_SPI = 1;
51+
static const int8_t GYRO_INTERNAL_I2C = 2;
52+
static const int8_t GYRO_EXTERNAL_I2C = 3;
53+
54+
// I2C (Standard-Bus)
55+
#define PIN_SDA GPIO_NUM_4
56+
#define PIN_SDC GPIO_NUM_5
57+
static const gpio_num_t SDA = PIN_SDA;
58+
static const gpio_num_t SCL = PIN_SDC;
59+
60+
// I2C (internal)
61+
static const gpio_num_t SDA_INTERNAL = GPIO_NUM_NC;
62+
static const gpio_num_t SCL_INTERNAL = GPIO_NUM_NC;
63+
64+
// SPI
65+
static const gpio_num_t SS = GPIO_NUM_3;
66+
static const gpio_num_t MOSI = GPIO_NUM_38;
67+
static const gpio_num_t MISO = GPIO_NUM_39;
68+
static const gpio_num_t SCK = GPIO_NUM_40;
69+
70+
// HC165
71+
static const gpio_num_t HC165_CS = GPIO_NUM_10;
72+
static const gpio_num_t HC165_LD = GPIO_NUM_47;
73+
static const gpio_num_t HC165_CLK = GPIO_NUM_48;
74+
static const gpio_num_t HC165_MISO = GPIO_NUM_15;
75+
76+
// Serial (UART0)
77+
static const gpio_num_t TX = GPIO_NUM_43;
78+
static const gpio_num_t RX = GPIO_NUM_44;
79+
80+
// RGB LED
81+
#define RGB_BUILTIN GPIO_NUM_48
82+
83+
static const int8_t FTSWARM_HAL_GYRO = GYRO_LSM6;
84+
static const int8_t FTSWARM_HAL_GYRO_PORT = GYRO_SPI;
85+
86+
// Inputs
87+
static const gpio_num_t A1 = GPIO_NUM_1;
88+
static const gpio_num_t A2 = GPIO_NUM_2;
89+
static const gpio_num_t A3 = GPIO_NUM_19;
90+
static const gpio_num_t A4 = GPIO_NUM_20;
91+
static const gpio_num_t A5 = GPIO_NUM_13;
92+
static const gpio_num_t A6 = GPIO_NUM_11;
93+
static const gpio_num_t PWRCTL = GPIO_NUM_12;
94+
static const gpio_num_t JOY1LR = GPIO_NUM_6;
95+
static const gpio_num_t JOY1FB = GPIO_NUM_7;
96+
static const gpio_num_t JOY2LR = GPIO_NUM_17;
97+
static const gpio_num_t JOY2FB = GPIO_NUM_18;
98+
99+
static const gpio_num_t USTX = GPIO_NUM_42;
100+
static const gpio_num_t PUA2 = GPIO_NUM_41;
101+
102+
// Named ports
103+
#define FACTORYSETTINGS "S1"
104+
105+
// array based
106+
static const char INPUT_NAME[][7] = { "A1", "A2", "A3", "A4", "A5", "A6", "PWRCTL", "JOY1LR", "JOY1FB", "JOY2LR", "JOY2FB"};
107+
static const gpio_num_t INPUT_GPIO[] = { A1, A2, A3, A4, A5, A6, PWRCTL, JOY1LR, JOY1FB, JOY2LR, JOY2FB };
108+
static const uint8_t INPUT_FLAGS[] = { FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE};
109+
static const int8_t INPUT_ADC_UNIT[] = { ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_2, ADC_UNIT_2, ADC_UNIT_2, ADC_UNIT_2, ADC_UNIT_2, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_2, ADC_UNIT_2 };
110+
static const int8_t INPUT_ADC_CHANNEL[] = { ADC1_CHANNEL_0, ADC1_CHANNEL_1, ADC2_CHANNEL_8, ADC2_CHANNEL_9, ADC2_CHANNEL_0, ADC2_CHANNEL_2, ADC2_CHANNEL_1, ADC1_CHANNEL_5, ADC1_CHANNEL_6, ADC2_CHANNEL_6, ADC2_CHANNEL_7 };
111+
static const adc_atten_t INPUT_ATTENUATION[] = { ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12 };
112+
static const int8_t INPUT_IOTYPE[] = { FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_PWRCTL, FTSWARM_HAL_IO_JOYSTICKPOTI, FTSWARM_HAL_IO_JOYSTICKPOTI, FTSWARM_HAL_IO_JOYSTICKPOTI, FTSWARM_HAL_IO_JOYSTICKPOTI };
113+
114+
static const char JOYSTICK_NAME[][5] = { "JOY1", "JOY2"};
115+
static const char JOYSTICK_BUTTON[][3] = { "J1", "J2" };
116+
static const char JOYSTICK_LR[][7] = { "JOY1LR", "JOY2LR" };
117+
static const char JOYSTICK_FB[][7] = { "JOY1FB", "JOY2FB" };
118+
119+
// Motor
120+
static const gpio_num_t M1A = GPIO_NUM_45;
121+
static const gpio_num_t M1B = GPIO_NUM_46;
122+
static const gpio_num_t M2A = GPIO_NUM_14;
123+
static const gpio_num_t M2B = GPIO_NUM_21;
124+
125+
static const char MOTOR_NAME[][6] = { "M1", "M2" };
126+
static const gpio_num_t MOTOR_GPIO[][6] = { {M1A,M1B}, {M2A,M2B} };
127+
static const int8_t MOTOR_IOTYPE[] = { FTSWARM_HAL_IO_MOTOR, FTSWARM_HAL_IO_MOTOR };
128+
129+
#endif /* Pins_Arduino_h */
Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
/*
2+
* Pins_Arduino.h
3+
*
4+
* ftSwarmControl USB Micro hardware definitions
5+
*
6+
* (C) 2021-26 Christian Bergschneider & Stefan Fuss
7+
*
8+
*/
9+
10+
#ifndef Pins_Arduino_h
11+
#define Pins_Arduino_h
12+
13+
#include <driver/gpio.h>
14+
15+
// my hardware features
16+
#define FTSWARM_BOARD_CONTROL_USBMICRO
17+
#define FTSWARM_HAL_INPUTS 8
18+
#define FTSWARM_HAL_AX_INPUTS 4
19+
#define FTSWARM_HAL_MOTORS 2
20+
#define FTSWARM_HAL_BUTTONS 8
21+
#define FTSWARM_HAL_JOYSTICKS 2
22+
#define FTSWARM_HAL_FIRSTJPOTI 4
23+
#define FTSWARM_HAL_OLEDS 1
24+
#define FTSWARM_HAL_HC165 1
25+
26+
#define FTSWARM_JOY1LR FTSWARM_HAL_FIRSTJPOTI
27+
#define FTSWARM_JOY1FB FTSWARM_HAL_FIRSTJPOTI+1
28+
#define FTSWARM_JOY2LR FTSWARM_HAL_FIRSTJPOTI+2
29+
#define FTSWARM_JOY2FB FTSWARM_HAL_FIRSTJPOTI+3
30+
31+
// due to some hen&egg problemns with including adc_types.h using esp32 cpu
32+
// #include <hal/adc_hal.h>
33+
#define xADC_UNIT_1 1
34+
#define xADC1_CHANNEL_0 0
35+
#define xADC1_CHANNEL_3 3
36+
#define xADC1_CHANNEL_4 4
37+
#define xADC1_CHANNEL_5 5
38+
#define xADC1_CHANNEL_6 6
39+
#define xADC1_CHANNEL_MAX 8
40+
41+
#define xADC_ATTEN_DB_12 3
42+
43+
// to solve some hen & egg problems
44+
static const int8_t FTSWARM_HAL_IO_DIGITAL = 1;
45+
static const int8_t FTSWARM_HAL_IO_ANALOG = 2;
46+
static const int8_t FTSWARM_HAL_IO_PWRCTL = 3;
47+
static const int8_t FTSWARM_HAL_IO_MOTOR = 4;
48+
static const int8_t FTSWARM_HAL_IO_STEPPER = 5;
49+
static const int8_t FTSWARM_HAL_IO_JOYSTICKPOTI = 6;
50+
static const int8_t FTSWARM_HAL_IO_RCSERVO = 7;
51+
static const int8_t FTSWARM_HAL_IO_WHEELDRIVE = 8;
52+
static const int8_t FTSWARM_HAL_IO_RCP = 9;
53+
54+
static const int8_t FTSWARM_HAL_FLAG_NONE = 0x00;
55+
static const int8_t FTSWARM_HAL_FLAG_HIDDEN = 0x01;
56+
57+
static const int8_t GYRO_NONE = 0;
58+
static const int8_t GYRO_6050 = 1;
59+
static const int8_t GYRO_LSM6 = 2;
60+
61+
static const int8_t GYRO_SPI = 1;
62+
static const int8_t GYRO_INTERNAL_I2C = 2;
63+
static const int8_t GYRO_EXTERNAL_I2C = 3;
64+
65+
// I2C (Standard-Bus)
66+
#define PIN_SDA GPIO_NUM_21
67+
#define PIN_SDC GPIO_NUM_22
68+
static const gpio_num_t SDA = PIN_SDA;
69+
static const gpio_num_t SCL = PIN_SDC;
70+
71+
// I2C (internal)
72+
static const gpio_num_t SDA_INTERNAL = GPIO_NUM_NC;
73+
static const gpio_num_t SCL_INTERNAL = GPIO_NUM_NC;
74+
75+
// SPI
76+
static const gpio_num_t SS = GPIO_NUM_5;
77+
static const gpio_num_t MOSI = GPIO_NUM_23;
78+
static const gpio_num_t MISO = GPIO_NUM_19;
79+
static const gpio_num_t SCK = GPIO_NUM_18;
80+
81+
// HC165
82+
static const gpio_num_t HC165_CS = GPIO_NUM_14;
83+
static const gpio_num_t HC165_LD = GPIO_NUM_15;
84+
static const gpio_num_t HC165_CLK = GPIO_NUM_12;
85+
static const gpio_num_t HC165_MISO = GPIO_NUM_35;
86+
87+
// Serial (UART0)
88+
static const gpio_num_t TX = GPIO_NUM_1;
89+
static const gpio_num_t RX = GPIO_NUM_3;
90+
91+
// RGB LED
92+
#define RGB_BUILTIN GPIO_NUM_26
93+
94+
static const int8_t FTSWARM_HAL_GYRO = GYRO_6050;
95+
static const int8_t FTSWARM_HAL_GYRO_PORT = GYRO_EXTERNAL_I2C;
96+
97+
// Inputs
98+
static const gpio_num_t A1 = GPIO_NUM_39;
99+
static const gpio_num_t A2 = GPIO_NUM_25;
100+
static const gpio_num_t A3 = GPIO_NUM_26;
101+
static const gpio_num_t A4 = GPIO_NUM_27;
102+
static const gpio_num_t JOY1LR = GPIO_NUM_33;
103+
static const gpio_num_t JOY1FB = GPIO_NUM_36;
104+
static const gpio_num_t JOY2LR = GPIO_NUM_32;
105+
static const gpio_num_t JOY2FB = GPIO_NUM_34;
106+
107+
static const gpio_num_t USTX = GPIO_NUM_15;
108+
static const gpio_num_t PUA2 = GPIO_NUM_14;
109+
110+
// Named ports
111+
#define FACTORYSETTINGS "S1"
112+
113+
// array based
114+
static const char INPUT_NAME[][7] = { "A1", "A2", "A3", "A4", "JOY1LR", "JOY1FB", "JOY2LR", "JOY2FB" };
115+
static const gpio_num_t INPUT_GPIO[] = { A1, A2, A3, A4, JOY1LR, JOY1FB, JOY2LR, JOY2FB };
116+
static const uint8_t INPUT_FLAGS[] = { FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE};
117+
static const int8_t INPUT_ADC_UNIT[] = { xADC_UNIT_1, xADC_UNIT_1, xADC_UNIT_1, xADC_UNIT_1, xADC_UNIT_1, xADC_UNIT_1, xADC_UNIT_1, xADC_UNIT_1 };
118+
static const int8_t INPUT_ADC_CHANNEL[] = { xADC1_CHANNEL_3, xADC1_CHANNEL_MAX, xADC1_CHANNEL_MAX, xADC1_CHANNEL_MAX, xADC1_CHANNEL_5, xADC1_CHANNEL_0, xADC1_CHANNEL_4, xADC1_CHANNEL_6 };
119+
static const int8_t INPUT_ATTENUATION[] = { xADC_ATTEN_DB_12, xADC_ATTEN_DB_12, xADC_ATTEN_DB_12, xADC_ATTEN_DB_12, xADC_ATTEN_DB_12, xADC_ATTEN_DB_12, xADC_ATTEN_DB_12, xADC_ATTEN_DB_12 };
120+
static const int8_t INPUT_IOTYPE[] = { FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_JOYSTICKPOTI, FTSWARM_HAL_IO_JOYSTICKPOTI, FTSWARM_HAL_IO_JOYSTICKPOTI, FTSWARM_HAL_IO_JOYSTICKPOTI };
121+
122+
static const char JOYSTICK_NAME[][5] = { "JOY1", "JOY2"};
123+
static const char JOYSTICK_BUTTON[][3] = { "J1", "J2" };
124+
static const char JOYSTICK_LR[][7] = { "JOY1LR", "JOY2LR" };
125+
static const char JOYSTICK_FB[][7] = { "JOY1FB", "JOY2FB" };
126+
127+
// Motor
128+
static const gpio_num_t M1A = GPIO_NUM_13;
129+
static const gpio_num_t M1B = GPIO_NUM_4;
130+
static const gpio_num_t M2A = GPIO_NUM_2;
131+
static const gpio_num_t M2B = GPIO_NUM_0;
132+
133+
static const char MOTOR_NAME[][6] = { "M1", "M2" };
134+
static const gpio_num_t MOTOR_GPIO[][2] = { {M1A,M1B}, {M2A,M2B} };
135+
static const int8_t MOTOR_IOTYPE[] = { FTSWARM_HAL_IO_MOTOR, FTSWARM_HAL_IO_MOTOR };
136+
137+
#endif /* Pins_Arduino_h */
Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
/*
2+
* Pins_Arduino.h
3+
*
4+
* ftSwarmDuino hardware definitions
5+
*
6+
* (C) 2021-26 Christian Bergschneider & Stefan Fuss
7+
*
8+
*/
9+
10+
#ifndef Pins_Arduino_h
11+
#define Pins_Arduino_h
12+
13+
// my hardware features
14+
#define FTSWARM_BOARD_DUINO
15+
#define FTSWARM_HAL_RS485 1
16+
#define FTSWARM_HAL_INPUTS 12
17+
#define FTSWARM_HAL_AX_INPUTS 8
18+
#define FTSWARM_HAL_MOTORS 4
19+
#define FTSWARM_HAL_PIXELS 2
20+
21+
#include <driver/gpio.h>
22+
#include <driver/adc.h>
23+
24+
// to solve some hen & egg problems
25+
static const int8_t FTSWARM_HAL_IO_DIGITAL = 1;
26+
static const int8_t FTSWARM_HAL_IO_ANALOG = 2;
27+
static const int8_t FTSWARM_HAL_IO_PWRCTL = 3;
28+
static const int8_t FTSWARM_HAL_IO_MOTOR = 4;
29+
static const int8_t FTSWARM_HAL_IO_STEPPER = 5;
30+
static const int8_t FTSWARM_HAL_IO_JOYSTICKPOTI = 6;
31+
static const int8_t FTSWARM_HAL_IO_RCSERVO = 7;
32+
static const int8_t FTSWARM_HAL_IO_WHEELDRIVE = 8;
33+
static const int8_t FTSWARM_HAL_IO_RCP = 9;
34+
35+
static const int8_t FTSWARM_HAL_FLAG_NONE = 0x00;
36+
static const int8_t FTSWARM_HAL_FLAG_HIDDEN = 0x01;
37+
38+
static const int8_t GYRO_NONE = 0;
39+
static const int8_t GYRO_6050 = 1;
40+
static const int8_t GYRO_LSM6 = 2;
41+
42+
static const int8_t GYRO_SPI = 1;
43+
static const int8_t GYRO_INTERNAL_I2C = 2;
44+
static const int8_t GYRO_EXTERNAL_I2C = 3;
45+
46+
// I2C (Standard-Bus)
47+
#define PIN_SDA GPIO_NUM_5
48+
#define PIN_SDC GPIO_NUM_4
49+
static const gpio_num_t SDA = PIN_SDA;
50+
static const gpio_num_t SCL = PIN_SDC;
51+
52+
// I2C (internal)
53+
static const gpio_num_t SDA_INTERNAL = GPIO_NUM_NC;
54+
static const gpio_num_t SCL_INTERNAL = GPIO_NUM_NC;
55+
56+
// SPI
57+
static const gpio_num_t SS = GPIO_NUM_NC;
58+
static const gpio_num_t MOSI = GPIO_NUM_NC;
59+
static const gpio_num_t MISO = GPIO_NUM_NC;
60+
static const gpio_num_t SCK = GPIO_NUM_NC;
61+
62+
// Serial (UART0)
63+
static const gpio_num_t TX = GPIO_NUM_43;
64+
static const gpio_num_t RX = GPIO_NUM_44;
65+
66+
// RGB LED
67+
#define RGB_BUILTIN GPIO_NUM_48
68+
69+
// RS485
70+
static const gpio_num_t RS485_R = GPIO_NUM_6;
71+
static const gpio_num_t RS485_REB = GPIO_NUM_7;
72+
static const gpio_num_t RS485_DE = GPIO_NUM_17;
73+
static const gpio_num_t RS485_D = GPIO_NUM_18;
74+
75+
// Inputs
76+
static const gpio_num_t I1 = GPIO_NUM_NC;
77+
static const gpio_num_t I2 = GPIO_NUM_NC;
78+
static const gpio_num_t I3 = GPIO_NUM_NC;
79+
static const gpio_num_t I4 = GPIO_NUM_NC;
80+
static const gpio_num_t I5 = GPIO_NUM_NC;
81+
static const gpio_num_t I6 = GPIO_NUM_NC;
82+
static const gpio_num_t I7 = GPIO_NUM_NC;
83+
static const gpio_num_t I8 = GPIO_NUM_NC;
84+
static const gpio_num_t C1 = GPIO_NUM_NC;
85+
static const gpio_num_t C2 = GPIO_NUM_NC;
86+
static const gpio_num_t C3 = GPIO_NUM_NC;
87+
static const gpio_num_t C4 = GPIO_NUM_NC;
88+
89+
static const gpio_num_t USTX = GPIO_NUM_NC;
90+
static const gpio_num_t PUA2 = GPIO_NUM_NC;
91+
92+
// special input ports
93+
#define FACTORYSETTINGS "I1"
94+
95+
// array based
96+
static const char INPUT_NAME[][3] = { "I1", "I2", "I3", "I4", "I5", "I6", "I7", "I8", "C1", "C2", "C3", "C4" };
97+
static const gpio_num_t INPUT_GPIO[] = { I1, I2, I3, I4, I5, I6, I7, I8, C1, C2, C3, C4 };
98+
static const uint8_t INPUT_FLAGS[] = { FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE, FTSWARM_HAL_FLAG_NONE};
99+
static const int8_t INPUT_ADC_UNIT[] = { ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1, ADC_UNIT_1 };
100+
static const int8_t INPUT_ADC_CHANNEL[] = { ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0, ADC1_CHANNEL_0 };
101+
static const adc_atten_t INPUT_ATTENUATION[] = { ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12, ADC_ATTEN_DB_12 };
102+
static const int8_t INPUT_IOTYPE[] = { FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL, FTSWARM_HAL_IO_DIGITAL };
103+
104+
// Motor
105+
static const gpio_num_t M1A = GPIO_NUM_NC;
106+
static const gpio_num_t M1B = GPIO_NUM_NC;
107+
static const gpio_num_t M2A = GPIO_NUM_NC;
108+
static const gpio_num_t M2B = GPIO_NUM_NC;
109+
static const gpio_num_t M3A = GPIO_NUM_NC;
110+
static const gpio_num_t M3B = GPIO_NUM_NC;
111+
static const gpio_num_t M4A = GPIO_NUM_NC;
112+
static const gpio_num_t M4B = GPIO_NUM_NC;
113+
114+
static const char MOTOR_NAME[][3] = { "M1", "M2", "M3", "M4" };
115+
static const gpio_num_t MOTOR_GPIO[][2] = { {M1A,M1B}, {M2A,M2B}, {M3A,M3B}, {M4A,M4B} };
116+
static const int8_t MOTOR_IOTYPE[] = { FTSWARM_HAL_IO_MOTOR, FTSWARM_HAL_IO_MOTOR, FTSWARM_HAL_IO_MOTOR, FTSWARM_HAL_IO_MOTOR };
117+
118+
#endif /* Pins_Arduino_h */

0 commit comments

Comments
 (0)