1 mainmenu_name "Aversive project configuration"
3 #############################################################################
5 mainmenu_option next_comment
7 # name must be CONFIG_MCU_##mcu name##
10 AT90s2313 CONFIG_MCU_AT90S2313 \
11 AT90s2323 CONFIG_MCU_AT90S2323 \
12 AT90s2333 CONFIG_MCU_AT90S3333 \
13 AT90s2343 CONFIG_MCU_AT90S2343 \
14 ATtiny22 CONFIG_MCU_ATTINY22 \
15 ATtiny26 CONFIG_MCU_ATTINY26 \
16 ATtiny45 CONFIG_MCU_ATTINY45 \
17 AT90s4414 CONFIG_MCU_AT90S4414 \
18 AT90s4433 CONFIG_MCU_AT90S4433 \
19 AT90s4434 CONFIG_MCU_AT90S4434 \
20 AT90s8515 CONFIG_MCU_AT90S8515 \
21 AT90c8534 CONFIG_MCU_AT90S8534 \
22 AT90s8535 CONFIG_MCU_AT90S8535 \
23 AT86rf401 CONFIG_MCU_AT86RF401 \
24 ATmega103 CONFIG_MCU_ATMEGA103 \
25 ATmega603 CONFIG_MCU_ATMEGA603 \
26 AT43usb320 CONFIG_MCU_AT43USB320 \
27 AT43usb355 CONFIG_MCU_AT43USB355 \
28 AT76c711 CONFIG_MCU_AT76C711 \
29 ATmega8 CONFIG_MCU_ATMEGA8 \
30 ATmega48 CONFIG_MCU_ATMEGA48 \
31 ATmega88 CONFIG_MCU_ATMEGA88 \
32 ATmega8515 CONFIG_MCU_ATMEGA8515 \
33 ATmega8535 CONFIG_MCU_ATMEGA8535 \
34 ATtiny13 CONFIG_MCU_ATTINY13 \
35 ATtiny2313 CONFIG_MCU_ATTINY2313 \
36 ATmega16 CONFIG_MCU_ATMEGA16 \
37 ATmega161 CONFIG_MCU_ATMEGA161 \
38 ATmega162 CONFIG_MCU_ATMEGA162 \
39 ATmega163 CONFIG_MCU_ATMEGA163 \
40 ATmega165 CONFIG_MCU_ATMEGA165 \
41 ATmega168 CONFIG_MCU_ATMEGA168 \
42 ATmega169 CONFIG_MCU_ATMEGA169 \
43 ATmega32 CONFIG_MCU_ATMEGA32 \
44 ATmega323 CONFIG_MCU_ATMEGA323 \
45 ATmega325 CONFIG_MCU_ATMEGA325 \
46 ATmega3250 CONFIG_MCU_ATMEGA3250 \
47 ATmega64 CONFIG_MCU_ATMEGA64 \
48 ATmega645 CONFIG_MCU_ATMEGA645 \
49 ATmega6450 CONFIG_MCU_ATMEGA6450 \
50 ATmega128 CONFIG_MCU_ATMEGA128 \
51 ATmega1281 CONFIG_MCU_ATMEGA1281 \
52 AT90can128 CONFIG_MCU_AT90CAN128 \
53 AT94k CONFIG_MCU_AT94K \
54 AT90s1200 CONFIG_MCU_AT90S1200 \
55 ATmega2560 CONFIG_MCU_ATMEGA2560 \
56 ATmega256 CONFIG_MCU_ATMEGA256 \
59 int 'Quartz Frequency (Hz)' CONFIG_QUARTZ '12000000'
63 #############################################################################
65 mainmenu_option next_comment
66 comment 'Generation options'
69 choice 'Optimization level' "\
77 bool 'Include Math lib' CONFIG_MATH_LIB
79 bool 'fdevopen compatibility' CONFIG_FDEVOPEN_COMPAT
81 # printf version, advanced depends on math lib
82 if [ "$CONFIG_MATH_LIB" = "y" ]; then
84 choice 'Printf capabilities' "\
85 none CONFIG_NO_PRINTF \
86 minimal CONFIG_MINIMAL_PRINTF \
87 standard CONFIG_STANDARD_PRINTF \
88 advanced CONFIG_ADVANCED_PRINTF \
93 choice 'Printf capabilities' "\
94 none CONFIG_NO_PRINTF \
95 minimal CONFIG_MINIMAL_PRINTF \
96 standard CONFIG_STANDARD_PRINTF \
101 choice 'Default output format' "\
102 ihex CONFIG_FORMAT_IHEX \
103 srec CONFIG_FORMAT_SREC \
104 binary CONFIG_FORMAT_BINARY \
109 #############################################################################
111 mainmenu_option next_comment
112 comment 'Base modules'
114 comment 'Enable math library in generation options to see all modules'
117 bool 'Circular buffer' CONFIG_MODULE_CIRBUF
118 dep_bool ' |-- Allow buffer larger than 127' CONFIG_MODULE_CIRBUF_LARGE \
119 $CONFIG_MODULE_CIRBUF
123 dep_bool 'Fixed_Point lib' CONFIG_MODULE_FIXED_POINT \
128 dep_bool 'Vect2 lib' CONFIG_MODULE_VECT2 \
132 dep_bool 'Geometry lib' CONFIG_MODULE_GEOMETRY \
136 bool 'Hostsim' CONFIG_MODULE_HOSTSIM
139 bool 'Scheduler' CONFIG_MODULE_SCHEDULER
141 dep_bool ' |-- enable debug statistics' CONFIG_MODULE_SCHEDULER_STATS \
142 $CONFIG_MODULE_SCHEDULER
144 dep_bool ' |-- Create Default scheduler config' CONFIG_MODULE_SCHEDULER_CREATE_CONFIG \
145 $CONFIG_MODULE_SCHEDULER
147 if [ "$CONFIG_MODULE_TIMER" = "y" ]; then
149 choice 'Scheduler config' "use_timer_module CONFIG_MODULE_SCHEDULER_USE_TIMERS\
150 use_timer0 CONFIG_MODULE_SCHEDULER_TIMER0\
151 manual CONFIG_MODULE_SCHEDULER_MANUAL" use_timer_module
155 choice 'Scheduler config' "use_timer_module CONFIG_MODULE_SCHEDULER_USE_TIMERS\
156 use_timer0 CONFIG_MODULE_SCHEDULER_TIMER0\
157 manual CONFIG_MODULE_SCHEDULER_MANUAL" use_timer0
162 dep_bool 'Time' CONFIG_MODULE_TIME \
163 $CONFIG_MODULE_SCHEDULER
165 dep_bool ' |-- Create Default time config' CONFIG_MODULE_TIME_CREATE_CONFIG \
169 bool 'Time - reloaded' CONFIG_MODULE_TIME_EXT
171 dep_bool ' |-- Create Default time_ext config' CONFIG_MODULE_TIME_EXT_CREATE_CONFIG \
172 $CONFIG_MODULE_TIME_EXT
178 #############################################################################
180 mainmenu_option next_comment
181 comment 'Communication modules'
183 comment 'uart needs circular buffer, mf2 client may need scheduler'
186 dep_bool 'Uart' CONFIG_MODULE_UART \
187 $CONFIG_MODULE_CIRBUF
189 dep_bool ' |-- Allow 9 bits operations' CONFIG_MODULE_UART_9BITS \
192 dep_bool ' |-- Create Default uart config' CONFIG_MODULE_UART_CREATE_CONFIG \
196 bool 'spi (very EXPERIMENTAL)' CONFIG_MODULE_SPI
198 dep_bool ' |-- Create Default spi config' CONFIG_MODULE_SPI_CREATE_CONFIG \
202 bool 'i2c' CONFIG_MODULE_I2C
204 dep_bool ' |-- Allow master mode' CONFIG_MODULE_I2C_MASTER \
207 dep_bool ' |-- Allow multimaster mode' CONFIG_MODULE_I2C_MULTIMASTER \
208 $CONFIG_MODULE_I2C_MASTER
210 dep_bool ' |-- Create Default i2c config' CONFIG_MODULE_I2C_CREATE_CONFIG \
215 bool 'mf2_client (very EXPERIMENTAL)' CONFIG_MODULE_MF2_CLIENT
217 dep_bool ' |-- Use scheduler (watchdog + no active loops)' CONFIG_MODULE_MF2_CLIENT_USE_SCHEDULER \
218 $CONFIG_MODULE_MF2_CLIENT \
219 $CONFIG_MODULE_SCHEDULER
221 dep_bool ' |-- Create Default mf2_client config' CONFIG_MODULE_MF2_CLIENT_CREATE_CONFIG \
222 $CONFIG_MODULE_MF2_CLIENT
225 bool 'mf2_server (very EXPERIMENTAL)' CONFIG_MODULE_MF2_SERVER
227 dep_bool ' |-- Create Default mf2_server config' CONFIG_MODULE_MF2_SERVER_CREATE_CONFIG \
228 $CONFIG_MODULE_MF2_SERVER
232 #############################################################################
234 mainmenu_option next_comment
235 comment 'Hardware modules'
238 bool 'Timer' CONFIG_MODULE_TIMER
240 dep_bool ' |-- Create Default timer config' CONFIG_MODULE_TIMER_CREATE_CONFIG \
243 dep_bool ' |-- Allow dynamic modification of prescaler' CONFIG_MODULE_TIMER_DYNAMIC \
248 bool 'PWM' CONFIG_MODULE_PWM
250 dep_bool ' |-- Create Default pwm config' CONFIG_MODULE_PWM_CREATE_CONFIG \
255 bool 'PWM_ng' CONFIG_MODULE_PWM_NG
258 bool 'ADC' CONFIG_MODULE_ADC
260 dep_bool ' |-- Create Default adc config' CONFIG_MODULE_ADC_CREATE_CONFIG \
265 #############################################################################
267 mainmenu_option next_comment
268 comment 'IHM modules'
271 bool 'Menu' CONFIG_MODULE_MENU
274 bool 'Vt100' CONFIG_MODULE_VT100
277 dep_bool 'Rdline' CONFIG_MODULE_RDLINE \
278 $CONFIG_MODULE_VT100 \
279 $CONFIG_MODULE_CIRBUF
281 dep_bool ' |-- Create Default rdline config' CONFIG_MODULE_RDLINE_CREATE_CONFIG \
282 $CONFIG_MODULE_RDLINE
284 dep_bool ' |-- Enable cut/paste' CONFIG_MODULE_RDLINE_KILL_BUF \
285 $CONFIG_MODULE_RDLINE
287 dep_bool ' |-- Enable history' CONFIG_MODULE_RDLINE_HISTORY \
288 $CONFIG_MODULE_RDLINE
292 bool 'Parse' CONFIG_MODULE_PARSE
293 dep_bool ' |-- Do not parse float' CONFIG_MODULE_PARSE_NO_FLOAT \
298 #############################################################################
300 mainmenu_option next_comment
301 comment 'External devices modules'
304 bool 'LCD' CONFIG_MODULE_LCD
306 dep_bool ' |-- Create Default lcd config' CONFIG_MODULE_LCD_CREATE_CONFIG \
310 bool 'Multiservo' CONFIG_MODULE_MULTISERVO
312 dep_bool ' |-- Create Default servo config' CONFIG_MODULE_MULTISERVO_CREATE_CONFIG \
313 $CONFIG_MODULE_MULTISERVO
315 bool 'AX-12' CONFIG_MODULE_AX12
317 dep_bool ' |-- Create Default AX-12 config' CONFIG_MODULE_AX12_CREATE_CONFIG\
320 mainmenu_option next_comment
321 comment 'Brushless motor drivers (you should enable pwm modules to see all)'
323 #### CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL
324 dep_bool '3 phase motor with digital hall sensors' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL \
327 dep_bool ' |-- Create Default brushless_3phase_digital_hall config' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_CREATE_CONFIG \
328 $CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL
330 #### CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE
331 dep_bool 'two 3 phase motor with digital hall sensors' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE \
334 dep_bool ' Create Default brushless_3phase_digital_hall_double config' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE_CREATE_CONFIG \
335 $CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE
337 endmenu # (brushless)
339 mainmenu_option next_comment
340 comment 'Encoders (you need comm/spi for encoders_spi)'
343 bool 'Encoders (microb)' CONFIG_MODULE_ENCODERS_MICROB
345 dep_bool ' |-- Create Default encoders_microb config' CONFIG_MODULE_ENCODERS_MICROB_CREATE_CONFIG \
346 $CONFIG_MODULE_ENCODERS_MICROB
349 bool 'Encoders (eirbot)' CONFIG_MODULE_ENCODERS_EIRBOT
351 dep_bool ' |-- Create Default encoders_eirbot config' CONFIG_MODULE_ENCODERS_EIRBOT_CREATE_CONFIG \
352 $CONFIG_MODULE_ENCODERS_EIRBOT
355 dep_bool 'Encoders_spi (microb)' CONFIG_MODULE_ENCODERS_SPI \
358 dep_bool ' |-- Create Default encoders_spi config' CONFIG_MODULE_ENCODERS_SPI_CREATE_CONFIG \
359 $CONFIG_MODULE_ENCODERS_SPI
363 mainmenu_option next_comment
364 comment 'Robot specific modules (fixed point lib may be needed)'
367 bool 'Robot System' CONFIG_MODULE_ROBOT_SYSTEM
369 dep_bool 'Use fixed point lib' CONFIG_MODULE_ROBOT_SYSTEM_USE_F64 \
370 $CONFIG_MODULE_FIXED_POINT
372 dep_bool ' |-- Allow motor and external encoders' CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT \
373 $CONFIG_MODULE_ROBOT_SYSTEM
375 #### POSITION_MANAGER
376 dep_bool 'Position manager' CONFIG_MODULE_POSITION_MANAGER \
377 $CONFIG_MODULE_ROBOT_SYSTEM
379 dep_bool ' |-- Compensate centrifugal force' CONFIG_MODULE_COMPENSATE_CENTRIFUGAL_FORCE \
380 $CONFIG_MODULE_POSITION_MANAGER
382 #### TRAJECTORY MANAGER
383 dep_bool 'Trajectory manager' CONFIG_MODULE_TRAJECTORY_MANAGER \
384 $CONFIG_MODULE_POSITION_MANAGER \
385 $CONFIG_MODULE_SCHEDULER \
388 #### BLOCKING DETECTION MANAGER
389 bool 'Blocking detection manager' CONFIG_MODULE_BLOCKING_DETECTION_MANAGER
391 #### OBSTACLE AVOIDANCE
392 dep_bool 'Obstacle Avoidance' CONFIG_MODULE_OBSTACLE_AVOIDANCE\
393 $CONFIG_MODULE_GEOMETRY
395 dep_bool ' |-- Create Default Obstacle Avoidance config' CONFIG_MODULE_OBSTACLE_AVOIDANCE_CREATE_CONFIG \
396 $CONFIG_MODULE_OBSTACLE_AVOIDANCE
400 mainmenu_option next_comment
401 comment 'Control system modules'
403 #### CONTROL SYSTEM MANAGER
404 bool 'Control System Manager' CONFIG_MODULE_CONTROL_SYSTEM_MANAGER
408 bool 'PID' CONFIG_MODULE_PID
410 dep_bool ' |-- Create Default PID config' CONFIG_MODULE_PID_CREATE_CONFIG \
413 bool 'ramp' CONFIG_MODULE_RAMP
415 bool 'Quadramp' CONFIG_MODULE_QUADRAMP
417 bool 'Quadramp derivate' CONFIG_MODULE_QUADRAMP_DERIVATE
419 bool 'Biquad' CONFIG_MODULE_BIQUAD
421 endmenu # (control system)
424 mainmenu_option next_comment
425 comment 'Radio devices'
426 comment 'Some radio devices require SPI to be activated'
428 dep_bool 'CC2420 Radio Device (IEEE 802.15.4) (VERY EXPERIMENTAL)' CONFIG_MODULE_CC2420 \
431 dep_bool ' |-- Create Default CC2420 config' CONFIG_MODULE_CC2420_CREATE_CONFIG \
432 $CONFIG_MODULE_CC2420
439 #############################################################################
442 mainmenu_option next_comment
443 comment 'Crypto modules'
445 comment 'Crypto modules depend on utils module'
448 bool 'aes' CONFIG_MODULE_AES
450 dep_bool 'aes counter mode' CONFIG_MODULE_AES_CTR \
454 bool 'md5' CONFIG_MODULE_MD5
456 dep_bool 'md5 hmac' CONFIG_MODULE_MD5_HMAC \
460 bool 'rc4' CONFIG_MODULE_RC4
464 #############################################################################
467 mainmenu_option next_comment
468 comment 'Encodings modules'
470 comment 'Encoding modules depend on utils module'
473 bool 'Base64 encoding (PEM)' CONFIG_MODULE_BASE64
476 bool 'Hamming' CONFIG_MODULE_HAMMING
478 endmenu # (encodings)
481 #############################################################################
484 mainmenu_option next_comment
485 comment 'Debug modules'
487 comment 'Debug modules depend on utils module'
490 bool 'diagnostic' CONFIG_MODULE_DIAGNOSTIC
492 dep_bool ' |-- Create Default diagnostic config' CONFIG_MODULE_DIAGNOSTIC_CREATE_CONFIG \
493 $CONFIG_MODULE_DIAGNOSTIC
496 bool 'error' CONFIG_MODULE_ERROR
498 dep_bool ' |-- Create Default error config' CONFIG_MODULE_ERROR_CREATE_CONFIG \
503 #############################################################################
505 mainmenu_option next_comment
506 comment 'Programmer options'
508 choice 'Programmer' "avrdude CONFIG_AVRDUDE\
509 avarice CONFIG_AVARICE
512 mainmenu_option next_comment
515 choice 'Programmer type' "futurlec CONFIG_AVRDUDE_PROG_FUTURELEC\
516 abcmini CONFIG_AVRDUDE_PROG_ABCMINI\
517 picoweb CONFIG_AVRDUDE_PROG_PICOWEB\
518 sp12 CONFIG_AVRDUDE_PROG_SP12\
519 alf CONFIG_AVRDUDE_PROG_ALF\
520 bascom CONFIG_AVRDUDE_PROG_BASCOM\
521 dt006 CONFIG_AVRDUDE_PROG_DT006\
522 pony-stk200 CONFIG_AVRDUDE_PROG_PONY_STK200\
523 stk200 CONFIG_AVRDUDE_PROG_STK200\
524 pavr CONFIG_AVRDUDE_PROG_PAVR\
525 butterfly CONFIG_AVRDUDE_PROG_BUTTERFLY\
526 avr910 CONFIG_AVRDUDE_PROG_AVR910\
527 stk500 CONFIG_AVRDUDE_PROG_STK500\
528 avrisp CONFIG_AVRDUDE_PROG_AVRISP\
529 bsd CONFIG_AVRDUDE_PROG_BSD\
530 dapa CONFIG_AVRDUDE_PROG_DAPA\
531 jtag1 CONFIG_AVRDUDE_PROG_JTAG1\
532 avr109 CONFIG_AVRDUDE_PROG_AVR109\
533 avrispmkii CONFIG_AVRDUDE_PROG_AVRISPMKII\
536 string 'Port device' CONFIG_AVRDUDE_PORT '/dev/parport0'
538 int 'Programmer baudrate' CONFIG_AVRDUDE_BAUDRATE '19200'
542 mainmenu_option next_comment
545 string 'Port device' CONFIG_AVARICE_PORT '/dev/ttyS0'
547 int 'Debug TCP Port' CONFIG_AVARICE_DEBUG_PORT '1234'
549 choice 'Programmer type' "mkI CONFIG_AVARICE_PROG_MKI\
550 mkII CONFIG_AVARICE_PROG_MKII
555 bool 'Check device signature' CONFIG_AVRDUDE_CHECK_SIGNATURE
559 #############################################################################