[Replicant] Support for Tehnoetic's USB Wifi Dongle in Replicant 6.0

Wolfgang Wiedmeyer wreg at wiedmeyer.de
Sun Jan 22 18:16:36 UTC 2017


Wolfgang Wiedmeyer writes:

> A few updates from my side regarding this. I tried to get it working
> with Replicant 6.0. Searching for networks works, but connecting to a
> network fails. I will have to do more debugging, but it would be helpful
> if someone else could test it, too.

I got it working. I just didn't know how to wifi on Android. The network
has to be configured in a different way on recent Android versions. I
will post a minimal script in Fil's forum thread[1] and add a few
comments regarding the security of the current setup.

I'm planning to add a prebuilt firmware binary to the next version of
Replicant 6.0. It should then work out of the box with the Galaxy S2 and
S3. I went over my patches again and they are included now[2].

> Because the funny thing is that it didn't work at all when I tested it with
> Tiberiu's Replicant 4.2 build[1] and Fil's scripts[2]. It fails to
> create the wlan0 interface. I didn't bother investigating this because I
> had already spent a lot of time trying to get it working with Replicant
> 6.0. And debugging it on Replicant 4.2 will be quite annoying for me
> because Replicant completely crashes every time when I remove the otg
> cable and reconnect the usb cable to my PC. I also noticed an exception
> in dmesg when using Replicant 6.0, but there were no crashes so far. I'm
> using a regular otg cable and the TP-Link TL-WN722N, so it's not quite
> the same hardware you guys are using. That's why it would be helpful if
> you could test it on Replicant 6.0.

Thinking about this again, I just might have done something wrong. I
definitely don't want to diminish Fil's work on the scripts with this
comment. They are really great scripts that basically already do
everything that is needed to configure a wifi network. It also looks
like Tehnoetic has the adapter I'm using[3]. It would be interesting to
see if there are noticeable differences in power consumption compared to
the mini version[4].

Best regards,
Wolfgang

> I pushed an ath9k branch with all the changes[3] I did. This is only for
> the Galaxy S2 for now, but it should also work on the Galaxy S3 if you do
> the same changes to the i9300 kernel config. I can also upload a Galaxy
> S2 image for testing if you prefer. Please note that insmod is not
> necessary as I didn't build the driver as a module.
>
> So why is all of this so difficult? The main problem on the kernel side is
> that the kernel resembles more the 3.4 kernel than the original 3.0
> kernel in the network stack. The reason is that CyanogenMod did a lot of
> backports over the last years. It's not fully clear to me if all of
> these changes were made to get more recent driver versions for the
> internal wifi working or if these changes were also needed to be
> compatible with more recent Android versions. Tiberiu reverted a big
> part of these changes and removed some code that is not in the mainline
> kernel before he enabled the ath9k driver[4].
>
> A few years have now passed since Paul got the kernel ready for
> Replicant 4.2 and a lot more changes have been added, so there is a huge
> chunk that needs to be reverted now. It's pretty clear that this will
> render the internal wifi unusable. One could now argue that this doesn't
> matter because the internal wifi needs proprietary firmware to be loaded
> and the firmware is not present on the device. Thus, the firmware needs
> to be shipped with Replicant and Replicant won't ship proprietary
> software. But some of these changes could also turn out to be useful for
> an external wifi dongle.
>
> I can think of two options that wouldn't make it necessary to get rid of
> a lot of improvements to the kernel:
> 1. Adapt mac80211 and the ath driver to be compatible with the 3.4
> kernel wifi interface
> 2. Backport mac80211 and ath from the 3.4 kernel
>
> I tried both of these options. Both lead to the same results described
> in the beginning so it could also be a problem in userspace. The ath9k
> branch[4] contains the backport approach. I will try to spend more time
> on debugging this in the future but I will leave it at this for now
> because I already spent a lot of time on this.
>
> Best regards,
> Wolfgang
>
> [1]  http://tehnoetic.com/download/replicant-4.2-i9100-nonofficial-tehnoetic.zip
> [2]  https://redmine.replicant.us/boards/9/topics/13932?r=13946#message-13946
> [3]  https://code.fossencdi.org/kernel_samsung_smdk4412.git/log/?h=ath9k
> [4]  https://git.replicant.us/tehnoetic/kernel_samsung_smdk4412/commits/ath9k_htc



[1]  https://redmine.replicant.us/boards/9/topics/13932?r=13946

[2]  https://code.fossencdi.org/kernel_samsung_smdk4412.git/log/?h=replicant-6.0

[3]  https://tehnoetic.com/adapters/tet-n150hga

[4]  https://tehnoetic.com/tehnoetic-wireless-adapter-gnu-linux-libre-tet-n150

-- 
Website: https://fossencdi.org
OpenPGP: 0F30 D1A0 2F73 F70A 6FEE  048E 5816 A24C 1075 7FC4
Key download: https://wiedmeyer.de/keys/ww.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.osuosl.org/pipermail/replicant/attachments/20170122/d2e51778/attachment.asc>


More information about the Replicant mailing list