Skip to content

My enhancements to the WiShield tree #3

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 17 commits into
base: master
Choose a base branch
from

Conversation

CapnBry
Copy link

@CapnBry CapnBry commented Aug 21, 2011

I started these enhancements 9 months ago before the WiShield became unavailable. I've ported them from my svn tree to git.

-- Merges all the WEP / WPA into one variable, called security_data. This saves on code space and the user can only use one at a time anyway
-- Adds WPA / WPA2 Precalc as a security type. This is a 32 byte precalculated key so the g2100 doesn't have to do it on every boot. Reduces startup time from 35 seconds to 6 seconds.
-- Reduces RAM (~150 bytes) and PROGMEM (~300 bytes) by optimizing some functions and removing the runtime verbose flag. You can still compile with verbose but not change it at runtime.
-- Take back some of that RAM I freed by increasing the UIP buffer size by 100 bytes. Increases throughput by 29%.

CapnBry added 16 commits August 21, 2011 09:32
If user code is also using strncmp_P() this could save 28 additional byes of code space from the elimination of linking strncmp()
…fdef DEBUG. Old DEBUG code moved to DEBUG_VERBOSE.

Saves (bytes): 260 code, 132 data, 1 bss = 392 PROGMEM, 133 RAM
…he code size due to linking strncpy() but I want to use that function later and it will come free then.
…memcpy/memcpy_P to use strncpy/strncpy_P. Saves 90 bytes of code.

Also removed security_passphrase_len because it is only used in one place, saves 1 byte of RAM but means one less thing in the WiFi config block
…eed to waste the space of storing four compiled-in keys when only one can be used.
… some code space if you had both defined. This is prep for adding precalculated WPA keys.
This is a 29% throughput increase and it shouldn't cause any overflow because I reduced the RAM usage by 133 in the DEBUG commit alone (7f035e1)
@cameronr
Copy link

Wow, I'm really excited about the precalc feature!

Includes support for size_t print functions (not void) and changed program code suffix (.pde to .ino).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants