Les derniers articles

Nos contenus premiums

Ces articles techniques n'ont jamais fait l'objet d'une publication papier. Ils sont exclusivement disponibles sur ce site et réservés aux abonnés de la plateforme Connect.

Nous contacter

Périphérique USB : STM32 est aussi dans la course !

Spécialité(s)
Résumé

En conclusion d’un précédent article [1] j’invitais le lecteur aventureux à tenter l’expérience consistant à créer un périphérique USB de type Vendor Class sur microcontrôleur STM32, comme nous l’avions fait sur ESP32S2, sur Raspberry Pi Pico, sur Cypress/Infineon FX2LP, sur une paire de SBC et même sur un latptop Lenovo ThinkPad. Ma curiosité étant ce qu’elle est, force est de constater que le simple fait d’avoir soulevé la question m’aura suffi à devoir jeter un œil à la problématique...

Cynthion : l'outil ultime pour maîtriser l'USB

Spécialité(s)
Résumé

Il existe bien des solutions, aussi diverses que variées, lorsqu'il s'agit d'approcher le bus USB. Comme nous l'avons vu par ailleurs, il peut s'agir de créer des périphériques, mais aussi d'inspecter les communications entre un périphérique et un hôte, éprouver la sécurité à l'un et l'autre bout de la liaison ou encore, tout simplement, apprendre par la pratique les détails d'un ou plusieurs protocoles. Pour cela, nous avons une myriade d'options logicielles et presque tout autant côté matériel. Mais rien qui sache tout faire en une fois... jusqu'à l'arrivée du Cynthion de Great Scott Gadgets !

Édito : On me demande souvent...

Résumé

Lorsque j'échange avec un lecteur croisé à un salon ou une conférence, il est une question qui arrive presque toujours sur le tapis : « mais comment fais-tu pour avoir toutes ces idées d'articles ? »La réponse est simple, il ne s'agit pas vraiment de plusieurs idées, mais d'une sorte de parcours aux nombreux embranchements, une pelote de laine que je déroule depuis des années, en somme. Toute l'astuce consiste simplement à essayer de ne pas se perdre ou de s'enfoncer trop profondément dans de sombres passages.

aStrA : vers de vraies chaînes de caractères en C !

Spécialité(s)
Résumé

Qu’est-ce qui caractérise un langage de haut niveau ? On peut dire que celui-ci doit au moins gérer les chaînes de caractères facilement et sans aucun risque. BASIC le faisait il y a soixante ans. N’importe quel langage courant le fait actuellement. Pourtant, le précédent article a démont(r)é [1] que le C n’en fait pas partie, surtout à cause des fonctions printf(3) et assimilées : elles procurent une illusion d’aisance qui s’effondre vite et c’est un vrai nid à failles. Nous avons suggéré quelques solutions que nous allons mettre en œuvre ici, grâce notamment au format des chaînes alignées [2] étendu avec des attributs, d’où le nom aStrA. Cela demande un peu de bricolage pour les réaliser en C, mais c’est un premier pas en avant, une base qui ne demande qu’à évoluer.

Visualisez les données grâce à l’alphabet Braille !

Spécialité(s)
Résumé

Quand on travaille avec de grandes quantités de bits, on n’a pas forcément envie de faire une interface graphique, et les afficher dans le terminal graphique n’est pas facile. Un bit occupe toute la place d’un caractère et la représentation hexadécimale n’est pas très parlante. Heureusement, Unicode est là !

Modularité de l'authentification sous OpenBSD

Spécialité(s)
Résumé

Si vous êtes coutumier de GNU/Linux, ou même de FreeBSD, vous connaissez sans doute PAM. Il ne s'agit pas du diminutif de Pamela (Rose ?), mais des Pluggable Authentication Modules, permettant de varier les contraintes d'authentification en fonction des services (login, SSH, su, etc.) et des besoins. Ce mécanisme, doublé d'une API, hérité de Sun Microsystems n'existe pas sous OpenBSD et est remplacé par le classique système de classes, et entre autres, leurs configurations via /etc/login.conf...

GitHub équipé d’un Sonar

Spécialité(s)
Résumé

La revue de code représente une pratique essentielle dans le processus de développement logiciel. Cet article illustre l'amélioration du processus en intégrant les retours de l’analyseur statique SonarQube Cloud au serveur de source GitHub. Pour cela, une application minimaliste développée en Rust, exécutée à l'aide d’AWS, facilitera cette intégration.