Roomba 530 and bluetooth adapter - no success!

Inside the Roomba and Scooba and more, Cool mods, Repair and Upgrades - including the all new iRobot Create Kit. Let's void that warranty baby!

Postby vic7767 » March 24th, 2008, 1:28 pm

That would be a good idea at this point. Remove the battery and press the clean button for 10 seconds, replace the battery insert the charger into the Roomba jack, establish a new connection with your COMM package and see if you can receive the ASCII characters from the Roomba.
Roomba and Neato Mods, come visit: http://www.vic7767.com/

http://www.Robot-Doc.com/
User avatar
vic7767
Robot Master
 
Posts: 11926
Joined: January 14th, 2006, 8:31 pm
Location: Haughton Louisiana - USA

Postby mthompson » March 24th, 2008, 3:55 pm

Thanks for your advice.

I followed your instructions and received the attached Portmon trace when i connected to the port (Baud 115200).

The trace file shows the data as hex, im happy to repeat it as ASCII if you'd prefer.

Thanks for any advice you can offer.
Attachments
battery.txt
Trace After the Battery was removed
(49.62 KiB) Downloaded 223 times
mthompson
 
Posts: 6
Joined: March 22nd, 2008, 1:40 pm

Postby vic7767 » March 24th, 2008, 5:26 pm

If you convert to ascii, I suspect you will see someting like this:

bl-start
STR730
rfid: #x0000E9CE
2007-04-18-1405-L
Roomba by iRobot!
str730
2007-06-20-0411-L
battery-current-zero 260

2007-06-20-0411-L
0000 E9CE
assembly: 3.4
revision: 0
flash version: 2
flash info crc passed: 1

battery-current-zero 260

processor-sleep

It that what you got ?
Roomba and Neato Mods, come visit: http://www.vic7767.com/

http://www.Robot-Doc.com/
User avatar
vic7767
Robot Master
 
Posts: 11926
Joined: January 14th, 2006, 8:31 pm
Location: Haughton Louisiana - USA

Postby mthompson » March 24th, 2008, 6:02 pm

Im Afraid not.

????????????????????????hz????j? 8?????
???????k???
????????h???? j?????
????????k?????
?????????h?????H????~?????v?E??????????k?????????????z????????O???????x ??X?k?????????????hz??? ????
????????????Xk[????????????K????H[ ????????????? ?????k????????????K???????8??????v?????x??????????????????????[??????????????x??k?????
??????????K????H?U????O??X????????Xk??????????????????H[????????X?????
?????k??????????????? ????????~?????????????????????z????U?8???
??v???????
??k??????????????z???H????~?????X???????X?????????????????????H???8????
??X????? ?????[???H???????????K????? ???????X?????????k????
?????????h?????[ ???O???E?????k????
???????K????j? ??????
~X?????????[???
mthompson
 
Posts: 6
Joined: March 22nd, 2008, 1:40 pm

Postby vic7767 » March 24th, 2008, 6:52 pm

It appears you are having either a baud rate or parity issue, I would guess. There is nothing other than ASCII characters sent out the SCI port during normal functions like powering up, reset command 7, etc. You will see special characters in hex during some of the sensor query commands. It that what you are attempting to do ?
Roomba and Neato Mods, come visit: http://www.vic7767.com/

http://www.Robot-Doc.com/
User avatar
vic7767
Robot Master
 
Posts: 11926
Joined: January 14th, 2006, 8:31 pm
Location: Haughton Louisiana - USA

Postby mthompson » March 25th, 2008, 7:33 am

I agree it appears to be a baud / parity issue.

Basically i'd like to write my own software to control my roomba. I have experience of serial communication protocols but not blue tooth.

How do i go about setting the baud rate in the Rootooth?
I havent changed that yet?

Ive tried sending +++ but that just causes roomba to start spot cleaning.

Thanks again.
mthompson
 
Posts: 6
Joined: March 22nd, 2008, 1:40 pm

Postby vic7767 » March 25th, 2008, 11:20 am

You may have one of the new Firefly bluetooth devices. Try this:

Run your favorite terminal emulator, HyperTerminal or other program. Type ?$$$? on your screen. You
should see ?CMD? returned to you. This will verify that your cable and comm. settings are correct. Valid
commands will return an ?AOK?, response, and invalid ones will return ?ERR ?. Commands that are not
recognized will return a ???.
To exit command mode, type ?---?<cr>. (three minus signs).
Roomba and Neato Mods, come visit: http://www.vic7767.com/

http://www.Robot-Doc.com/
User avatar
vic7767
Robot Master
 
Posts: 11926
Joined: January 14th, 2006, 8:31 pm
Location: Haughton Louisiana - USA

Postby vf007 » April 7th, 2008, 7:22 pm

I had the same problem with Roomba 560 and RooTooth with Firefly. The solution (following up on vic's post above):

1. Connect with a terminal emulator to COMx, the serial port associated to the Firefly Bluetooth device;

2. Set Firefly in command mode
send: $$$
recv: CMD

3. Set Firefly rate to match Roomba's rate of 115200:
send: SU,115k
recv: AOK

4. "reboot" Firefly (unplug-plug or Roomba power off-on).

Now you should be able to communicate with Roomba over Firefly.

A full set of Firefly commands are at
http://www.rovingnetworks.com/documents ... -guide.pdf

Hope this works,
VF
vf007
 
Posts: 1
Joined: April 7th, 2008, 7:07 pm

Postby mthompson » April 8th, 2008, 3:53 am

Thanks for your help everyone.

vic7767 and vf007 you are correct.

I actually went the other way round in the end (Used a Serial Cable, to change the baud rate of the roomba to match the blue tooth).
mthompson
 
Posts: 6
Joined: March 22nd, 2008, 1:40 pm

Useful thread , but still no luck...

Postby franky1664 » April 13th, 2008, 1:57 pm

Very useful info in this thread :) . Thanks guys.

I am now communicating with the rootooth/Firefly and set the baud rate to 115k permanently. Now I can't seem to communicate with the Roomba (a 560). I do not receive any data from it (which port should it come on - BT seems to create two: COM4 (spp) for outgoing and COM5 for incoming). Any data I send on COM4 (e.g. bytes 128, 131, 134) don't get any reaction :( .

Any software like SCITester for 500 series?

I've read somewhere that SCI is not enabled on european models. Could this be true?

Thanks for your help.
franky1664
 
Posts: 10
Joined: April 13th, 2008, 1:39 pm
Location: France

Postby vic7767 » April 13th, 2008, 3:15 pm

franky1664, you probably need a different version of bluetooth for your PC. Go here and download the IVT version and drivers.

http://www.bluesoleil.com/download/inde ... oleil_voip
Roomba and Neato Mods, come visit: http://www.vic7767.com/

http://www.Robot-Doc.com/
User avatar
vic7767
Robot Master
 
Posts: 11926
Joined: January 14th, 2006, 8:31 pm
Location: Haughton Louisiana - USA

Why bluetooth?

Postby franky1664 » April 14th, 2008, 10:24 am

I would have thought my bluetooth setup is OK since I can communicate with the Firefly with no problem. My problem seems to be more with then communicating on with the Roomba (or perhaps the Roomba-Firefly communication).

I have a Dell laptop with a built-in BT adapter (reported as Dell truemobile), and I'm a bit wary of messing up the stack that works quite well with other devices (and the firefly!). Why are you suggesting BlueSoleil? Would this work with my Dell adapter?
franky1664
 
Posts: 10
Joined: April 13th, 2008, 1:39 pm
Location: France

Re: Why bluetooth?

Postby vic7767 » April 14th, 2008, 11:27 am

franky1664 wrote:I have a Dell laptop with a built-in BT adapter (reported as Dell truemobile), and I'm a bit wary of messing up the stack that works quite well with other devices (and the firefly!). Why are you suggesting BlueSoleil? Would this work with my Dell adapter?


You may be perfectly fine with the configuration you have. I mentioned the other option because on my WinXP Toshiba Lap top the basic bluetooth configuration had the Xmit and Rec on separate Comm ports and I couldn't get it to work with my first Rootooth from Sparkfun and a bluetooth USB dongle. I purchased a new USB bluetooth from Gridconnect called the BluePlug and it came with the IVT software. Displays a single screen with all the bluetooth devices in the area. That is how I can determine if my PC can connect and also what services are alive like (SPP). By the way these are all Class 1 bluetooth devices that can work up to 300 feet.
Roomba and Neato Mods, come visit: http://www.vic7767.com/

http://www.Robot-Doc.com/
User avatar
vic7767
Robot Master
 
Posts: 11926
Joined: January 14th, 2006, 8:31 pm
Location: Haughton Louisiana - USA

Some sort of success with Roomba 560 + 'firefly' rootooth.

Postby franky1664 » April 20th, 2008, 12:46 pm

Ok, finally got it working!

I've not yet really understood why it doesn't work 'out of the box', but I have to set the port speed on the firefly using the U,115k,N command at the start of each session.

Setting the port speed permanently using SU,115k and SL,N commands doesn't do the same.

It's a bit of a pain (and took me a while to find out!), but at least I have a method that works to continue playing with the SCI...

Anyone encountered the same problem?

(and even though bluetooth has installed 2 ports, only the first one is used by SPP for send and receive)
franky1664
 
Posts: 10
Joined: April 13th, 2008, 1:39 pm
Location: France

Postby vic7767 » April 20th, 2008, 3:37 pm

The firefly bluetooth I got from sparkfun.com defaults to the 115K. I don't have the Rootooth version, have you talked with sparkfun ?
Roomba and Neato Mods, come visit: http://www.vic7767.com/

http://www.Robot-Doc.com/
User avatar
vic7767
Robot Master
 
Posts: 11926
Joined: January 14th, 2006, 8:31 pm
Location: Haughton Louisiana - USA

Postby franky1664 » April 20th, 2008, 4:25 pm

My firefly-rootooth appears to default to 115k too, but for some reason, it needs the U,115k,N command before it actually works (BTW this takes the firefly out of CMD mode too)

I've tried 19200 also, same problem: SU 19200 seems to set the baud rate, but it doesn't work until I use U,19200,N

I'll try to submit this to sparkfun when I have a moment...

In the meantime, this work around does the trick :D
franky1664
 
Posts: 10
Joined: April 13th, 2008, 1:39 pm
Location: France

Postby vic7767 » April 20th, 2008, 4:33 pm

Thanks for the tip. That may explain some other issues I have with sending commands to the ROI.
Roomba and Neato Mods, come visit: http://www.vic7767.com/

http://www.Robot-Doc.com/
User avatar
vic7767
Robot Master
 
Posts: 11926
Joined: January 14th, 2006, 8:31 pm
Location: Haughton Louisiana - USA

Post subject: Some sort of success with Roomba 560 + 'firefl

Postby munkii » April 27th, 2008, 1:26 pm

I think i am having the same issue as franky1664 with the firefly and 550. I was able to change the baud rate by doing what was described in the thread but franky1664 mentions a work around by passing U,115k,N. I am using putty to pass this command (which succeeds) but after i pass it i cant send any more commands. What is the correct procedure to send more commands using the terminal emulator?
munkii
 
Posts: 2
Joined: April 26th, 2008, 7:43 pm

Firefly

Postby franky1664 » May 1st, 2008, 12:24 pm

I basically start each session like this:

Connect to COM4 (or whatever is your firefly SPP port)
$$$
U,115k,N<cr>

At this point, you are out of CMD mode (no need to send ---). You need to send binary opcodes as described in the ROI specification. I used eltima's terminal to start with (http://www.eltima.com/products/serial-port-terminal/), then went on to code (using c#). Apart from some throughput issues with reading sensor data, it generally works quite reliably.
franky1664
 
Posts: 10
Joined: April 13th, 2008, 1:39 pm
Location: France

Roomba control in c#

Postby franky1664 » May 13th, 2008, 6:41 am

If you're interested in checking out source code, or just use my control program, I've published the results of my tickerings here: http://members.lycos.co.uk/peyrebelle/
franky1664
 
Posts: 10
Joined: April 13th, 2008, 1:39 pm
Location: France

PreviousNext

Return to Robotic Hacking

Who is online

Users browsing this forum: No registered users and 183 guests