WiFi mysteries resolved once and for all — Power saving is clearly the culprit!


@notaz, we are waiting for a response concerning your calibration dump tool. Thanks!
That's not easily done, if my day job was maintaining pandora firmware I could provide it in timely fashion, now I don't know how many tired-after-work evenings that would take and it's not my top priority.
@notaz: Understood.

@steveway: I hope that your offer is still valid, when we get @notaz' dumping tool.
 
@Notaz: by the way, is this source (http://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-wifi.git;a=summary) the same that we are using on the last kernel ? 

In the description it tells it's only for 2.6 kernel, is it true ?... but where I can find the source for the last driver ?
The driver has been accepted into mainline, so lives in main kernel tree:

http://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=tree;f=drivers/net/wireless/wl1251
 
@Notaz: by the way, is this source (http://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-wifi.git;a=summary) the same that we are using on the last kernel ? 

In the description it tells it's only for 2.6 kernel, is it true ?... but where I can find the source for the last driver ?
The driver has been accepted into mainline, so lives in main kernel tree:

http://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=tree;f=drivers/net/wireless/wl1251
oh, thanks :)

Is "wl12xx" used for something ? Or it's just there for reference ? I can't find it on my Pandora

EDIT: oh, ok, seems like it was the original driver that then was copied in wl1251
 
Last edited by a moderator:
According to the "SuperZaxxon incremental update changelog", its now possible to dump/load the calibration data. How do I go about doing that?
 
@notaz: Wow! You said you have little spare time. Nevertheless already did something on the issue. Amazing!

@all: I'm sure instructions will follow here, when notaz got the time. Meanwhile, I found a Linux Wiki describing the WL12xx calibration procedure. Maybe related.
 
There is a calibrator software available that works directly ON the system?

That's new to me... if that actually works, it could really speed up Wifi a lot.
 
wl12xx is completely different driver for wl1271 and newer chips, our chip is wl1251 and uses wl1251 driver that this tool won't support.

Maybe it can be hacked to work somehow, who knows, but I feel tired even thinking about attempting it (I've burned up trying these things years ago..)
 
Last edited by a moderator:
wl12xx is completely different driver for wl1271 and newer chips, our chip is wl1251 and uses wl1251 driver that this tool won't support.
Ahh, okay, thanks for the information. 

Maybe it can be hacked to work somehow, who knows, but I feel tired even thinking about attempting it (I've burned up trying these things years ago..)
I guess HOW the calibration works (testing different packet sizes, etc.) should be the same on our chip - if the chip supports the commands needed for that.

If the tool uses driver commands (not using the hardware too much), maybe it would simply work - no idea.

I know you tried a lot here, and it was a lot of work with little improvement, but we never tried to calibrate it ourselves (as we thought you need special tools for that).

And on one said YOU are the one who needs to get the calibrator working.

If some other dev wants to try it, why not? :)

GC sits in a room where only ONE wifi is available for Pandora testing... so if the tester could use that tool and preinstall proper calibration data for each Pandora, that would be neat.

Next question would be how to integrate that into the flashed OS (and find some way to keep it on a new flash... maybe allow the user to save the data on SD Card upfront, or recalibrate himself), but that's another issue.

But first, someone needs to check whether that tool could actually work with our wl1251...
 
I've documented calibration data dumping/loading process here:

http://pandorawiki.org/Wi-Fi#Calibration

Here is calibration file data format description I've found some years back:

http://notaz.gp2x.de/misc/pnd/wl1251/nvs_map.txt

Here is calibration comparison of my devboards I've done some years back too:

http://notaz.gp2x.de/misc/pnd/wl1251/nvs_cmp.txt

If we had some RF/wireless technology experts here on the boards, at least something should rings some bells here, but it doesn't for me at all.
 
I know you tried a lot here, and it was a lot of work with little improvement, but we never tried to calibrate it ourselves (as we thought you need special tools for that).
I think we would still need special tools (read something years back but don't remember what), at least some sort of signal generator is likely needed.
 
Ad RF/wireless technology experts: I contacted an acquaintance of me, who is a chip designer. Should he have the relevant knowledge and shows interest, maybe he can be of help.

Ad Special tools: Maybe this control signal can also be generated on some consumer routers, at least those which run with an open source OS (Tomato, etc)
 
How would one set up terminal to auto execute sudo iwconfig wlan0 power off rate 54M upon bootup?  Not a fan of typing it every time to get good wifi.  Or could even a PND be made that simply executes that command in terminal?
 
I've documented calibration data dumping/loading process here:

http://pandorawiki.org/Wi-Fi#Calibration

Here is calibration file data format description I've found some years back:

http://notaz.gp2x.de/misc/pnd/wl1251/nvs_map.txt

Here is calibration comparison of my devboards I've done some years back too:

http://notaz.gp2x.de/misc/pnd/wl1251/nvs_cmp.txt

If we had some RF/wireless technology experts here on the boards, at least something should rings some bells here, but it doesn't for me at all.
Here is the dumped calibration profile of my WiFi chip (aka "the troublemaker" ;-) )

/debug/wl1251/ contains a dump_full file besides the dump_nvs, your manual mentions, so I attached that as well.

UPDATE: I removed the profiles for privacy reasons, as they contained the MAC address.

My anonymized profile & other profiles are now in the OpenPandora WiFi chip profile repository.

This file describes the format of the hex data profile. From this it is clear to tech-savvy users where to redact your MAC address from the hex file.

I was unable to interpret the file map, but I am sure if you send in your profile to @notaz he will anonymize it before publishing.
 
Last edited by a moderator:
@notaz: Btw, after one dumped, how does one get back to the normal WiFi driver?

I simple toggled WiFi off and back on in the XFCE settings menu.

Hope that the normal driver is now running again.
 
I've documented calibration data dumping/loading process […]
@notaz: Does the dump vary from location to location (different WiFi environment), or is the calibration static, and does not change (partially) according to the environment (chosen network , encryption, etc)? If it would vary from place to place, then I'd dump the profile at different locations. If it is static, then my work is finished, my profile shared here.

I've got access to some software that does some graphical analyzing on binary data at work. I would take a look and see if there is anything jumps my eye if you provide me a copy of the EEPROM data or the dumper so I can get it from my pandora. Would be interesting to take a look.

@steveway: My profile is now online (see last posts). How many profiles do you need to start your binary analysis? Thanks for your help-offer, hope it is still valid.

@All: Please share your calibration profiles and mention wether your Panda works fine (on which router/network), or wether it troubles (how exactly?). Thanks!
 
@notaz: Btw, after one dumped, how does one get back to the normal WiFi driver?


I simple toggled WiFi off and back on in the XFCE settings menu.


Hope that the normal driver is now running again.
Yeah that should be enough.

I've documented calibration data dumping/loading process […]
 
@notaz: Does the dump vary from location to location (different WiFi environment), or is the calibration static, and does not change (partially) according to the environment (chosen network , encryption, etc)? If it would vary from place to place, then I'd dump the profile at different locations. If it is static, then my work is finished, my profile shared here.
It's static, I've put it next to my samples if anyone wants to do comparisons:

http://notaz.gp2x.de/misc/pnd/wl1251/nvs_samples/

Note that NVS also contains your MAC address, some people consider that private, so let me know if that causes problems for you.
 
 

@All: Please share your calibration profiles and mention wether your Panda works fine (on which router/network), or wether it troubles (how exactly?). Thanks!

I'm watching this thread pretty closely and I'd love to have time to work through these steps and produce a comparable file, but I think its something we should instead automate - i.e. script/package into a PND. So that the broader community can be involved in the calibration effort (would be good to finally squash the wifi thing like this).

So anyway I personally don't have the time for doing this today - or I would do it right now - but before I think about it any more for some Pandora-hacking moments during the week, do you guys think its do'able?  i.e. we don't need any special permissions, just the a competent user who can type their password, right?  You've done this gathering step already: think it could be easily scripted with the GUI-thing that the PandoraOS uses for other 'wizard'-like things?

If we get a clear step, I'll try to devote my next Pandora-hacking session (Tuesday) to this, or if someone else gets the bug to do it, I'll be happy to test by then, at least, anything that comes out that might make this data-gathering/community tweaking session a little easier to manage.
 
Back
Top