Hack du bouton Dash de chez Amazon

Vous vous dites: « Encore un énième article sur le ‘DashButton‘ d’Amazon ». Hé bien oui, je suis curieux par nature et je n’ai pas pu m’empêcher de tester moi-même ce bouton. Et comme je suis très très curieux, je l’ai ouvert. Dans cet article, je vais vous montrer les entrailles du bouton et vous donnez mon avis sur son intégration dans la domotique.

Le bouton coûte 4.99€ et on vous le rembourse à la première commande. Je ne me suis donc pas fait prier pour en prendre un.

Démontage

Voici le bouton dans son état « sorti de boite ». Oui je sais, ce n’est pas une bonne idée d’avoir pris le bouton « durex« , pour le remboursement du bouton (en effet, c’est mieux de prendre Sun ou Kleenex par exemple) et puis c’est un peu puéril… mais bon j’ai voulu faire mon intéressant…

img_20161123_182254

le bouton mesure (au pied à coulisse) :

L : 60 mm
l   : 25.6 mm
H : 16.5 mm

Vu de haut il semble bien proportionné mais je le trouve un peu épais. (on comprendra plus loin pourquoi)

DashButton ouvert

J’ai un peu galéré à l’ouverture. (il y a une légère fente sur le côté mais c’est soudé ou collé).  En effet, il n’est absolument pas prévu de pouvoir l’ouvrir. Ils l’expliquent dans la notice. Et quand, il n’y a plus de pile ? Hé bien vous achetez un nouveau bouton. C’est dommage parce que c’est une pile super classique disponible dans le commerce. Une pile alkaline AAA 1.5v (voilà pourquoi il est un peu épais). En plus, ils ne se sont pas moqué de vous. c’est une Duracell !!!

J’ai utilisé un cutter en suivant la rainure pour ouvrir le bouton et je m’en suis aperçu après, mais j’ai abimé un régulateur (rien de grave) et fait sauter deux condensateurs pour le découplage (pas grave non plus) qui se trouve au ras du boitier. Donc faites attention si vous voulez aussi le démonter.

img_20161123_183514

Voilà, après avoir enlevé la pile du boitier, on aperçoit la révision… j’avoue, j’avais déjà fait des recherches à ce sujet et vous pouvez trouvez plein d’infos sur cette révision sur le lien suivant.

https://mpetroff.net/2016/07/new-amazon-dash-button-teardown-jk29lp/

Les vis tiennent le support de pile et prend le PCB en sandwich avec la partie supérieure du boitier. La tête de vis est du T5 (Torx).

Recto

DashButton Recto

Première chose, les connecteurs de piles ne sont pas reliés au support de pile. Je trouve ça génial, et on ne le voit pas souvent. C’est déjà signe que la carte a été super bien pensée.

Deuxième chose, les dégâts causés au démontage:

DashButton régulateur

Je vous présente les 2 condensateurs C6 et C5 que j’ai fait sauter et le coin du régulateur à droite… Le bouton fonctionne sans les 2 condensateurs mais la ligne 3,3v doit être un peu plus bruitée. Il faut donc les remplacer par prudence.

Enfin, que vois-t-on sur cette face:

  • Le régulateur : qui va transformer la tension de pile 1.5v en 3.3v. C’est donc un régulateur de type boost.
  • Un microphone (hé oui !!!), mais ne vous inquiétez pas ;). Il est destiné à être utilisé pour communiquer avec le haut-parleur de votre téléphone si vous n’avez pas de Bluetooth pour l’appairer.DashButton microphoneEncore une fois, la mécanique est assez bien pensé car de l’autre côté (côté ouverture du microphone), il y a un trou et un léger creuset pour accueillir des petits joints caoutchoutés pour que le son soit bien dirigé vers le composant sans bruit.mircophone_troumircophone_joint
  • une mémoire flashdashbutton mémoire flash
  • Un emplacement pour un connecteur JTAG. Ce connecteur permettrait de programmer le micro-contrôleur du bouton mais on verra plus loin qu’il y a une sécurité physique sur le micro.(Actuellement et dans l’état des choses, impossible de le reprogrammer)DashButton connecteur jtag

Nous avons fait le tour de cette face… A noter l’antenne PCB en « F inversé » qui suit le bord du PCB.

Verso

img_20161124_105933

De ce côté se trouve le cœur de la carte. On y retrouve:

  • Le micro-contrôleur
    « Curieusement », le micro-contrôleur est protégé sur le dessus par une mousse collante (j’imagine pour éviter la pression du boitier lorsque que l’on appuie sur le bouton –> effet balancier).
    Tout autour du micro, il y a aussi une sorte de goudron/colle qui ne permet pas d’avoir accès aux pattes. Dommage, mais c’est surement fait exprès pour les curieux … L’accès aux pattes d’un micro permet de faire un « reverse engineering » pour comprendre le fonctionnement de l’objet.
    img_20161124_110253Je ne suis pas allé plus loin qu’enlever la mousse sur le micro contrôleur. Il s’agit d’un Atmel ATSAMG55J19A-MU

D’autres sont allés plus loin. Je vous laisse découvrir le travail d’un d’entre eux.

http://key-basher.blogspot.fr/2016/09/amazon-dash-button-version-2.html

Vous retrouverez sur son site tout ce qu’il faut savoir sur ce bouton. Actuellement, il y a un blocage au niveau de la patte 3 du micro qui est relié directement sur le GND de la carte. C’est une protection pour interdire le formatage de la flash du micro.

  • le transceiver WiFi / Bluetooth.
    Rien de particulier à dire dessus si ce n’est qu’il dialogue en SPI comme la plupart des transceivers …
  • la LED
  • le bouton

Le logiciel

Je ne vais pas expliquer dans cette section comment intégrer le bouton à Jeedom et comment détourner son fonctionnement originel.

Je vais juste partager les recherches de littleCdev qui a sniffé le trafic du bouton d’amazon:

https://github.com/littleCdev/JK29LP-HTTPDump

C’est ce genre d’étude qui permet de développer l’excellent plugin de lunarok pour Jeedom.

Conclusion

Ce test du bouton Dash d’amazon m’a permis de comprendre comment il fonctionnait. c’est toujours intéressant d’étudier les techniques et les outils des autres pour s’inspirer, progresser et parfois trouver des solutions intéressantes.

J’ai testé, bien entendu, le bouton sur Jeedom et j’ai le même avis que la plupart… c’est un bouton pas cher et très utile pour certains scénarii qui ne requiert pas de temps de réaction rapide. En effet, un bouton avec la technologie WiFi sur pile ne peux pas être rapide… (on allume le micro, on se connecte à la base WiFi et on utilise quelques milliers d’octets pour envoyer une information binaire).

Il existe, bien évidemment, des technologies beaucoup plus adaptées et moins gourmandes que le WiFi mais il a cet avantage de n’être pas très cher et de ne pas nécessiter de récepteur particulier. (Aujourd’hui tout le monde a une box avec du WiFi). La sécurité est aussi décriée … mais bon, il ne faut pas psychoter car avec ce bouton qui dort la plupart du temps, personne viendra vous le détourner pour attaquer le pentagone 😉 (pas comme les nombreuses caméras vidéos WiFi des Etats-unis).

 

 

[Total : 4    Moyenne : 4/5]

5 comments

  1. Sympa le démontage du Dash !
    AMHA le joint devant le micro c’est surtout pour éviter les poussieres, le joint autours du micro pour éviter les perturbations dû aux vibrations, et la pâte collante sur le proc c’est pour la dissipation thermique.

    1. En aucun cas le joint est là pour éviter les poussières… Vu qu’il y a un trou pour le son. Le boitier du dash fait caisse de résonnance. C’est principalement pour cette raison que les joints sont là. Ils permettent d’éviter la pollution des vibrations qu’il peut y avoir lors de la manipulation du boitier. Pour la pâte collante autour du micro. Ce n’est pas pour de la dissipation thermique car le micro est tout le temps éteint et fait pour du ultra low power. Si le micro devait chauffer, je pense que la pile ne tiendrait pas 2 min.

Leave a Reply

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *