Go Down

Topic: Interrupteurs domotique Blyss de castorama (Read 53585 times) previous topic - next topic

skywodd


Cela fait un moment que je ne suis pas passé sur le forum et le boulot que vous avez abattu est tout simplement incroyable !!!

En tous cas un grand bravo pour votre travail, qui j'en suis sur va aider beaucoup de monde !!!!!

C'est vrai qu'en 3 jours on as bien avancé.
On avait quasiment rien vendredi et aujourd'hui on chipotent en décortiquant les 3 premiers octets :smiley-sweat:


Tu as modifier le code pour qu'il soit plus lisible et à partir de là je me suis rendus compte que le sélecteur arrière de la télécommande modifie cela, alors je me demande si c'est vraiment l'adresse ?

Si ça peut aider :
* Selecteur = a 1          ==>              FE= FE SL =01 AD =14 9 CH = 8 CD = 0 FX = 67 AL = A5
* Selecteur = b 2          ==>              FE= FE SL =11 AD =14 9 CH = 8 CD = 0 FX = 98 AL = 7A
* Selecteur = c 3          ==>              FE= FE SL =21 AD =14 9 CH = 8 CD = 0 FX = DA AL = 25
* Selecteur = d 4          ==>              FE= FE SL =31 AD =14 9 CH = 8 CD = 0 FX = 1E AL = 7B

Je vais faire quelques tests avec ma télécommande (trés légèrement différente de la tienne) pour confirmer ou infirmer cette hypothèse ;)


La conclusion de mes manips c'est qu'on ne peut pas espérer avoir un signal parfait 400µs/800µs sur la liason RF.
ou alors il faut peut être des récepteurs de meilleur qualité que les miens.

Je constate des glitches, des bits a longueur variable, etc...

Moi aussi, et pourtant j'ai testé avec deux récepteurs, un low-cost chinois (extrait d'une vielle station météo) et un autre de qualité.
Dans les deux cas même probléme : les timing sont découpé à l'emporte pièces.


C'est pas encore parfait mais c'est mieux que ma version qui détecte les fronts et qui mesure les durées.
Je pense que la version de Skywodd souffre des mêmes problèmes qui mon ancienne version dans le cas de mauvaises réceptions

Je travaille actuellement sur une nouvelle version basé sur le principe de décodage des trames Manchester par "sampling", mais adapté pour nos trames bien sur.
Avec l'utilisation d'interruptions et de temps relatif comme dans mon script python je devrais pouvoir passé outre les distorsions du signal.


Quand l'as tu acheté ?
Elle semble très différente de la mienne. Et Skywodd n'a toujours pas posté de photo de la sienne ;)

Oui la mienne est un peu différente, elle possède un écran lcd.
https://dl.dropbox.com/u/53604363/P1050201.JPG


Interressant la marque "Risingsun" sur le circuit. Un autre fabricant différent d'Avidsen ?
J'ai trouvé un RisingSun à Shenzhen, là ou 95% de l'électronique chinoise se passe : http://www.szrisingsun.com

Ou peut être tout simplement le fabricant chinois (pour les grosse quantités) utilisé par Avidsen ;)


Petite question ( peut être stupide ), je ne comprend pas où ce trouve votre soucis actuel car étant donné que vous avez réussi à décoder le signal de la télécommande, faire un petit sketch d'envoi doit être faisable non ?

Nous voulons allez le plus loin possible dans le décodage de la trame.

Certaine choses sont encore flou, comme par exemple la gestion des erreurs de communications.
Il n'y as pas de checksum, ce qui est un suicide quand on utilise des modules RF 433MHz.
On cherchent donc le plus de détails possible pour comprendre les profondeurs de la chose.
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

skywodd


Formidable  toutes ces trames variées, ça va permettre de trouver l'essentiel et ne pas en rester à une explication partielle !

+1 On va pouvoir croiser les données et faire des déductions plus précise !


C'est à coup sûr l'un des fabricants d'une partie des matériels vendu, à un moment ou un autre, sous la marque Blyss.
Avidsen a peut être eu en charge le 'haut de gamme' Blyss.

Je pencherai plutôt pour le fabricant chinois (pour l'export) qui travail avec plusieurs marque à la fois.


Le soft ProtocolAnalyzer du projet Nethomeserver  http://wiki.nethome.nu/doku.php/analyzer/start aurait d'ailleurs pu sans doute servir içi. Je l'avais oublié. On est en fait dans les mêmes genres de trame que certaines télécommandes IR (pas RC5 , mais DEC et cie) le codage 1/3  2/3 est fréquent, c'est pour ça que je l'ai reconnu assez vite !

Du coup on pourrait peut être utiliser une librairie pour télécommande IR modifié ?


Qui sait on est peut être en train de le trouver sans le savoir ce 'protocole RisingSun' !!

Il se pourrait que le travail que l'on fait ces jours-ci s'applique à des matériels (prises télécommandées) vendues sous d'autres marques !!  Derrière l'homogénéité apparente de Blyss se cache peut être un amalgame entre deux ou trois 'segments' de produits qui ont juste à être compatibles.

Ce serait génial ! Nous somme peut être en train d'écrire une nouvelle page dans le grand livre de la domotique DIY 8)
Je vais me renseigner sur le protocole RisingSun je trouverai peut être quelque chose en cherchant du côté des fabricants de clones chinois ;)


L'un d'entre vous aurez t il du temps pour expliquer un peu comment "reproduire" le code de la télécommande.

Regarde dans un de mes derniers post j'ai fait un sketch "RF_Blyss_Spoofer" qui automatise la partie émulation ;)



Je sens que Artouste à quelque chose à nous annoncer ce soir .....
Tu as trouvé le lien entre le numéro de série et l'adresse Hexa ?

Ha non justement  :smiley-mr-green: c'était juste pour vérifier si c'était un véritable S/N plutot qu'un P/N , mais vu l'impression c'etait juste par acquis de conscience.

Dommage :smiley-yell:
C'pa gentil de nous donner de faux espoirs :smiley-mr-green:



Il y a déjà une "Référence" qui tient lieu de part-number : 582886
Pourquoi avoir donner un serial-number bidon ?

ha ba moi j'ai comme ref : 582873  :smiley-mr-green:

Damned moi j'ai 582883 :smiley-yell:
C'est la loterie ou quoi !?
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

trigger

@Skywodd
Ok merci je regarde ton code :)

@All
Si ça peut aider j'ai aussi 582873 comme ref

@Artouste
Allions nous pour faire de la réf 582873 le numéro gagnant de la loterie !!!!! Non je suis pas fatigué ... Bon ok un peu XD

trigger

@Skywodd

Et oui c'est encore le poseur de question :S

Je ne comprend pas pourquoi dans ton code :
Code: [Select]
/* Clef de l'interrupteur a spoofer + 2 octets d'état */

byte RF_KEY[10][7] = {
  {0xFE, 0x79, 0x5F, 0x78, 0x19, 0x80, 0x00},
  {0xFE, 0x79, 0x5F, 0x78, 0x0D, 0xA0, 0x00},
  {0xFE, 0x79, 0x5F, 0x78, 0x11, 0xE0, 0x00},
  {0xFE, 0x79, 0x5F, 0x78, 0x0E, 0x60, 0x00},
  {0xFE, 0x79, 0x5F, 0x78, 0x16, 0x70, 0x00},
  {0xFE, 0x79, 0x5F, 0x78, 0x09, 0x80, 0x00},
  {0xFE, 0x79, 0x5F, 0x78, 0x1D, 0xA0, 0x00},
  {0xFE, 0x79, 0x5F, 0x78, 0x01, 0xE0, 0x00},
  {0xFE, 0x79, 0x5F, 0x78, 0x1E, 0x60, 0x00},
  {0xFE, 0x79, 0x5F, 0x78, 0x06, 0x70, 0x00}
};


Le tableau ne correspond pas a ce que tu as reçu :
Quote

FE 79 5F 78 19 87 D0
FE 79 5F 78 19 87 D0
FE 79 5F 78 19 87 D0


J'ai du passer a coté de quelque chose dans ton code non ? On ne frappe pas ok ? ;)

barbudor

#139
Jun 17, 2012, 09:54 pm Last Edit: Jun 17, 2012, 09:56 pm by barbudor Reason: 1
Est-ce que trigger et Artouste on le même modèle de télécommande ? 4 canaux + ALL ?

je croyais qu'Artouste avait la même que moi :

Skywodd, ta télécommande est-elle programmable ?
Elle saurais envoyer toute seule des commandes ?
Et le slider en bas : a/b/c/d ressemble a celle de trigger. Mais la position "d" semble aussi destinée au mode programmation.

la télécommande à LCD actuelle est
Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

barbudor

@trigger

Les trames changent

FE 79 5F 7           8           1             98      7D
<adresse>      <canal>  <on/off>     <seq>  <rnd>

L'adresse est fixe
Le canal vaut 8, 4, 2, 1, 3, ou 0 suivant le type de télécommande
la commande vaut 0 pour ON et 1 pour OFF (logique non ?;))
<Seq> appartient à une séquence de 5 octets  0xE6, 0x67, 0x98, 0xDA, 0x1E : chaque nouvelle commande prend la valeur suivante etc ...
<Rnd> apparemment une valeur plus ou moins aléatoire


Va voir mon résumé sur : https://barbudor.wiki.zoho.com/Syst%C3%A8me-domotique-Blyss-de-Castorama.html
Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

skywodd

#141
Jun 17, 2012, 10:03 pm Last Edit: Jun 18, 2012, 05:11 pm by skywodd Reason: 1

Le tableau ne correspond pas a ce que tu as reçu :
J'ai du passer a coté de quelque chose dans ton code non ? On ne frappe pas ok ? ;)

Si c'est bien ce que j'ai capturé dans mes trames, seulement j'ai remplacé tout les bits "connu" par des 0x00 pour être sur que mon code fonctionne.
Je te joint la derniére version qui gére l'intégralité du spoofing à partir d'une adresse ;)


Skywodd, ta télécommande est-elle programmable ?

Oui elle est programmable, mais si je modifie les adresses qu'il y a dedans je me fait tuer :smiley-roll-sweat:


Elle saurais envoyer toute seule des commandes ?

Je crois bien que oui, il y a une horloge et un capteur de température dit "programmable".


Et le slider en bas : a/b/c/d ressemble a celle de trigger. Mais la position "d" semble aussi destinée au mode programmation.

La position "d" permet de configurer la télécommande.


la télécommande à LCD actuelle est (...)

Bin c'est pas la même tête que la mienne :~ J'ai peut être une vieille version.
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

Artouste


Est-ce que trigger et Artouste on le même modèle de télécommande ? 4 canaux + ALL ?

je croyais qu'Artouste avait la même que moi :




en tous cas c'est bien imité  aux ajouts prêts  :smiley-mr-green:


barbudor

Même S/N que la mienne mais référence différente qui correspond à celle de trigger qui a un S/N différent
Un peu du grand n'importe quoi chez Avidsen ;)

ATX Power c'est pour booster la puissance d'émission XD

Sur ce bonne nuit. J'éteins!
Barbuduino: Arduino sur Breadboard & VinciDuino: Clone Leonardo // WR703: Mini-routeur hacké // LauchPad MSP430 et Stellaris // Panda II Arduino-like .NetMF sous VisualC#
RTFC: Read That F.....g Code / RTFD: Read That F.....g Doc / RTFDS: Read That F.....g DataSheet / RTFS: Read That F.....g Schematic / Wot da ya wanna D.I.Y. today ?

trigger

@Skywodd

Un grand merci pour ton code,

Je risque de passer la nuit dessus pour tout comprendre, mais je suis têtu :)

al1fch

@barbudor
Quote
ATX Power c'est pour booster la puissance d'émission smiley-lol

Il fallait bien s'aligner sur la pile 23 A !!  ;)

Retour sur RisingSun, pas le protocole, le fabricant lui même
voici les 3 pages de leur site présentant la gamme à "code aléatoire"...
comme un air de ressemblance.....
IL faut peut être prévoir les 16 canaux (4 groupes de 4) et le  codage de commande d'un gradateur..
http://www.risingsun-elec.com/SubProduct.asp?Type_ID=15&Page=1
http://www.risingsun-elec.com/SubProduct.asp?Type_ID=15&Page=2
http://www.risingsun-elec.com/SubProduct.asp?Type_ID=15&Page=3

trigger

@Skywodd

Je dois commencer à être chiant avec mes questions ^^

J'ai bien regardé ton code mais cependant une interrogation reste encore et toujours ,

Pourquoi quand on print le buffer :
Quote
Blyss spoofer
Trame de type OFF
FE 79 5F 70 19 87 D0 0
Trame de type ON
FE 79 5F 70 9 8A F0 1


On ne retrouve pas la clef
Code: [Select]
byte RF_KEY[] = {
  0xFE, 0x79, 0x5F, 0x78
};


Et que l'état du bouton se trouve en fin de tram ?

Encore désolé pour toutes ces questions ...

skywodd


Je dois commencer à être chiant avec mes questions ^^
J'ai bien regardé ton code mais cependant une interrogation reste encore et toujours ,
Et que l'état du bouton se trouve en fin de tram ?

RTFM jeune padawan :smiley-yell:

Barbudor t'as fait un résumé complet il y a deux post ;)

Les trames changent

FE 79 5F 7           8           1             98      7D
<adresse>      <canal>  <on/off>     <seq>  <rnd>

L'adresse est fixe
Le canal vaut 8, 4, 2, 1, 3, ou 0 suivant le type de télécommande
la commande vaut 0 pour ON et 1 pour OFF (logique non ?;))
<Seq> appartient à une séquence de 5 octets  0xE6, 0x67, 0x98, 0xDA, 0x1E : chaque nouvelle commande prend la valeur suivante etc ...
<Rnd> apparemment une valeur plus ou moins aléatoire

Va voir mon résumé sur : https://barbudor.wiki.zoho.com/Syst%C3%A8me-domotique-Blyss-de-Castorama.html


Ralala :smiley-mr-green:
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

Artouste


@barbudor
Quote
ATX Power c'est pour booster la puissance d'émission smiley-lol

Il fallait bien s'aligner sur la pile 23 A !!  ;)


Bonjour
Oui et d'ailleurs j'en ai mis une dans la boite à gant de ma voiture, comme ça je pourrais toujours la démarrer en cas de batterie faible, c'est fou la miniaturisation des batteries de nos jours  12V 23A :smiley-mr-green: :smiley-mr-green:

Oui la gamme est tres ressemblante

j'ai regardé le spectre d'emission de la telco à l'analyseur, ce n'est pas ce qu'il y a de plus propre et stable comme signal , mais j'ai vu pire, le probleme serait peut plus sur la puissance rayonnée , elle est tres fluctuante et d'ailleurs juste pour le fun ça se détecte facilement au microamperementre differentiel sur l'alim, le pompage sur l'alim est quasi synchrone avec les fronts emis .
Si les recepteurs (les barbudor à 2€ ? ) n'ont pas une "pseudo CAG efficace" , ce n'est peut etre pas etonnant qu'ils partent dans les choux

trigger

@Skywodd

Merci de ta réponse,

Code: [Select]
RTFM j'ai pourtant lu ;)

Mais où est la concordance entre la tram :

FE 79 5F 7           8           1             98      7D
<adresse>      <canal>  <on/off>     <seq>  <rnd>

avec ce que ton code donne :

Trame de type OFF
FE 79 5F7          0              1             98      7D       00 ?
<adresse>      <canal>  <on/off>     <seq>  <rnd>

Trame de type ON
FE 79 5F 7           0            ????          98       13      01 ?
<adresse>      <canal>  <on/off>     <seq>  <rnd>

Le zéro passe à la trappe ?

J'ai modifié ton code pour voir si cela fonctionnait chez moi mais les trames ne sont pas identiques donc rien ne bouge

Quote

Blyss spoofer
Trame de type OFF
FE 31 14 0 19 8 7D 00
Trame de type ON
FE 31 14 0 9 8 AF 01




Alors que le sketch de barbudor me donne cela :

Quote
// 1 - ON
> FE 31 14 9 8 0 DA 91
> FE 31 14 9 8 0 DA 91
> FE 31 14 9 8 0 DA 91
> FE 31 14 9 8 0 DA 91


Tu remarqueras qu'elles ne sont pas identiques ... Je dois passer à coter de quelque chose ... :S

Go Up