Bonjour.
Je cherche des informations sur IRC, particulièrement sur le code source.
En effet, le code source de LIRC contient un certain nombre de drivers spécifiques, et je voudrais savoir s'il est nécessaire de les compiler pour pouvoir utiliser LIRC sur une pauvre liaison série ou parallèle. Si c'est effectivement le cas pourquoi ? Pourquoi ne pas avoir utilisé les drivers standards de Linux ? Parce que sinon, c'est pas top du tout pour la portabilité ...
Merci d'avance.
# astuce ?
Posté par BAud (site web personnel) . Évalué à 2.
j'ai bon ?
# telecommande
Posté par NeoX . Évalué à 2.
que de recuperer les differents codes que differentes telecommandes vont envoyés au recepteur infrarouge/bluetooth...
si toutes les commandes envoyaient le meme code pour la meme action
la telecommande de ton DVD pourrait aussi piloter ta chaine hifi ou ton magnetoscope
et sauf à avoir le meme constructeur et des produits de meme generation, chaque constructeur envoie surement des codes à lui avec ses telecommandes....
enfin c'est mon idée et c'est pour LIRC
[^] # Re: telecommande
Posté par totof2000 . Évalué à 2.
Cela dit je ne comprend pas l'intéret d'n driver noyau pour la couche par dessus la liaison physique (USB, parallèle série ...). Quoique en ayant examiné un peu le code source de LIRC je commence à comprendre l'intret (bien que je ne sois pas convaincu que ce soit la meilleure façon de faire du code portable, mais ce n'est malhereusement pas le but initial de LIRC).
Je vais essayer de m'adresser directement aux développeurs du projet pour leur poser mes questions, qui poren surtout sur la relation entre les programmes en espace utilisateur (lircd, etc ...) et les modules noyau (read/write, IOCTL, etc ....). Je n'ai pas trouvé de doc claire sur ce sujet et comme je ne suis pas spécialiste des drivers Linux, c'est un eu pénible à comprendre.
[^] # Re: telecommande
Posté par NeoX . Évalué à 2.
ces trames sont differentes selon :
- le port USB/Serie
- la telecommande (cf mon post precedent)
d'ou l'interet des "drivers" qui correspondront à la telecommande
ensuite c'est passé au daemon (lircd) qui lui va repercuter à l'environnement de l'utilisateur ce que le module noyau aura recupéré
[^] # Re: telecommande
Posté par totof2000 . Évalué à 2.
[^] # Re: telecommande
Posté par NeoX . Évalué à 2.
1 bit, 1 octet, une suite d'octet sur le port en question
puis en fonction de la telecommande, il te faut convertir si c'est haut/bas, + ou -, 0...9
donc pour moi les 2 sont liés et se font au niveau du driver
le driver se chargeant de retourner la valeur "haut" "bas" "+" "-" au logiciel en userland
n'est ce pas le but du driver que de convertir un signal venant d'un peripherique
en un signal comprehensible par la partie utilisateur ?
ainsi que tu stockes un fichier sur ta clef USB, sur ton disque IDE ou SATA,
le logiciel donne le meme "ordre" à la machine.
le driver se chargeant ensuite de convertir cela en information pour le peripherique
de meme le peripherique renvoie son "etat"
qui est decodé par le driver
qui le renvoi à l'interface utilisateur ("disque plein" par exemple)
comment verrais-tu le fonctionnement d'un driver (quel qu'il soit) ?
[^] # Re: telecommande
Posté par totof2000 . Évalué à 2.
en un signal comprehensible par la partie utilisateur ?
Tout dépend de ce que l'on entent par "périphérique" ou "partie utilisateur" ....
Que tu utilises ta télécommande sur Linux, BSD ou Solaris, la partie "accès à la télécommande" se fera de la même façon, donc pas forcément nécessaire de mettre le code dans une partie "spécifique Linux".
Par contre effectivement, l'accès aux périphériques "bas niveau" tel la liaison série ou la liaison USB doit se faire en mode kernel, quoique, pour l'USB, il y a moyen de faire un driver en userspace (mais est-ce faisable de la même façon sur les autre OS?). De mémoire il existe sous unix une norme pour les accès aux liaisons série non ? Ou alors j'ai mauvaise mémoire .... Je retrouverai ça mais la de suite j'ai pas trop le temps de chercher ....
[^] # Re: telecommande
Posté par totof2000 . Évalué à 2.
A priori, pour une interface série, seules les communications "standard" sont plus ou moins normalisées (accès aux ports via /dev/ttySx ou équivalent sur d'autres systèmes), mais pour ce que fait LIRC il n'y a aps l'air d'avoir quelque chose.
Bon pas grave..... Je reste convaincu cependant qu'une bonne partie des "drivers" auraient pu être déplacé hors de l'espace kernel pour favoriser la portabilité .... Mais ça n'engage que moi et je peux me tromper.
Loin de moi l'idée de critiquer de façon négative le projet LIRC, je trouve que c'est un projet assez bien fait, cependant je suis un peu frustré du fait qu'il nesoit pas portable plus facilement.
Je reviendrai certainement vous voir si j'ai besoin de plus d'infos sur les parties "Driver linux" que je ne comprend pas.
[^] # Re: telecommande
Posté par totof2000 . Évalué à 2.
http://www.easysw.com/~mike/serial/serial.html#3_1
Il y a moyen de récupérer l'état des lignes d'un port série de manière standardisée.
Ma question : LIRC utilise-t-il cette interface ? Je n'ai pas encore déroulé le code source pour vérifier .... Si c'est le cas il doit être facile de porter LIRC (au moins la partie utilisant le port série) sur autre archi ...
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.