Page 1 sur 1

hack sonoff sans toucher au firmware

Publié : 13 sept. 2017, 19:45
par debilus
Bonjour à tous,

Sur https://blog.ipsumdomus.com/sonoff-swit ... b2d6632c01 il est expliqué comment utiliser SONOFF avec un serveur local sans modifier le firmware.
Ca tombe bien, car j'ai un petit serveur uniquement local avec easyphp (cet ordi dédié n'est pas connecté internet).

Si je suis arrivé à comprendre jusqu'à obtenir

Code : Tout sélectionner

{
  "deviceid":"10000xxxxx",
  "apikey":"xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "accept":"post"
}
Après je ne sais plus quoi faire, c'est assez confus pour moi.

Qui aurait l'amabilité de faire un tuto détaillé pour la suite ?

J'ai bien essayé de lui envoyer ce fichier html

Code : Tout sélectionner

<html><head></head><body>
<form method="post" action="http://10.10.7.1/ap">
 <input type="text" name="version" value="4"/>
 <input type="text" name="ssid" value="privatessid_4587BGSO8605"/>
 <input type="text" name="mot de passe" value="3E1C21A454C3E1C21A454C2EF42EF45F263C33E1C21A454C2EF41531EF9C"/>
 <input type="text" name="serverName" value="http://192.168.10.130"/>
 <input type="text" name="port" value="8888"/><br>
<input type="submit" value="Envoyer" />
</form></body></html>
mais ça ne répond pas.

Alors pour le WEBSOCKET, le HTTPS, etc, je suis largué

Que faire de son full nodejs ?

Par la suite, (envoyer des ordre et recevoir des infos) je devrais pouvoir m'en sortir.

Par avance Merci de votre aide.

Re: hack sonoff sans toucher au firmware

Publié : 14 sept. 2017, 11:42
par digdogger
Salut, le problème vient surement de la requête POST HTTP qui est mauvaise.
Tu envoies quoi exactement et comment?

Une requête POST HTTP ressemble à çà en python (valeurs à adapter à ton serveur):

Code : Tout sélectionner

import requests # you have to install this library, with pip for example

# define your custom headers (as many as you want)

headers = {
  'X-Prototype-Version': '1.7.2'
}

# define your URL params (!= of the body of the POST request)

params = {
  'your_first_param': 'its_value',
  'your_second_param': 'its_value'
}

# define the body of the POST request

data = {
  'message' : 'your message'
}

# send the POST request

response = requests.post('https://example.com/index.php', params=params, data=data, headers=headers)

# here is the response

print response.text

Re: hack sonoff sans toucher au firmware

Publié : 15 sept. 2017, 08:14
par debilus
Python ? kézako ? à part un serpent je ne sais comment ça fonctionne !

Il va me falloir m'instruire et installer ...
https://openclassrooms.com/courses/appr ... -en-python

C'est idem pour node.js ?
En plus ardu il me semble !

Me sentant un peu trop perdu devant cette approche, j'ai posté ici, pensant qu'utiliser sonoff en local sans en changer le firmware vous intéresserait.

Avec quelques soudures, un peu de fil et pas mal de tâtonnements, j'ai réussi à changer le firmware et il me semblait que cette alternative pouvait être plus simple.

Re: hack sonoff sans toucher au firmware

Publié : 16 nov. 2017, 22:35
par poladrix
Coucou,
je suis interessé par la manip, mais je ne trouve pas le reseau wifi,.... une astuce ???
merci

Re: hack sonoff sans toucher au firmware

Publié : 04 déc. 2017, 11:38
par roondar
Pour info il y a le projet sonoff qui est plus simple.
https://github.com/mirko/SonOTA