Archived
1
0
Commit Graph

402 Commits

Author SHA1 Message Date
Jacob Alexander
909f20a937 Adding more USB codes and code cleanup 2014-01-12 11:27:10 -08:00
Jacob Alexander
61e45985c2 Added the averaged initial average as well as problem key rejection
- Any keys that exceed the high average are temporarily disabled
- If the sense value goes below the initial average sense, it is re-enabled
- Even works if *many* keys are pressed initially

- Still needs a bit of detection of consistent high keys that sometimes sneak below the threshold
  (May be able to have an elastic threshold that could deal with this)

- Removed dead code (and redundant calculations)
2013-12-01 23:07:38 -05:00
Jacob Alexander
dd1d3ad362 Increasing MAX_PRESS_DELTA_MV to measured min kishsaver value
- Enabling the test point strobe on the kishsaver really kills the sensing (many keys don't work, even at 400)
2013-12-01 17:13:42 -05:00
Jacob Alexander
2d5e6c4e12 Fixing the strobe count on the Kishsaver
- Should fix the last of the phantom keys
2013-12-01 14:52:54 -05:00
Jacob Alexander
6a4de5f356 Fixing more phantom keys on the kishsaver
- Not confirmed that this fixes all known phantom keypresses
2013-11-27 13:33:26 -05:00
Jacob Alexander
d5271befab Adding debounce and reorganized code
- Added debounce mechanism, currently looks for 5 consecutive scans
- Temporarily disabled the test point strobe on the kishsaver (spams debug messages, and not useful anymore; needs to be addressed before strobe detection is implemented though)
- Reorganized code to cleanup the main scan loop function
2013-11-19 03:18:44 -05:00
Jacob Alexander
c58e25d229 Adding initial Unsaver debug strobe map 2013-11-19 02:01:51 -05:00
Jacob Alexander
68f9de9ef5 Initial Terminal F strobe map
- Haven't fully verified all the strobes yet, but should be correct
2013-11-18 03:07:01 -05:00
Jacob Alexander
b32ab98cdf Adding strobe mapper and code cleanup
- Basic strobe mapper added (only kishsaver for now)
- Removed more (less obvious) dead code
- Moved keypress detection closer to detection
- Added more informative keypress debug messages
2013-11-18 02:46:48 -05:00
Jacob Alexander
3d98028679 Removed a keyscan layer and added more debug information
- Added a print macro for colourful convenience
- Removed the usb_keymap variable as it is no longer needed
- Changed usb_dirty to keymap_change (more accurate description)
- Removed the dumpkeys function and now detect key changes much sooner as well as displaying error messages more often
- Added a warming up information message and removed its error status (as it's not an error)
2013-11-17 19:17:54 -05:00
Jacob Alexander
6b38cfbaee Correcting license (should have been lgpl) 2013-11-17 16:42:41 -05:00
Jacob Alexander
e645a5063c Small README update. 2013-11-16 19:40:59 -05:00
Jacob Alexander
a8e35f5cf5 Cleaning up cap sense Alpha code
- Added LGPL headers to appropriate files
- Removed *LOTS* of dead code
- Started standardizing formatting (important stuff done)
2013-11-16 19:37:16 -05:00
Jacob Alexander
afc227d515 Cap sense now functional! Alpha begins :D 2013-11-16 19:37:16 -05:00
Jacob Alexander
a8d8da88e4 Another dfj code merge. 2013-11-16 19:37:16 -05:00
Jacob Alexander
a108dbbbc3 Debugging kishsaver.
- Hardcoded strobe lines (required to make the hardware less noisy)
- Updated debug code
2013-11-16 19:37:16 -05:00
Jacob Alexander
4ce6d34cd8 Adapting the avr-capsense code to the Kiibohd Controller API
- Adding "template" keymap
- Removed "stray" functions, variables
- Cleaned up warnings
- Now builds
- Added buffered macro integration (rather than dealing with USB directly)
- Updated the print messages to use the Kiibohd print header

TODO
- Add generic matrix integration (this will require some changes to the matrix code)
- Add more comments...lots more
- Clean up dead code
2013-11-16 19:37:16 -05:00
Jacob Alexander
e2197f6b78 Adding additional convenience functions to print.
- Directly printing numbers rather than having to convert them into strings first
2013-11-16 19:37:16 -05:00
Jo Makuch
99712e189e rsync'd over the changes 2013-11-16 19:37:16 -05:00
Jacob Alexander
ead6521b9d Adding initial build README file 2013-10-05 13:53:06 -07:00
Jacob Alexander
ca190c4fd9 Removed Joystick endpoint from ARM usb module
- Also a bit of general house-keeping
2013-02-01 23:35:12 -05:00
Jacob Alexander
9dcb0f7b66 Fixing regression build 2013-02-01 21:19:31 -05:00
Jacob Alexander
99b3deba67 Completing CMake variable generation for USB parameters (AVR Support)
- Had to add the iSerialNumber parameter to the AVR USB descriptor
- Removed a faulty pack command for avr-gcc that is not required
2013-02-01 20:30:14 -05:00
Jacob Alexander
b7afaa100f CMake generated strings that configure the USB info section
- Defined Manufacturer name
- Product name now references each of the selected modules
- Serial number refers to the last commit date, branch, and whether modified since the last commit
2013-02-01 20:02:55 -05:00
Jacob Alexander
473e3359f4 MBC-55x support virtually complete.
- I won't do any more, as I can't make the converter fully functional on a modern computer
- Basic typing support is working
- Some of the function modes move around the ASCII values, and this takes a while to decipher and figure out the pattern; it's not hard to do, and I don't really feel like doing it
- The hard part is already done :P
2013-02-01 16:49:32 -05:00
Jacob Alexander
adc0f9d450 Adding linker "dead-code" removal option to CMake build options. 2013-02-01 16:48:54 -05:00
Jacob Alexander
d5c4a0a9fa UART0 on Teensy 3.0 now functional 2013-02-01 15:10:58 -05:00
Jacob Alexander
640c0f0686 Adding the MSBF register enable flag. 2013-02-01 12:17:52 -05:00
Jacob Alexander
4da44b8ff7 Adding initial ARM UART structure for UART0
- Transmit seems to be working
- Receive isn't working yet
- Inversion of the transmit signal doesn't seem to be working
2013-01-30 23:43:41 -05:00
Jacob Alexander
4c7a4d98d4 Main USB timer now working, basic Teensy 3 support working.
- No scan modules are functional yet, but all of the API code is now "hardware support" complete
2013-01-30 19:20:42 -05:00
Jacob Alexander
fc7998d605 Adding module compatibility check to CMake build scripts.
- All modules have a default avr compatibilty right now (since that is what they were developed on)
- As modules get tested and added, arm support has to be turned on in the respective setup.cmake file
2013-01-30 18:13:49 -05:00
Jacob Alexander
c8b4baf652 Adding initial Teensy 3 support, compiles, but not fully functional yet.
- CDC Output seems to be working
- USB Keyboard output has not been tested, but is "ready"
- UART and Timers have not been tested, or fully utilized
- Issues using Timer 0
- Initial template for MBC-55X Scan module (only module currently compatible with the arm build)
- Updated the interface to the AVR usb module for symmetry with the ARM usb module
- Much gutting was done to the Teensy 3 usb keyboard module, though not in an ideal state yet
2013-01-27 01:47:52 -05:00
Jacob Alexander
6da1558b78 Updating AVR abstraction to be compatible with ARM, nearly ready for ARM files
- Very small updates to files, mostly modifying to remove name duplications
2013-01-26 22:30:36 -05:00
Jacob Alexander
a31f0e064a Updating Debug Modules to new abstracted hierarchy
- Also added some extra CMake build messages for indicating the Compiler family and chip being built for
2013-01-26 15:43:59 -05:00
Jacob Alexander
14158009b2 Preparing for Teensy 3 (ARM) integration, abstracting code hierarchy
- Abstracted USB Module
- Abstracted compiler specific includes for Scan, Macro, Debug, and USB modules
- Updated CMake build files to support changes
- Added abstractions necessary to main.c as well as a compiler specific include file
2013-01-26 15:05:28 -05:00
Jacob Alexander
b368b13240 Updating CMake build system to prepare for Teensy 3 integration.
- Tested with the AVR builds
- Partially tested with basic ARM test builds
2013-01-26 04:34:33 -05:00
Jacob Alexander
105d49a65b Adding alternate Enter key to the layout
- Removed another key from the latch list to use as a normal key
2013-01-21 11:53:26 -05:00
Jacob Alexander
f674db7de3 Adding API changes introduced by the FACOM converter
- Shouldn't affect anything, and will allow for greater buffer clearing control
2013-01-20 22:36:05 -05:00
Jacob Alexander
65b4489884 Fixing slow key issues with the FACOM converter
- Required some small API changes, shouldn't affect any other Scan modules (addition of a parameter)
- Still have the latching annoyances for some of the modifiers
- Swapped Esc and Tilde for convenience
- Removed the old Esc key from the latch list (no one needs 13 latches anyways...)
- Added the control cluster mappings (Insert, Delete, Home, End, PgUp, PgDn)
- All other misc keys are currently un-assigned if a keycap legend doesn't map to anything known
  (e.g. blank keys, 000 and 00 are mapped, but your OS probably doesn't know what they mean :P)
2013-01-20 22:23:28 -05:00
Jacob Alexander
db01d733b7 Completed the FACOM 6684 converter...
Unfortunately, the protocol annoying, with only 3 keys having Press/Release signals.
Some of the keys were only meant to be pressed once, and do not have repeat functionality.

The current implementation is a bit slow, so some keys may get lost during USB sending.
This is probably fixable, not sure if I want to spend the time on it though.

There is a keyboard input protocol, but I'm not sure of what information can be transmitted to the keyboard.
The terminal does send some information back and forth between the keyboard, but I'm unclear of the purpose, as I can never get any response out of the keyboard.
2013-01-20 20:27:14 -05:00
Jacob Alexander
ccf1e1c7e5 Adding API update to the MicroSwitch8304 code.
- Should still work, but not tested
2013-01-14 21:51:02 -05:00
Jacob Alexander
6b3ba17f57 Commenting out Tandy1000 code to make compile.
- Code hasn't been compatible with the API for a long time
- It should be possible to use the hardware UART to simplify the code immensely
2013-01-14 21:48:21 -05:00
Jacob Alexander
6104eb3ed6 Commenting out lines, to get the code to compile.
- Not tested, almost guaranteed to not work
- Dual scan code was never completed (I need a project, and motivation :P)
2013-01-14 21:43:26 -05:00
Jacob Alexander
fff3212a10 Updating Kaypro1 code to use newer APIs 2013-01-14 21:40:38 -05:00
Jacob Alexander
94390571c4 Adding initial FACOM template, and buildall.bash regression script. 2013-01-14 21:31:50 -05:00
Jacob Alexander
6429f6efa8 Updating CMakeLists.txt file for CMake + WinAVR on Windows
- Use Makefiles from Cygwin
2012-11-24 11:41:41 -08:00
Jacob Alexander
fd6035e053 Adding more robust detection for the HP150
- All spare cycles are used to get a more accurate data line sample (waaaay more than actually needed, but this helps against noise)
- Switched to a pre/release (add/remove) rather than an add->clear mechanism (or a buffer+debounce/add->clear)
- Note that a pull-down resistor is NEEDED on the data line
2012-11-19 00:55:30 -08:00
Jacob Alexander
59e443552c Completing the HP150 converter. 2012-11-17 02:13:06 -08:00
Jacob Alexander
0c39927268 Adding initial HP150 and IBMConvertible scan modules.
- HP150 is not ready
- IBMConvertible is ready to start testing
2012-11-15 01:28:31 -08:00
Jacob Alexander
b8fddd61f5 Adding SKM67001 scan module.
- Uses the matrix module, which is now moderately working now for NKRO diode keyboards
2012-10-04 12:07:06 -07:00