07-03-2016, 08:05 AM
(This post was last modified: 07-03-2016, 08:33 AM by Beta_Ravener.)
I have bought a cheap WiFi dongle from ebay, it costs about $2 and looks like this:
As it has no branding or whatsoever, I have run following to identify it (only relevant output is copied):
However, the device doesn't seem to be working 'out of box', as `ifconfig` does not show any wlan interface.
I have tried googling around and found basically 4 options:
1. Building kuba-moo, however this requires kernel 3.19+, while we seem to be at 3.10. Building the code anyway would result in errors as will be shown below in log file regarding unknown struct fields.
2. Downloading original code and patch as suggested here by user289087 and building it (the original code is from mediatek website as the original link in post is dead). Same errors as 1., although now it should not be only for 3.19+ so I'm wondering if the cause is not different.
3. Downloading binary directly and placing it in /lib/firmware (inside that archive it's mcu/bin/MT7601.bin, the archive is the same as in second option). However, I'm not sure about kernel version for which this was built and placing it there does not seem to do anything yet. Is there anything else that needs to be done?
I have found this github issue which references the binary and suggests that the device may need to be enabled in kernel source?
4. Installation through PPA as noted here by Eric Carvalho:
This fails the same way as 1. and 2. with errors:
The log file is finally linked here and errors are only at the end of file (rest of it is the same warning again and again).
I think there might be something wrong with how I obtained sources as 3 of those options end up in the same error:
1. I have updated kernel to newest version (3.10.102-0-pine64-longsleep) using script
2. Git cloned longsleep's repository (which I checked was the code for the same version of kernel as `uname -r`reports)
3. Run `make menuconfig` (left everything default and saved .config) and `make prepare`
4. Created symbolic link from /lib/modules/3.10.102-0-pine64-longsleep/build to the directory with source code (all the make files I've seen for this driver use this path, only substituting the kernel version with `uname -r` command)
Is there something wrong with this procedure?
Any help in solving this is greatly appreciated.
Edit1: Some more info about supporting this dongle on RPi can be found here.
As it has no branding or whatsoever, I have run following to identify it (only relevant output is copied):
Code:
> sudo lshw
*-usb:3 UNCLAIMED
description: Generic USB device
product: 802.11 n WLAN
vednor: MediaTek
physical id: 4
bus info: usb@1:1.4
version: 0.00
serial: 1.0
capabilities: usb-2.01
configuration: maxpower=160ma speed=480Mbit/s
>sudo lsusb
Bus 001 Device 006: ID 148f:7601 Ralink Technology, Corp. MT7601U Wireless Adapter
However, the device doesn't seem to be working 'out of box', as `ifconfig` does not show any wlan interface.
I have tried googling around and found basically 4 options:
1. Building kuba-moo, however this requires kernel 3.19+, while we seem to be at 3.10. Building the code anyway would result in errors as will be shown below in log file regarding unknown struct fields.
2. Downloading original code and patch as suggested here by user289087 and building it (the original code is from mediatek website as the original link in post is dead). Same errors as 1., although now it should not be only for 3.19+ so I'm wondering if the cause is not different.
3. Downloading binary directly and placing it in /lib/firmware (inside that archive it's mcu/bin/MT7601.bin, the archive is the same as in second option). However, I'm not sure about kernel version for which this was built and placing it there does not seem to do anything yet. Is there anything else that needs to be done?
I have found this github issue which references the binary and suggests that the device may need to be enabled in kernel source?
4. Installation through PPA as noted here by Eric Carvalho:
Code:
sudo apt-add-repository ppa:thopiekar/mt7601
sudo apt-get update
sudo apt-get install mt7601-sta-dkms
Code:
Synaptic output:
Error! Bad return status for module build on kernel: 3.10.102-0-pine64-longsleep (arm64)
Consult /var/lib/dkms/mt7601/3.0.0.4/build/make.log for more information.
The log file is finally linked here and errors are only at the end of file (rest of it is the same warning again and again).
I think there might be something wrong with how I obtained sources as 3 of those options end up in the same error:
1. I have updated kernel to newest version (3.10.102-0-pine64-longsleep) using script
2. Git cloned longsleep's repository (which I checked was the code for the same version of kernel as `uname -r`reports)
3. Run `make menuconfig` (left everything default and saved .config) and `make prepare`
4. Created symbolic link from /lib/modules/3.10.102-0-pine64-longsleep/build to the directory with source code (all the make files I've seen for this driver use this path, only substituting the kernel version with `uname -r` command)
Is there something wrong with this procedure?
Any help in solving this is greatly appreciated.
Edit1: Some more info about supporting this dongle on RPi can be found here.