remove ~files
authorzer0 <zer0@carbon.local>
Sat, 19 Dec 2009 18:48:40 +0000 (19:48 +0100)
committerzer0 <zer0@carbon.local>
Sat, 19 Dec 2009 18:48:40 +0000 (19:48 +0100)
config/config.in.~1.42.4.32.~ [deleted file]
modules/devices/robot/robot_system/robot_system.c.~1.6.4.7.~ [deleted file]
projects/microb2010/common/i2c_commands.h.~1.9.~ [deleted file]
projects/microb2010/mainboard/.config.~1.5.~ [deleted file]
projects/microb2010/mainboard/Makefile.~1.6.~ [deleted file]

diff --git a/config/config.in.~1.42.4.32.~ b/config/config.in.~1.42.4.32.~
deleted file mode 100644 (file)
index 583b736..0000000
+++ /dev/null
@@ -1,553 +0,0 @@
-mainmenu_name "Aversive project configuration"
-
-#############################################################################
-
-mainmenu_option next_comment
-comment 'Hardware'
-# name must be CONFIG_MCU_##mcu name##
-
-choice 'Avr type' "\
- AT90s2313 CONFIG_MCU_AT90S2313 \
- AT90s2323 CONFIG_MCU_AT90S2323 \
- AT90s2333 CONFIG_MCU_AT90S3333 \
- AT90s2343 CONFIG_MCU_AT90S2343 \
- ATtiny22 CONFIG_MCU_ATTINY22 \
- ATtiny26 CONFIG_MCU_ATTINY26 \
- AT90s4414 CONFIG_MCU_AT90S4414 \
- AT90s4433 CONFIG_MCU_AT90S4433 \
- AT90s4434 CONFIG_MCU_AT90S4434 \
- AT90s8515 CONFIG_MCU_AT90S8515 \
- AT90c8534 CONFIG_MCU_AT90S8534 \
- AT90s8535 CONFIG_MCU_AT90S8535 \
- AT86rf401 CONFIG_MCU_AT86RF401 \
- ATmega103 CONFIG_MCU_ATMEGA103 \
- ATmega603 CONFIG_MCU_ATMEGA603 \
- AT43usb320 CONFIG_MCU_AT43USB320 \
- AT43usb355 CONFIG_MCU_AT43USB355 \
- AT76c711 CONFIG_MCU_AT76C711 \
- ATmega8 CONFIG_MCU_ATMEGA8 \
- ATmega48 CONFIG_MCU_ATMEGA48 \
- ATmega88 CONFIG_MCU_ATMEGA88 \
- ATmega8515 CONFIG_MCU_ATMEGA8515 \
- ATmega8535 CONFIG_MCU_ATMEGA8535 \
- ATtiny13 CONFIG_MCU_ATTINY13 \
- ATtiny2313 CONFIG_MCU_ATTINY2313 \
- ATmega16 CONFIG_MCU_ATMEGA16 \
- ATmega161 CONFIG_MCU_ATMEGA161 \
- ATmega162 CONFIG_MCU_ATMEGA162 \
- ATmega163 CONFIG_MCU_ATMEGA163 \
- ATmega165 CONFIG_MCU_ATMEGA165 \
- ATmega168 CONFIG_MCU_ATMEGA168 \
- ATmega169 CONFIG_MCU_ATMEGA169 \
- ATmega32 CONFIG_MCU_ATMEGA32 \
- ATmega323 CONFIG_MCU_ATMEGA323 \
- ATmega325 CONFIG_MCU_ATMEGA325 \
- ATmega3250 CONFIG_MCU_ATMEGA3250 \
- ATmega64 CONFIG_MCU_ATMEGA64 \
- ATmega645 CONFIG_MCU_ATMEGA645 \
- ATmega6450 CONFIG_MCU_ATMEGA6450 \
- ATmega128 CONFIG_MCU_ATMEGA128 \
- ATmega1281 CONFIG_MCU_ATMEGA1281 \
- AT90can128 CONFIG_MCU_AT90CAN128 \
- AT94k CONFIG_MCU_AT94K \
- AT90s1200 CONFIG_MCU_AT90S1200 \
- ATmega2560 CONFIG_MCU_ATMEGA2560 \
- ATmega256 CONFIG_MCU_ATMEGA256 \
-" ATmega128
-
-int 'Quartz Frequency (Hz)' CONFIG_QUARTZ '12000000'
-
-endmenu
-
-#############################################################################
-
-mainmenu_option next_comment
-comment 'Generation options'
-
-
-choice 'Optimization level' "\
- -O0 CONFIG_OPTM_0 \
- -O1 CONFIG_OPTM_1 \
- -O2 CONFIG_OPTM_2 \
- -O3 CONFIG_OPTM_3 \
- -Os CONFIG_OPTM_S \
-" -Os
-
-bool 'Include Math lib' CONFIG_MATH_LIB
-
-bool 'fdevopen compatibility' CONFIG_FDEVOPEN_COMPAT
-
-# printf version, advanced depends on math lib
-if [ "$CONFIG_MATH_LIB" = "y" ]; then
-
-choice 'Printf capabilities' "\
- none CONFIG_NO_PRINTF \
- minimal CONFIG_MINIMAL_PRINTF \
- standard CONFIG_STANDARD_PRINTF \
- advanced CONFIG_ADVANCED_PRINTF \
-" standard
-
-else
-
-choice 'Printf capabilities' "\
- none CONFIG_NO_PRINTF \
- minimal CONFIG_MINIMAL_PRINTF \
- standard CONFIG_STANDARD_PRINTF \
-" standard
-
-fi
-
-choice 'Default output format' "\
- ihex CONFIG_FORMAT_IHEX \
- srec CONFIG_FORMAT_SREC \
- binary CONFIG_FORMAT_BINARY \
-" ihex
-endmenu
-
-#############################################################################
-
-mainmenu_option next_comment
-comment 'Base modules'
-
-comment 'Enable math library in generation options to see all modules'
-
-#### CIRCULAR BUFFER
-bool 'Circular buffer' CONFIG_MODULE_CIRBUF
-dep_bool '  |-- Allow buffer larger than 127' CONFIG_MODULE_CIRBUF_LARGE \
-       $CONFIG_MODULE_CIRBUF
-
-
-#### FIXED_POINT
-dep_bool 'Fixed_Point lib' CONFIG_MODULE_FIXED_POINT \
-       $CONFIG_MATH_LIB
-
-
-#### VECT2
-dep_bool 'Vect2 lib' CONFIG_MODULE_VECT2 \
-       $CONFIG_MATH_LIB
-
-#### GEOMETRY
-dep_bool 'Geometry lib' CONFIG_MODULE_GEOMETRY \
-       $CONFIG_MATH_LIB
-
-#### SCHEDULER
-bool 'Scheduler' CONFIG_MODULE_SCHEDULER
-
-dep_bool '  |-- enable debug statistics' CONFIG_MODULE_SCHEDULER_STATS \
-       $CONFIG_MODULE_SCHEDULER
-
-dep_bool '  |-- Create Default scheduler config' CONFIG_MODULE_SCHEDULER_CREATE_CONFIG \
-       $CONFIG_MODULE_SCHEDULER
-
-if [ "$CONFIG_MODULE_TIMER" = "y" ]; then
-
-choice 'Scheduler config' "use_timer_module CONFIG_MODULE_SCHEDULER_USE_TIMERS\
- use_timer0 CONFIG_MODULE_SCHEDULER_TIMER0\
- manual CONFIG_MODULE_SCHEDULER_MANUAL" use_timer_module
-
-else
-
-choice 'Scheduler config' "use_timer_module CONFIG_MODULE_SCHEDULER_USE_TIMERS\
- use_timer0 CONFIG_MODULE_SCHEDULER_TIMER0\
- manual CONFIG_MODULE_SCHEDULER_MANUAL" use_timer0
-
-fi
-
-#### TIME
-dep_bool 'Time' CONFIG_MODULE_TIME \
-       $CONFIG_MODULE_SCHEDULER
-
-dep_bool '  |-- Create Default time config' CONFIG_MODULE_TIME_CREATE_CONFIG \
-       $CONFIG_MODULE_TIME
-
-#### TIME_EXT
-bool 'Time - reloaded' CONFIG_MODULE_TIME_EXT
-
-dep_bool '  |-- Create Default time_ext config' CONFIG_MODULE_TIME_EXT_CREATE_CONFIG \
-       $CONFIG_MODULE_TIME_EXT
-
-
-
-endmenu
-
-#############################################################################
-
-mainmenu_option next_comment
-comment 'Communication modules'
-
-comment 'uart needs circular buffer, mf2 client may need scheduler'
-
-#### UART
-dep_bool 'Uart' CONFIG_MODULE_UART \
-       $CONFIG_MODULE_CIRBUF
-
-dep_bool '  |-- Allow 9 bits operations' CONFIG_MODULE_UART_9BITS \
-       $CONFIG_MODULE_UART
-
-dep_bool '  |-- Create Default uart config' CONFIG_MODULE_UART_CREATE_CONFIG \
-       $CONFIG_MODULE_UART
-
-#### SPI
-bool 'spi (very EXPERIMENTAL)' CONFIG_MODULE_SPI
-
-dep_bool '  |-- Create Default spi config' CONFIG_MODULE_SPI_CREATE_CONFIG \
-       $CONFIG_MODULE_SPI
-
-#### I2C
-bool 'i2c' CONFIG_MODULE_I2C
-
-dep_bool '  |-- Allow master mode' CONFIG_MODULE_I2C_MASTER \
-       $CONFIG_MODULE_I2C
-
-dep_bool '  |-- Allow multimaster mode' CONFIG_MODULE_I2C_MULTIMASTER \
-       $CONFIG_MODULE_I2C_MASTER
-
-dep_bool '  |-- Create Default i2c config' CONFIG_MODULE_I2C_CREATE_CONFIG \
-       $CONFIG_MODULE_I2C
-
-
-#### MF2_CLIENT
-bool 'mf2_client (very EXPERIMENTAL)' CONFIG_MODULE_MF2_CLIENT
-
-dep_bool '  |-- Use scheduler (watchdog + no active loops)' CONFIG_MODULE_MF2_CLIENT_USE_SCHEDULER \
-       $CONFIG_MODULE_MF2_CLIENT \
-       $CONFIG_MODULE_SCHEDULER
-
-dep_bool '  |-- Create Default mf2_client config' CONFIG_MODULE_MF2_CLIENT_CREATE_CONFIG \
-       $CONFIG_MODULE_MF2_CLIENT
-
-#### MF2_SERVER
-bool 'mf2_server (very EXPERIMENTAL)' CONFIG_MODULE_MF2_SERVER
-
-dep_bool '  |-- Create Default mf2_server config' CONFIG_MODULE_MF2_SERVER_CREATE_CONFIG \
-       $CONFIG_MODULE_MF2_SERVER
-
-endmenu
-
-#############################################################################
-
-mainmenu_option next_comment
-comment 'Hardware modules'
-
-#### TIMER
-bool 'Timer' CONFIG_MODULE_TIMER
-
-dep_bool '  |-- Create Default timer config' CONFIG_MODULE_TIMER_CREATE_CONFIG \
-       $CONFIG_MODULE_TIMER
-
-dep_bool '  |-- Allow dynamic modification of prescaler' CONFIG_MODULE_TIMER_DYNAMIC \
-       $CONFIG_MODULE_TIMER
-
-
-#### PWM
-bool 'PWM' CONFIG_MODULE_PWM 
-
-dep_bool '  |-- Create Default pwm config' CONFIG_MODULE_PWM_CREATE_CONFIG \
-       $CONFIG_MODULE_PWM
-
-
-#### PWM_NG
-bool 'PWM_ng' CONFIG_MODULE_PWM_NG
-
-#### ADC
-bool 'ADC' CONFIG_MODULE_ADC
-
-dep_bool '  |-- Create Default adc config' CONFIG_MODULE_ADC_CREATE_CONFIG \
-       $CONFIG_MODULE_ADC
-
-endmenu
-
-#############################################################################
-
-mainmenu_option next_comment
-comment 'IHM modules'
-
-#### menu
-bool 'Menu' CONFIG_MODULE_MENU
-
-#### vt100
-bool 'Vt100' CONFIG_MODULE_VT100
-
-#### rdline
-dep_bool 'Rdline' CONFIG_MODULE_RDLINE \
-       $CONFIG_MODULE_VT100 \
-       $CONFIG_MODULE_CIRBUF
-
-dep_bool '  |-- Create Default rdline config' CONFIG_MODULE_RDLINE_CREATE_CONFIG \
-       $CONFIG_MODULE_RDLINE
-
-dep_bool '  |-- Enable cut/paste' CONFIG_MODULE_RDLINE_KILL_BUF \
-       $CONFIG_MODULE_RDLINE
-
-dep_bool '  |-- Enable history' CONFIG_MODULE_RDLINE_HISTORY \
-       $CONFIG_MODULE_RDLINE
-
-#### parse
-
-bool 'Parse' CONFIG_MODULE_PARSE
-dep_bool '  |-- Do not parse float' CONFIG_MODULE_PARSE_NO_FLOAT \
-       $CONFIG_MODULE_PARSE
-
-endmenu
-
-#############################################################################
-
-mainmenu_option next_comment
-comment 'External devices modules'
-
-#### LCD
-bool 'LCD' CONFIG_MODULE_LCD
-
-dep_bool '  |-- Create Default lcd config' CONFIG_MODULE_LCD_CREATE_CONFIG \
-       $CONFIG_MODULE_LCD
-
-#### SERVO
-bool 'Multiservo' CONFIG_MODULE_MULTISERVO
-
-dep_bool '  |-- Create Default servo config' CONFIG_MODULE_MULTISERVO_CREATE_CONFIG \
-       $CONFIG_MODULE_MULTISERVO
-
-bool 'AX-12' CONFIG_MODULE_AX12
-
-dep_bool '  |-- Create Default AX-12 config' CONFIG_MODULE_AX12_CREATE_CONFIG\
-       $CONFIG_MODULE_AX12
-
-mainmenu_option next_comment
-comment 'Brushless motor drivers (you should enable pwm modules to see all)'
-
-#### CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL
-dep_bool '3 phase motor with digital hall sensors' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL \
-       $CONFIG_MODULE_PWM
-
-dep_bool '  |-- Create Default brushless_3phase_digital_hall config' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_CREATE_CONFIG \
-       $CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL
-
-#### CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE
-dep_bool 'two 3 phase motor with digital hall sensors' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE \
-       $CONFIG_MODULE_PWM
-
-dep_bool ' Create Default brushless_3phase_digital_hall_double config' CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE_CREATE_CONFIG \
-       $CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE
-
-endmenu # (brushless)
-
-mainmenu_option next_comment
-comment 'Encoders (you need comm/spi for encoders_spi)'
-
-#### ENCODERS
-bool 'Encoders (microb)' CONFIG_MODULE_ENCODERS_MICROB
-
-dep_bool '  |-- Create Default encoders_microb config' CONFIG_MODULE_ENCODERS_MICROB_CREATE_CONFIG \
-       $CONFIG_MODULE_ENCODERS_MICROB
-
-#### ENCODERS
-bool 'Encoders (eirbot)' CONFIG_MODULE_ENCODERS_EIRBOT
-
-dep_bool '  |-- Create Default encoders_eirbot config' CONFIG_MODULE_ENCODERS_EIRBOT_CREATE_CONFIG \
-       $CONFIG_MODULE_ENCODERS_EIRBOT
-
-#### ENCODERS
-dep_bool 'Encoders_spi (microb)' CONFIG_MODULE_ENCODERS_SPI \
-        $CONFIG_MODULE_SPI
-
-dep_bool '  |-- Create Default encoders_spi config' CONFIG_MODULE_ENCODERS_SPI_CREATE_CONFIG \
-       $CONFIG_MODULE_ENCODERS_SPI
-
-endmenu # (encoders)
-
-mainmenu_option next_comment
-comment 'Robot specific modules'
-
-#### ROBOT_SYSTEM
-dep_bool 'Robot System' CONFIG_MODULE_ROBOT_SYSTEM \
-       $CONFIG_MODULE_FIXED_POINT
-
-dep_bool '  |-- Allow motor and external encoders' CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT \
-       $CONFIG_MODULE_ROBOT_SYSTEM
-
-#### POSITION_MANAGER
-dep_bool 'Position manager' CONFIG_MODULE_POSITION_MANAGER \
-       $CONFIG_MODULE_ROBOT_SYSTEM
-
-dep_bool '  |-- Compensate centrifugal force' CONFIG_MODULE_COMPENSATE_CENTRIFUGAL_FORCE \
-       $CONFIG_MODULE_POSITION_MANAGER
-
-#### TRAJECTORY MANAGER
-dep_bool 'Trajectory manager' CONFIG_MODULE_TRAJECTORY_MANAGER \
-       $CONFIG_MODULE_POSITION_MANAGER \
-       $CONFIG_MODULE_SCHEDULER \
-       $CONFIG_MODULE_VECT2 \
-       $CONFIG_MODULE_FIXED_POINT
-
-#### BLOCKING DETECTION MANAGER
-bool 'Blocking detection manager' CONFIG_MODULE_BLOCKING_DETECTION_MANAGER
-
-#### OBSTACLE AVOIDANCE
-dep_bool 'Obstacle Avoidance' CONFIG_MODULE_OBSTACLE_AVOIDANCE\
-       $CONFIG_MODULE_GEOMETRY
-
-dep_bool '  |-- Create Default Obstacle Avoidance config' CONFIG_MODULE_OBSTACLE_AVOIDANCE_CREATE_CONFIG \
-       $CONFIG_MODULE_OBSTACLE_AVOIDANCE
-
-endmenu # (robot)
-
-mainmenu_option next_comment
-comment 'Control system modules'
-
-#### CONTROL SYSTEM MANAGER
-bool 'Control System Manager' CONFIG_MODULE_CONTROL_SYSTEM_MANAGER
-
-comment 'Filters'
-
-bool 'PID' CONFIG_MODULE_PID
-
-dep_bool '  |-- Create Default PID config' CONFIG_MODULE_PID_CREATE_CONFIG \
-       $CONFIG_MODULE_PID
-
-bool 'ramp' CONFIG_MODULE_RAMP
-
-bool 'Quadramp' CONFIG_MODULE_QUADRAMP
-
-bool 'Quadramp derivate' CONFIG_MODULE_QUADRAMP_DERIVATE
-
-bool 'Biquad' CONFIG_MODULE_BIQUAD
-
-endmenu # (control system)
-
-
-mainmenu_option next_comment
-comment 'Radio devices'
-comment 'Some radio devices require SPI to be activated'
-#### RADIO DEVICES
-dep_bool 'CC2420 Radio Device (IEEE 802.15.4) (VERY EXPERIMENTAL)' CONFIG_MODULE_CC2420 \
-       $CONFIG_MODULE_SPI
-
-dep_bool '  |-- Create Default CC2420 config' CONFIG_MODULE_CC2420_CREATE_CONFIG \
-       $CONFIG_MODULE_CC2420
-
-endmenu # radio
-
-
-endmenu # (devices)
-
-#############################################################################
-
-
-mainmenu_option next_comment
-comment 'Crypto modules'
-
-comment 'Crypto modules depend on utils module'
-
-#### AES
-bool 'aes' CONFIG_MODULE_AES
-
-dep_bool 'aes counter mode' CONFIG_MODULE_AES_CTR \
-       $CONFIG_MODULE_AES
-
-#### MD5
-bool 'md5' CONFIG_MODULE_MD5
-
-dep_bool 'md5 hmac' CONFIG_MODULE_MD5_HMAC \
-       $CONFIG_MODULE_MD5
-
-#### RC4
-bool 'rc4' CONFIG_MODULE_RC4 
-
-endmenu # (crypto)
-
-#############################################################################
-
-
-mainmenu_option next_comment
-comment 'Encodings modules'
-
-comment 'Encoding modules depend on utils module'
-
-#### BASE 64
-bool 'Base64 encoding (PEM)' CONFIG_MODULE_BASE64
-
-#### HAMMING
-bool 'Hamming' CONFIG_MODULE_HAMMING
-
-endmenu # (encodings)
-
-
-#############################################################################
-
-
-mainmenu_option next_comment
-comment 'Debug modules'
-
-comment 'Debug modules depend on utils module'
-
-#### DIAGNOSTIC
-bool 'diagnostic' CONFIG_MODULE_DIAGNOSTIC
-
-dep_bool '  |-- Create Default diagnostic config' CONFIG_MODULE_DIAGNOSTIC_CREATE_CONFIG \
-       $CONFIG_MODULE_DIAGNOSTIC
-
-#### ERROR
-bool 'error' CONFIG_MODULE_ERROR
-
-dep_bool '  |-- Create Default error config' CONFIG_MODULE_ERROR_CREATE_CONFIG \
-       $CONFIG_MODULE_ERROR
-
-endmenu
-
-#############################################################################
-
-mainmenu_option next_comment
-comment 'Programmer options'
-
-choice 'Programmer' "avrdude CONFIG_AVRDUDE\
- avarice CONFIG_AVARICE
-" avrdude
-
-mainmenu_option next_comment
-comment 'Avrdude'
-
-choice 'Programmer type' "futurlec CONFIG_AVRDUDE_PROG_FUTURELEC\
- abcmini CONFIG_AVRDUDE_PROG_ABCMINI\
- picoweb CONFIG_AVRDUDE_PROG_PICOWEB\
- sp12 CONFIG_AVRDUDE_PROG_SP12\
- alf CONFIG_AVRDUDE_PROG_ALF\
- bascom CONFIG_AVRDUDE_PROG_BASCOM\
- dt006 CONFIG_AVRDUDE_PROG_DT006\
- pony-stk200 CONFIG_AVRDUDE_PROG_PONY_STK200\
- stk200 CONFIG_AVRDUDE_PROG_STK200\
- pavr CONFIG_AVRDUDE_PROG_PAVR\
- butterfly CONFIG_AVRDUDE_PROG_BUTTERFLY\
- avr910 CONFIG_AVRDUDE_PROG_AVR910\
- stk500 CONFIG_AVRDUDE_PROG_STK500\
- avrisp CONFIG_AVRDUDE_PROG_AVRISP\
- bsd CONFIG_AVRDUDE_PROG_BSD\
- dapa CONFIG_AVRDUDE_PROG_DAPA\
- jtag1 CONFIG_AVRDUDE_PROG_JTAG1\
- avr109 CONFIG_AVRDUDE_PROG_AVR109\
-" stk200
-
-string 'Port device' CONFIG_AVRDUDE_PORT '/dev/parport0'
-
-int 'Programmer baudrate' CONFIG_AVRDUDE_BAUDRATE '19200'
-
-endmenu
-
-mainmenu_option next_comment
-comment 'Avarice'
-
-string 'Port device' CONFIG_AVARICE_PORT '/dev/ttyS0'
-
-int 'Debug TCP Port' CONFIG_AVARICE_DEBUG_PORT '1234'
-
-choice 'Programmer type' "mkI CONFIG_AVARICE_PROG_MKI\
- mkII CONFIG_AVARICE_PROG_MKII
-" mkI
-
-endmenu
-
-bool 'Check device signature' CONFIG_AVRDUDE_CHECK_SIGNATURE
-
-endmenu
-
-#############################################################################
diff --git a/modules/devices/robot/robot_system/robot_system.c.~1.6.4.7.~ b/modules/devices/robot/robot_system/robot_system.c.~1.6.4.7.~
deleted file mode 100755 (executable)
index be158e6..0000000
+++ /dev/null
@@ -1,458 +0,0 @@
-/*  
- *  Copyright Droids Corporation, Microb Technology, Eirbot (2005)
- * 
- *  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 2 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
- *
- *  Revision : $Id: robot_system.c,v 1.6.4.7 2009-03-29 18:48:23 zer0 Exp $
- *
- */
-
-/**
- * The goal of this module is to provide an interface to motor and
- * encoders of the robot. This module provide a function that returns
- * the value of virtual encoders containing distance and angle. It
- * also allow the user to command virtual angle and distance PWMs.
- */
-
-#include <string.h>
-#include <stdio.h>
-
-#include <aversive/error.h>
-
-#include <aversive.h>
-#include <f64.h>
-
-#include "angle_distance.h"
-#include "robot_system.h"
-
-
-/** Call a pwm() pointer : 
- * - lock the interrupts
- * - read the pointer to the pwm function
- * - unlock the interrupts
- * - if pointer is null, don't do anything
- * - else call the pwm with the parameters
- */
-static inline void
-safe_setpwm(void (*f)(void *, int32_t), void * param, int32_t value)
-{
-       void (*f_tmp)(void *, int32_t);
-       void * param_tmp;
-       uint8_t flags;
-       IRQ_LOCK(flags);
-       f_tmp = f;
-       param_tmp = param;
-       IRQ_UNLOCK(flags);
-       if (f_tmp) {
-               f_tmp(param_tmp, value);
-       }
-}
-
-/** Call a encoder() pointer : 
- * - lock the interrupts
- * - read the pointer to the encoder function
- * - unlock the interrupts
- * - if pointer is null, return 0
- * - else return the value processed by the function
- */
-static inline uint32_t
-safe_getencoder(int32_t (*f)(void *), void * param)
-{
-       int32_t (*f_tmp)(void *);
-       void * param_tmp;
-       uint8_t flags;
-       IRQ_LOCK(flags);
-       f_tmp = f;
-       param_tmp = param;
-       IRQ_UNLOCK(flags);
-       if (f_tmp) {
-               return f_tmp(param_tmp);
-       }
-       return 0;
-}
-
-/** Set the structure to 0 */
-void rs_init( struct robot_system * rs)
-{
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       memset(rs, 0, sizeof(struct robot_system));
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-       rs_set_ratio(rs, 1.0);
-#endif
-       IRQ_UNLOCK(flags);
-}
-
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-/** define ratio between mot and ext track. (track_mot / track_ext) */
-void rs_set_ratio(struct robot_system * rs, double ratio)
-{
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       rs->ratio_mot_ext = f64_from_double(ratio);
-       IRQ_UNLOCK(flags);
-}
-#endif
-
-/** define left PWM function and param */
-void rs_set_left_pwm(struct robot_system * rs, void (*left_pwm)(void *, int32_t), void *left_pwm_param)
-{
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       rs->left_pwm = left_pwm;
-       rs->left_pwm_param = left_pwm_param;
-       IRQ_UNLOCK(flags);
-}
-
-/** define right PWM function and param */
-void rs_set_right_pwm(struct robot_system * rs, void (*right_pwm)(void *, int32_t), void *right_pwm_param)
-{
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       rs->right_pwm = right_pwm;
-       rs->right_pwm_param = right_pwm_param;
-       IRQ_UNLOCK(flags);
-}
-
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-/** define left motor encoder function and param */
-void rs_set_left_mot_encoder(struct robot_system * rs, int32_t (*left_mot_encoder)(void *), 
-                            void *left_mot_encoder_param, double gain)
-{
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       rs->left_mot_encoder = left_mot_encoder;
-       rs->left_mot_encoder_param = left_mot_encoder_param;
-       rs->left_mot_gain = f64_from_double(gain);
-       IRQ_UNLOCK(flags);
-}
-
-/** define right motor encoder function and param */
-void rs_set_right_mot_encoder(struct robot_system * rs, int32_t (*right_mot_encoder)(void *), 
-                             void *right_mot_encoder_param, double gain)
-{
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       rs->right_mot_encoder = right_mot_encoder;
-       rs->right_mot_encoder_param = right_mot_encoder_param;
-       rs->right_mot_gain = f64_from_double(gain);
-       IRQ_UNLOCK(flags);
-}
-#endif
-
-/** define left external encoder function and param */
-void rs_set_left_ext_encoder(struct robot_system * rs, int32_t (*left_ext_encoder)(void *), 
-                            void *left_ext_encoder_param, double gain)
-{
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       rs->left_ext_encoder = left_ext_encoder;
-       rs->left_ext_encoder_param = left_ext_encoder_param;
-       rs->left_ext_gain = f64_from_double(gain);
-       IRQ_UNLOCK(flags);
-}
-
-/** define right external encoder function and param */
-void rs_set_right_ext_encoder(struct robot_system * rs, int32_t (*right_ext_encoder)(void *), 
-                             void *right_ext_encoder_param, double gain)
-{
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       rs->right_ext_encoder = right_ext_encoder;
-       rs->right_ext_encoder_param = right_ext_encoder_param;
-       rs->right_ext_gain = f64_from_double(gain);
-       IRQ_UNLOCK(flags);
-}
-
-/**** Virtual encoders and PWM */
-
-/** 
- * set the real pwms according to the specified angle (it also
- * depends on the last distance command sent) 
- */
-void rs_set_angle(void * data, int32_t angle)
-{
-       struct rs_polar p;
-       struct rs_wheels w;
-       struct robot_system * rs = data;
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       p.distance = rs->virtual_pwm.distance ;
-       rs->virtual_pwm.angle = angle;
-       IRQ_UNLOCK(flags);
-
-       p.angle = angle;
-       rs_get_wheels_from_polar(&w, &p);
-       
-       safe_setpwm(rs->left_pwm, rs->left_pwm_param, w.left);
-       safe_setpwm(rs->right_pwm, rs->right_pwm_param, w.right);
-}
-
-/** 
- * set the real pwms according to the specified distance (it also
- * depends on the last angle command sent) 
- */
-void rs_set_distance(void * data, int32_t distance)
-{
-       struct robot_system * rs = data;
-       struct rs_polar p;
-       struct rs_wheels w;
-       uint8_t flags;
-
-       IRQ_LOCK(flags);
-       p.angle = rs->virtual_pwm.angle ;
-       rs->virtual_pwm.distance = distance;
-       IRQ_UNLOCK(flags);
-
-       p.distance = distance;
-       rs_get_wheels_from_polar(&w, &p);
-       
-       safe_setpwm(rs->left_pwm, rs->left_pwm_param, w.left);
-       safe_setpwm(rs->right_pwm, rs->right_pwm_param, w.right);
-}
-
-/** 
- * get the virtual angle according to real encoders value. 
- */
-int32_t rs_get_angle(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t angle;
-       uint8_t flags;
-       
-       IRQ_LOCK(flags);
-       angle = rs->virtual_encoders.angle ;    
-       IRQ_UNLOCK(flags);
-       return angle;
-}
-
-/** 
- * get the virtual distance according to real encoders value. 
- */
-int32_t rs_get_distance(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t distance;
-       uint8_t flags;
-       
-       IRQ_LOCK(flags);
-       distance = rs->virtual_encoders.distance ;      
-       IRQ_UNLOCK(flags);
-       return distance;
-}
-
-int32_t rs_get_ext_angle(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t angle;
-       uint8_t flags;
-       
-       IRQ_LOCK(flags);
-       angle = rs->pext_prev.angle ;   
-       IRQ_UNLOCK(flags);
-       return angle;
-}
-
-int32_t rs_get_ext_distance(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t distance;
-       uint8_t flags;
-       
-       IRQ_LOCK(flags);
-       distance = rs->pext_prev.distance ;     
-       IRQ_UNLOCK(flags);
-       return distance;
-}
-
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-int32_t rs_get_mot_angle(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t angle;
-       uint8_t flags;  
-
-       IRQ_LOCK(flags);
-       angle = rs->pmot_prev.angle ;   
-       IRQ_UNLOCK(flags);
-       return angle;
-}
-
-int32_t rs_get_mot_distance(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t distance;
-       uint8_t flags;
-       
-       IRQ_LOCK(flags);
-       distance = rs->pmot_prev.distance ;     
-       IRQ_UNLOCK(flags);
-       return distance;
-}
-#endif
-
-int32_t rs_get_ext_left(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t left;
-       uint8_t flags;
-       
-       IRQ_LOCK(flags);
-       left = rs->wext_prev.left ;     
-       IRQ_UNLOCK(flags);
-       return left;
-}
-
-int32_t rs_get_ext_right(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t right;
-       uint8_t flags;
-       
-       IRQ_LOCK(flags);
-       right = rs->wext_prev.right ;   
-       IRQ_UNLOCK(flags);
-       return right;
-}
-
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-int32_t rs_get_mot_left(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t left;
-       uint8_t flags;  
-
-       IRQ_LOCK(flags);
-       left = rs->wmot_prev.left ;     
-       IRQ_UNLOCK(flags);
-       return left;
-}
-
-int32_t rs_get_mot_right(void * data)
-{
-       struct robot_system * rs = data;
-       int32_t right;
-       uint8_t flags;
-       
-       IRQ_LOCK(flags);
-       right = rs->wmot_prev.right ;   
-       IRQ_UNLOCK(flags);
-       return right;
-}
-#endif
-
-void rs_set_flags(struct robot_system * rs, uint8_t flags)
-{
-       uint8_t i_flags;
-       
-       IRQ_LOCK(i_flags);
-       rs->flags = flags;
-       IRQ_UNLOCK(i_flags);
-}
-
-/** 
- * Read the encoders, and update internal virtual counters. Call this
- * function is needed before reading the virtual encoders.The program
- * will decide if it the external encoders or the motor encoders are
- * taken in account (depending on flags, but not yet)
- */
-void rs_update(void * data)
-{
-       struct robot_system * rs = data;
-       struct rs_wheels wext;
-       struct rs_polar pext;
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-       struct rs_wheels wmot;
-       struct rs_polar pmot;
-#endif
-       int32_t delta_angle, delta_distance;
-       uint8_t flags;
-       
-       /* read encoders */
-       wext.left = safe_getencoder(rs->left_ext_encoder, rs->left_ext_encoder_param);
-       wext.right = safe_getencoder(rs->right_ext_encoder, rs->right_ext_encoder_param);
-
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-       wmot.left = safe_getencoder(rs->left_mot_encoder, rs->left_mot_encoder_param);
-       wmot.right = safe_getencoder(rs->right_mot_encoder, rs->right_mot_encoder_param);
-#endif
-       
-       /* apply gains to each wheel */
-       if (! (rs->flags & RS_IGNORE_EXT_GAIN )) {
-               wext.left = f64_msb_mul(f64_from_lsb(wext.left), rs->left_ext_gain);
-               wext.right = f64_msb_mul(f64_from_lsb(wext.right), rs->right_ext_gain);
-       }
-
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-       if (! (rs->flags & RS_IGNORE_MOT_GAIN )) {
-               wmot.left = f64_msb_mul(f64_from_lsb(wmot.left), rs->left_mot_gain);
-               wmot.right = f64_msb_mul(f64_from_lsb(wmot.right), rs->right_mot_gain);
-       }
-#endif
-
-       rs_get_polar_from_wheels(&pext, &wext);
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-       rs_get_polar_from_wheels(&pmot, &wmot);
-
-       /* apply ratio to polar and reupdate wheels for ext coders */
-       pext.angle = f64_msb_mul(f64_from_lsb(pext.angle), rs->ratio_mot_ext);
-       rs_get_wheels_from_polar(&wext, &pext);
-#endif
-
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-       /* update from external encoders */
-       if (rs->flags & RS_USE_EXT) {
-               delta_angle = pext.angle - rs->pext_prev.angle;
-               delta_distance = pext.distance - rs->pext_prev.distance;
-       }
-
-       /* update from motor encoders */
-       else {
-               delta_angle = pmot.angle - rs->pmot_prev.angle;
-               delta_distance = pmot.distance - rs->pmot_prev.distance;
-       }
-#else
-       delta_angle = pext.angle - rs->pext_prev.angle;
-       delta_distance = pext.distance - rs->pext_prev.distance;
-#endif
-
-       IRQ_LOCK(flags);
-       rs->virtual_encoders.angle += delta_angle;
-       rs->virtual_encoders.distance += delta_distance;
-       IRQ_UNLOCK(flags);
-
-       /* don't lock too much time */
-
-       IRQ_LOCK(flags);
-       rs->pext_prev = pext;
-       rs->wext_prev = wext;
-       IRQ_UNLOCK(flags);
-
-#ifdef CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT
-       IRQ_LOCK(flags);
-       rs->pmot_prev = pmot;
-       rs->wmot_prev = wmot;
-       IRQ_UNLOCK(flags);
-#endif
-}
diff --git a/projects/microb2010/common/i2c_commands.h.~1.9.~ b/projects/microb2010/common/i2c_commands.h.~1.9.~
deleted file mode 100644 (file)
index d3072bc..0000000
+++ /dev/null
@@ -1,291 +0,0 @@
-/*
- *  Copyright Droids Corporation (2007)
- * 
- *  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 2 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
- *
- *  Revision : $Id: i2c_commands.h,v 1.9 2009-05-27 20:04:06 zer0 Exp $
- *
- */
-
-#ifndef _I2C_COMMANDS_H_
-#define _I2C_COMMANDS_H_
-
-#define I2C_MAINBOARD_ADDR   1
-#define I2C_MECHBOARD_ADDR   2
-#define I2C_SENSORBOARD_ADDR 3
-
-#define I2C_LEFT_SIDE   0
-#define I2C_RIGHT_SIDE  1
-#define I2C_AUTO_SIDE   2 /* for prepare_pickup */
-#define I2C_CENTER_SIDE 3 /* for prepare_pickup */
-
-#define I2C_COLOR_RED   0
-#define I2C_COLOR_GREEN 1
-
-#define I2C_AUTOBUILD_DEFAULT_DIST 210
-
-struct i2c_cmd_hdr {
-       uint8_t cmd;
-};
-
-/****/
-/* commands that do not need and answer */
-/****/
-
-#define I2C_CMD_GENERIC_LED_CONTROL 0x00
-
-struct i2c_cmd_led_control {
-       struct i2c_cmd_hdr hdr;
-       uint8_t led_num:7;
-       uint8_t state:1;        
-};
-
-/****/
-
-#define I2C_CMD_GENERIC_SET_COLOR 0x01
-
-struct i2c_cmd_generic_color {
-       struct i2c_cmd_hdr hdr;
-       uint8_t color;
-};
-
-/****/
-
-#define I2C_CMD_MECHBOARD_SET_MODE 0x02
-
-struct i2c_cmd_mechboard_set_mode {
-       struct i2c_cmd_hdr hdr;
-#define I2C_MECHBOARD_MODE_MANUAL             0x00
-#define I2C_MECHBOARD_MODE_HARVEST            0x01
-#define I2C_MECHBOARD_MODE_PREPARE_PICKUP     0x02
-#define I2C_MECHBOARD_MODE_PICKUP             0x03
-#define I2C_MECHBOARD_MODE_PREPARE_BUILD      0x04
-#define I2C_MECHBOARD_MODE_AUTOBUILD          0x05
-#define I2C_MECHBOARD_MODE_WAIT               0x06
-#define I2C_MECHBOARD_MODE_INIT               0x07
-#define I2C_MECHBOARD_MODE_PREPARE_GET_LINTEL 0x08
-#define I2C_MECHBOARD_MODE_GET_LINTEL         0x09
-#define I2C_MECHBOARD_MODE_PUT_LINTEL         0x0A
-#define I2C_MECHBOARD_MODE_PREPARE_EJECT      0x0B
-#define I2C_MECHBOARD_MODE_EJECT              0x0C
-#define I2C_MECHBOARD_MODE_CLEAR              0x0D
-#define I2C_MECHBOARD_MODE_LAZY_HARVEST       0x0E
-#define I2C_MECHBOARD_MODE_LOADED             0x0F
-#define I2C_MECHBOARD_MODE_PREPARE_INSIDE     0x10
-#define I2C_MECHBOARD_MODE_STORE              0x11
-#define I2C_MECHBOARD_MODE_LAZY_PICKUP        0x12
-#define I2C_MECHBOARD_MODE_MANIVELLE          0x13
-#define I2C_MECHBOARD_MODE_PUSH_TEMPLE        0x14
-#define I2C_MECHBOARD_MODE_PUSH_TEMPLE_DISC   0x15
-#define I2C_MECHBOARD_MODE_EXIT               0xFF
-       uint8_t mode;
-       union {
-               struct {
-
-               } manual;
-
-               struct {
-                       uint8_t side;
-                       uint8_t next_mode;
-               } prep_pickup;
-
-               struct {
-                       uint8_t level_l;
-                       uint8_t level_r;
-               } prep_build;
-
-               struct {
-                       uint8_t side;
-               } push_temple_disc;
-
-               struct {
-                       uint8_t level_left;
-                       uint8_t level_right;
-                       uint8_t count_left;
-                       uint8_t count_right;
-                       uint8_t distance_left;
-                       uint8_t distance_right;
-                       uint8_t do_lintel;
-               } autobuild;
-
-               struct {
-                       uint8_t level_l;
-                       uint8_t level_r;
-               } prep_inside;
-       };
-};
-
-/****/
-
-/* only valid in manual mode */
-#define I2C_CMD_MECHBOARD_ARM_GOTO 0x03
-
-struct i2c_cmd_mechboard_arm_goto {
-       struct i2c_cmd_hdr hdr;
-#define I2C_MECHBOARD_ARM_LEFT     0
-#define I2C_MECHBOARD_ARM_RIGHT    1
-#define I2C_MECHBOARD_ARM_BOTH     2
-       uint8_t which;
-
-       uint8_t height; /* in cm */
-       uint8_t distance; /* in cm */
-};
-
-/****/
-
-#define I2C_CMD_SENSORBOARD_SET_BEACON 0x04
-
-struct i2c_cmd_sensorboard_start_beacon {
-       struct i2c_cmd_hdr hdr;
-       uint8_t enable;
-};
-
-
-/****/
-
-#define I2C_CMD_SENSORBOARD_SET_SCANNER 0x05
-
-struct i2c_cmd_sensorboard_scanner {
-       struct i2c_cmd_hdr hdr;
-
-#define I2C_SENSORBOARD_SCANNER_STOP    0x00
-#define I2C_SENSORBOARD_SCANNER_PREPARE 0x01
-#define I2C_SENSORBOARD_SCANNER_START   0x02
-       uint8_t mode;
-};
-
-/*****/
-
-#define I2C_CMD_SENSORBOARD_CALIB_SCANNER 0x06
-struct i2c_cmd_sensorboard_calib_scanner {
-       struct i2c_cmd_hdr hdr;
-};
-
-/*****/
-
-#define I2C_CMD_SENSORBOARD_SCANNER_ALGO 0x07
-struct i2c_cmd_sensorboard_scanner_algo {
-       struct i2c_cmd_hdr hdr;
-
-#define I2C_SCANNER_ALGO_COLUMN_DROPZONE 1
-#define I2C_SCANNER_ALGO_CHECK_TEMPLE    2
-#define I2C_SCANNER_ALGO_TEMPLE_DROPZONE 3
-       uint8_t algo;
-
-       union {
-               struct {
-#define I2C_SCANNER_ZONE_0     0
-#define I2C_SCANNER_ZONE_1     1
-#define I2C_SCANNER_ZONE_DISC  2
-                       uint8_t working_zone;
-                       int16_t center_x;
-                       int16_t center_y;
-               } drop_zone;
-               
-               struct {
-                       uint8_t level;
-                       int16_t temple_x;
-                       int16_t temple_y;
-               } check_temple;
-       };
-};
-
-/****/
-/* requests and their answers */
-/****/
-
-
-#define I2C_REQ_MECHBOARD_STATUS 0x80
-
-struct i2c_req_mechboard_status {
-       struct i2c_cmd_hdr hdr;
-
-       int16_t pump_left1_current;
-       int16_t pump_left2_current;
-};
-
-#define I2C_ANS_MECHBOARD_STATUS 0x81
-
-struct i2c_ans_mechboard_status {
-       struct i2c_cmd_hdr hdr;
-       /* mode type are defined above: I2C_MECHBOARD_MODE_xxx */
-       uint8_t mode;
-
-#define I2C_MECHBOARD_STATUS_F_READY         0x00
-#define I2C_MECHBOARD_STATUS_F_BUSY          0x01
-#define I2C_MECHBOARD_STATUS_F_EXCPT         0x02
-       uint8_t status;
-
-       uint8_t lintel_count;
-
-       /* flag is there if column was taken by this pump. Note that
-        * we should also check ADC (current) to see if the column is
-        * still there. */
-#define I2C_MECHBOARD_COLUMN_L1              0x01
-#define I2C_MECHBOARD_COLUMN_L2              0x02
-#define I2C_MECHBOARD_COLUMN_R1              0x04
-#define I2C_MECHBOARD_COLUMN_R2              0x08
-       uint8_t column_flags;
-       
-       int16_t pump_left1;
-       int16_t pump_right1;
-       int16_t pump_left2;
-       int16_t pump_right2;
-
-#define I2C_MECHBOARD_CURRENT_COLUMN 85
-       int16_t pump_right1_current;
-       int16_t pump_right2_current;
-
-       uint16_t servo_lintel_left;
-       uint16_t servo_lintel_right;
-};
-
-#define I2C_REQ_SENSORBOARD_STATUS 0x82
-
-struct i2c_req_sensorboard_status {
-       struct i2c_cmd_hdr hdr;
-
-       /* position sent by mainboard */
-       int16_t x;
-       int16_t y;
-       int16_t a;
-
-       /* PWM for pickup */
-       uint8_t enable_pickup_wheels;
-};
-
-#define I2C_ANS_SENSORBOARD_STATUS 0x83
-
-struct i2c_ans_sensorboard_status {
-       struct i2c_cmd_hdr hdr;
-
-       uint8_t status;
-#define I2C_OPPONENT_NOT_THERE -1000
-       int16_t opponent_x;
-       int16_t opponent_y;
-       int16_t opponent_a;
-       int16_t opponent_d;
-
-#define I2C_SCAN_DONE 1
-#define I2C_SCAN_MAX_COLUMN 2
-       uint8_t scan_status;
-
-#define I2C_COLUMN_NO_DROPZONE -1
-       int8_t dropzone_h;
-       int16_t dropzone_x;
-       int16_t dropzone_y;
-};
-
-#endif /* _I2C_PROTOCOL_H_ */
diff --git a/projects/microb2010/mainboard/.config.~1.5.~ b/projects/microb2010/mainboard/.config.~1.5.~
deleted file mode 100644 (file)
index 860d979..0000000
+++ /dev/null
@@ -1,251 +0,0 @@
-#
-# Automatically generated by make menuconfig: don't edit
-#
-
-#
-# Hardware
-#
-# CONFIG_MCU_AT90S2313 is not set
-# CONFIG_MCU_AT90S2323 is not set
-# CONFIG_MCU_AT90S3333 is not set
-# CONFIG_MCU_AT90S2343 is not set
-# CONFIG_MCU_ATTINY22 is not set
-# CONFIG_MCU_ATTINY26 is not set
-# CONFIG_MCU_AT90S4414 is not set
-# CONFIG_MCU_AT90S4433 is not set
-# CONFIG_MCU_AT90S4434 is not set
-# CONFIG_MCU_AT90S8515 is not set
-# CONFIG_MCU_AT90S8534 is not set
-# CONFIG_MCU_AT90S8535 is not set
-# CONFIG_MCU_AT86RF401 is not set
-# CONFIG_MCU_ATMEGA103 is not set
-# CONFIG_MCU_ATMEGA603 is not set
-# CONFIG_MCU_AT43USB320 is not set
-# CONFIG_MCU_AT43USB355 is not set
-# CONFIG_MCU_AT76C711 is not set
-# CONFIG_MCU_ATMEGA8 is not set
-# CONFIG_MCU_ATMEGA48 is not set
-# CONFIG_MCU_ATMEGA88 is not set
-# CONFIG_MCU_ATMEGA8515 is not set
-# CONFIG_MCU_ATMEGA8535 is not set
-# CONFIG_MCU_ATTINY13 is not set
-# CONFIG_MCU_ATTINY2313 is not set
-# CONFIG_MCU_ATMEGA16 is not set
-# CONFIG_MCU_ATMEGA161 is not set
-# CONFIG_MCU_ATMEGA162 is not set
-# CONFIG_MCU_ATMEGA163 is not set
-# CONFIG_MCU_ATMEGA165 is not set
-# CONFIG_MCU_ATMEGA168 is not set
-# CONFIG_MCU_ATMEGA169 is not set
-# CONFIG_MCU_ATMEGA32 is not set
-# CONFIG_MCU_ATMEGA323 is not set
-# CONFIG_MCU_ATMEGA325 is not set
-# CONFIG_MCU_ATMEGA3250 is not set
-# CONFIG_MCU_ATMEGA64 is not set
-# CONFIG_MCU_ATMEGA645 is not set
-# CONFIG_MCU_ATMEGA6450 is not set
-# CONFIG_MCU_ATMEGA128 is not set
-# CONFIG_MCU_ATMEGA1281 is not set
-# CONFIG_MCU_AT90CAN128 is not set
-# CONFIG_MCU_AT94K is not set
-# CONFIG_MCU_AT90S1200 is not set
-CONFIG_MCU_ATMEGA2560=y
-# CONFIG_MCU_ATMEGA256 is not set
-CONFIG_QUARTZ=16000000
-
-#
-# Generation options
-#
-# CONFIG_OPTM_0 is not set
-# CONFIG_OPTM_1 is not set
-# CONFIG_OPTM_2 is not set
-# CONFIG_OPTM_3 is not set
-CONFIG_OPTM_S=y
-CONFIG_MATH_LIB=y
-# CONFIG_FDEVOPEN_COMPAT is not set
-# CONFIG_NO_PRINTF is not set
-# CONFIG_MINIMAL_PRINTF is not set
-# CONFIG_STANDARD_PRINTF is not set
-CONFIG_ADVANCED_PRINTF=y
-# CONFIG_FORMAT_IHEX is not set
-# CONFIG_FORMAT_SREC is not set
-CONFIG_FORMAT_BINARY=y
-
-#
-# Base modules
-#
-CONFIG_MODULE_CIRBUF=y
-# CONFIG_MODULE_CIRBUF_LARGE is not set
-CONFIG_MODULE_FIXED_POINT=y
-CONFIG_MODULE_VECT2=y
-CONFIG_MODULE_GEOMETRY=y
-CONFIG_MODULE_SCHEDULER=y
-# CONFIG_MODULE_SCHEDULER_CREATE_CONFIG is not set
-# CONFIG_MODULE_SCHEDULER_USE_TIMERS is not set
-# CONFIG_MODULE_SCHEDULER_TIMER0 is not set
-CONFIG_MODULE_SCHEDULER_MANUAL=y
-CONFIG_MODULE_TIME=y
-# CONFIG_MODULE_TIME_CREATE_CONFIG is not set
-# CONFIG_MODULE_TIME_EXT is not set
-# CONFIG_MODULE_TIME_EXT_CREATE_CONFIG is not set
-
-#
-# Communication modules
-#
-CONFIG_MODULE_UART=y
-# CONFIG_MODULE_UART_9BITS is not set
-CONFIG_MODULE_UART_CREATE_CONFIG=y
-CONFIG_MODULE_SPI=y
-CONFIG_MODULE_SPI_CREATE_CONFIG=y
-CONFIG_MODULE_I2C=y
-CONFIG_MODULE_I2C_MASTER=y
-# CONFIG_MODULE_I2C_MULTIMASTER is not set
-CONFIG_MODULE_I2C_CREATE_CONFIG=y
-# CONFIG_MODULE_MF2_CLIENT is not set
-# CONFIG_MODULE_MF2_CLIENT_USE_SCHEDULER is not set
-# CONFIG_MODULE_MF2_CLIENT_CREATE_CONFIG is not set
-# CONFIG_MODULE_MF2_SERVER is not set
-# CONFIG_MODULE_MF2_SERVER_CREATE_CONFIG is not set
-
-#
-# Hardware modules
-#
-CONFIG_MODULE_TIMER=y
-# CONFIG_MODULE_TIMER_CREATE_CONFIG is not set
-# CONFIG_MODULE_TIMER_DYNAMIC is not set
-# CONFIG_MODULE_PWM is not set
-# CONFIG_MODULE_PWM_CREATE_CONFIG is not set
-CONFIG_MODULE_PWM_NG=y
-CONFIG_MODULE_ADC=y
-CONFIG_MODULE_ADC_CREATE_CONFIG=y
-
-#
-# IHM modules
-#
-# CONFIG_MODULE_MENU is not set
-CONFIG_MODULE_VT100=y
-CONFIG_MODULE_RDLINE=y
-CONFIG_MODULE_RDLINE_CREATE_CONFIG=y
-CONFIG_MODULE_RDLINE_KILL_BUF=y
-CONFIG_MODULE_RDLINE_HISTORY=y
-CONFIG_MODULE_PARSE=y
-# CONFIG_MODULE_PARSE_NO_FLOAT is not set
-
-#
-# External devices modules
-#
-# CONFIG_MODULE_LCD is not set
-# CONFIG_MODULE_LCD_CREATE_CONFIG is not set
-# CONFIG_MODULE_MULTISERVO is not set
-# CONFIG_MODULE_MULTISERVO_CREATE_CONFIG is not set
-CONFIG_MODULE_AX12=y
-# CONFIG_MODULE_AX12_CREATE_CONFIG is not set
-
-#
-# Brushless motor drivers (you should enable pwm modules to see all)
-#
-# CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL is not set
-# CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_CREATE_CONFIG is not set
-# CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE is not set
-# CONFIG_MODULE_BRUSHLESS_3PHASE_DIGITAL_HALL_DOUBLE_CREATE_CONFIG is not set
-
-#
-# Encoders (you need comm/spi for encoders_spi)
-#
-# CONFIG_MODULE_ENCODERS_MICROB is not set
-# CONFIG_MODULE_ENCODERS_MICROB_CREATE_CONFIG is not set
-# CONFIG_MODULE_ENCODERS_EIRBOT is not set
-# CONFIG_MODULE_ENCODERS_EIRBOT_CREATE_CONFIG is not set
-CONFIG_MODULE_ENCODERS_SPI=y
-CONFIG_MODULE_ENCODERS_SPI_CREATE_CONFIG=y
-
-#
-# Robot specific modules
-#
-CONFIG_MODULE_ROBOT_SYSTEM=y
-# CONFIG_MODULE_ROBOT_SYSTEM_MOT_AND_EXT is not set
-CONFIG_MODULE_POSITION_MANAGER=y
-CONFIG_MODULE_COMPENSATE_CENTRIFUGAL_FORCE=y
-CONFIG_MODULE_TRAJECTORY_MANAGER=y
-CONFIG_MODULE_BLOCKING_DETECTION_MANAGER=y
-CONFIG_MODULE_OBSTACLE_AVOIDANCE=y
-CONFIG_MODULE_OBSTACLE_AVOIDANCE_CREATE_CONFIG=y
-
-#
-# Control system modules
-#
-CONFIG_MODULE_CONTROL_SYSTEM_MANAGER=y
-CONFIG_MODULE_PID=y
-# CONFIG_MODULE_PID_CREATE_CONFIG is not set
-# CONFIG_MODULE_RAMP is not set
-CONFIG_MODULE_QUADRAMP=y
-# CONFIG_MODULE_QUADRAMP_DERIVATE is not set
-# CONFIG_MODULE_BIQUAD is not set
-
-#
-# Radio devices
-#
-# CONFIG_MODULE_CC2420 is not set
-# CONFIG_MODULE_CC2420_CREATE_CONFIG is not set
-
-#
-# Crypto modules
-#
-# CONFIG_MODULE_AES is not set
-# CONFIG_MODULE_AES_CTR is not set
-# CONFIG_MODULE_MD5 is not set
-# CONFIG_MODULE_MD5_HMAC is not set
-# CONFIG_MODULE_RC4 is not set
-
-#
-# Encodings modules
-#
-# CONFIG_MODULE_BASE64 is not set
-# CONFIG_MODULE_HAMMING is not set
-
-#
-# Debug modules
-#
-CONFIG_MODULE_DIAGNOSTIC=y
-CONFIG_MODULE_DIAGNOSTIC_CREATE_CONFIG=y
-CONFIG_MODULE_ERROR=y
-CONFIG_MODULE_ERROR_CREATE_CONFIG=y
-
-#
-# Programmer options
-#
-CONFIG_AVRDUDE=y
-# CONFIG_AVARICE is not set
-
-#
-# Avrdude
-#
-# CONFIG_AVRDUDE_PROG_FUTURELEC is not set
-# CONFIG_AVRDUDE_PROG_ABCMINI is not set
-# CONFIG_AVRDUDE_PROG_PICOWEB is not set
-# CONFIG_AVRDUDE_PROG_SP12 is not set
-# CONFIG_AVRDUDE_PROG_ALF is not set
-# CONFIG_AVRDUDE_PROG_BASCOM is not set
-# CONFIG_AVRDUDE_PROG_DT006 is not set
-# CONFIG_AVRDUDE_PROG_PONY_STK200 is not set
-CONFIG_AVRDUDE_PROG_STK200=y
-# CONFIG_AVRDUDE_PROG_PAVR is not set
-# CONFIG_AVRDUDE_PROG_BUTTERFLY is not set
-# CONFIG_AVRDUDE_PROG_AVR910 is not set
-# CONFIG_AVRDUDE_PROG_STK500 is not set
-# CONFIG_AVRDUDE_PROG_AVRISP is not set
-# CONFIG_AVRDUDE_PROG_BSD is not set
-# CONFIG_AVRDUDE_PROG_DAPA is not set
-# CONFIG_AVRDUDE_PROG_JTAG1 is not set
-# CONFIG_AVRDUDE_PROG_AVR109 is not set
-CONFIG_AVRDUDE_PORT="/dev/parport0"
-CONFIG_AVRDUDE_BAUDRATE=19200
-
-#
-# Avarice
-#
-CONFIG_AVARICE_PORT="/dev/ttyS0"
-CONFIG_AVARICE_DEBUG_PORT=1234
-CONFIG_AVARICE_PROG_MKI=y
-# CONFIG_AVARICE_PROG_MKII is not set
-# CONFIG_AVRDUDE_CHECK_SIGNATURE is not set
diff --git a/projects/microb2010/mainboard/Makefile.~1.6.~ b/projects/microb2010/mainboard/Makefile.~1.6.~
deleted file mode 100755 (executable)
index 1a53746..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-TARGET = main
-
-# repertoire des modules
-AVERSIVE_DIR = ../../..
-
-SRC  = $(TARGET).c cmdline.c commands_ax12.c commands_gen.c 
-SRC += commands_cs.c commands_mainboard.c commands_traj.c commands.c
-SRC += i2c_protocol.c sensor.c actuator.c cs.c ax12_user.c
-SRC += strat_utils.c strat_base.c strat_avoid.c strat.c
-SRC += strat_static_columns.c strat_lintel.c
-SRC += strat_column_disp.c strat_building.c strat_scan.c
-
-ASRC = 
-
-CFLAGS += -Wall -Werror
-#CFLAGS += -DHOMOLOGATION
-LDFLAGS = -T ../common/avr6.x
-
-########################################
-
--include .aversive_conf
-include $(AVERSIVE_DIR)/mk/aversive_project.mk
-
-AVRDUDE_DELAY=50
-
-program_noerase: $(TARGET).$(FORMAT_EXTENSION) $(TARGET).eep
-       echo $(AVRDUDE) -D -V $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) $(AVRDUDE_WRITE_EEPROM) ;\
-       $(AVRDUDE) -D -V $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) $(AVRDUDE_WRITE_EEPROM) ;\
-