Carte STM32F4-discovery – Installation de NuttX

NuttX est un système d’exploitation POSIX et temps réel disponible pour plusieurs familles de microprocesseurs 8 et 32Bits. Il est complètement supporté sur la carte STM32F4-DISCOVERY. Son empreinte mémoire est très faible, environ 8ko sur les 192ko du STM32F407: dérisoire par rapport aux services rendus. Continue reading

Utilisation de la carte STM32F4-discovery avec macOS ou FreeBSD

Update du 08/10/2020 : Tous les logiciels requis pour macOS sont disponibles sur la page dédiée.

J’ai acheté une carte STM32F4-discovery pour me familiariser avec les µP ARM. Cette carte est équipée d’un STM32F407 (ARM cortex-M4) à 168MHz et dispose de plusieurs périphériques dont un AudioDAC (CIRRUS 43L22), un accéléromètre, un microphone, etc. Elle possède également son propre programmateur/débogueur STLink/V2, ce qui permet de la flasher avec un simple câble USB. Pour une description complète de la carte, consultez le site de ST

Continue reading

Bouton PANIC pour installation MIDI

Le bouton PANIC dans une installation MIDI est comparable à un bouton d’arrêt d’urgence. Il permet de couper le son de tous les synthétiseurs connectés en une seule action.

Cette version hardware est basé sur un PIC 12C508 ou 16F84 (version recommandée).

Le code source et les schémas au format KiCad sont disponibles sur github

Note: Ce projet date de 2006, ceci explique le choix du PIC12C508 (ou du PIC16F84) 1. Cependant il est toujours disponible (au 12/2015) (chez Farnell par exemple). Si j’ai le temps, je ferai une version « plus moderne » basée sur un AVR attiny.

Notes

1 : Le PIC16F84 est sorti en 1993 et le PIC12C508 en 1997.

Synchronisation de dossier sur un serveur FTP

Voici un petit script qui permet de  synchroniser un dossier local sur un serveur FTP.  Il utilise lftp et c’est très pratique si rsyncd ou ssh n’est pas disponible sur le serveur.

Si le dossier n’existe pas sur le serveur distant, il est créé automatiquement et comme l’option « delete » est activée, on s’arrête à la moindre erreur avec l’option --max-errors=0. Il faudra modifier les variables ftphost, ftpuser et ftppass pour s’adapter à votre configuration.

#!/bin/sh
#
# $Id$
ftphost="ftp.server.org"
ftpuser="my_username"
ftppass="my_password"
source="$1"
destination="$2"
rc=1

if [ -z "$source" -o -z "$destination" ] ; then
        echo "usage: $(basename $0) source destination"
        exit $rc
fi

if [ -e "$source" ] ; then
        lftp --max-errors=0 -c "
        set ftp:list-options -a
        open ftp://$ftpuser:$ftppass@$ftphost
        lcd $source
        mkdir -f -p $destination
        cd $destination
        mirror --reverse --verbose --delete"
        rc=$?
fi
exit $rc