Asked — Edited

Wowwee Rovio Cgi Commands With User Privilege

Hello,

I'm trying to control my WowWee Rovio through httpget cgi commands with EZB scripts manager and so far it works but I can't get it to work with the user account I have set. Since it's connected to the Internet it's unimaginable to use it without user security.

For example I can get it to go home and dock with the following command :

httpget(http://192.168.0.142/rev.cgi?Cmd=nav&action=13)

But it works only if I deactivate the user security feature.

I tried to input user and password as follows :

httpget(http://192.168.0.142/rev.cgi?user=USERNAME&password=PASSWORD&Cmd=nav&action=13)

but it doesn't work. I must be missing something, I guess.

I'm using this documentation (below) to find out the solution but I can't find an answer to my question, perhaps and probably because I don't understand all the grammar in cgi commands. So if someone knows out I could work this arround, that would be great. I've been looking since yesterday now.

http://www.wowwee.com/static/support/rovio/manuals/Rovio_API_Specifications_v1.2.pdf

Many thanks, Elfege

PS : since I already pay for a fix IP address I'm very relunctant to use a DynDNS account.


ARC Pro

Upgrade to ARC Pro

ARC Pro is your gateway to a community of like-minded robot enthusiasts and professionals, all united by a passion for advanced robot programming.

#2  

Hello Rich

I did try this...:( nothing in the doc seems to allow me to do it beside deactivating user and deactivating it after maneuvers, perhaps.

PRO
USA
#3  

@elfege, Did you ever solve this issue? Funny how things come back around. I am now playing with a Rovio and would like to use the ARC software to access the API.

#4  

@rz90208 I am also looking at the same thing (since we both bought from Josh). I think we could do most of the Rovio functionality with just scripting and the custom Movement Panel instead of creating a plugin (although since it is all web based, a plugin would be pretty easy to write for someone with even moderate C# skills. If VB6 would still work on Windows 10, I would already have it done, but I have not tackled dotnet programming yet).

WowWee no longer hosts the API doc, but I found it here: http://breckon.eu/toby/teaching/dip/rovio/Rovio_API_Specifications_v1.3.pdf

If you aren't worried about internet access, you can set it up without password protection. Personally, I would use a VPN to access anything on my network anyway, so still feel OK with not adding authentication (I have a Raspberry Pi running OpenVPN and a client for my phone and laptop).

I think the biggest challenge is going to be the camera. I haven't looked into it deeply yet, but I even though it supports mjpeg I have a feeling it will not work in ARC. However, the camera (at least on mine) is so bad, I want to see if I can squeeze an iotiny and EZ-B camera inside without resorting to building a spacer like Josh did anyway.

Alan

[edit - changed link for API specification for a more recent version]

PRO
USA
#5  

Here are a few links that might interest you.

GitHub: https://github.com/GT-RAIL/rovio

Sourceforge: https://sourceforge.net/projects/rovio/

I am working on additional room units. with the information on sourceforge, looks like it will be simple. One NE556 dual timer a few resisters, a few capacitors, the 2 IR LEDs and that should do it.

Years ago I purchased a copy of RoboRealm but have never really used it but it supports Rovio also.

The camera isn't bad just needs ALOT of light. Will have to play with using IR LEDS and see if that improves it.

#6  
#7  

@thetechguru , the main board is in the head and a IO Tiny board will fit in there. It is the EZ cam that is hard to fit in. You could use a pi zero and cam like it did that is thinner and smaller and use the iotiny for the control aspects. You can still connect to the pi cam through IP over the network.

PRO
USA
#8  

Won't get a chance to play this weekend do to taking the scout troop on a campout/merit badge clinic. but will try to do a little after work but tonight is Trick or treat with the grandkids.

But I do need to find the time to get my InMoov in costume to try and win that $500 in EZ-Money

Thanks for the links, I had not seen the last two.

#9  

I loaded this firmware last night, and it adds some nice functionality including a slight improvement of the camera image. Hope to have some time this weekend to start building ARC scripts to control it.

https://github.com/jcrona/rovio-fw

I like that 10 years ago they had already solved the self charging issue in what seems to be a simpler way to reproduce than the Roomba/ Neato solution. If nothing else, this will be a good experiment platform for future robots (and it looks so cool, who could resist....)

I do have one issue, and wondering if it is my hardware or endemic. When I use one of the commands to turn x degrees, the back wheel never stops and it keeps going in circles until I give any other navigation command. Happened with original firmware, so it is not something that broke in the new firmware. I don't think it is wiring because all other navigation commands work fine, so the wheel is definitely controlled.

Other observations. I find it strange that it will not charge when powered off. I first thought I had a bad battery until I read in the manual that it needs to be on to charge. Even with the new firmware that can control the blue LEDs, it can't control them when it is docked and charging, so not something I can have turned on and ready in a room that I don't want lit up in blue all the time.

Alan

PRO
USA
#10  

Thank you for the update Alan, I will test this with mine and see if I have the same issue and let you know. I have an issue that I can not turn off the authentication. I uncheck the box save the setting but go back and check and it I still checked. Will flash the new firmware and see if that helps. Might get a little time tonight but it is the wife's birthday but Robots come first... Right?

#11  

This is great information.. thanks to everyone. Rovio has been sitting charged up and used by grandkids only. This is will help doing other things.

#12  

@rz90208 The new firmware resets everything to default, so it will turn off authentication. You'll also need to configure it back onto your network.

PRO
USA
#13  

@theTechGuru, I assumed it would. Now to find another form of security or turn off access from the outside until the authentication from ARC can be resolved.

#14  

Well, this is a shame, but I suppose I should expect issues with a 10 year old toy. I think the reason the back wheel keeps spinning when I try to turn to specific number of degrees is that the encoder in the rear wheel is bad. Tonight is the first time I tried to use the self docking, and it isn't working. It lines itself up in front of the dock, but about 2 feet away and never finishes backing into it.

I'll open it up one day soon and check for loose connections or burned components. Still a cool looking robot, and my cats love it almost as much as Roli. They both come running to watch every time I turn it on.

Alan

#15  

I am glad you like it! I never got any of the three to reliably dock , I got it a couple times but otherwise it was a bust. That’s why I went with ez robot instead so I have more control over what’s going on.

#16  

I am thinking of ditching the encoders all together as I don't know how to use them well with the ARC anyhow.

PRO
USA
#17  

The one I have seems to be docking just fine. Makes some strange moves but always seems to get docked. Oh except for the time I had it on the coffee table and the battery got low so off it went to self dock. Needless to say was unable to dock after landing on its top. I have successfully breadboarded a room 9 module using a NE556 timer. Still working on an enclosure with a lens so it will work much like the Rovio base.

But still have not figured out how the navigation actually works to the point where I can start coding it in ARC.

#18  

Ah so it decided to roam off the coffee table by itself? unpredictable little guys.

PRO
USA
#19  

The grandson (age 6) told me I cannot rip this one apart like all the others. He loves remoting in from his tablet and spying on Nanny and Papa. Have turned off the authentication so I can access it thru ARC. I forgot about the wheel encoders. I could use them in my calculations for navigation position.

@Alan Have you used the GetMCUReport() to check if the encoder count is changing for the read wheel? /rev.cgi?Cmd=nav&action=20

PRO
Belgium
#20  

there is on robotcommunity.com a topic about these rovers. it seems they have very cheap wifi card build in.most of users change, the wifi card with a more exspencive one to solve the problem. if i understood ,the rover use wifi for docking?

#21  

@ nomad, no they are not, docking uses a combination of the northstar system which is 4 IR dot projected onto the ceiling and a IR led that blinks at a certain frequency right above the dock, between these it has some kind of formula or scripting to back into the dock when battery hits 30 percent.

#22  

the wifi module is a pci express module just like a laptop.

#23  

Quote:

Have you used the GetMCUReport() to check if the encoder count is changing for the read wheel? /rev.cgi?Cmd=nav&action=20

I have not yet. I am still just playing around with the built in web interface. Haven't had a huge amount of time to use it yet, but that is a good idea to try.

Alan

#24  

Quote:

and a IR led that blinks at a certain frequency right above the dock
Ooh. I didn't realize that part. I'll have to check and make sure that IR LED is functioning. Maybe it isn't seeing it. It seems to line up with the ceiling dots, raises its head, but just wiggles around without backing up and, then after a minute, it wanders around a bit and lines up again. It could be that it jsut isn't seeing that LED.

Alan

PRO
USA
#25  

@Alan, There are 4 LEDs 2 are IR the other 2 are visible light. The 2 visible light are just for aiming not used for navigation. the 2 IR, each have a set frequency they pulse at with a 50% duty cycle. Here is a freq chart RMID LED# Target Freq Hz 0 1 3040 0 2 2010 1 1 4050 1 2 3090 2 1 4170 2 2 3210 3 1 4290 3 2 3330 4 1 4410 4 2 3450 5 1 4530 5 2 3570 6 1 4650 6 2 3690 7 1 4770 7 2 3810 8 1 4890 8 2 3930 9 1 5010 9 2 4050

If you use the API command: http://ipaddress:port/rev.cgi?Cmd=nav&action=1 This will generate a report that looks like this: Cmd = nav\nresponses = 0|x=3471|y=1632|theta=-3.065|room=0|ss=18210\n|beacon=0|beacon_x=0|next_room=9|next_room_ss=37\n|state=0|ui_status=0|resistance=0|sm=15|pp=0|flags=0001\n|brightness=6|resolution=3|video_compression=2|frame_rate=30\n|privilege=0|user_check=0|speaker_volume=5|mic_volume=5\n|wifi_ss=212|show_time=0|ddns_state=0|email_state=0\n|battery=117|charging=72|head_position=203|ac_freq=2\n

If x and y both have numbers and room=0, I think that should be good. I have written an EZ-Script that gets this info and parses it into variables if you are interested.

PRO
Belgium
#26  

i just read indeed it uses only wifi for video and driving. here a little text for the docking of the rovio.its from robotcommunity.com.

rovio comm