Bash envoyer un ordre hexadecimal a un module

Bonjour,

Je voudrai savoir si il est possible avec un code bash d'envoyer un ordre hexadecimal style "0x6A" a un module usb situé dans /dev/cm15a0.

Genre
echo -ne "\\0x6A" > /dev/cm15a0


Merci

6 réponses

  1. Bonjour,

    ça marche pas non plus
    serveur@debian:~$ perl -e 'print pack( "CC", 6, 0x6A )'  > /dev/cm15a0 
    serveur@debian:~$


    Merci.
    0
    1. Contributeur
      essayer
      perl -e 'print pack( "CC", 6, 0x6A )'  > /dev/cm15a0 
      0
      1. bonjour,

        ça marche pas, j'ai essayé directemeent dans le terminal.
        $ echo -ne "\x06\x6A" > /dev/cm15a0


        serveur@debian:~$ lsmod | grep cm15a 
        cm15a                  11394  0  
        serveur@debian:~$


        serveur@debian:~$ ls -alF /dev/cm15* 
        -rwxrwxrwx 1 root root 2 31 août  11:43 /dev/cm15a0* 
        serveur@debian:~$ 


        code bash
        #!/bin/bash 
        
            #----- Déclaration des variables ----- 
            on="A2 On"   
            off="A2 Off";   
            temps="5"; # Pause en secondes 
            module="cm15a"; # nom du module 
        
            #----- Vérification du module  ----- 
            lsmod | grep -q $module 
            test "$?" -eq 0 && echo "Module $module chargé." || echo "Module $module non chargé." 
        
            #----- Ordre x10 ON ----- 
            echo -ne "\x06\x6A" > /dev/cm15a0 
            echo "$on activé" 
        
            #----- Mise en attente avec affichage a l'ècran ----- 
            echo "En pause $temps secondes" 
            sleep $temps  # pause  
            echo "Fin de la pause" 
        
            #----- Ordre x10 OFF ----- 
            echo -ne "\x06\x63" > /dev/cm15a0 
            echo "$off activé"


        bash affiche
        serveur@debian:~$ bash /home/serveur/x10/bash/cm15-A2.sh 
        Module cm15 chargé. 
        A2 On activé 
        En pause 5 secondes 
        Fin de la pause 
        A2 Off activé 
        serveur@debian:~$


        Mais ça ne fonctionne pas.

        Merci.
        0
        1. Contributeur
          hello
          essayer
          echo -ne "\x06\x6A" > /dev/cm15a0
          0
          1. Bonjour,

            J'ai essayé
            $ echo -ne "\x6A" > /dev/cm15a0
            mais ça marche pas

            $ ls -alF /dev/cm15* 
            -rwxrwxrwx 1 root root 1 31 août  10:34 /dev/cm15a0*


            Le but est de refaire ceci sous bash.
            sysopen( CM15A, "/dev/cm15a0", O_RDWR |O_NOCTTY | O_NONBLOCK ) || die "Module cm15a.ko non charge $!"; 
            syswrite CM15A, pack( "CC", 6, 0x6A ), 2; 
            close( CM15A );


            Code bash
            #!/bin/bash
            lsmod | grep -q /dev/cm15a0
            test "$?" -eq 0 && echo "Module chargé." || echo "Module non chargé."
            echo -ne "\x6A" > /dev/cm15a0


            Merci.
            0
            1. salut,

              oui, sans le 0.
              par exemple, afficher le signe dollar:
              echo -ne "\x24"
              $
              après quant à la capacité d'un module usb à prendre
              ce qu'il recevra pour un ordre, je ne sais pas. :(
              tiens nous au courant.
              0