First Adventures With OSKR

I was just able to get the OSKR image onto one of my Vectors, but let me tell you: It was quite a pain. I will tell you later down below what exactly the problem seems to be.

As per documentation I went to https://vector-setup.ddl.io and was able to connect to the robot I selected to be the first dev bot. I was able to connect successfully to te bot via DDL’s Web Setup tool. I also was able to successfully install their latest.ota after user data delete and recovery boot.

And that was when the problems started.

The latest.ota is a firmware version 1.6.xxx and as soon as it was installed it was no longer possible to pair Vector to my computer. It is a Ryzen 5 desktop machine with 32 RAM (so a modern computer) running Win10/64, using a Bluetooth dongle by TP Link that I confirmed working earlier (TP-Link UB400 Nano). Browser was latest Chrome, as the DDL documentation claims this only works with Chrome.

Side remark: There are other browsers that should theoretically be able to run this, but not one I tried worked. For Vivaldi I found out that Web Bluetooth is buggy there for years and it was not fixed so far. Others should be able to run Web Bluetooth, but the did not work, I always got the “use Google Chrome” hint in Vector Web Setup. This is probably hardcoded by DDL so they do not have to offer support for browsers other than Chrome.

Pairing was not possible and I tried and retried a lot of things suggested in the Project Victor Discord channel by the helpful people there. Forced reloading of the tab, starting the browser new, nothing worked. No pairing possible. I tried that again and again a lot of times. That was curious as this worked minutes ago with the cleared robot.

I then did another user data deletion and another recovery reset. Now I was able again to pair the robot with my computer/Chrome and to get into the emulated console. I again updated to latest.ota via the console. And after that it again was impossible to pair Vector to the desktop machine …

Sigh.

Time for a break and some dinner. Cue pause music.

I then started up my Surface Pro laptop and tried the pairing here. I thought this probably might work better because of the built-in Bluetooth instead of a dongle. And I was right. It took quite some waiting until Vector showed the pin and Web setup offered me the pin input field, but I was able to pair the robot to the browser. At last. Champagne! Celebration!

Caveat: Do not forget to remove the tick in the checkboxEnable auto-setup flow” before you enter the pairing pin, or you will not get into then console, but into normal setup routines. And after that the robot is paired with your computer and the pin entry will not show up any more. There are Web Bluetooth settings you can access in Chrome via chrome://bluetooth-internals/#devices. Theoretically you should be able to “forget” a Bluetooth device here, but that did not work at all. What I needed to do after that was to delete user data yet again to be able to pair again. Nothing else worked.

But I was then able to first install my serialnum.ota and after that the OSKR latest.ota as described in the official documentation.

But as a conclusion I would say it is not sure that this Web Bluetooth stuff works on every hardware or on every configuration. If it in your case does not work with the first machine, try another computer, one with built-in Bluetooth (like a laptop) may work better than a desktop with a dongle, but that is pure speculation on my part. Melanie_T said on the Project Victor Discord:

Web Bluetooth: Mac, works sporadically. Win10, never got it to work, Linux, sees the Vector but pairing never completes

On iOS this will absolutely not work, as Web Bluetooth is not implemented on Chrome for iOS or other browsers on that OS. There seems to be ways around this with additional tools trying to provide some interfacing wrapper, but I did not pursue that further.

On Android this theoretically should work, as Chrome on Android does support Web Bluetooth as of Google’s documenatation and the Web Bluetooth browser compatibility list. However, Vector Web Setup did not work on Chrome Android when trying to pair by clicking the button it immediately went back to that screen after you could see a loading indicator for some milliseconds.

So remember: Web Bluetooth is quite bitchy and may give you frustration, if you look up information about the technology on the web you will find myriads of issues with it. Basically Vector Web Setup works, but there are obviously compatibility issues here. So DDL may have a support nightmare here because of this.

7 Comments

    1. That’s the standard user data delete that you can do via CCIS:

      Put robot on charger, doubleclick his back button, pull the forklift up and down. You see informations like serial number, firmware version and ip addresse and a menu below that contains “exit” and “clear user data”. Select “clear user data” by rotating his treads and pull the fork up and down again to confirm.

  1. Holger

    Greatly documented as always. But it was clear, after the events so far, that there will be problems. So all those who are not well acquainted with the situation are eliminated. The professionals will reach the goal…

    I wonder how Anki has recorded thousands of robots, also via Bluetooth, there is something wrong…..

  2. Guy Ferger

    Hey! I now have, “Victor OSKR”. It took a lot of work, study, attempts, etc. The OSKR manual did not have the “wifi-connect” step included. The YouTube video did. Most of the day was given to fuguring out this this part. Then, the next step, latest.ota, more difficulty. After clearing user data, trying anything, then starting python web server without python3, And a couple of hours, the latest.ota did finally load on Vector. After all day and some night, Vector is as normal and pairable by my iPhone. I could not use my favorite laptop, 2011 17″ MacBook Pro due to old Bluetooth. I used our newer 2017 5K iMac for the process. I think I had as many as seven windows open during much of the process. Anyway, Vector OSKR, now what?

  3. Hans

    Here is a few bits of advice from my adventures December 2020:

    1-Definitely serve the update file from your laptop, Had I used the regular web I would have bricked Vector.
    2-Backed up all files, including the test update .OTA in case you need to start over.
    3-I loaded the custome .OTA that I paid for and it crashed during install. A few tries later it loaded part of OSKR but wouldn’t let me download the log files, a few more reset/reinstalls and it finally loaded correctly (face animations for OSKR) and it finally let me download the logs and it finally created the SSH key.
    4-I had to learn how to get SSH on Windows 10, basically in a CMD window, run SSH. Copy the key and replace the one it made with the Veectore data files:
    https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse
    5-Lastly, when you finally connect to Vector’s IP in SSH it says it can’t validate the key, just do it anyways and bood, you’re indside Vector.

    N.B. What they don’t tell you is that Vectore runs again, but it’s ‘dumb’ since you basically cut the cord with the cloud server. My next step is to setup the windows little HTTP server and get a cloud service with all of Vector’s brains to run, so it knows how to do things again.

    Good luck, info is not plentiful and this is going to be a long trip.

    1. 1 – it is definitely not neccessary to serve the OTA from a loptop or even the same computer. A web server on the local network works just fine – and way better than that crappy Python webserver.

      4- I have explained to to use SSH on Windows in another blog post. Just use Putty instead of relying on Microsoft stuff, it’s way easier.

      Since you are not able to reroute the cloud calls to a local server without Escape Pod and even that was locked up pretty tight by DDL, I doubt that you will be able to do that the way you intent. You will need to be able to serve correct answers to the robot’s REST calls. With Escape Pod you already have the option, but it is very limited at the moment, missing knowledge graph and weather.

Leave a Reply

Your email address will not be published. Required fields are marked *