diff --git a/chap/hardware.tex b/chap/hardware.tex index de849eb..29fa699 100644 --- a/chap/hardware.tex +++ b/chap/hardware.tex @@ -20,7 +20,8 @@ foo = read(joy_fd, &js, sizeof(struct js_event)); Quand les choses ne se passent pas comme prévu, quand il y a des accrocs dans le plan, que le résultat n'est -qu'une video totalement noire de 17 minutes. +qu'une video totalement noire de 17 minutes, que des +octets incongrus arrivent depuis l'Arduino. dmesg, lshw, lsusb, lspci\dots % ----------------------------------------------------------- @@ -83,7 +84,8 @@ Connecter un Minitel\index{MINITEL} pour dialoguer avec Ulla Trentsixquinze ? Brancher un Sportster 14400 pour retrouver Fidonet\index{Fidonet} ? Discuter avec un équipement avionnique ? Rediriger -l'impression d'un MSX\index{MSX} vers Cups\index{cups} ? +l'impression d'un MSX\index{MSX} ou d'un Alice 32 +vers Cups\index{cups} ? Les possibilités sont infinies. C'est votre imagination qui est la limite\footnote{Comme à peu près tout dans la vie.} @@ -98,6 +100,11 @@ périphérique \texttt{/dev/parport} Question: comment faire du \textsl{bitbanging} ? +% ----------------------------------------------------------- +\section{USB} \index{USB} \label{USB} + +Universal Serial Bus + % ----------------------------------------------------------- \section{Disques durs} @@ -158,8 +165,8 @@ idéal, la prédiction des pannes. \textsl{Check and repair a Linux filesystem} -Fortune du jour : \textsf{Franchement, là, je préfère que ce soit vous qui prenne la -tronçonneuse, parce que là, c'est pas beau à voir\dots} +Fortune du jour : \textsf{Franchement, là, je préfère que ce soit vous qui prenne +la tronçonneuse, parce que là, c'est pas beau à voir\dots} % ----------------------------------------------------------- \subsection{tune2fs}\index{tune2fs} @@ -167,6 +174,26 @@ tronçonneuse, parce que là, c'est pas beau à voir\dots} \textsl{Adjust tunable filesystem parameters on ext2/ext3/ext4 filesystems}\footnote{You can tune a fs, but you can't tuna fish}. +% ----------------------------------------------------------- +% nouveau 2 juin 2024 +% basé sur mes tentatives pour faire marcher l'interface +% Enttec OpenDMX USB + +\section{udev} \index{udev} \label{udev} + +\begin{quote} +udev supplies the system software with device events, manages +permissions of device nodes and may create additional symlinks in the +/dev directory, or renames network interfaces. The kernel usually just +assigns unpredictable device names based on the order of discovery. +Meaningful symlinks or network device names provide a way to reliably +identify devices based on their properties or current configuration. +\end{quote} + +Avant de rentre dans les détails, nous pouvons aller voir un exemple +concret en page \pageref{OpenDMX} où nous atriburons un nom fixe +à une interface USB. + % ----------------------------------------------------------- \section{Sensors} \index{sensors} @@ -195,7 +222,7 @@ int retcode; struct ifreq req; #if DEBUG_LEVEL -fprintf(stderr, ">>> %s \"%s\" to %p\n", \ +fprintf(stderr, ">>> %s ( \"%s\" to %p )\n", \ __func__, ifname, p_flags); #endif @@ -225,8 +252,7 @@ if (retcode < 0) close(fd); return -1; } -#if DEBUG_LEVEL -/* display the result */ +#if DEBUG_LEVEL /* display the result */ fprintf(stderr, "flags = 0x%04x\n", req.ifr_flags); #endif @@ -241,7 +267,6 @@ Hélas, je n'ai pas pu trop tester ce truc sur beaucoup de systèmes, et je vous propose de ne pas trop lui faire confiance pour une application critique... - % -----------------------------------------------------------