Linux nm4

Vous devez être identifié pour accéder aux forums. Vous pouvez faire cela ici

Auteur Message

Mouche

Samedi 02 Août 2008 16:23:26

Bonjour à tous,
Sur l'ancien forum, j'ai repéré des messages indiquant des soucis sous Linux (mais comme j'avais acheté la bestiole avant tant pis pour moi).
Ceci étant, je trouve qu'écrire compatible Linux 2.4.2 sur la boite quand absolument aucune indication n'est fournie sur comment le faire fonctionner, ça s'apparente à de l'arnaque, et je trouverais normal qu'un commercial de chez neonumeric explique la politique de la maison sur le sujet. Au vu du forum précédent (le xooit....) ça fait plus d'un an que ça dure. Mais je ferme cette parenthèse pour le moment.
Comme d'autres utilisateurs, il m'était complètement impossible de communiquer avec le lecteur depuis Linux (plantage en quelques secondes).

Le système est de type "Rock", RockUSB ou RockChip. En fouinant, j'ai trouvé le début de solution suivante (merci à http://www.sprocketandlube.com/shownews/item/67) :

Il faut écrire 64 dans le fichier max_sectors qui se trouve dans /sys/blocks/sdf/devices, où « sdf » est le numéro de device scsi que prend mon mp3. On peut trouver ce numéro de device en faisant lsscsi. C'est toujours pas parfait (quelques plantages) et la connexion est lente, mais on arrive à faire des transferts. Neonumeric ou "Rock" pourraient faire lm'effort de donner toutes les informations nécessaires pour une vraie communication.

L'autre souci est que comme le nm4 joue les morceaux dans une répertoire dans l'ordre où ils ont été écrits, on ne peut pas utiliser de copie de répertoire, mais il faut copier les fichiers un par un dans le bon ordre (possible avec une macro).

Pour que le 64 s'écrive tout seul à partir de udev qui est le bout de Linux fait pour reconnaître tout seul les périphériques, la solution consiste à créer la règle (ajouter la ligne) :

BUS=="scsi", SYSFS{vendor}=="RockChip", RUN+="/bin/sh -c '/bin/echo 64 > /sys/block/%k/device/max_sectors'"

dans un fichier udev (n'importe lequel a priori). J'ai crée un fichier appelé program.rules avec juste cette ligne dedans dans le répertoire /etc/udev. Sur mon système Debian (je ne sais pas si c'est pareil pour tous les systèmes Linux), les fichiers « .rules » sont recherchés par udev dans /etc/udev/rules.d, j'ai donc ensuite ajouté un lien de /etc/udev/rules.d/080-program.rules vers /etc/udev/program.rules.

C'est pas très joli, ça marche moyennement, mais c'est mieux que rien !
Si quelqu'un a mieux, je suis preneur !
A+