RooWIFI Indigo plugin The purpose of this plugin is to manage RooWifi devices from Indigo. RooWifi is a device that connects your Roomba to your LAN using WIFI. After installed and setup, your Roomba will have an IP address where a web server waits for request from clients. In our case, this Indigo plugin. You will find more info about RooWifi at this website: http://www.roomba-‐wifi-‐remote.com/ or by email: info@roomba-‐wifi-‐remote.com Observations about RooWifi device RooWifi is physically plugged to your Roomba using the PS/2 serial connector that all actual Roomba models have. Please, check your Roomba model: http://www.roomba-‐wifi-‐remote.com/compatible-‐roomba/
Depending on Roomba model, this serial connector can be hidden under upper cover. So, you will need to, carefully, disassemble this cover. RooWifi gets its power from Roomba battery. So, when Roomba’s battery is down, your will lose the “contact” with the device. This plugin needs to know the IP address for your devices. You can configure your RooWifi to use fixed IP or DHCP. If you use DHCP, please, configure your DHCP server (normally in your router) to always give the same IP to the device. You can follow maker’s instructions (page 7 to 9) http://www.roomba-‐wifi-‐remote.com/wp-‐content/uploads/RwRemote_User_Guide_v2_rev15.pdf
You can manage your RooWifi from desktop browsers, iOS app (the maker of the device has published one), etc. … and of course, this plugin. RooWifi is a miniaturized device that tries to not to waste battery. So, it has not a big-‐big cpu. If you try to send too much requests at the same time … maybe, it will not capable to answer correctly to all these requests. The plugin The RooWifi device can manage most aspects about your Roomba, like turn left and right, brush on/off, go forward/backward, vacuum on/off, etc. But, my intention with this plugin has been to simplify the usage, and integrate the Roomba robot into Indigo as an on/off device like any light switch. So, I have mapped the ON action to “Start cleaning” and OFF action to “Return to Dock”. The plugin retrieves internal status values from Roomba like battery level, charging state, internal temperature, voltage, robot state (dock, cleaning, stop, error), etc. This information is retrieved in a regular manner by the plugin itself, or using “send status request” from Indigo’s main window. This information is exposed as “custom states”, so you can use it to define your own triggers like “if roomba-‐state becomes docked then …” or “if battery-‐level is under 25% then …” Plugin setup Before setting up the plugin, set up your RooWifi device following maker’s instructions. Check if you are able to access to the device using any browser (http://<roowifi-‐ip>) Please, download the plugin from this dropbox link: https://www.dropbox.com/s/z73ntc1w35jn6lo/RooWIFI.IndigoPlugin.zip Unzip it and include it into your Indigo server.
Once the plugin is running inside Indigo, you must create an Indigo device for each RooWifi device you want to manage. The next picture shows you that you need to choose “RooWIFI” device type and to indicate IP address and authentication.
If the plugin can establish communication with the device, you will see that internal information from your Roomba appears at the device’s panel. If not, please, check the Indigo’s log window.
After this, you can begin to “build” your Roomba’s rules with Indigo. The plugin exposes 3 possible actions: Start cleaning, Return to Dock and Stop. “Start cleaning” is mapped to Indigo´s standard ON action. “Return to dock” is mapped to Indigo’s standard OFF action. “Stop” is not mapped. And it simply stops Roomba.
Due to this ON/OFF device mapping, you will see that your Roomba can be managed as any device using Indigo Touch iOS app.
You can define triggers based on plugin states and on information that the plugin retrieves from your Roomba. This information is retrieved based on an internal timer. And is done when Roomba is cleaning or not.
Top Related