Jump to content

fahrer16

Recommended Posts

I've completed a Polyglot v2 node server for Roomba WiFi-enabled vacuums.  

 

Here's a link to the GitHub repo: https://github.com/fahrer16/udi-roomba-poly

 

The config is a little trickier than some other node server since you need to specify an IP, BLID, password, and name for each roomba.  The BLID and password are obtained using a script from the Roomba980-Python project or the dorita980 project written in node.js.  The Python one didn't work for me and I had to use the dorita980 project.

 

If you decide to use the project, I highly recommend using static IP addresses and preventing the Roomba(s) from reaching the internet so they won't update the firmware automatically and break compatibility with the node server.

 

Let me know if you see any issues!

 

post-1781-0-35266600-1514827126_thumb.jpgpost-1781-0-23086700-1514827151_thumb.jpgpost-1781-0-82231000-1514827173_thumb.jpg

  • Like 5
Link to comment
Share on other sites

  • 1 year later...
  • 2 weeks later...

I was taking a look at the python project used for this node server and it looks like it has a simple script to run in order to get the required roomba connection info (see link below).  That means you should be able to get around having to install the Dorita980 node.js project and the required python project should be installed automatically with the Roomba node server.  In order to get to the directory where the roomba project is installed you can run the following command in the console of your polyglot computer after the Roomba node server is installed:

pip3 show Roomba980-Python

https://github.com/NickWaterton/Roomba980-Python#how-to-get-your-usernameblid-and-password

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

I installed the Roomba Polyglot, got my IP, blind and password for my Roomba at home, added it to the custom configuration parameters using the key 'vacuum1', but it still won't find my Roomba.

This is the value that I entered for the key 'vacuum1':

"{"ip":"192.168.0.52", "blid":"xxxMyBlidxxx","password":":1:xxxMyPasswordxxx","name":"Moomby"}"

This is what the log says:

2019-03-31 04:10:29,167 [NodeServer] [INFO ] Starting Roomba Polyglot v2 NodeServer version 1.1.0 2019-03-31 04:10:29,167 [NodeServer] [DEBUG] Beginning Discovery on Roomba Bridge 2019-03-31 04:10:29,168 [NodeServer] [ERROR] Error with Roomba Connection: Extra data: line 1 column 4 (char 3) 2019-03-31 04:10:29,168 [NodeServer] [DEBUG] Discovery: No new roombas need to be added to ISY

What am I missing or doing wrong?

Link to comment
Share on other sites

I am trying to add the Roomba to the Node server but am seeing the following errors in the log of the Roomba node server:


 
2019-03-31 16:13:48,977 [MainThread] [INFO ] Received Config from STDIN.
2019-03-31 16:13:48,978 [MainThread] [INFO ] UDI Polyglot v2 Interface 2.0.29 Starting...
2019-03-31 16:13:48,981 [MainThread] [ERROR] Traceback (most recent call last):
2019-03-31 16:13:48,982 [MainThread] [ERROR] File "./roomba-poly.py", line 11, in <module>
2019-03-31 16:13:48,983 [MainThread] [ERROR] from roomba import Roomba
2019-03-31 16:13:48,983 [MainThread] [ERROR] ImportError
2019-03-31 16:13:48,984 [MainThread] [ERROR] :
2019-03-31 16:13:48,984 [MainThread] [ERROR] No module named 'roomba'
 
I have removed the Node Server from polyglot and added it again.  I can see it in ISY Admin Console  but I cannot start the node server.  It gives me the above errors.
 
I have added the configuration line with MYBLID and password.
 
Any help would be appreciated.

 

Link to comment
Share on other sites

Thanks for the suggestion Jimbo.  I checked the directory  and all the files had read only rights.  Changed the install.sh to allow it to execute and ran the file.  It failed 2 or 3 times with errors that it could not download the required files.  The one giving me the most problems was the download of the OpenCV package.  However it finally downloaded OpenCV and now Roomba is fully installed and working.

Thanks again

  • Like 1
Link to comment
Share on other sites

Wednesday I had Roomba installed and working .  It was showing up on ISY and I could add it to programs.  This morning I wanted to start it before the scheduled time and I logged into the ISY admin console to start Roomba up.  However I cannot find any Roomba related nodes in ISY.  I even searched by address in the Network display. The Roomba Node server shows under the Node Server drop down on the ISY admin console but nothing else.  I then connect to the Polyglot server to check the dashboard. And the Roomba server is there but it says 0 nodes.

image.png.9ab4c7a801bf41d8d2d6de313b208c58.png

 

Checking the log file I see a message that the node server is waiting for a controller node to be connected.

Here is a snippet of the log...

Quote

2019-04-05 12:54:03,510 [Interface ] [INFO ] Adding node Roomba Bridge(controller)
2019-04-05 12:54:03,519 [Interface ] [INFO ] Waiting on Controller node to be added.......
2019-04-05 12:54:03,538 [Interface ] [INFO ] Adding node Roomba Bridge(controller)
2019-04-05 12:54:03,540 [Interface ] [INFO ] Waiting on Controller node to be added.......

The funny thing is that after I started the roomba up manually that it is still updating the log with it movements.  I just cannot control in from ISY.

Any information to get this back to a working stay, would be appreciated. 

Thanks in advance

Link to comment
Share on other sites

Hi,

Thank you very much for writing this Polyglot, I've been using it for the past couple of weeks and I love it. The main things I'm doing is making sure that the ISY controls the schedule, and not Roomba, so that on the days I want it to clean it only does so when we're not in the house, and if we come back while it's cleaning it automatically docks itself, which is great.

The only minor issue I'm having is with the "Bin Present" parameter. There are 2 parameters with the same name, one refers to the bin being present and the other refers to bin being full, and if I use this in a program it always defaults to the first. What I'm trying to do is have the ISY text me at night, when I'm home, to remind me that the bin is full and I have to empty it.

Could you change the name of this second "Bin Present" parameter so that I can use it, please?

Edited by danny07
Typo
  • Like 1
Link to comment
Share on other sites

@fahrer16 Thanks! I updated to version 1.1.1 and I confirmed on my dashboard that it's running, but still in my ISY both parameters show up as "Bin Present".

I tried restarting my ISY, Polyglot, deleting my Roomba and rediscovering, but none of these fixed the issue. I also tried uninstalling the Roomba Polyglot but that didn't work. It says uninstalling but never really uninstalls. Any thoughts? Can you help me manually uninstall and re-install?

Just for reference, I have a Roomba 980.

*EDIT

I finally got it to work. I went to the Dashboard, clicked on Details for the Roomba Node, and Deleted it from there. Then I went back to the NodeServer store and uninstalled Roomba. Once it was uninstalled I installed it again and that did the trick.

Thanks again for the update!

Edited by danny07
Link to comment
Share on other sites

  • 3 months later...

@fahrer16

I tried installing the Roomba NS multiple times (local on a RPi) and I keep getting this error in the webUI (see screenshot) and this log output for the Roomba NS:

2019-07-24 10:04:32,629 [MainThread] [INFO ] Received Config from STDIN.
2019-07-24 10:04:32,630 [MainThread] [INFO ] UDI Polyglot v2 Interface 2.0.30 Starting...
2019-07-24 10:04:32,632 [MainThread] [ERROR] Traceback (most recent call last):
2019-07-24 10:04:32,632 [MainThread] [ERROR] File "./roomba-poly.py", line 11, in <module>
2019-07-24 10:04:32,633 [MainThread] [ERROR] from roomba import Roomba
2019-07-24 10:04:32,633 [MainThread] [ERROR] ModuleNotFoundError
2019-07-24 10:04:32,633 [MainThread] [ERROR] :
2019-07-24 10:04:32,633 [MainThread] [ERROR] No module named 'roomba'
2019-07-24 10:04:36,481 [MainThread] [INFO ] Received Config from STDIN.
2019-07-24 10:04:36,481 [MainThread] [INFO ] UDI Polyglot v2 Interface 2.0.30 Starting...
2019-07-24 10:04:36,483 [MainThread] [ERROR] Traceback (most recent call last):
2019-07-24 10:04:36,483 [MainThread] [ERROR] File "./roomba-poly.py", line 11, in <module>
2019-07-24 10:04:36,484 [MainThread] [ERROR] from roomba import Roomba
2019-07-24 10:04:36,484 [MainThread] [ERROR] ModuleNotFoundError
2019-07-24 10:04:36,485 [MainThread] [ERROR] :
2019-07-24 10:04:36,485 [MainThread] [ERROR] No module named 'roomba'

Let me know what you'd like me to try or grab for you next.

Wes

Capture.JPG

Edited by InsteonNut
Link to comment
Share on other sites

@InsteonNut.  That means the roomba python library hasn't been installed.  It should automatically install for you but the file that does the installation isn't executable.  I've been meaning to take care of that...  If you open a terminal session on your RPi and go to the directory where the nodeserver is installed and run 'chmod +x install.sh' (without the quotes) then './install.sh' it should install that library for you.

I've always used Github with windows and I'm not sure how to set that attribute on the file in github.  If anybody knows how to do that, that would be great!

Link to comment
Share on other sites

Hi @fahrer16, Thanks for the suggestions, however, I'm seeing this when running ./install.sh:

pi@raspberrypi:~/.polyglot/nodeservers/Roomba $ ./install.sh
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting git+git://github.com/NickWaterton/Roomba980-Python.git@master (from -r requirements.txt (line 3))
  Cloning git://github.com/NickWaterton/Roomba980-Python.git (to revision master) to /tmp/pip-req-build-i7_m81sq
Requirement already satisfied: polyinterface>=2.0.0 in /home/pi/.local/lib/python3.7/site-packages (from -r requirements.txt (line 1)) (2.0.30)
Requirement already satisfied: six>=1.11.0 in /usr/lib/python3/dist-packages (from -r requirements.txt (line 2)) (1.12.0)
Requirement already satisfied: numpy in /usr/lib/python3/dist-packages (from Roomba980-Python==1.2.3->-r requirements.txt (line 3)) (1.16.2)
Collecting opencv-python (from Roomba980-Python==1.2.3->-r requirements.txt (line 3))
  Could not find a version that satisfies the requirement opencv-python (from Roomba980-Python==1.2.3->-r requirements.txt (line 3)) (from versions: )
No matching distribution found for opencv-python (from Roomba980-Python==1.2.3->-r requirements.txt (line 3))

Is there a dependency I need on the RPi that I'm missing?

Wes

Link to comment
Share on other sites

@InsteonNut, it looks like it installed the roomba library.  The opencv library is used for the generation of coverage maps based on robot position data and isn't implemented in this node server, so that won't impact its ability to run.  Is the node server able to start up in polyglot now?

Link to comment
Share on other sites

@fahrer16 Unfortunately not. Same errors in the log file when I stop/start the Roomba NS.

2019-07-24 13:04:23,152 [MainThread] [INFO ] Received Config from STDIN.
2019-07-24 13:04:23,153 [MainThread] [INFO ] UDI Polyglot v2 Interface 2.0.30 Starting...
2019-07-24 13:04:23,156 [MainThread] [ERROR] Traceback (most recent call last):
2019-07-24 13:04:23,156 [MainThread] [ERROR] File "./roomba-poly.py", line 11, in <module>
2019-07-24 13:04:23,157 [MainThread] [ERROR] from roomba import Roomba
2019-07-24 13:04:23,158 [MainThread] [ERROR] ModuleNotFoundError
2019-07-24 13:04:23,158 [MainThread] [ERROR] :
2019-07-24 13:04:23,158 [MainThread] [ERROR] No module named 'roomba'

 

Link to comment
Share on other sites

Hi @fahrer16

Here's was the output:

pi@raspberrypi:~/.polyglot/nodeservers/Roomba $ pip install roomba
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting roomba
Could not install packages due to an EnvironmentError: 404 Client Error: Not Found for url: https://pypi.org/simple/roomba/

pi@raspberrypi:~/.polyglot/nodeservers/Roomba $

 

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 months later...
Guest
This topic is now closed to further replies.

  • Recently Browsing

    • No registered users viewing this page.
  • Forum Statistics

    • Total Topics
      36.5k
    • Total Posts
      367.6k
×
×
  • Create New...