Mercurial > louis > kiibohd-controller
changeset 155:7b4155f3b1b7
Giving more breathing room for regular keys to be enable initially.
- Should be tested more on keyboards without test points (to see if more of a margin in necessary)
- Added more information messages on bootup
author | Jacob Alexander <haata@kiibohd.com> |
---|---|
date | Fri, 25 Apr 2014 01:26:45 -0700 |
parents | a2be5e8fc3d7 |
children | f663391a20f1 |
files | Scan/DPH/scan_loop.c |
diffstat | 1 files changed, 10 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/Scan/DPH/scan_loop.c Fri Apr 25 01:08:15 2014 -0700 +++ b/Scan/DPH/scan_loop.c Fri Apr 25 01:26:45 2014 -0700 @@ -213,6 +213,8 @@ // This means, the strobe GPIO can be set to Tri-State pull-up to detect which strobe lines are not used. // NOTE2: This will *NOT* detect floating strobes. // NOTE3: Rev 0.4, the strobe numbers are reversed, so D0 is actually strobe 0 and C7 is strobe 17 + info_msg("Detecting Strobes..."); + DDRC = 0; PORTC = C_MASK; DDRD = 0; @@ -278,6 +280,9 @@ } } + printInt8( total_strobes ); + print( " strobes found." NL ); + // Setup Pins for Strobing DDRC = C_MASK; PORTC = 0; @@ -398,7 +403,8 @@ } // If sample is higher than previous high_avg, then mark as "problem key" - keys_problem[strobe_line + mux] = sample > high_avg ? sample : 0; + // XXX Giving a bit more margin to pass (high_avg vs. high_avg + high_avg - full_avg) -HaaTa + keys_problem[strobe_line + mux] = sample > high_avg + (high_avg - full_avg) ? sample : 0; // Prepare for next average cur_full_avg += sample; @@ -462,6 +468,9 @@ printInt8( low_count ); print("): "); printHex( low_avg ); + + print(" Rejection threshold: "); + printHex( high_avg + (high_avg - full_avg) ); print( NL ); // Display problem keys, and the sense value at the time