Announcement

Collapse
No announcement yet.

BLRoombaWifi

Collapse
This is a sticky topic.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Blade
    started a topic BLRoombaWifi

    BLRoombaWifi

    ** This is now in the HS3 updater **

    This plugin will allow you to interface with your Roomba 980
    Consider this BETA

    Right now it will just receive data from the Roomba and update devices. You can also control the roomba from the root device

    NOTE:
    You will need to know your username and password for the Roomba. I was able to get this using the dorita980 package on my Raspberry Pi

    Installation

    Download BLRoombaWifi

    You will have to manually unzip the files to the proper locations:

    HSPI_BLRoombaWifi.exe - copy to HS3 root folder
    HSPI_BLRoombaWifi.exe.config - copy to HS3 root folder
    M2Mqtt.Net.dll - copy to [HS3 root]\BIN\BLRoombaWifi (you will have to create this folder)
    Newtonsoft.Json.dll - copy to [HS3 root]\BIN\BLRoombaWifi (you will have to create this folder)

    Restart HS3 and enable the plugin
    Last edited by Blade; March 2nd, 2017, 06:31 PM.

  • TeleFragger
    replied
    anyone use this on the 895 yet? just picked up one last night and another is on order. also ive gotta start from page one later tonight.. but can this plugin handle 2 roomba's?
    wife and her deals.. got them for about $650 for 2...

    ok read all the pages..

    Originally posted by Pseudomizer View Post
    Question

    Will this plugin work with any of the other Wifi models (non-third party Wifi)?

    In other words will this also work with the roomba 890 + Wifi built-in, 960 + Wifi built-in?
    ahhh I started at pg 1 then 6... shoulda known someone woulda asked by page 4... LOL


    ill have to possibly give this a try... but don't have time for a few weeks..

    Leave a comment:


  • wvobrien5
    replied
    Originally posted by shill View Post

    You can easily do it by running nodejs on Windows.

    Just install nodejs, then use npm to install dorita980. You can then go into your nodejs\node_modules\dorita980 folder and run "node .\bin\getpassword.js <ip address>":

    Code:
    D:\Program Files (x86)\nodejs\node_modules\dorita980>node .\bin\getpassword.js 192.168.0.184
    Make sure your robot is on the Home Base and powered on (green lights on). Then press and hold the HOME button on your robot until it plays a series of tones (about 2 seconds). Release the button and your robot will flash WIFI light.
    Then press any key here...
    Robot Data:
    { ver: '2',
    hostname: 'Roomba-99999999999999',
    robotname: 'Roomba',
    ip: '192.168.0.184',
    mac: 'F0:03:8C:96:4E:61',
    sw: 'v2.2.9-1',
    sku: 'R980020',
    nc: 0,
    proto: 'mqtt',
    blid: '99999999999999' }
    Password=> :X:XXXXXXXXXX:ABCDEfghiJKL1234 <= Yes, all this string.
    Use this credentials in dorita980 lib :)
    Shill and XboxMeister (thank you both) pretty much nailed it, but here's a little more info for Windows users (like me) who aren't familiar with Node.js etc.

    Node.js is a "javascript runtime" according to their website here: https://nodejs.org/en/
    You can download a Windows installer from their site, and then start a Node.js command prompt from the Windows Start menu. This will drop you into what looks and feels like a DOS prompt. From there, you're going to type "npm install dorita980" and sit back and watch the fireworks. "NPM" is the package manager for javascript, and it will go out and find the dorita980 software and install it. NPM will install dorita980 in the Windows user folder, so the next step is to use the "cd" command to change directories over to "c:\Users\[username]\node_modules\dorita980 and type "node .\bin\getpassword.js [your Roomba's IP address]". Follow the on-screen directions from there.

    The blid is all the numbers between the single quotation marks, and the password is everything between the "><" angle brackets except the leading and trailing spaces. Like I said, I pieced all this together from what Shill and XboxMeister posted earlier, so it took me about 30 minutes to do all of it (including the Google searches to find out what Node.js and NPM are). Since there seems to be a lot of confusion about the BLID and Password (and getting it wrong may spike your CPU usage), I thought I'd spell it out a little more.

    Leave a comment:


  • mystic860
    replied
    good to hear.

    Leave a comment:


  • Tomgru
    replied
    Originally posted by mystic860 View Post
    ok yes you got all the right windows open with the data showing. now you need to start from the top and click on each one of the lines containing the roomba Ip address and find the one that has the BLID. What I did was stop the capture. Start a new one immediately run the get password process and immadiately stop the capture in wireshark. you will stumble on one with a big long number such as this (1B95B9DE72924E5A97BEDFE4C3546FBF) which is your BLID.
    think I found it!!!!

    "robotid"???





    That was it!!!!!! worked. and no CPU craziness! thanks again.

    Leave a comment:


  • Tomgru
    replied
    Originally posted by mystic860 View Post
    ok yes you got all the right windows open with the data showing. now you need to start from the top and click on each one of the lines containing the roomba Ip address and find the one that has the BLID. What I did was stop the capture. Start a new one immediately run the get password process and immadiately stop the capture in wireshark. you will stumble on one with a big long number such as this (1B95B9DE72924E5A97BEDFE4C3546FBF) which is your BLID.
    ok.. i'll try that. does it say "BLID" anywhere?

    PS... thanks for all the help on this.

    Leave a comment:


  • mystic860
    replied
    ok yes you got all the right windows open with the data showing. now you need to start from the top and click on each one of the lines containing the roomba Ip address and find the one that has the BLID. What I did was stop the capture. Start a new one immediately run the get password process and immadiately stop the capture in wireshark. you will stumble on one with a big long number such as this (1B95B9DE72924E5A97BEDFE4C3546FBF) which is your BLID.

    Leave a comment:


  • Tomgru
    replied
    here's the second capture/last line

    Click image for larger version

Name:	Capture2.JPG
Views:	1
Size:	116.3 KB
ID:	1270555

    Leave a comment:


  • Tomgru
    replied
    Capture2.JPG didn't even know you could expand the lines in the second window. this getting close?

    Click image for larger version  Name:	Capture1.JPG Views:	1 Size:	139.2 KB ID:	1270550

    Leave a comment:


  • mystic860
    replied
    Your almost there Tomgru. Highlight THE FIRST instance line where the SOURCe is 192.168.1.101 (your Roomba).
    Then look in the lower Frame and expand the last 2 options, you should see some data. POst the screen shots.

    ADDTIONALLY click View on menu bar and ensure Packet Bytes is checked also. your missing the data window which will show your BLID.
    Here is an exmple though it is NOT the communication of roomba, but shows the area where the data will be.
    Attached Files

    Leave a comment:


  • Tomgru
    replied
    Originally posted by Tomgru View Post

    ok... tried again this morning and am now capturing my roomba's IP (192.168.1.101)… but going through every line.... never seen any reference to a BLID?

    Click image for larger version

Name:	Capture.JPG
Views:	1
Size:	80.0 KB
ID:	1270470
    Also... this is what I see from Node.js if it means anything:

    Make sure your robot is on the Home Base and powered on (green lights on). Then press and hold the HOME button on your robot until it plays a series of tones (about 2 seconds). Release the button and your robot will flash WIFI light.
    Then press any key here...
    (node:13624) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
    Password=> :1:1545952391:rG6Od2jGkdfuSX3x <= Yes, all this string.
    Use this credentials in dorita980 lib

    Leave a comment:


  • Tomgru
    replied
    Originally posted by mystic860 View Post

    Download and install wireshark (its free).
    once installed set up your roomba for the node.js capture as outlined in above posts. just before starting it, start the wireshark capture then kick off the process. once complete stop the wireshark capture. review the captured data looking for any instance of your roomba's IP address. Drill down into the details and you will find the roomba BLID. ( I am purely going off memory here, if it doesnt work out for you let me know and I'll try to reproduce it with screen shots).
    ok... tried again this morning and am now capturing my roomba's IP (192.168.1.101)… but going through every line.... never seen any reference to a BLID?

    Click image for larger version

Name:	Capture.JPG
Views:	1
Size:	80.0 KB
ID:	1270470

    Leave a comment:


  • mystic860
    replied
    Originally posted by Tomgru View Post

    ok... figured out nodejs and dorita980.. but get same info you get.

    totally lost on the wireshark part. any help appreciated.
    Download and install wireshark (its free).
    once installed set up your roomba for the node.js capture as outlined in above posts. just before starting it, start the wireshark capture then kick off the process. once complete stop the wireshark capture. review the captured data looking for any instance of your roomba's IP address. Drill down into the details and you will find the roomba BLID. ( I am purely going off memory here, if it doesnt work out for you let me know and I'll try to reproduce it with screen shots).

    Leave a comment:


  • Tomgru
    replied
    Originally posted by mystic860 View Post
    Trying the i7+, ran dorita980 and I got the password but nothing else (specifically the BLID). any thoughts?

    btw ... using node js on windows
    Password=> :1:xxxxxxxxxxxxxxxxxxxxxxxxxx <= Yes, all this string.
    Use this credentials in dorita980 lib

    This is all I get.

    Update ...
    Ok disregard ... I was able to use wireshark to get the information. So far at first glance it appears to work with the i7 series as well I'll report back once fully tested.

    10/24/18 - sadly I think I have to report this plugin does not work in its current state with the i7. At first glance it appeared to work however it soon It grabs the CPU and runs away. Perhaps in the future there will be an update.

    10/27/18 - Worked with Blade and determined that somehow my password changed. once corrected the plugin works without consuming the CPU. Some of the "features" do not work, could be differences in the new model software. Core functions work though.
    ok... figured out nodejs and dorita980.. but get same info you get.

    totally lost on the wireshark part. any help appreciated.

    Leave a comment:


  • mystic860
    replied
    my guess and it is just that, a guess, is that it changed when I changed Wifi networks.

    I am pretty sure this theory is correct. I changed wifi networks again and the password changed again.
    Last edited by mystic860; November 18th, 2018, 09:41 AM.

    Leave a comment:

Working...
X