Aller au contenu
Nico

Roomba : Roowifi V2

Recommended Posts

Bonsoir à tous, je viens de terminer un petit VD pour le roowifi V2.

Cela correspond à une évolution de ce Roowifi et de ce tuto, merci à Romain : https://www.domotique-fibaro.fr/topic/814-roomba-irobot-domotisã©/

 

La seule chose à faire c'est renseigner l'ip et le port lors de l'import du VD, et normalement c'est parti.

 

Gestion :

-Status (Avec les différents status, charge, au dock etc)

-L'état de la batterie

-La température de la bête

-Les différentes commandes (Clean, spot et retour au dock)

 

Fonctionne bien chez moi, il faut juste que je gère les retours d'état, car le Wifi ne passe pas bien (En fait impossible de faire fonctionner le Roowifi V2 avec ma borne Ubiquiti, je ne sais pas pourquoi, du coup je l'ai lié à mon routeur mais qui ne couvre pas aussi bien la maison, il faut que je vois pourquoi). Du coup avec les retours d'état, je renverrai l'ordre tant qu'il n'a pas été reçu.

 

RooWifi V2.jpg

 

Le VD :

RooWifi V2_ Version 1.vfib

  • Upvote 3

Partager ce message


Lien à poster
Partager sur d’autres sites

Le code complet :

 

Bouton Clean :

local deviceId = fibaro:getSelfId();
local ip = fibaro:get(deviceId, 'IPAddress')
local port = fibaro:get(deviceId, 'TCPPort')

--Connexion
HC2 = Net.FHttp(ip,tonumber(port))
HC2:setBasicAuthentication("admin", "roombawifi");
--Ordre
response = HC2:GET("/rwr.cgi?exec=1")
fibaro:sleep(1*1000)
response = HC2:GET("/roomba.cgi?button=CLEAN")

--Gestion du status
fibaro:call(deviceId, "setProperty", "ui.Label1.value", "Nettoyage en cours")
fibaro:log("Lancement nettoyage"); 

Bouton Spot :

local deviceId = fibaro:getSelfId();
local ip = fibaro:get(deviceId, 'IPAddress')
local port = fibaro:get(deviceId, 'TCPPort')

--Connexion
HC2 = Net.FHttp(ip,tonumber(port))
HC2:setBasicAuthentication("admin", "roombawifi");
--Ordre
response = HC2:GET("/rwr.cgi?exec=1")
fibaro:sleep(1*1000)
response = HC2:GET("/roomba.cgi?button=SPOT")

--Gestion du status
fibaro:call(deviceId, "setProperty", "ui.Label1.value", "Nettoyage Spot")
fibaro:log("Lancement nettoyage spot");

Bouton retour dock :

local deviceId = fibaro:getSelfId();
local ip = fibaro:get(deviceId, 'IPAddress')
local port = fibaro:get(deviceId, 'TCPPort')

--Connexion
HC2 = Net.FHttp(ip,tonumber(port))
HC2:setBasicAuthentication("admin", "roombawifi");
--Ordre
response = HC2:GET("/roomba.cgi?button=CLEAN")
fibaro:sleep(1*1000)
response = HC2:GET("/roomba.cgi?button=DOCK")

--Gestion du status
fibaro:call(deviceId, "setProperty", "ui.Label1.value", "Retour au dock")
fibaro:log("Retour au dock"); 

Bouton réveil :

local deviceId = fibaro:getSelfId();
local ip = fibaro:get(deviceId, 'IPAddress')
local port = fibaro:get(deviceId, 'TCPPort')

--Connexion
HC2 = Net.FHttp(ip,tonumber(port))
HC2:setBasicAuthentication("admin", "roombawifi");
--Ordre
response = HC2:GET("/rwr.cgi?exec=1")

fibaro:log("Réveil"); 

Bouton mise à jour status :

local deviceId = fibaro:getSelfId();
local ip = fibaro:get(deviceId, 'IPAddress')
local port = fibaro:get(deviceId, 'TCPPort')

--Connexion
HC2 = Net.FHttp(ip,tonumber(port))
HC2:setBasicAuthentication("admin", "roombawifi");

--Récupération json
response = HC2:GET("/roomba.json")

--Décodage json
extractedjson = json.decode(response)

--Récupération des valeurs souhaitées
chargingstate = extractedjson.response.r14.value
temperature = extractedjson.response.r17.value
charge = extractedjson.response.r18.value
capacity = extractedjson.response.r19.value

--Gestion du status
if tonumber(chargingstate) == 2 then
	fibaro:call(deviceId, "setProperty", "ui.Label1.value", "Au dock, en charge")
end
if tonumber(chargingstate) == 3 then
	fibaro:call(deviceId, "setProperty", "ui.Label1.value", "Au dock, chargé")
end

--Gestion de la température
fibaro:call(deviceId, "setProperty", "ui.Label3.value", temperature .." °")

--Gestion de la batterie
charge_pour = (100 * charge) / capacity
charge_pour = string.sub(charge_pour, 1, 5)
fibaro:call(deviceId, "setProperty", "ui.Label2.value", charge_pour .." %")

Et le main loop à régler comme vous le souhaitez :

local deviceId = fibaro:getSelfId();

--On appuie sur le bouton mise à jour
fibaro:call(deviceId, "pressButton", "8")
--Attente avant mise à jour
fibaro:sleep(15*1000)

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci@Nico, il faudrait que j'en achète un.
Pourrais-tu svp poster le code de chaque bouton, afin que je l'adapte pour ma LD ?
Merci

Envoyé de mon Nexus 5 en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

C'est fait. Tiens d'ailleurs si qqun en a et qu'il a une borne Ubiquiti, vous arrivez à le faire remonter sur le Wifi ?? Ca fait le 2ème périf qui ne fonctionne pas sur l'Ubiquiti, j'ai tout essayé au niveau protection, rien à faire. Sur le Syno par contre, c'est instantané...

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Super, merci @Nico

Vous l'avez avec quel roomba le rombawifi ?

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai pris le 774 moi. En fait en passant chez Casto semaine dernière, il y avait une grande braderie sous chapiteau, et tiens un Roomba, je vérifie sur le net, et le moins chère que je trouve c'est 369,00 € hors FDP, il était bradé à 260,00 € ! Il en reste une demi-palette :)

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

ça vaut le coup :)

 

Du coup tu en as un à chaque étage ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Ah oui, bonne occase, tu avais déjà le rooWifi ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Non, commandé sur Domadoo dans la foulée et reçu hier :), VD fait hier après midi.

Lazer, oui à l'étage j'ai mon Samsung, faudrait que je le domotique aussi tient, en plus pas trop dur, j'ai la télécommande avec, un petit FGS contact sec sur le bouton start, et c'est parti :) Vais faire ça tient.

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello @Nico dans quel casto tu l'as vu en Alsace ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Colmar, dans le chapiteau sur le parking, je crois que c'est encore une semaine au moins, en tout cas samedi c'était le 1er jour. Tu viens en Alsace ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Non mon épouse était du côté de Strasbourg. Mais elle rentre ce soir. Donc it's too late :( pas possible d'aller sur Colmar avant son retour.

Partager ce message


Lien à poster
Partager sur d’autres sites

Mince.

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai un modèle 770 qui est actuellement en panne (il tourne, mais n'aspire plus la saleté). Je vais regarder pour le réparer (changement des bacs pour les brosses ou le bac à saletés).

 

Est-ce que vous savez si le roowifi V2 est compatible avec mon 770 ?

 

Comment avez-vous fait pour protéger la carte ?

  • quel produit (changement du carter complet où boitier de protection de la carte) ?
  • sur quel site ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Pour moi il est compatible, confère site officiel : http://www.roowifi.com/compatible-roomba/

En fait 95% des modèles Roomba sont compatible avec le V2.

Sinon moi je ne n'ai pas protégé la carte pour le moment, elle est déjà bien sous la poignée, donc très peu de risque, et au RDC chez moi, il ne peut passer sous aucun endroit, donc pas de souci.

 

Bon, sinon j'ai re re testé, rien à faire, il ne veut pas remonter sur ma borne ubiquiti... C'est fou ça. Du coup j'ai mis une petite borne dodocool au milieu de la maison cachée (Celle ci : https://www.amazon.fr/dodocool-Répéteur-Routeur-Amplificateur-Antennes/dp/B01N0V9YMM/ref=sr_1_2?ie=UTF8&qid=1504262946&sr=8-2&keywords=dodocool+wifi), et maintenant cela fonctionne nickel. J'aimerai tout de même comprendre pourquoi ce Roowifi ne veut pas remonter sur la borne ubiquiti. Sinon vive le Dodocool, cette petite borne est juste top et sa portée juste impressionnante.

Partager ce message


Lien à poster
Partager sur d’autres sites

@Nico,

Et Domadoo ne vendrait pas également une protection, car le mien (un 871), se coince parfois en dessous de meubles => c'est parfois très juste => protection indispensable

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai rien trouvé en vente, il faut faire soit même (Des plans se trouvent sur le net). Sinon truc marrant, je viens de commander un Pi Zero starter kit, et plusieurs couvercles sont fournis, et un va dessus :) Avec un petit peu de colle, je pense qu'on pourrait même le fixer proprement dessus.

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

En faisant quelque recherches sur le Net, je suit tombé sur des associations FatLab (Lieux et espaces tiers dédiés à la fabrication numérique, aux ateliers de biohacking et à la bidouille collaborative).

 

Je pense qu'en venant avec son plan 3D, ils devrait possible d'imprimer un boitier de protection.

 

Je vais les rencontrer pour voir comment ça se passe.

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Bah tu peux juste aller chez Auchan qui propose aussi de l'impression 3D, il faut juste venir avec le plan :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Mais si tu en fait, je suis preneur :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Yes, c'est ça. Normalement chez Auchan ils font.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bon j'en ai commandé 3 sur freelabster, on verra (Pour le moment leur site à buggué, mais le Paypal est passé...). C'est 27,00 € les 3 capots, je vous dirai ce que cela donne. Si ils sont ok, j'en aurai donc 2 de dispos.

Partager ce message


Lien à poster
Partager sur d’autres sites

:)

Il faut déjà qu'ils me répondent, car pour le moment pas de news, bon on va dire qu'on est le week-end. Au pire j'ai la garantie Paypal.

Partager ce message


Lien à poster
Partager sur d’autres sites

×