Tête motorisée Clauss et PapyWizard  

En photos panoramique, le matériel est aussi important. Voici la place pour en discuter : appareil photo, tête, imprimante, ordinateur
User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

Tête motorisée Clauss et PapyWizard

by martinlbb » Thu Dec 23, 2010 1:04 pm

Bonjour à  tous,

Vous connaissez peut-être les têtes motorisées de la marque Clauss ( http://www.dr-clauss.de/ ). Nous avons utilisées une version modifiée de la tête VR pour la photo de Paris 26 gigapixels.

Cette tête est très pratique car elle supporte simultanément deux appareils photos assez lourd (2X 5D Mark II avec un 400 mm par exemple). Cependant, elle souffre d'un manque de compatibilité logiciel. Le logiciel livré reste assez basique et n'est compatible qu'avec Windows (pas de support Linux, Mac ou Android!).

Mon but est de porter cette tête sur PapyWizard, en décodant le protocole de communication. Après, je pourrai créer un nouveau plugin pour Papywizard, qui permettra de gérer directement la tête.

Pour plus d'info sur le projet, j'ai créé une page sur le Wiki Autopano : [url]http://www.autopano.net/wiki-fr/action/view/Tête_panoramique_Clauss[/url].

Si vous possédez une tête Clauss ou que vous êtes intéressés par le projet, n'hésitez pas à  me contacter !
Last edited by martinlbb on Thu Dec 23, 2010 1:08 pm, edited 1 time in total.
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
fma38
Member
 
Posts: 5827
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France

by fma38 » Thu Dec 23, 2010 1:45 pm

Cool ! à‡a c'est une bonne idée.

Question (pour t'aider à  développer le plugin) : lorsque tu envoies une commande de positionnement, la tête répond immédiatement (acquittement) ? Et c'est à  toi de demander si elle a finie (polling) ? Ou ne répond-elle qu'une fois le déplacement terminé ?

Dans le permier cas, pas de souci, c'est du classique. Dans le second cas, il faudra utiliser un thread, et simuler la commande de statut. Si tu veux plus d'infos, n'hésites pas.

Par contre, ce qui est bien, c'est que les 2 axes sont indépendants (ce qui laisse penser que c'est la première solution qui s'applique, sinon je ne vois pas comment on pourrait lancer un déplacement dans les 2 directions en même temps).
Frédéric

Canon 20D + 17-40/f4 L USM + 70-200/f4 L USM + 50/f1.4 USM
Merlin/Orion panohead + Papywizard on Nokia N800 and HP TC-1100

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Thu Dec 23, 2010 2:07 pm

fma38 wrote:Cool ! à‡a c'est une bonne idée.

Merci :)

fma38 wrote:Question (pour t'aider à  développer le plugin) : lorsque tu envoies une commande de positionnement, la tête répond immédiatement (acquittement) ? Et c'est à  toi de demander si elle a finie (polling) ? Ou ne répond-elle qu'une fois le déplacement terminé ?

La tête acquitte l'ordre. En revanche, pour savoir si la tête a acquis sa position, il faut la poller.

Effectivement, les deux axes sont indépendants. Et oui, tu peux lancer un déplacement dans les deux directions en parallèle (très sympa à  voir en visuel !). Après, tu interroges la tête pour savoir si elle est arrivée à  la position demandée.

Donc, certainement un thread pour vérifier en continu le positionnement de la tête.
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Thu Dec 23, 2010 2:09 pm

fma38 wrote:Dans le second cas, il faudra utiliser un thread, et simuler la commande de statut. Si tu veux plus d'infos, n'hésites pas.

Oui, d'ailleurs, je veux bien plus d'info. Si je ne me trompe pas, c'est toi qui a "joué" avec la tête Merlin et l'a portée sur Papywizard. Beau travail ! :)

En fait, je comptais reprendre le code source de ton plugin...
Last edited by martinlbb on Thu Dec 23, 2010 2:09 pm, edited 1 time in total.
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
fma38
Member
 
Posts: 5827
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France

by fma38 » Thu Dec 23, 2010 2:32 pm

C'est donc impec comme façon de fonctionnement (ça correspond à  la Merlin). Donc pas besoin de thread dans le plugin ; c'est déjà  fait dans le coeur de Papywizard. Le mieux est sans doute de partir du plugin GigaPanBot, qui est comme la Merlin, sans les problèmes d'asservissement externe (résolus avec dernier firmware), qui nécessitaient un thread.

http://www.papywizard.org/browser/trunk/papywizard/plugins/gigaPanBotPlugins.py
http://www.papywizard.org/browser/trunk/papywizard/hardware/gigaPanBotHardware.py
Frédéric

Canon 20D + 17-40/f4 L USM + 70-200/f4 L USM + 50/f1.4 USM
Merlin/Orion panohead + Papywizard on Nokia N800 and HP TC-1100

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Thu Dec 23, 2010 2:45 pm

Nickel !

Je vois cela à  mon retour de Noël
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Tue Dec 28, 2010 12:06 pm

Bon, j'ai regardé le code. Ca faisait un bail que j'avais pas fait de Python ! :)

En gros, le plugin assure le 'haut niveau' par rapport à  hardware qui s'occupe de l'IO (envoi et réception des commandes).

En revanche, je me pose encore deux questions :

Y'a t'il une gestion de l'Autofocus ? Je n'ai vu que le déclenchement du shutter. Pareil, est-ce que PapyWizard peut gérer le déclenchement différencié de deux appareils photos ?

Quelle est la fréquence du poll de la tête ? (command read par exemple).

Voila :)
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
fma38
Member
 
Posts: 5827
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France

by fma38 » Tue Dec 28, 2010 12:35 pm

martinlbb wrote:Bon, j'ai regardé le code. Ca faisait un bail que j'avais pas fait de Python ! :)

Bah, ça revient vite ;)

En gros, le plugin assure le 'haut niveau' par rapport à  hardware qui s'occupe de l'IO (envoi et réception des commandes).

Oui, c'est ça. L'idée est de pouvoir utiliser les routines bas niveau en dehors de Papywizard. Mais il reste encore pas mal de dépendances lourdes (logger,...).

Y'a t'il une gestion de l'Autofocus ? Je n'ai vu que le déclenchement du shutter. Pareil, est-ce que PapyWizard peut gérer le déclenchement différencié de deux appareils photos ?

Non, pas de gestion de l'AF. C'est possible de l'intégrer au plugin 'shutter'. Mais bon, ça n'a d'intérêt que si tu as un retour d'état, pour éventuellement prendre une décision en cas de souci. Mais je ne sais pas si beaucoup d'appareil donne ce genre d'info...

Pour le déclenchement de 2 appareils, idem, ça pourrait être intégré au plugin 'shutter'. Là , ça me semble plus simple. Par contre, il n'y a bien sûr qu'un seul jeu de paramètres au niveau de Papywizard (focale, temps d'exposition...).

Quelle est la fréquence du poll de la tête ? (command read par exemple).

C'est donné par la constante SPY_REFRESH_DELAY, dans le module config.py. Elle est fixée à  200ms, soient 5 lectures par seconde. Suivant le type de transmission, on pourrait faire plus. Mais avec du RS232 à  9600bauds, c'est déjà  pas mal. Sans compter qu'il y a aussi le poll pour détecter la fin d'un positionnement qui peut s'intercaler. à‡a fait beaucoup pour les petits µ-contrôleurs de la Merlin !
Frédéric

Canon 20D + 17-40/f4 L USM + 70-200/f4 L USM + 50/f1.4 USM
Merlin/Orion panohead + Papywizard on Nokia N800 and HP TC-1100

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Tue Dec 28, 2010 12:41 pm

Y'a t'il une gestion de l'Autofocus ? Je n'ai vu que le déclenchement du shutter. Pareil, est-ce que PapyWizard peut gérer le déclenchement différencié de deux appareils photos ?

Non, pas de gestion de l'AF. C'est possible de l'intégrer au plugin 'shutter'. Mais bon, ça n'a d'intérêt que si tu as un retour d'état, pour éventuellement prendre une décision en cas de souci. Mais je ne sais pas si beaucoup d'appareil donne ce genre d'info...

Non, il n'y a pas de retour d'état. C'est juste une commande d'AF, sans garantie de succès.

Pour le déclenchement de 2 appareils, idem, ça pourrait être intégré au plugin 'shutter'. Là , ça me semble plus simple. Par contre, il n'y a bien sûr qu'un seul jeu de paramètres au niveau de Papywizard (focale, temps d'exposition...).

Ca ne me dérange pas. Les deux appareils sont censés avoir les mêmes réglages d'exposition. Donc pas de soucis.


Quelle est la fréquence du poll de la tête ? (command read par exemple).

C'est donné par la constante SPY_REFRESH_DELAY, dans le module config.py. Elle est fixée à  200ms, soient 5 lectures par seconde. Suivant le type de transmission, on pourrait faire plus. Mais avec du RS232 à  9600bauds, c'est déjà  pas mal. Sans compter qu'il y a aussi le poll pour détecter la fin d'un positionnement qui peut s'intercaler. à‡a fait beaucoup pour les petits µ-contrôleurs de la Merlin !

C'est largement suffisant ! Peut-être même trop rapide pour la Clauss. Je vais écrire le plugin et tester le comportement de la tête.
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Wed Dec 29, 2010 7:18 pm

J'ai ajouté la partie initialisation de la tête. Y'a pas mal de commandes !
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
fma38
Member
 
Posts: 5827
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France

by fma38 » Wed Dec 29, 2010 8:56 pm

Yep ! J'ai mis une petite note concernant la commande L10...
Frédéric

Canon 20D + 17-40/f4 L USM + 70-200/f4 L USM + 50/f1.4 USM
Merlin/Orion panohead + Papywizard on Nokia N800 and HP TC-1100

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Wed Dec 29, 2010 9:51 pm

fma38 wrote:Yep ! J'ai mis une petite note concernant la commande L10...

C'était ma première idée, mais ce n'est pas ca.

Je pensais au début que chaque chiffre était l'état haut du signal correspondant, mais ce n'est pas le cas. L10 ne commute rien sur les deux signaux (testé sur multimètre).
Après, j'ai vu que j'avais des L20, L30, L40 jusqu'à  L90, ce qui a validé mon idée.
Last edited by martinlbb on Wed Dec 29, 2010 9:53 pm, edited 1 time in total.
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
fma38
Member
 
Posts: 5827
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France

by fma38 » Wed Dec 29, 2010 11:16 pm

Au temps pour moi. Bizarre, quand même...
Frédéric

Canon 20D + 17-40/f4 L USM + 70-200/f4 L USM + 50/f1.4 USM
Merlin/Orion panohead + Papywizard on Nokia N800 and HP TC-1100

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Thu Dec 30, 2010 10:01 am

fma38 wrote:Au temps pour moi. Bizarre, quand même...

Ah ca ! J'ai pas tout compris de la logique sur ce coup là  !

Ah sinon, sais-tu s'il existe déjà  un système d'option intégrable dans l'onglet hardware pour gérer la tête ?

Je veux donner à  l'utilisateur des infos sur sa tête (modèle, version logiciel, vitesse max moteur, nombre de pas, etc...) et lui permettre de choisir quelques options (anti twist pour le câble, choix d'un ou deux APN, etc...).
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
fma38
Member
 
Posts: 5827
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France

by fma38 » Thu Dec 30, 2010 10:26 am

martinlbb wrote:Ah sinon, sais-tu s'il existe déjà  un système d'option intégrable dans l'onglet hardware pour gérer la tête ?

Tu veux dire dans Papywizard ? Non, le menu hardware n'est pas customisable. Par contre, les options au niveau de chaque plugin, oui.

Je veux donner à  l'utilisateur des infos sur sa tête (modèle, version logiciel, vitesse max moteur, nombre de pas, etc...) et lui permettre de choisir quelques options (anti twist pour le câble, choix d'un ou deux APN, etc...).

Le problème c'est que les valeurs du hardware ne peuvent être retrouvées qu'une fois connecté. C'est pour ça que c'est un peu merdique à  intégrer au niveau général. Ce que je fais, c'est que, lors de la connexion, je logue toutes les infos utiles qu'on peut demander au firmware de la tête. L'utilisateur peut ensuite très facilement les retrouver avec le menu 'Aide -> Voir log', juste après s'être connecté (comme c'est un buffer tournant, ça disparaît vite si on log le niveau debug ou trace).

Pour choisir les options, c'est ce dont je parlais, ça se définit dans les options des plugins. L'interface se décrit juste avec quelques appels de méthodes, dans les classes xxxController, dans la méthode _defineGui(). Les paramètres correspondants doivent être définis dans la classe du plugin, dans la méthode _defineConfig().

Je pars en Alsace jusqu'à  la fin de la semaine, mais dès mon retour, je vais écrire un plugin vide, avec plein d'explications en ligne dans le code, histoire que ceux qui veulent développer un plugin aient tout en main. Vous êtes plusieurs, en ce moment, à  développer des trucs pour de nouvelles têtes. C'est cool :)
Frédéric

Canon 20D + 17-40/f4 L USM + 70-200/f4 L USM + 50/f1.4 USM
Merlin/Orion panohead + Papywizard on Nokia N800 and HP TC-1100

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Thu Dec 30, 2010 11:21 am

Bien compris, pour l'histoire de l'oeuf et la poule. Néanmoins, il est possible de commencer l'init avec des valeurs par défaut, une fois l'équipement connecté, les valeurs sont mises à  jours.

Ok pour les options, je vais voir ce que je peux faire.

Bonne idée pour le plugin vide, ca permettra d'avoir une coquille pour développer. Le succès vient :)

Oh, encore un Alsacien ! ;)
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Thu Dec 30, 2010 4:14 pm

Protocole décodé à  98% !

Il ne reste que 6 commandes inconnues, mais cela n'a pas d'influence sur le portage de la tête sur PapyWizard.

Néanmoins, si quelqu'un trouve à  quoi ces commandes servent, je suis intéressé !
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Thu Dec 30, 2010 6:25 pm

J'ai passé une heure à  trouver comment le plugin pouvait être pris en compte lors du lancement de papywizard (hors fichier config de l'user).

J'ai trouvé, faut juste l'ajouter dans script/main.py
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Thu Dec 30, 2010 10:56 pm

Ca avance ! :)

Code: Select all
2010-12-30 22:55:20,996::Main::DEBUG::PluginsConnector.start(): 'yawAxis' establish connection
2010-12-30 22:55:21,017::Main::DEBUG::PluginsConnector.start(): 'yawAxis' init
2010-12-30 22:55:23,045::Main::DEBUG::ClaussHardware.init(): Transceiver reference number=30.500-0100
2010-12-30 22:55:24,058::Main::DEBUG::ClaussHardware.init(): Transceiver brand=CLAUSS
2010-12-30 22:55:25,069::Main::DEBUG::ClaussHardware.init(): Transceiver firmware version=02.00
2010-12-30 22:55:27,261::Main::DEBUG::ClaussHardware.init(): axis=1, motor reference number=30.500-1000
2010-12-30 22:55:28,282::Main::DEBUG::ClaussHardware.init(): axis=1, motor brand=CLAUSS
2010-12-30 22:55:29,301::Main::DEBUG::ClaussHardware.init(): axis=1, motor firmware version=01.05
2010-12-30 22:55:30,321::Main::DEBUG::ClaussHardware.init(): axis=1, motor numbers of steps=24000
2010-12-30 22:55:31,341::Main::DEBUG::ClaussHardware.init(): axis=1, motor max speed=03000
2010-12-30 22:55:31,343::Main::DEBUG::PluginsConnector.start(): 'pitchAxis' establish connection
2010-12-30 22:55:31,343::Main::DEBUG::PluginsConnector.start(): 'pitchAxis' init
2010-12-30 22:55:33,382::Main::DEBUG::ClaussHardware.init(): axis=2, motor reference number=30.500-1000
2010-12-30 22:55:34,405::Main::DEBUG::ClaussHardware.init(): axis=2, motor brand=CLAUSS
2010-12-30 22:55:35,425::Main::DEBUG::ClaussHardware.init(): axis=2, motor firmware version=01.05
2010-12-30 22:55:36,765::Main::DEBUG::ClaussHardware.init(): axis=2, motor numbers of steps=60000
2010-12-30 22:55:37,785::Main::DEBUG::ClaussHardware.init(): axis=2, motor max speed=03000
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Fri Dec 31, 2010 2:46 pm

Alors, quelques retours.

La définition en tant que constante de la vitesse du port série dans config.py me semble inutile. Si une personne jongle entre plusieurs têtes panoramiques, elle doit modifier la vitesse à  chaque fois.
Sachant que la vitesse est liée au type de matériel (par exemple : 9600 pour Merlin, 19200 pour Clauss), il serait plus pratique de la définir dans la classe hardware. Ainsi, la vitesse est fixée automatiquement par chaque plugin.

Par ailleurs, le comportement de la tête Clauss est différent des têtes Merlin. La tête Clauss répond à  une commande avec plusieurs informations ayant chacune un CR. Ainsi, je peux avoir 1,2 ou 3 CR dans une réponse à  une seule commande. J'ai du modifier la fonction read (avec une variable définie par défaut pour ne pas perturber les autres plugins), pour lire jusqu'au timeout sur le port série. Quand le timeout arrive, au lieu de renvoyer une exception, la fonction renvoie -1.
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
claudevh
Member
 
Posts: 1341
Joined: Sun Nov 25, 2007 11:12 pm
Location: Mont-Saint-André (Belgium)

by claudevh » Fri Dec 31, 2010 4:47 pm

Martin,

Superbe travail que tu fais là  ... enfin quelqu'un qui peut se "tremper" dans Papywizard et Python ...
Je suis certain que cela fait plaisir à  Fréderic !
:cool: Claude :cool:
Merlin + Papywizard on Windows 7 & Nokia 770 § N810 & Acer (Netbook) + PanoramaApp Androïd + Deltawave PapyMerlin BT + Autopano
Spherical Pano (180 x 360) with Canon 40D + Canon EF-S 10-22mm f/3.5-4.5 Zoom & Pôle Pano with Canon 5D MK2 and shaved Tokina 10-17 3.5-4.5 AF DX Fisheye
Gigapixel photography with Nikon D200 + Sigma 70-200 F 2.8 EX DG APO HSM

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Fri Dec 31, 2010 4:51 pm

Merci Claude !

Et puis ca me fait plaisir de porter une tête aussi puissante coté hardware sur un logiciel aussi pratique et ouvert que Papywizard :)
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Fri Dec 31, 2010 7:44 pm

Bon, j'avance bien.

J'ai compris que les fonctions stratJog et stop sont liées à  un déplacement manuel (appuie sur les flèches).
Et que la fonction drive est liée à  un déplacement automatique (suivre un preset par exemple).

En revanche, je comprends rien à  l'idée d'offset (variable _offset). C'est quoi donc ?

Bon, bah bonne année ! (les amis arrivent !)
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

User avatar
fma38
Member
 
Posts: 5827
Joined: Wed Dec 07, 2005 6:21 pm
Location: Grenoble, France

by fma38 » Sun Jan 02, 2011 6:01 pm

De retour d'Alsace... (mais je ne suis pas alsacien ;) )

Quelle méthode read() as-tu modifée ? Je ne comprend pas ce qui peut perturber les autres plugins si tu changes des choses dans le plugin.

L'offset est utilisé lorsque tu utilises le menu pour modifier la référence (la position où tu lis yaw=0, pitch=0). La Claus peut peut-être être mise à  zéro, mais pas la Merlin (ni d'autres têtes). Donc je gère ça au niveau au dessus du plugin.

Au fait, la commande stop() sert aussi à  arrêter un positionnement automatique.
Frédéric

Canon 20D + 17-40/f4 L USM + 70-200/f4 L USM + 50/f1.4 USM
Merlin/Orion panohead + Papywizard on Nokia N800 and HP TC-1100

User avatar
martinlbb
Member
 
Posts: 57
Joined: Thu Apr 15, 2010 12:41 pm
Location: Lyon

by martinlbb » Sun Jan 02, 2011 6:19 pm

fma38 wrote:De retour d'Alsace... (mais je ne suis pas alsacien ;) )

Arf ! ;)

fma38 wrote:Quelle méthode read() as-tu modifée ? Je ne comprend pas ce qui peut perturber les autres plugins si tu changes des choses dans le plugin.

Dans le fichier papywizard/driver/serialDriver.py, la méthode read (la dernière en bas du fichier).
Comme je dois lire tout ce qui est écrit sur la ligne série jusqu'au timout, cela me générait des erreurs.
La manière de penser n'est pas la même pour Clauss. Une réponse peut avoir de 1 à  3 CR. Je dois donc tout lire pour ne pas perdre d'arguments.

fma38 wrote:L'offset est utilisé lorsque tu utilises le menu pour modifier la référence (la position où tu lis yaw=0, pitch=0). La Claus peut peut-être être mise à  zéro, mais pas la Merlin (ni d'autres têtes). Donc je gère ça au niveau au dessus du plugin.

OK, dois je le garder ?

fma38 wrote:Au fait, la commande stop() sert aussi à  arrêter un positionnement automatique.

ok :)

Sinon, j'ai quasi tout porté ! La commande manuelle marche, mais j'ai encore quelques erreurs en automatique (drive).

Ah sinon, ce serait bien d'implémenter un état de la batterie, avec affichage sur la barre d'état (batterie ou secteur). Mais est-ce que les autres têtes le gère ?
Révéler les beautés cachées ou hors de portée : http://www.martinloyer.fr

Next

Return to Matériel

Who is online

Users browsing this forum: No registered users and 1 guest