Re: [Avr-list] aversive 1.1

2008-05-15 Par sujet JD
2008/5/15 Olivier MATZ [EMAIL PROTECTED]:
 On Wed, May 14, 2008 at 10:26:56PM +0200, JD wrote:
 Au passage si tu as besoin d'aide/avis/etc sur le dev ou autre
 n'hésite pas :) la liste et Eirbot est remplie de bonne volontée (bon
 pour Eirbot ils sont pas encore tout à fait au courant mais ça va
 changer ;P).

 Alors oui évidemment ça me dit d'avoir de l'aide... si par exemple
 quelqu'un a déjà mis en place un bootloader sur liaison série (LeBomb
 l'avait fait, avec un dongle bluetooth si je me souviens bien), ça me
 dit bien d'avoir des infos.

 Après, comme je le disais dans mon mail précédent, j'ai envie de
 refondre un peu le framework -- attention tof va raler :p -- ; sachant
 que l'idée c'est de pouvoir:
  - Avoir plusieurs 'config.in' (ou équivalent) dans chaque répertoire
de module, plutot qu'un global. Ca rend les merge et l'ajout d'un
nouveau module plus facile (typiquement ce qui est fait avec les
Kconfig depuis linux-2.6)
Là j'approuve...

  - Du coup ça implique de supprimer la liste des modules dans le
script generate_aversive_config
  - Une fois que ça c'est fait, gros progrès, on peut avoir des modules
privés : un utilisateur peut avoir un ou plusieurs répertoires dans
lequel chercher ses modules aversive, en plus du aversive/modules
classique. Ca veut dire que si quelqu'un a des modules très spécifiques,
ils peuvent etre géré en conf ailleurs que dans aversive.

J'approuve totalement même :)

  - avoir une meilleure gestion des dépendances (pour le moment, qd
on touche à un makefile, un make mrproper est souvent nécessaire)
  - possibilité de faire de la cross-compilation pour une autre plateforme
facilement : ça n'a rien d'absolument nécessaire, mais si ça marche,
ça montrerait que le framework est bien foutu (et il pourra etre utilisé
pour des projets pas à base d'AVR)
  - rendre la configuration sous possible avec ncurses et/ou tk sous linux
ET sous windows, de maniere native (on pourra toujours distribuer un
binaire pour win).

Mais c'est déjà natif sous linux le curse... non ?

JD.

___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


Re: [Avr-list] [RobOtter] Re: Code et gestion d'erreurs.

2008-05-14 Par sujet JD
Si mais je voulais voir si il y avait des idées et/ou des besoins
particuliers sur le sujet avant de leur vendre directement
aversive/error.

Bien sûr j'aurais fait payer la totalité du développement du module
error quand même (SSII spirit :p).

JD.

PS: Aversive, moi, j'en prend un grand bol tout les matins.

2008/5/14 Olivier MATZ [EMAIL PROTECTED]:

 c'est pas ça que tu cherches ?

 http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive/modules/debug/error



 On Wed, May 14, 2008 at 02:22:50PM +0200, Fabrice Larribe wrote:
 Il faudrais metre ça dans AVERSIVE !!!


 - Original Message - From: JD [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Sent: Wednesday, May 14, 2008 2:18 PM
 Subject: [RobOtter] Code et gestion d'erreurs.



 Un petit mail pour démarrer la discution sur du code que j'aimerais
 voir dans le robot cette année et qui manquait cruellement aux robots
 eirbots des années passées.

 Une gestion des erreurs.
 Un système de debug/log.

 Pour la gestion d'erreur ça serait mettre en place des macros
 permettant de faire des choses du genre :

 void func(struct otter* potter)
 {
  if(!potter)
ERROR(ERR_PARAM_NULL_POINTER);
  ...

 Créant sur le débug une sortie du genre :
 ERROR in otter.c at line 154 : ERR_PARAM_NULL_POINTER (function
 receive a NULL pointer parameter).

 Avec un système permettant de définir si l'erreur est fatale ou non,
 une erreur fatale amenant le programme dans un fonction qui stoppera
 ses actionneurs et le laissera dans une boucle infinie.


 Pour ce qui est du log, ça serait systématiser les messages de debug
 dans les modules en donnant la possibilitée à l'utilisateur de définir
 un niveau de verbosité et de contrôler l'affichage des messages à
 l'échelle du module.


 Donc voilà si vous avez des idées de choses à ajouter et si (mieux
 encore) vous vous sentez l'envie de commencer la rédaction d'un CDC ne
 vous privez pas !

 JD, coders on the storm.

 



 --~--~-~--~~~---~--~~
 La grande loutre vaincra.
 -~--~~~~--~~--~--~---



___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


Re: [Avr-list] aversive 1.1

2008-05-14 Par sujet JD
Au passage si tu as besoin d'aide/avis/etc sur le dev ou autre
n'hésite pas :) la liste et Eirbot est remplie de bonne volontée (bon
pour Eirbot ils sont pas encore tout à fait au courant mais ça va
changer ;P).

JD, lève son verre à la 1.1.

PS: Bon c'est du jus de pomme certes (j'ai pas les moyens moi !) mais
le coeur y est ;)

2008/5/14 Olivier MATZ [EMAIL PROTECTED]:
 Pour marquer la fin de la coupe, j'en ai profité pour sortir une nouvelle
 version stable d'aversive. Je fais pas la liste des nouvelles features, il y
 en a un peu trop, ça faisait quand même 2 ans depuis la dernière version...

 J'essaierai d'être plus régulier les prochaines fois. Au menu de la 1.2,
 j'aimerais bien ajouter un bootloader compatible butterfly, un nouveau
 framework (j'en dirai plus bientôt), et un intégrer les modules de la
 branche eirbot (AX12 notamment).

 Olivier


 ___
 Avr-list mailing list
 Avr-list@droids-corp.org
 CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
 WIKI : http://wiki.droids-corp.org/index.php/Aversive
 DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
 BUGZILLA : http://bugzilla.droids-corp.org
 COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


[Avr-list] Problèmes avec trajectory_manager

2008-03-25 Par sujet JD
Salut,
je suis en train de jouer avec le module de gestion de trajectoire de
la nouvelle branche eirbot (mergé le 17/02 de la branche MAIN je vous
le rappelle).

Et voilà j'ai un problème avec ce module : dès que le robot doit se
déplacer en XY (aucun problème pour les déplacements en distance ou
angle seuls) il tourne en rond dès que son objectif n'est pas dans le
cône où la consigne en distance est activée.

Par tourner en rond j'entend : faire un demi tour sur lui même dans un
sens, repartir dans l'autre et recommencer. :)

D'où question: Est ce un bug oublié de la branche MAIN ? Dans le cas
contraire je vais continuer à chercher dans le code pour cerner le
problème.

JD.

___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


Re: [Avr-list] Problèmes avec trajectory_manager

2008-03-25 Par sujet JD
Okay j'vais voir tout ça dès que possible :)

JD.

2008/3/25 Olivier MATZ [EMAIL PROTECTED]:
 Salut JD,

  A priori, il n'y a pas de diffs entre la HEAD et la branche b_zer0
  (celle qui marche actuellement sur notre robot). Par contre, ce
  module est relativement sensible certains paramètres un peu
  empiriques ; par exemple dans notre init, on a:

 /* vitesse linéaire et angulaire */
 trajectory_set_speed(robot.traj, 2000, 2000);

 /* distance window: distance entre le robot et le point de
  * destination à partir de laquelle on arrete
  * de mettre à jour la position (la consigne reste sur la
  * dernière envoyée)
  * angle window: pareil mais pour l'angle
  * angle start : si le point destination est en face de nous,
  * on avance à fond, et plus l'angle augemente, plus on
  * diminue la vitesse linéaire, jusqu'à 0 lorsque l'angle
  * vaut cette valeur.
  */
 trajectory_set_windows(robot.traj, 20.0, 10.0, 50.0);

  Sinon j'ai mis en standby il y a quelque temps, mais ça ne m'a pas
  gêné dernièrement:
   * - trajectory_in_window() marche peut etre pas bien en marche arriere
   * - 'goto xy_rel 0 0' marche pas



  Le 25 mars 08 à 20:06, JD a écrit :



   Salut,
   je suis en train de jouer avec le module de gestion de trajectoire de
   la nouvelle branche eirbot (mergé le 17/02 de la branche MAIN je vous
   le rappelle).
  
   Et voilà j'ai un problème avec ce module : dès que le robot doit se
   déplacer en XY (aucun problème pour les déplacements en distance ou
   angle seuls) il tourne en rond dès que son objectif n'est pas dans le
   cône où la consigne en distance est activée.
  
   Par tourner en rond j'entend : faire un demi tour sur lui même dans un
   sens, repartir dans l'autre et recommencer. :)
  
   D'où question: Est ce un bug oublié de la branche MAIN ? Dans le cas
   contraire je vais continuer à chercher dans le code pour cerner le
   problème.
  
   JD.
  

  ___
  Avr-list mailing list
  Avr-list@droids-corp.org
  CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
  WIKI : http://wiki.droids-corp.org/index.php/Aversive
  DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
  BUGZILLA : http://bugzilla.droids-corp.org
  COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


[Avr-list] CVS Eirbot, le combat continue

2008-02-17 Par sujet JD
Salut ;)

C'est la mort dans l'âme (si si) que j'ai voulu remettre le cvs
aversive / branche eirbot sur pieds.
Or j'ai remarqué une grande différence entre la branche head et la
notre, et pour cause: ça fait une éternité que rien n'a bougé sur
Eirbot.

Donc j'aimerais reprendre la branche head du CVS puis rajouter les
modifs Eirbot dessus (nos modules d'asserv et les autres).
Sauf que j'ai beau chercher je vois pas de manière facile d'y arriver :)

Le maître du CVS aurait-il un conseil à me donner ?


JD.

___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


Re: [Avr-list] CVS Eirbot, le combat continue

2008-02-17 Par sujet JD
L'idée de la nouvelle branche me plait beaucoup, ça permettra d'y
aller doucement et de refaire une nouvelle branche bien propre.

Tu peux y aller ;)

JD.

2008/2/17 Olivier MATZ [EMAIL PROTECTED]:
 Salut JD,

  Donc j'aimerais reprendre la branche head du CVS puis rajouter les
  modifs Eirbot dessus (nos modules d'asserv et les autres).
  Sauf que j'ai beau chercher je vois pas de manière facile d'y arriver :)
 
  Le maître du CVS aurait-il un conseil à me donner ?

 Muhahaha. Alors le maître du CVS, je sais pas où il est, mais moi je
 veux bien donner mon avis à la limite.

 1/ Dans le cas où le nombre de modifications est faible et où elles sont
 clairement identifées et cloisonnées.

 - Le faire à la main, ça sera le plus rapide : checkout de la head et
 de la branche, copie des fichiers de l'un vers l'autre, et commit.

 2/ Dans le cas où on ne sait pas trop où ça a bougé (et qu'on a une
 après midi perdre).

cd /tmp
cvs co -d aversive_head aversive
cvs co -d aversive_eirbot -r eirbot aversive
cd aversive_eirbot/
cvs -q update -j HEAD
cvs -qn up | more # permet de voir l'étendue des dégats.

 Ensuite, il faut prendre chaque conflit. Si t'es sur que y'a aucune
 modif dans la branche eirbot qu'il faut garder, alors le plus simple est
 de le recopier depuis aversive_head. Les .config peuvent être regénérer
 donc pas besoin de s'embêter à les merger. Et sur tout ce qu'il reste,
 il faut vraiment résoudre les conflits.

 Ne pas oublier cvs commit :)

 3/ Utiliser cvsps (jamais essayé)

mkdir patchs_eirbot
cvsps -g -p patchs_eirbot -b eirbot aversive # c'est long
cd patchs_eirbot/
ls

 Bon moi quand je fais ça chez moi, il filtre pas correctement par
 branche. Du coup, je refais un petit grep.

mkdir filtered
cp `grep Branch: eirbot * | cut -d ':' -f1` filtered

 Tu as la liste des patchs fais dans la branche eirbot depuis sa
 création, tu peux les reporter dans la head. A mon avis, c'est très long
 aussi (les patchs ne vont pas s'appliquer et tout et tout).


 Ce que je peux te proposer aussi c'est la création d'un nouvelle branche
 b_eirbot (comme j'ai fait pour tof y'a qqs mois). J'ai fait des scripts
 qui facilient ensuite les merges (qui devraient en tout cas).

 Olivier



 ___
 Avr-list mailing list
 Avr-list@droids-corp.org
 CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
 WIKI : http://wiki.droids-corp.org/index.php/Aversive
 DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
 BUGZILLA : http://bugzilla.droids-corp.org
 COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


[Avr-list] uart0_send et buffers

2008-01-24 Par sujet JD
Salut,

Nous essayons actuellement d'implémenter une communication série
full-duplex sur ATmega.

Pour se faire on utilise le module uart d'aversive, deux buffers sur
TX / RX et un port pour la direction.

Toutefois on se confronte à un petit problème, les données ne semblent
pas envoyées directement après l'appel d'uart0_send.
Je crois savoir que l'ATmega possède un buffer sur l'envoi.

D'où la question :
- Peut-on, en utilisant le module UART, forcer l'envoi du buffer ?

Donc voilà, je prend toutes bonnes idées :)

JD. (et ~salva qui se cache, le faible)

___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


Re: [Avr-list] uart0_send et buffers

2008-01-24 Par sujet JD
2008/1/24 Olivier MATZ [EMAIL PROTECTED]:
 Yop,

  Pour se faire on utilise le module uart d'aversive, deux buffers sur
  TX / RX et un port pour la direction.

 Qu'entends-tu par un port pour la direction ?

Un PIN en fait... pas un port complet :P

Relié à deux buffer pour brancher soit TX soit RX sur la ligne de
communication full-duplex.

  Toutefois on se confronte à un petit problème, les données ne semblent
  pas envoyées directement après l'appel d'uart0_send.
  Je crois savoir que l'ATmega possède un buffer sur l'envoi.

 En fait il n'est pas hardware, mais soft. Le buffer d'envoi de
 l'ATmega en hard fait un octet.

Ah okay ;) donc j'avais pas tout pigé moi.

  D'où la question :
  - Peut-on, en utilisant le module UART, forcer l'envoi du buffer ?

 si tu as les interruptions masquées et que tu as configuré l'uart en
 mode interruption, effectivement certaines données restent dans le
 buffer. Celà dit une fonction de flush serait la bienvenue (c'est
 d'ailleurs prévu : 
 http://bugzilla.droids-corp.org/cgi-bin/bugzilla/show_bug.cgi?id=71 )


Okay j'vais voir ce que je peux faire.

m'ci bien.
JD.

___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


Re: [Avr-list] bug particulierement coriace : UART freeze by full buffer ( -O3 only)

2007-01-21 Par sujet JD
Je confirme j'ai parfois vu des choses étranges se produire lors d'un
compile en O3 avec les printfs. Toutefois j'ai jamais trouvé
exactement d'où ça venait :)

Merci tof' !

JD.

On 21/01/07, christoph [EMAIL PROTECTED] wrote:


 Salut

 j'ai eu un probleme avec une UART qui fsait planter un printf.
 en gros, quand le buffer etait plein, freeze du uart0_send.

 j'ai mis un temps certain, voir un certain temps, que cela ne se
 produisait que quand j'activais le niveau d'optimisation -O3.

 Ensuite j'ai cherche en vain la cause en essayant de debugger avec le
 JTAG, mais insight est assez imbittable, et ne fait pas trop ce qu'on
 lui demande.

 J'ai fini par trouver la cause du probleme :

 http://cvs.droids-corp.org/cgi-bin/viewcvs.cgi/aversive/modules/comm/uart/uart.c?r1=1.33.2.2r2=1.33.2.3pathrev=b_tof

 quelques volatiles qui manquaient.


 j'ai aussi commite un nouveau programme de test :

 http://cvs.droids-corp.org/cgi-bin/viewcvs.cgi/aversive/modules/comm/uart/test/main.c?revision=1.15.8.3view=markuppathrev=b_tof


 avec l'uart non corrigee, cela sortait :
 
 x0x1x2x3x4x5x6x7x8x9
 Uart
 
 puis plantait, car le buffer de 4 cars etait arrivee a saturation et la
 boucle d'attente avait ete optimisee par GCC en while(1).



 Il serait judicieux de commiter uart.c et test/main.c dans le main, non ?


 a++

 tof, debugger de la mort


 ___
 Avr-list mailing list
 Avr-list@droids-corp.org
 CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
 WIKI : http://wiki.droids-corp.org/index.php/Aversive
 DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
 BUGZILLA : http://bugzilla.droids-corp.org
 COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog


___
Avr-list mailing list
Avr-list@droids-corp.org
CVSWEB : http://cvsweb.droids-corp.org/cgi-bin/viewcvs.cgi/aversive
WIKI : http://wiki.droids-corp.org/index.php/Aversive
DOXYGEN : http://zer0.droids-corp.org/doxygen_aversive/html/
BUGZILLA : http://bugzilla.droids-corp.org
COMMIT LOGS : http://zer0.droids-corp.org/aversive_commitlog