Cet article est dédié à un projet de Furrtek datant de 2014, une belle connerie qui permet de changer les segments des étiquettes électroniques des grandes surfaces.
Le plus long dans l'histoire est de retrouver tous les fichiers du projet, heureusement avec l'aide de Matthieu, on a pu retrouver un lien dropbox dans les commentaires d'une vidéo parlant des ESL.
Je vais me permettre de reprendre quelques formulations du site de Furrtek...
D'ailleurs, Furrtek a récemment publié un repo sur une télécommande (fonctionne avec un PC) pour programmer les ESL, cette fois ci avec plus de possibilités (car oui on sera limité avec ce projet).
Quand je me suis mis dans la tête de faire ce projet, il y a cela plus d'un an, Furrtek n'avait pas encore fait son repo PrecIR donc le reproduire pouvait être encore (un peut) utile. Aujourd'hui il vend sa télécommande à moins de 20€ sur tindie....
Je n'effectue aucun travail de recherche sur le projet, seulement du déterrage et l'actualisation de certaine infos de Furrtek. Tout le travail de recherche revient à Furrtek.
Bon assez parlé, passons au vif du sujet.
Déjà voici les liens de téléchargements du projet, des fichiers nécessaires :
Si il y a des personnes intéressées voici les vidéos en privées :
[ESL 1] Étiquettes électroniques potentiel connerie et bla-bla lourd.
[ESL 2] La recherche avance
[ESL 3] Teardown de TRX
[ESL 4] Follow-up TRX et PP4C
[ESL 5] Premiers resultats
[ESL 6] Playing with Electronic Shelf Labels
[ESL 7] Teaser Pricehax
[ESL 8] Foutre le beans sur les étiquettes électroniques
[ESL 9] Hacking_DotMatrix_Electronic_Shelf_Labels
Il existe pour l'instant (à ma connaissance) deux versions disponibles de ce projet, david4599 a eu la patience de recoder un émetteur Bluetooth pour ce projet. Il s'est basé sur quelques archives que nous avions retrouvé avec Matthieu tout ça pour donner un sacré émetteur. Matthieu a réussi à décompiler l'app de Furrtek, on a donc les sources de cette app (qui a été utile à david4599)
Ma version était seulement pour tester le projet, je me suis donc acheté un ESL, gracieusement vendu par Furrtek, pour l'essayer. Je savais bien qu'une LED c'est inutilisable sur le terrain mais au lieu de dépenser je ne sais combien d'€ dans un émetteur à 50 leds pour découvrir que ça ne fonctionne pas ça m'aurait un peu déçu. Je me suis donc fait plaisir en créant des PCB très rapidement pour que ça soit un minimum propre. Cette version fonctionne mais 25% du temps à cause de sa puissance qui est très faible.
Heureusement david4599 arrive avec une version qui revient encore moins cher que la mienne, avec 3 leds (qui peut évidemment être update à plus que 3 leds) et Bluetooth !
Il est bien plus stable, l'application aussi et bien plus approprié pour le terrain.
Les archives du site de Furrtek : files.stoneset.fr
Furrtek à eu le plaisir de décoder, comprendre toute la technologie d'une certaine firme... Toute la doc est sur le site, je ne pourrais pas mieux expliquer par contre on peut retenir quelques gros points :
Il faut voir l'ESL comme un livre, qui dispose seulement de 16 pages mais qui est programmé par défaut d'usine sur une certaine page, souvent les autres pages ont rien de programmé donc affichent 0 ou des chiffres aléatoires selon la programmation d'usine.
L'application dispose d'un mode "repeat" qui permet d'envoyer plusieurs fois le même message, c'est à dire qu'il est possible d'éteindre le téléphone et de balayer tout le rayon avec l’émetteur... Imaginez le foutoir que cela peut faire, le magasin ne peut reprogrammer instantanément toutes les étiquettes vu qu'elles sont uniques il faut donc envoyer un message unique pour chaque étiquette, sur une grande surface ça peut être TRÈS long...
Le protocole de communication le plus répendu chez la firme est nomme
"PP4C" et correspond a une modulation par position d'impulsion a 4
symboles (4PPM), pouvant ainsi coder 2 bits par symbole.Les bursts a 20/16 = 1.25MHz, durent 24 periodes soit 19.2µs.
Durées des symboles: 00 (0) = 62 periodes = 49.6µs 01 (1) = 177
periodes = 141.6µs 10 (2) = 100 periodes = 80µs 11 (3) = 138
periodes = 110.4µsA noter que comparé a l'IRDA, non seulement la frequence porteuse et
les durees des symboles ne sont pas les memes, mais ils ont en plus
complique les choses en inversant le 1 et le 2.Les bitrates seraient de 10kbps pour le protocole PP4C et 38kbps pour
PP16C. Mes étiquettes utilisent PP4C car peu de données sont
affichables.Transmission TRX > Label: IR 880nm
(La taille des bursts n'est pas a l'échelle)
Furrtek (c)
PCB des émetteurs se trouvant dans les grandes surfaces :
Toute la liste des composants se trouve sur le repo. Vous pouvez commander les pcb sur jlcpcb.com, c'est pas cher et d'extrême bonne qualité.
Pour aller au bout des choses j'ai aussi rapidement crée une version web de l'app qui permet de changer de page rapidement.
Le site : http://esl.stoneset.fr
Aucune difficulté rencontrée pour la réalisation de la télécommande, normalement tout devrait fonctionner du premier coup.
Cette version est assez simple sur le plan électronique, il s'est plus cassé la tête sur le software avec le code Arduino et l'app.
Mais cette version demeure encore plus intéressante car elle fonctionne en Bluetooth donc pour être discret c'est parfait.
Le coût total de la réalisation (sans pcb custom) est d'environs 10€), ce qui est vraiment raisonnable.
Comme écrit dans la doc de son repo, il faut changer quelques paramètres du module HC-05 ou HC-06 pour pouvoir fonctionner correctement, notamment le ssid et le baudrate.
Ma version ressemble à ceci :
Elle fonctionne parfaitement, raz sur la stabilité, j'ai une portée de 2m50 maxi avec cet émetteur.
Pas encore eu l'occasion de tester sur le terrain le projet; à venir.
*Certaines images proviennent directement de furrtek, de david4599.
Amusez vous bien !
Vous pouvez me retrouver sur :
/!\ Tous les intervenants dans cet article ne sont pas responsables de vos actes, quels qu'ils soient. Déjà être responsable de nous même c'est parfois difficile alors si en plus on doit vous surveiller ont fini au trou. Et n'oubliez pas ceci.
Article vu : 739 fois.