Radio-réveil en bois…

20171230_174605

Mon radio-réveil ayant presque rendu l’âme, j’ai voulu construire moi-même le nouveau, mais en bois !!! Enfin presque ….
Je suis parti d’une base de boite à bijou, en bois brut, trouvée au rayon « loisirs créatifs » d’une grande chaine.

Jolies boite certes.. mais un peu triste. Comme l’aspect extérieur devait être sympa (quasi la première chose que je vois le matin.. après ma femme bien évidement 🙂 ), j’ai profité de la possibilité offerte par formulor.de d’utiliser un contre-plaqué de bouleau de 0.8mm (Cf. mes autres réalisations avec un casing fabriqué à partir de plaques d’acrylique découpées sur CNC laser) afin de réaliser un plaquage avec découpe et gravures sur deux faces (dessus et frontale).

img_1275

 

Pour l’électronique, rien de révolutionnaire pour le coup. Je suis parti de mon expérience avec la « RadioDuino » de ma cuisine. Le hardware est donc bâti à partir d’un arduino (un nano cette fois), d’un afficheur lcd 4×20 piloté par bus I2C, d’un tuner FM si4703 vendu par Sparkun (piloté également par bus I2C) et un petit ampli mono classe D basé sur un TPA2005D1 qui délivre 1.4W sous 8ohms.

20171230_174059

 

 

 

 

 

 

 

Afin de minimiser le nombre de pins utilisés sur l’arduino j’ai utilisé le principe des boutons poussoirs en parallèles munis, en série, d’une résistance afin de créer une pont diviseur de tension. Au final un seul port analogique permet de mesurer une tension différente pour chacun des boutons.

img_1596

Le changement d’heure d’été/hiver est assuré comme sur la domotique par la lecture régulière (chaque jour pendant la nuit) d’une table de dates de passage d’un mode à l’autre (déjà utilisé sur la domotique).

Pour la partie soft, le plus dur a été de trouver une police de très grand taille (en réalité une police composé de 3×3 caractères). Je me suis inspiré de l’article suivant: https://forum.arduino.cc/t/lcd-bigfont-numbers-over-2-or-4-lines/44538/12
en utilisant cette possibilité offerte par les afficheurs (sur base de contrôleur Hitachi HD44780) de pouvoir définir jusqu’à 8 caractères personnalisés (stockés dans la table interne du contrôleur sur les caractères de 0 à 7). 

les 10 chiffres utilisés sont stockés au sein de 3 tableaux de 10×3 valeurs. Par exemple pour afficher le chiffre 4 selon l’extrait de code ci-dessous, il suffira d’envoyer les caractères suivants (3 par ligne):
255,16,255
4,2,255
16,16,2

 

 

Ici les caractères 2 et 4 font partie de ceux crées. 255 est un rectangle plein (symbole en bas à droite du tableau ci-dessous b11111111) et le 16 un espace (1 symbole de la 3ème colonne b10000).
table ascii interne du controleur:

hd44780_characters_map

 

 

 

 

L’intégralité du code est disponible comme pour mes autres projets sur GITHUB:

https://github.com/Chnalex/arduino/blob/master/radio_reveil.ino

img_1597