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 AT90s4414 CONFIG_MCU_AT90S4414 \
17 AT90s4433 CONFIG_MCU_AT90S4433 \
18 AT90s4434 CONFIG_MCU_AT90S4434 \
19 AT90s8515 CONFIG_MCU_AT90S8515 \
20 AT90c8534 CONFIG_MCU_AT90S8534 \
21 AT90s8535 CONFIG_MCU_AT90S8535 \
22 AT86rf401 CONFIG_MCU_AT86RF401 \
23 ATmega103 CONFIG_MCU_ATMEGA103 \
24 ATmega603 CONFIG_MCU_ATMEGA603 \
25 AT43usb320 CONFIG_MCU_AT43USB320 \
26 AT43usb355 CONFIG_MCU_AT43USB355 \
27 AT76c711 CONFIG_MCU_AT76C711 \
28 ATmega8 CONFIG_MCU_ATMEGA8 \
29 ATmega48 CONFIG_MCU_ATMEGA48 \
30 ATmega88 CONFIG_MCU_ATMEGA88 \
31 ATmega8515 CONFIG_MCU_ATMEGA8515 \
32 ATmega8535 CONFIG_MCU_ATMEGA8535 \
33 ATtiny13 CONFIG_MCU_ATTINY13 \
34 ATtiny2313 CONFIG_MCU_ATTINY2313 \
35 ATmega16 CONFIG_MCU_ATMEGA16 \
36 ATmega161 CONFIG_MCU_ATMEGA161 \
37 ATmega162 CONFIG_MCU_ATMEGA162 \
38 ATmega163 CONFIG_MCU_ATMEGA163 \
39 ATmega165 CONFIG_MCU_ATMEGA165 \
40 ATmega168 CONFIG_MCU_ATMEGA168 \
41 ATmega169 CONFIG_MCU_ATMEGA169 \
42 ATmega32 CONFIG_MCU_ATMEGA32 \
43 ATmega323 CONFIG_MCU_ATMEGA323 \
44 ATmega325 CONFIG_MCU_ATMEGA325 \
45 ATmega3250 CONFIG_MCU_ATMEGA3250 \
46 ATmega64 CONFIG_MCU_ATMEGA64 \
47 ATmega645 CONFIG_MCU_ATMEGA645 \
48 ATmega6450 CONFIG_MCU_ATMEGA6450 \
49 ATmega128 CONFIG_MCU_ATMEGA128 \
50 ATmega1281 CONFIG_MCU_ATMEGA1281 \
51 AT90can128 CONFIG_MCU_AT90CAN128 \
52 AT94k CONFIG_MCU_AT94K \
53 AT90s1200 CONFIG_MCU_AT90S1200 \
54 ATmega2560 CONFIG_MCU_ATMEGA2560 \
55 ATmega256 CONFIG_MCU_ATMEGA256 \
58 int 'Quartz Frequency (Hz)' CONFIG_QUARTZ '12000000'
62 #############################################################################
64 mainmenu_option next_comment
65 comment 'Generation options'
68 choice 'Optimization level' "\
76 bool 'Include Math lib' CONFIG_MATH_LIB
78 bool 'fdevopen compatibility' CONFIG_FDEVOPEN_COMPAT
80 # printf version, advanced depends on math lib
81 if [ "$CONFIG_MATH_LIB" = "y" ]; then
83 choice 'Printf capabilities' "\
84 none CONFIG_NO_PRINTF \
85 minimal CONFIG_MINIMAL_PRINTF \
86 standard CONFIG_STANDARD_PRINTF \
87 advanced CONFIG_ADVANCED_PRINTF \
92 choice 'Printf capabilities' "\
93 none CONFIG_NO_PRINTF \
94 minimal CONFIG_MINIMAL_PRINTF \
95 standard CONFIG_STANDARD_PRINTF \
100 choice 'Default output format' "\
101 ihex CONFIG_FORMAT_IHEX \
102 srec CONFIG_FORMAT_SREC \
103 binary CONFIG_FORMAT_BINARY \
108 #############################################################################
110 mainmenu_option next_comment
111 comment 'Base modules'
113 comment 'Enable math library in generation options to see all modules'
116 bool 'Circular buffer' CONFIG_MODULE_CIRBUF
117 dep_bool ' |-- Allow buffer larger than 127' CONFIG_MODULE_CIRBUF_LARGE \
118 $CONFIG_MODULE_CIRBUF
122 dep_bool 'Fixed_Point lib' CONFIG_MODULE_FIXED_POINT \
127 dep_bool 'Vect2 lib' CONFIG_MODULE_VECT2 \
131 dep_bool 'Geometry lib' CONFIG_MODULE_GEOMETRY \
135 bool 'Scheduler' CONFIG_MODULE_SCHEDULER
137 dep_bool ' |-- enable debug statistics' CONFIG_MODULE_SCHEDULER_STATS \
138 $CONFIG_MODULE_SCHEDULER
140 dep_bool ' |-- Create Default scheduler config' CONFIG_MODULE_SCHEDULER_CREATE_CONFIG \
141 $CONFIG_MODULE_SCHEDULER
143 if [ "$CONFIG_MODULE_TIMER" = "y" ]; then
145 choice 'Scheduler config' "use_timer_module CONFIG_MODULE_SCHEDULER_USE_TIMERS\
146 use_timer0 CONFIG_MODULE_SCHEDULER_TIMER0\
147 manual CONFIG_MODULE_SCHEDULER_MANUAL" use_timer_module
151 choice 'Scheduler config' "use_timer_module CONFIG_MODULE_SCHEDULER_USE_TIMERS\
152 use_timer0 CONFIG_MODULE_SCHEDULER_TIMER0\
153 manual CONFIG_MODULE_SCHEDULER_MANUAL" use_timer0
158 dep_bool 'Time' CONFIG_MODULE_TIME \
159 $CONFIG_MODULE_SCHEDULER
161 dep_bool ' |-- Create Default time config' CONFIG_MODULE_TIME_CREATE_CONFIG \
165 bool 'Time - reloaded' CONFIG_MODULE_TIME_EXT
167 dep_bool ' |-- Create Default time_ext config' CONFIG_MODULE_TIME_EXT_CREATE_CONFIG \
168 $CONFIG_MODULE_TIME_EXT
174 #############################################################################
176 mainmenu_option next_comment
177 comment 'Communication modules'
179 comment 'uart needs circular buffer, mf2 client may need scheduler'
182 dep_bool 'Uart' CONFIG_MODULE_UART \
183 $CONFIG_MODULE_CIRBUF
185 dep_bool ' |-- Allow 9 bits operations' CONFIG_MODULE_UART_9BITS \
188 dep_bool ' |-- Create Default uart config' CONFIG_MODULE_UART_CREATE_CONFIG \
192 bool 'spi (very EXPERIMENTAL)' CONFIG_MODULE_SPI
194 dep_bool ' |-- Create Default spi config' CONFIG_MODULE_SPI_CREATE_CONFIG \
198 bool 'i2c' CONFIG_MODULE_I2C
200 dep_bool ' |-- Allow master mode' CONFIG_MODULE_I2C_MASTER \
203 dep_bool ' |-- Allow multimaster mode' CONFIG_MODULE_I2C_MULTIMASTER \
204 $CONFIG_MODULE_I2C_MASTER
206 dep_bool ' |-- Create Default i2c config' CONFIG_MODULE_I2C_CREATE_CONFIG \
211 bool 'mf2_client (very EXPERIMENTAL)' CONFIG_MODULE_MF2_CLIENT
213 dep_bool ' |-- Use scheduler (watchdog + no active loops)' CONFIG_MODULE_MF2_CLIENT_USE_SCHEDULER \
214 $CONFIG_MODULE_MF2_CLIENT \
215 $CONFIG_MODULE_SCHEDULER
217 dep_bool ' |-- Create Default mf2_client config' CONFIG_MODULE_MF2_CLIENT_CREATE_CONFIG \
218 $CONFIG_MODULE_MF2_CLIENT
221 bool 'mf2_server (very EXPERIMENTAL)' CONFIG_MODULE_MF2_SERVER
223 dep_bool ' |-- Create Default mf2_server config' CONFIG_MODULE_MF2_SERVER_CREATE_CONFIG \
224 $CONFIG_MODULE_MF2_SERVER
228 #############################################################################
230 mainmenu_option next_comment
231 comment 'Hardware modules'
234 bool 'Timer' CONFIG_MODULE_TIMER
236 dep_bool ' |-- Create Default timer config' CONFIG_MODULE_TIMER_CREATE_CONFIG \
239 dep_bool ' |-- Allow dynamic modification of prescaler' CONFIG_MODULE_TIMER_DYNAMIC \
244 bool 'PWM' CONFIG_MODULE_PWM
246 dep_bool ' |-- Create Default pwm config' CONFIG_MODULE_PWM_CREATE_CONFIG \
251 bool 'PWM_ng' CONFIG_MODULE_PWM_NG
254 bool 'ADC' CONFIG_MODULE_ADC
256 dep_bool ' |-- Create Default adc config' CONFIG_MODULE_ADC_CREATE_CONFIG \
261 #############################################################################
263 mainmenu_option next_comment
264 comment 'IHM modules'
267 bool 'Menu' CONFIG_MODULE_MENU
270 bool 'Vt100' CONFIG_MODULE_VT100
273 dep_bool 'Rdline' CONFIG_MODULE_RDLINE \
274 $CONFIG_MODULE_VT100 \
275 $CONFIG_MODULE_CIRBUF
277 dep_bool ' |-- Create Default rdline config' CONFIG_MODULE_RDLINE_CREATE_CONFIG \
278 $CONFIG_MODULE_RDLINE
280 dep_bool ' |-- Enable cut/paste' CONFIG_MODULE_RDLINE_KILL_BUF \
281 $CONFIG_MODULE_RDLINE
283 dep_bool ' |-- Enable history' CONFIG_MODULE_RDLINE_HISTORY \
284 $CONFIG_MODULE_RDLINE
288 bool 'Parse' CONFIG_MODULE_PARSE
289 dep_bool ' |-- Do not parse float' CONFIG_MODULE_PARSE_NO_FLOAT \
294 #############################################################################
296 mainmenu_option next_comment
297 comment 'External devices modules'
300 bool 'LCD' CONFIG_MODULE_LCD
302 dep_bool ' |-- Create Default lcd config' CONFIG_MODULE_LCD_CREATE_CONFIG \
306 bool 'Multiservo' CONFIG_MODULE_MULTISERVO
308 dep_bool ' |-- Create Default servo config' CONFIG_MODULE_MULTISERVO_CREATE_CONFIG \
309 $CONFIG_MODULE_MULTISERVO
311 bool 'AX-12' CONFIG_MODULE_AX12
313 dep_bool ' |-- Create Default AX-12 config' CONFIG_MODULE_AX12_CREATE_CONFIG\
316 mainmenu_option next_comment
317 comment 'Brushless motor drivers (you should enable pwm modules to see all)'
319 #### CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL
320 dep_bool '3 phase motor with digital hall sensors' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL \
323 dep_bool ' |-- Create Default brushless_3phase_digital_hall config' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_CREATE_CONFIG \
324 $CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL
326 #### CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE
327 dep_bool 'two 3 phase motor with digital hall sensors' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE \
330 dep_bool ' Create Default brushless_3phase_digital_hall_double config' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE_CREATE_CONFIG \
331 $CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE
333 endmenu # (brushless)
335 mainmenu_option next_comment
336 comment 'Encoders (you need comm/spi for encoders_spi)'
339 bool 'Encoders (microb)' CONFIG_MODULE_ENCODERS_MICROB
341 dep_bool ' |-- Create Default encoders_microb config' CONFIG_MODULE_ENCODERS_MICROB_CREATE_CONFIG \
342 $CONFIG_MODULE_ENCODERS_MICROB
345 bool 'Encoders (eirbot)' CONFIG_MODULE_ENCODERS_EIRBOT
347 dep_bool ' |-- Create Default encoders_eirbot config' CONFIG_MODULE_ENCODERS_EIRBOT_CREATE_CONFIG \
348 $CONFIG_MODULE_ENCODERS_EIRBOT
351 dep_bool 'Encoders_spi (microb)' CONFIG_MODULE_ENCODERS_SPI \
354 dep_bool ' |-- Create Default encoders_spi config' CONFIG_MODULE_ENCODERS_SPI_CREATE_CONFIG \
355 $CONFIG_MODULE_ENCODERS_SPI
359 mainmenu_option next_comment
360 comment 'Robot specific modules (fixed point lib may be needed)'
363 bool 'Robot System' CONFIG_MODULE_ROBOT_SYSTEM
365 dep_bool 'Use fixed point lib' CONFIG_MODULE_ROBOT_SYSTEM_USE_F64 \
366 $CONFIG_MODULE_FIXED_POINT
368 dep_bool ' |-- Allow motor and external encoders' CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT \
369 $CONFIG_MODULE_ROBOT_SYSTEM
371 #### POSITION_MANAGER
372 dep_bool 'Position manager' CONFIG_MODULE_POSITION_MANAGER \
373 $CONFIG_MODULE_ROBOT_SYSTEM
375 dep_bool ' |-- Compensate centrifugal force' CONFIG_MODULE_COMPENSATE_CENTRIFUGAL_FORCE \
376 $CONFIG_MODULE_POSITION_MANAGER
378 #### TRAJECTORY MANAGER
379 dep_bool 'Trajectory manager' CONFIG_MODULE_TRAJECTORY_MANAGER \
380 $CONFIG_MODULE_POSITION_MANAGER \
381 $CONFIG_MODULE_SCHEDULER \
382 $CONFIG_MODULE_VECT2 \
383 $CONFIG_MODULE_FIXED_POINT
385 #### BLOCKING DETECTION MANAGER
386 bool 'Blocking detection manager' CONFIG_MODULE_BLOCKING_DETECTION_MANAGER
388 #### OBSTACLE AVOIDANCE
389 dep_bool 'Obstacle Avoidance' CONFIG_MODULE_OBSTACLE_AVOIDANCE\
390 $CONFIG_MODULE_GEOMETRY
392 dep_bool ' |-- Create Default Obstacle Avoidance config' CONFIG_MODULE_OBSTACLE_AVOIDANCE_CREATE_CONFIG \
393 $CONFIG_MODULE_OBSTACLE_AVOIDANCE
397 mainmenu_option next_comment
398 comment 'Control system modules'
400 #### CONTROL SYSTEM MANAGER
401 bool 'Control System Manager' CONFIG_MODULE_CONTROL_SYSTEM_MANAGER
405 bool 'PID' CONFIG_MODULE_PID
407 dep_bool ' |-- Create Default PID config' CONFIG_MODULE_PID_CREATE_CONFIG \
410 bool 'ramp' CONFIG_MODULE_RAMP
412 bool 'Quadramp' CONFIG_MODULE_QUADRAMP
414 bool 'Quadramp derivate' CONFIG_MODULE_QUADRAMP_DERIVATE
416 bool 'Biquad' CONFIG_MODULE_BIQUAD
418 endmenu # (control system)
421 mainmenu_option next_comment
422 comment 'Radio devices'
423 comment 'Some radio devices require SPI to be activated'
425 dep_bool 'CC2420 Radio Device (IEEE 802.15.4) (VERY EXPERIMENTAL)' CONFIG_MODULE_CC2420 \
428 dep_bool ' |-- Create Default CC2420 config' CONFIG_MODULE_CC2420_CREATE_CONFIG \
429 $CONFIG_MODULE_CC2420
436 #############################################################################
439 mainmenu_option next_comment
440 comment 'Crypto modules'
442 comment 'Crypto modules depend on utils module'
445 bool 'aes' CONFIG_MODULE_AES
447 dep_bool 'aes counter mode' CONFIG_MODULE_AES_CTR \
451 bool 'md5' CONFIG_MODULE_MD5
453 dep_bool 'md5 hmac' CONFIG_MODULE_MD5_HMAC \
457 bool 'rc4' CONFIG_MODULE_RC4
461 #############################################################################
464 mainmenu_option next_comment
465 comment 'Encodings modules'
467 comment 'Encoding modules depend on utils module'
470 bool 'Base64 encoding (PEM)' CONFIG_MODULE_BASE64
473 bool 'Hamming' CONFIG_MODULE_HAMMING
475 endmenu # (encodings)
478 #############################################################################
481 mainmenu_option next_comment
482 comment 'Debug modules'
484 comment 'Debug modules depend on utils module'
487 bool 'diagnostic' CONFIG_MODULE_DIAGNOSTIC
489 dep_bool ' |-- Create Default diagnostic config' CONFIG_MODULE_DIAGNOSTIC_CREATE_CONFIG \
490 $CONFIG_MODULE_DIAGNOSTIC
493 bool 'error' CONFIG_MODULE_ERROR
495 dep_bool ' |-- Create Default error config' CONFIG_MODULE_ERROR_CREATE_CONFIG \
500 #############################################################################
502 mainmenu_option next_comment
503 comment 'Programmer options'
505 choice 'Programmer' "avrdude CONFIG_AVRDUDE\
506 avarice CONFIG_AVARICE
509 mainmenu_option next_comment
512 choice 'Programmer type' "futurlec CONFIG_AVRDUDE_PROG_FUTURELEC\
513 abcmini CONFIG_AVRDUDE_PROG_ABCMINI\
514 picoweb CONFIG_AVRDUDE_PROG_PICOWEB\
515 sp12 CONFIG_AVRDUDE_PROG_SP12\
516 alf CONFIG_AVRDUDE_PROG_ALF\
517 bascom CONFIG_AVRDUDE_PROG_BASCOM\
518 dt006 CONFIG_AVRDUDE_PROG_DT006\
519 pony-stk200 CONFIG_AVRDUDE_PROG_PONY_STK200\
520 stk200 CONFIG_AVRDUDE_PROG_STK200\
521 pavr CONFIG_AVRDUDE_PROG_PAVR\
522 butterfly CONFIG_AVRDUDE_PROG_BUTTERFLY\
523 avr910 CONFIG_AVRDUDE_PROG_AVR910\
524 stk500 CONFIG_AVRDUDE_PROG_STK500\
525 avrisp CONFIG_AVRDUDE_PROG_AVRISP\
526 bsd CONFIG_AVRDUDE_PROG_BSD\
527 dapa CONFIG_AVRDUDE_PROG_DAPA\
528 jtag1 CONFIG_AVRDUDE_PROG_JTAG1\
529 avr109 CONFIG_AVRDUDE_PROG_AVR109\
532 string 'Port device' CONFIG_AVRDUDE_PORT '/dev/parport0'
534 int 'Programmer baudrate' CONFIG_AVRDUDE_BAUDRATE '19200'
538 mainmenu_option next_comment
541 string 'Port device' CONFIG_AVARICE_PORT '/dev/ttyS0'
543 int 'Debug TCP Port' CONFIG_AVARICE_DEBUG_PORT '1234'
545 choice 'Programmer type' "mkI CONFIG_AVARICE_PROG_MKI\
546 mkII CONFIG_AVARICE_PROG_MKII
551 bool 'Check device signature' CONFIG_AVRDUDE_CHECK_SIGNATURE
555 #############################################################################