Project

General

Profile

WiFiAdapter » History » Version 33

Denis 'GNUtoo' Carikli, 03/07/2019 10:41 PM

1 6 Wolfgang Wiedmeyer
h1. Enabling WiFi with an USB WiFi adapter
2 1 Wolfgang Wiedmeyer
3 19 Wolfgang Wiedmeyer
{{>toc}}
4
5 7 Wolfgang Wiedmeyer
All Replicant-supported devices need non-free firmware to be loaded to make the internal WiFi component work. See the [[Wifi|WiFi research page]] for more information. Free replacements for these non-free firmwares do not yet exist.
6 3 Wolfgang Wiedmeyer
7 5 Wolfgang Wiedmeyer
However, free firmware does exist for WiFi adapters with the AR9271 chipset. Such adapters can be used with a device running Replicant 6.0. A USB OTG (On-The-Go) cable is needed to connect the WiFi adapter to the phone.
8 1 Wolfgang Wiedmeyer
9 32 Denis 'GNUtoo' Carikli
h2. Replicant compatible devices
10
11
WiFi adapters work best with the [[GalaxyNote2N7100|Galaxy Note 2]] or the supported tablets because of their large batteries, though connection issues or crashes of the RepWifi app can happen.
12
13
Otherwise, the [[GalaxyS3I9300|Galaxy S 3]] works well, while the [[GalaxyNexusI9250|Galaxy Nexus]], [[GalaxyNoteN7000|Galaxy Note]] and especially the [[GalaxyS2I9100|Galaxy S 2]] are more unstable and have a smaller battery life. See [[WifiAdapter#Known-issues|known issues]] for more details. Using an USB OTG Y-cable with an additional power source helps preventing battery-related issues.
14
15 30 Denis 'GNUtoo' Carikli
h2. WiFi adapters
16 1 Wolfgang Wiedmeyer
17 8 Wolfgang Wiedmeyer
More adapters exist that have the AR9271 chipset than are listed below. The listed adapters are the ones that are known to us.
18 1 Wolfgang Wiedmeyer
19
h3. Known to work
20
21 17 Wolfgang Wiedmeyer
* "Penguin Wireless N USB Adapter (TPE-N150USB)":https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-usb-adapter-gnu-linux-tpe-n150usb
22 7 Wolfgang Wiedmeyer
* "Technoethical N150 Mini Wireless USB Adapter":https://tehnoetic.com/adapters/tehnoetic-wireless-adapter-gnu-linux-libre-tet-n150
23 1 Wolfgang Wiedmeyer
* "Technoethical N150 High Gain Antenna Wireless USB Adapter":https://tehnoetic.com/adapters/tet-n150hga
24
* TP-Link TL-WN722N[2]
25 30 Denis 'GNUtoo' Carikli
26 31 Denis 'GNUtoo' Carikli
h3. Should work but not tested
27 30 Denis 'GNUtoo' Carikli
28 31 Denis 'GNUtoo' Carikli
* "Penguin Wireless N USB Adapter /w External Antenna (TPE-N150USBL)":https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-usb-adapter-w-external-antenna-gnu-linux-tpe-n150usbl
29 30 Denis 'GNUtoo' Carikli
30 8 Wolfgang Wiedmeyer
h2. WiFi adapter usage
31 1 Wolfgang Wiedmeyer
32 8 Wolfgang Wiedmeyer
Using the WiFi adapter with the RepWifi app is the recommended and most convenient way.
33 1 Wolfgang Wiedmeyer
34 16 Wolfgang Wiedmeyer
It is not possible to configure WiFi connections through the adapter with the pull-down quicksettings or the regular WiFi menu in the settings. These are only meant to work with the internal WiFi component of the device.
35 8 Wolfgang Wiedmeyer
36
h3. With the RepWifi app
37
38 9 Wolfgang Wiedmeyer
Replicant 6.0 ships with the RepWifi app. [[UsageNotes#Enabling-root-access|Root access for apps]] needs to be enabled to make the app work.
39 29 Denis 'GNUtoo' Carikli
 
40
The app has the following capabilities:
41
* searching for WiFi access points
42
* connecting to WPA/WPA2 secured and unsecured networks
43
* storing network connections (including passwords)
44
* managing stored network connections (viewing and deleting them)
45
46
"Forum thread about the app and its development":/boards/9/topics/14079?r=1410
47
48 8 Wolfgang Wiedmeyer
h3. With the WiFi scripts
49 1 Wolfgang Wiedmeyer
50 14 Wolfgang Wiedmeyer
While the RepWifi app should be preferred, use cases might exist where the WiFi scripts yield better results. The scripts were developed before work on the RepWifi app was started. Scripts both for Replicant 6.0 and Replicant 4.2[1] exist. It is unlikely that the WiFi scripts will be improved further as the development focus lies on the RepWifi app.
51 9 Wolfgang Wiedmeyer
52 12 Wolfgang Wiedmeyer
The scripts can be retrieved by cloning the user-scripts repository:
53
<pre>
54
git clone https://git.replicant.us/replicant/user-scripts.git -b replicant-6.0
55
</pre>
56
57
for Replicant 6.0 and
58
<pre>
59
git clone https://git.replicant.us/replicant/user-scripts.git -b replicant-4.2
60
</pre>
61
62
for Replicant 4.2.
63
64
For the next steps, [[ADB]] needs to be set up and [[ADB#Accessing-root-shell|running as root]]. Connect the device to your PC. The scripts are in the @networking/wifi@ folder. Run the setup script the folder to push the scripts to the device:
65
<pre>
66
./setup.sh
67
</pre>
68 1 Wolfgang Wiedmeyer
69 13 Wolfgang Wiedmeyer
Then disconnect the device and attach the WiFi adapter. Make sure [[UsageNotes#Enabling-root-access|root access for apps]] is enabled. Open a [[UsageNotes#Terminal-emulator|terminal emulator]]. If the terminal is not running as root, you can gain root by running:
70
<pre>
71
su
72
</pre> 
73 1 Wolfgang Wiedmeyer
74 13 Wolfgang Wiedmeyer
Navigate to the @data/misc/wifi@ directory and run the script to scan and select the network access point:
75
<pre>
76
bash select_network.sh
77
</pre>
78
79
After selecting the preferred AP and entering the password (if required), a WiFi connection should be successfully established.
80 1 Wolfgang Wiedmeyer
81 13 Wolfgang Wiedmeyer
"Forum thread about the WiFi scripts and their development":/boards/9/topics/13932 (contains some more usage notes, especially for Replicant 4.2)
82 18 Wolfgang Wiedmeyer
83 1 Wolfgang Wiedmeyer
h2. Known issues
84
85 33 Denis 'GNUtoo' Carikli
* The adapter usage causes high battery drain. Frequent usage might result in a shortened lifecycle of the battery and battery damage is possible.
86
* In the case of a low battery charge, it might not be possible to power the WiFi adapter. It is then not possible to use the it adapter until after the next recharge. If the adapter is not recognized, make sure to fully charge the battery and then try again.
87
* The displayed battery charge level can be inaccurate and not up-to-date. As the adapter causes an unusually quick battery drain, the actual battery charge level can be a lot lower than what is currently displayed. This can be observed when the phone is rebooted after adapter usage. The displayed level can be a lot lower than before the reboot. That primarily happen with the Galaxy S 2 (see #1791).
88 1 Wolfgang Wiedmeyer
89 26 Fil Bergamo
h2. Notes:
90
91 25 Fil Bergamo
fn1. Replicant 4.2 does not include the required drivers to make these adapters work. Custom kernel images are necessary for Replicant 4.2. The scripts for Replicant 4.2 run services with greater privileges and do not restrict file access as good as the scripts for Replicant 6.0 do, so using them is less secure.
92 24 Fil Bergamo
 
93
fn2. According to "WikiDevi-1":https://wikidevi.com/wiki/TP-LINK_TL-WN722N and "WikiDevi-2":https://wikidevi.com/wiki/TP-LINK_TL-WN722N_v2 only version 1 of TP-Link TL-WN722N works with free software, while v2 doesn't (*not tested*)