parrot ar drone access point

Because Android doesn't let you connect to an ad-hoc network, you can't use your Android device to control Parrot's AR.Drone without a little bit of work.Essentially you have three options: However, this will void the warranty on your phone.Manually change the drone's WiFi setup via telnet to connect to an Access Point. This requires a computer in order to connect to the drone and the changes are not persistent, you will have to perform the procedure everytime you restart your drone.Install an on-board script which automatically connects the drone to a specified Access Point. This is the easiest solution as your drone will still be able to operate exactly as before with an ad-hoc network but will automatically connect to your phone's Access Point as soon as you turn it on. Moreover this solution is persistent, no need to perform the install procedure at each startup. However, this will void Parrot's warranty on your AR.Drone.I don't know anything about rooting Android devices and I can't help you there but if your phone is already rooted and patched then you should have no problem at all connecting to the AR.
Drone using its standard IP Address: 192.168.1.1.If you are like me and don't want to root your phone you have two options left :The changes are not persistent Here is how to connect your AR.parrot ar drone charger lightsDrone to your Android phone's Wi-Fi Access Point :First, if your drone is paired to your iPhone/iPad or other, you need to unpair it by pressing the unpair button underneath the AR.parrot ar drone hunterDrone with something like a pen.parrot ar drone central cross repairConnect your computer to your drone : on your computer, browse the list of available WiFi networks and click on  ardrone_******. Linux and Mac OS X : open a terminal and type : telnet 192.168.1.1Windows : you are going to need a telnet client, one is shipped with Windows but it is hidden in Vista and 7.
I would recommend using putty (http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe). In the field "hostname", enter 192.168.1.1, then, for "Connection type", choose Telnet right below and click onAt this point, you need to start the WiFi hotspot on your phone. Launch the portable Wi-Fi hotspot app and make sure the hotspot is disabled. Click the menu button  and in the menu, click on Advanced. Change the local IP to 192.168.1.2 (we are going to use 192.168.1.1 for the AR.Go back to the first screen, make sure that security is set to none and choose a name for your network (mine for instance is skynet). Then click the top left check box to start the hotspot. Your phone is now waiting for a connection from your drone.Back on your computer type the line below to your telnet console replacing YOUR_NETWORK_NAME Do not enter return before the end of the lineifconfig ath0 down ; iwconfig ath0 mode managed essid YOUR_NETWORK_NAME ap any channel auto commit ; ifconfig ath0 192.168.1.1 netmask 255.255.255.0 upOnce you have correctly recopied the line on the telnet terminal, type return.
The drone will disconnect from your computer so your telnet terminal will seem to freeze. On your phone screen you should now see "1 connected user", if so the procedure succeeded.Now you can launch AndroFlight, click on Connect and you are good to go !2) Automatic Connection using ARAutoConnectHOWEVERI offer absolutely no warrantyI decline all responsibilitynot supported by Parrotwillresult in voiding the warranty.your own risks.To see how to install AR AutoConnect on your Drone go to this page.Launch the portable Wi-Fi hotspot app.If your are doing this for the first time or if you have changed the settings since the last time: Click the menu button and in the menu, click on Advanced. Change the local IP to 192.168.1.2 (by default 192.168.1.1 is for the AR.Go back to the first screen, make sure that security is set to none and change the router name to the one you have specified in the AR AutoConnect installer (by default  mine for instance is skynet).Click the top left check box to start the hotspot.
Something like 5 or 10 seconds later, you will see appear 1 connected users : this is your drone ! Ready to go !You can now launch AndroFlight and have fun with your drone.Clone this wiki locally To make the drone join an access point instead of broadcasting its own SSID, the following script can be put in /bin/onoffbutton/longpress_0.sh. When the power-button is pressed long, the drone will then connect to the access point. Make sure the AP has no encryption enabled. (WEP is possible if script is adapted, WPA2 is untested but will most likely decrease throughput a lot) Eventually, this can be put inside /etc/init.d/ to apply this configuration at startup. When used in this configuration, the drone might become unreachable without a software reset when the AP cannot be reached! The drone will automatically request an IP using DCHP. A static IP can be obtained by adjusting the ipconfig command, or using MAC filtering using the access point. Remark: apparently the adapter name changed in newest firmwares from eth0 to wifi_bcm.
Make sure to check the adapter using ifconfig and change the script accordingly. # Set light to orange BLDC_Test_Bench -G 1 1 0 >/dev/null # Check whether drone is in access point mode if [ $(bcmwl ap) -eq 1 ] echo "Trying to connect to $ESSID" | logger -s -t "LongPress" -p user.info # Bring access point mode down # Configure wifi to connect to given essid # Run dhpc client udhcpc -b -i eth0 --hostname=$(hostname) # Should make drone an access point again # Bug: does not work yet (turn drone off & on instead) # Set light back to green after 1 secondBLDC_Test_Bench -G 0 1 0 >/dev/null) & Thanks goes out to Yasser Deceukelier who helped me develop this script. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.Enabling infrastructure wifi on the ARDrone with DHCP There are a number of different articles on “patching” the AR Drone to connect to infrastructure.
I’m going to talk a little about the technical details of what is going on, based on my own experience. The ARDrone, in its stock configuration, is an embedded linux device that runs Busybox. By default, on boot it starts an ad-hoc wiki network of the form ardrone_xxxxxx, where the last bit is the ID of the drone. When you connect to the ad-hoc network, the drone can assign an IP address from the 192.168.1.xxx range, where 192.168.1.1 is reserved for the drone itself. At this point, the drone is accessible over the network via telnet, simply use: If you use ifconfig, you can see the wifi device ath0. I believe the drone simply uses mostly stock atheros wifi drivers. Now, on boot, the drone executes the initialiation script /bin/wifi_setup.sh. You can look inside and actually see the drone configure its wireless and startup the DHCP server. Connecting to infrastructure wifi So if we want to connect to an infrastructure access point, we have a couple of key steps:
Shut down the DHCP server. Bring down the ath0 interface Bring up the ath0 interface in managed mode, connecting to SSID of choice Run DHCP client to get IP address The first 3 steps of this are well described in a lot of other posts like this one at Shellware, so lets talk about the DHCP client. Busybox includes a DHCP client called udhcpc. Running it is simple, and by default it will get an IP address and netmask: udhcpc -b -i ath0 So now, the process of starting up the wifi is to do the following block: iwconfig ath0 mode managed essid $INFRA_ESSID ap any channel auto commit If we want to start up ad-hoc networking again, we can do: iwconfig ath0 mode Ad-Hoc essid $DRONE_SSID channel auto commit ifconfig ath0 192.168.1.1 netmask 255.255.255.0 up At this point, we can make scripts to manually switch between an infrastructure network and an ad-hoc network. As long as we don't run anything at boot, the drone will always safely reboot into ad-hoc mode.
Automatically connecting to infrastructure wifi So I found an existing tool that autoloads a startup script for connecting to infrastructure APs called ARAutoConnect. It was open source, so I extracted the underlying script, which runs a loop that scans every 10s for the SSID network and connects to it, and added DHCP support. The resulting script, which can be downloaded here (autoconnect.sh), runs the same loop, but also tries to get a DHCP lease. To use the script, simply put it in some directory. Now, create a file in the same directory called essid, and put the name of the network in it. If you run the script directly, it will now search for the specified wifi network, and if it finds one, it will close the ad-hoc network and connect to the infrastructure network instead. If you want this to run at startup, simply append a line to /bin/wifi_setup.sh that goes something like: Be warned however, if an infrastructure network is available but the drone can't complete a connection to it, it will keep trying, possibly locking any ad-hoc connections out until you move the drone out of range.