Discussion:
Getting ad-hoc mode on Android 4.1 Jelly Bean
Stephan Moczygemba
2012-08-06 16:30:56 UTC
Permalink
Hi guys,

I try to setup OLSR on Android. However, I'm struggling with getting
into ad-hoc mode on Android while following your HOWTO
(http://www.olsr.org/?q=olsr_on_android). I've a Galaxy Nexus GT-I9250
with rooted Jelly Bean 4.1.1.

First, there was no wpa_cli interface on my phone. I found a compiled
version (0.6.10) and pushed it on my device. Then I ran into the already
known "Selected interface 'sockets'. Could not connect to wpa_supplicant
- re-trying"-problem. However, using wpa-cli without any parameters puts
me into Interactive mode. Next, I follow steps 3 to 8, each command
returning an "OK" message, but in the end I am stuck with "Association
request to the driver failed". Now I kind of run out of ideas, so I
would really appreciate any hint that could help me to proceed.
add_network
1
set_network 1 mode 1
OK
set_network 1 ssid "abcdef"
OK
set_network 1 bssid a0:0b:ba:2e:2a:7d
OK
set_network 1 frequency 2457
OK
set_network 1 key_mgmt NONE
OK
enable_network 1
OK
ap_scan 1
OK
select_network 1
OK
<3>CTRL-EVENT-STATE-CHANGE id=0 state=0 BSSID=00:00:00:00:00:00 SSID=test
<3>CTRL-EVENT-STATE-CHANGE id=1 state=3 BSSID=00:00:00:00:00:00 SSID=abcdef
<3>CTRL-EVENT-BSS-ADDED 30 00:18:39:d3:d3:23
<3>CTRL-EVENT-BSS-ADDED 31 00:22:b0:97:dd:0f
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>CTRL-EVENT-STATE-CHANGE id=1 state=5 BSSID=00:00:00:00:00:00 SSID=abcdef
<3>Association request to the driver failed
<3>CTRL-EVENT-BSS-ADDED 32 f0:7d:68:88:d4:d8
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>Association request to the driver failed

<3>CTRL-EVENT-BSS-ADDED 33 7c:4f:b5:dd:a5:05
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>Association request to the driver failed
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>Association request to the driver failed
[...]

What do I have to choose for the BSSID, just any random number? I put
the mac address of the interface in use (wlan0).

Thanks,
Stephan
--
Olsr-users mailing list
Olsr-***@lists.olsr.org
https://lists.olsr.org/mailman/listinfo/olsr-users
Hans-Christoph Steiner
2012-08-06 16:44:22 UTC
Permalink
Post by Stephan Moczygemba
Hi guys,
I try to setup OLSR on Android. However, I'm struggling with getting
into ad-hoc mode on Android while following your HOWTO
(http://www.olsr.org/?q=olsr_on_android). I've a Galaxy Nexus GT-I9250
with rooted Jelly Bean 4.1.1.
First, there was no wpa_cli interface on my phone. I found a compiled
version (0.6.10) and pushed it on my device. Then I ran into the already
known "Selected interface 'sockets'. Could not connect to wpa_supplicant
- re-trying"-problem. However, using wpa-cli without any parameters puts
me into Interactive mode. Next, I follow steps 3 to 8, each command
returning an "OK" message, but in the end I am stuck with "Association
request to the driver failed". Now I kind of run out of ideas, so I
would really appreciate any hint that could help me to proceed.
add_network
1
set_network 1 mode 1
OK
set_network 1 ssid "abcdef"
OK
set_network 1 bssid a0:0b:ba:2e:2a:7d
OK
set_network 1 frequency 2457
OK
set_network 1 key_mgmt NONE
OK
enable_network 1
OK
ap_scan 1
OK
select_network 1
OK
<3>CTRL-EVENT-STATE-CHANGE id=0 state=0 BSSID=00:00:00:00:00:00 SSID=test
<3>CTRL-EVENT-STATE-CHANGE id=1 state=3 BSSID=00:00:00:00:00:00 SSID=abcdef
<3>CTRL-EVENT-BSS-ADDED 30 00:18:39:d3:d3:23
<3>CTRL-EVENT-BSS-ADDED 31 00:22:b0:97:dd:0f
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>CTRL-EVENT-STATE-CHANGE id=1 state=5 BSSID=00:00:00:00:00:00 SSID=abcdef
<3>Association request to the driver failed
<3>CTRL-EVENT-BSS-ADDED 32 f0:7d:68:88:d4:d8
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>Association request to the driver failed
<3>CTRL-EVENT-BSS-ADDED 33 7c:4f:b5:dd:a5:05
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>Association request to the driver failed
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>Association request to the driver failed
[...]
What do I have to choose for the BSSID, just any random number? I put
the mac address of the interface in use (wlan0).
Thanks,
Stephan
Hey Stephan,

The BSSID can be just about any random number, but two bits need to be
set. So its easiest just to start with 02: then choose the rest. BSSID
of all 0s should cause it to try to find an existing adhoc network to
associate with.

I think you'll be interested in Commotion MeshTether, which is an
Android app for OLSR, based on olsrd. We're trying to automate the
whole adhoc setup. I've been testing on HTC with Android 2.3 mostly, so
it would be good to have testing on more platforms.
https://code.commotionwireless.net/projects/commotion-android/
https://guardianproject.info/builds/CommotionMeshTether/

As for setting up adhoc mode manually, I've had the best luck using
'iwconfig' from a Debian chroot using LilDebi:
https://github.com/guardianproject/lildebi

.hc
--
Olsr-users mailing list
Olsr-***@lists.olsr.org
https://lists.olsr.org/mailman/listinfo/olsr-users
Hans-Christoph Steiner
2012-08-07 14:59:12 UTC
Permalink
Hi Hans-Christoph,
thanks for your quick response! So I guess the OLSR howto didn't work
for you as well, right? I tried your manual approach using LilDebi but I
haven't been able to install Debian yet. I may try Ubuntu instead,
because there are guides for the Galaxy Nexus out there.
If you want a quick start, download the pre-built Debian image and put
it on your /mnt/sdcard on your phone. Then Lil' Debi will find it and
use it. The install process is a lot more fragile than the start/stop
process.
https://github.com/downloads/guardianproject/lildebi/debian-squeeze.img.bz2

But I think I also fixed the bug you reported, if you want to try that.
I also installed the Mesh Tether app. I tried to start an AP (by simply
pushing "start") and find it using a Windows XP laptop, no success. Also
the other way around, i.e. the laptop created the ad-hoc network - my
phone did not find the network. Attached you will find the ddms log.
Can you outline how you got adhoc mode working on your device? Then we
can capture that in MeshTether and make it part of the automatic process
of the app.
I need a more or less stable ad-hoc network and routing scheme to
implement service discovery approaches on top - this would be the topic
of my master thesis. Currently, I try to figure out whether this can be
done without a deep knowledge of linux :)
That is very much the goal of Commotion MeshTether, and its already
there for a number of phones. It also reads mesh "profiles" from config
files, so its easy to configure MeshTether to work with just about any
mesh network:
https://code.commotionwireless.net/projects/commotion/wiki/MeshTether

.hc
Stephan
Post by Hans-Christoph Steiner
Post by Stephan Moczygemba
Hi guys,
I try to setup OLSR on Android. However, I'm struggling with getting
into ad-hoc mode on Android while following your HOWTO
(http://www.olsr.org/?q=olsr_on_android). I've a Galaxy Nexus GT-I9250
with rooted Jelly Bean 4.1.1.
First, there was no wpa_cli interface on my phone. I found a compiled
version (0.6.10) and pushed it on my device. Then I ran into the already
known "Selected interface 'sockets'. Could not connect to wpa_supplicant
- re-trying"-problem. However, using wpa-cli without any parameters puts
me into Interactive mode. Next, I follow steps 3 to 8, each command
returning an "OK" message, but in the end I am stuck with "Association
request to the driver failed". Now I kind of run out of ideas, so I
would really appreciate any hint that could help me to proceed.
add_network
1
set_network 1 mode 1
OK
set_network 1 ssid "abcdef"
OK
set_network 1 bssid a0:0b:ba:2e:2a:7d
OK
set_network 1 frequency 2457
OK
set_network 1 key_mgmt NONE
OK
enable_network 1
OK
ap_scan 1
OK
select_network 1
OK
<3>CTRL-EVENT-STATE-CHANGE id=0 state=0 BSSID=00:00:00:00:00:00 SSID=test
<3>CTRL-EVENT-STATE-CHANGE id=1 state=3 BSSID=00:00:00:00:00:00 SSID=abcdef
<3>CTRL-EVENT-BSS-ADDED 30 00:18:39:d3:d3:23
<3>CTRL-EVENT-BSS-ADDED 31 00:22:b0:97:dd:0f
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>CTRL-EVENT-STATE-CHANGE id=1 state=5 BSSID=00:00:00:00:00:00 SSID=abcdef
<3>Association request to the driver failed
<3>CTRL-EVENT-BSS-ADDED 32 f0:7d:68:88:d4:d8
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>Association request to the driver failed
<3>CTRL-EVENT-BSS-ADDED 33 7c:4f:b5:dd:a5:05
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>Association request to the driver failed
<3>CTRL-EVENT-SCAN-RESULTS
<3>WPS-AP-AVAILABLE
<3>Trying to associate with SSID 'abcdef'
<3>Association request to the driver failed
[...]
What do I have to choose for the BSSID, just any random number? I put
the mac address of the interface in use (wlan0).
Thanks,
Stephan
Hey Stephan,
The BSSID can be just about any random number, but two bits need to be
set. So its easiest just to start with 02: then choose the rest. BSSID
of all 0s should cause it to try to find an existing adhoc network to
associate with.
I think you'll be interested in Commotion MeshTether, which is an
Android app for OLSR, based on olsrd. We're trying to automate the
whole adhoc setup. I've been testing on HTC with Android 2.3 mostly, so
it would be good to have testing on more platforms.
https://code.commotionwireless.net/projects/commotion-android/
https://guardianproject.info/builds/CommotionMeshTether/
As for setting up adhoc mode manually, I've had the best luck using
https://github.com/guardianproject/lildebi
.hc
--
Olsr-users mailing list
Olsr-***@lists.olsr.org
https://lists.olsr.org/mailman/listinfo/olsr-users
Loading...