telephone-jukebox/attiny402
Pascal Engélibert b3ebbf34b4 attiny radio 2023-05-16 11:50:44 +02:00
..
radio attiny radio 2023-05-16 11:50:44 +02:00
telephone Attiny402 2023-01-14 00:09:05 +01:00
README.md attiny radio 2023-05-16 11:50:44 +02:00
attiny.kicad_pcb Attiny402 2023-01-14 00:09:05 +01:00
attiny.kicad_prl Attiny402 2023-01-14 00:09:05 +01:00
attiny.kicad_pro Attiny402 2023-01-14 00:09:05 +01:00
fp-info-cache Attiny402 2023-01-14 00:09:05 +01:00

README.md

Téléphone jukebox

Deux versions :

  • telephone: joue le fichier correspondant au chiffre entré sur le cadran
  • radio: joue tous les fichiers en boucle

Prérequis

  • 1 Attiny402
  • 1 dfplayer-mini
  • 1 condensateur de l'ordre de 1µF
  • 1 résistance de 4,7kΩ
  • 1 résistance de 1kΩ
  • de quoi fabriquer un PCB (précision SOIC requise pour le Attiny)
  • ce qu'il faut pour programmer un Attiny (https://github.com/SpenceKonde/megaTinyCore)
    • une Arduino (Mega ou Nano) suffit. Suivez de toute façon les instructions de megaTinyCore.
  • 1 carte micro-SD

Électronique

Utilisez KiCAD pour avoir un exemple de circuit assez compact et pouvant être dessiné à la main.

  • Relier les GND du Attiny et du dfplayer.
  • Relier les VCC du Attiny et du dfplayer.
  • Relier le RX du Attiny au TX du dfplayer.
  • Relier le TX du Attiny au RX du dfplayer avec une résistance de 1kΩ.
  • Relier le UPDI du Attiny à une broche libre avec une résistance de 4,7kΩ.
  • Relier le PA1 et le GND du Attiny aux fils du cadran du téléphone. (trouvez les bons avec un ohmmètre. La résistance devrait varier en fonction de si le téléphone est décroché ou non, et si oui, de la rotation du cadran. Ce sont souvent les fils bleu et blanc.)
  • Mettre un condensateur d'environ 1µF entre VCC et GND, assez près du Attiny.
  • Relier les SPK1 et SPK2 du dfplayer au haut-parleur du téléphone. (ajouter une résistance de 1kΩ ou plus sur un des fils si le son est trop fort)

Laissez des broches VCC, GND et UPDI accessibles pour pouvoir reprogrammer facilement.

Si les fils sont cassants (monobrins), je conseille de les enrouler autour du manchon en métal de la patte qui est fixée au boulon, plutôt que de l'enrouler autour de la vis serrée avec le boulon, afin d'éviter de trop contraindre le fil.

Utilisation

Fichiers audio

Placez les fichiers audio au format MP3 dans le dossier mp3 de la carte SD. Ils doivent être nommés de 0001.mp3 à 0009.mp3. Le fichier 0099.mp3 est lu en boucle quand aucun numéro n'est composé (on peut y mettre un BIP de quelques secondes par exemple).

Pour la version radio, tous les fichiers à la racine sont lus en boucle.

Programmation

On utilise jtag2updi qui nécessite uniquement une carte de type Arduino (Mega ou Nano, mais pas Micro).

Après avoir installé MegaTinyCore et jtag2updi, téléversez le croquis jtag2updi dans la carte Arduino.

Connectez l'Attiny à l'Arduino :

  • (Arduino) <-> Attiny
  • +5V <-> +5V
  • GND <-> GND
  • **(tout modèle sauf Mega) D6 <-> UPDI
  • **(Arduino Mega uniquement) D18 <-> UPDI

Choisissez les paramètres suivants :

  • Type de carte : megaTinyCore/ATtiny402
  • Chip : ATtiny402
  • Clock : 20MHz internal
  • Other settings: default
  • Programmateur : jtag2updi (n'apparaît qu'après avoir choisi la carte)

Ne pas graver le bootloader. Graver le programme telephone ou radio avec le bouton classique (ne pas utiliser "graver avec un programmateur").

Si pendant le téléversement le message avrdude: jtagmkII_getsync(): sign-on command: status -1 apparaît à répétition, il peut être nécessaire d'appuyer sur le bouton Reset de la carte Arduino. Le téléversement devrait démarrer juste après.

Licence

CopyLeft 2023 Pascal Engélibert (pourquoi copyleft?)

Ces instructions sont mises à disposition selon les termes de la licence CC BY-SA 4.0.

Merci à la compagnie Léna d'Azy d'avoir financé la conception et la documentation.