Archived
1
0
Commit Graph

21 Commits

Author SHA1 Message Date
Jacob Alexander
358d480ea9 Major USB update, fixes most (if not all) known issues
USB - General
- Refactored descriptors
- Enabled/Disable USB endpoints
- Added debug flags for special features
- Code cleanup
- Interface count calculation based off of enabled endpoints
- Delayed wTotalLength calculation to simplify descriptor offsets
- Re-ordered endpoints and interfaces
- Added more debug output
- Added usbInitTime to show how long keyboard initialization took
  (Useful when debugging bad init sequences)
- Added function for usb_resume() which takes care of the resume sequence
  * Resume is now only called if packets are starting to timeout

USB - Special Options
- Added enableDeviceRestartOnUSBTimeout
  * A last resort hammer for bad USB Chipsets/OSs, don't use if you can help it
  * Disabled
- Added enableUSBResume
  * Enables host resume wake-up signalling, required to wake a computer from sleep
  * Enabled
- Added enableUSBLowPowerNegotiation
  * Enables power negotiation hack
  * Required to use firmware with an IPad and other hard-limit low-power USB hosts
  * Hasn't been tested with the recent changes
  * Disabled
- Added enableUSBSuspend
  * Enables power down events on host USB bus suspend
  * Enabled

USB - Keyboard
- Attempted to cleanup HID SET_REPORT
  * Works much better
  * Still has an issue under Linux which generates *a lot* of NAKs (initializes quickly regardless)
    + Not present on other keyboards
    + SETUP -> OUT -> IN : This sequence is the problem
    + Specifically during the OUT phase
- Enabled

USB - CDC Virtual Serial Port
- Code cleanup
- Added convenience struct USBCDCLineCoding for easier debugging
- Attempted to cleanup CDC_SET_LING_CODING
  * Works much better
  * Still has an issue under Linux which generates *a lot* of NAKs (initializes quickly regardless)
    + SETUP -> OUT -> IN : This sequence is the problem
    + Specifically during the OUT phase
    + Likely the same issues as HID SET_REPORT
- Enabled

USB - Mouse
- Enabled

USB - Joystick
- Disabled

USB - RawIO
- Initial code, API not used yet
- Disabled

DFU
- Updated load script, now faster
2016-05-31 00:40:10 -07:00
Dan McGregor
0e6f107ea1 Start removing select Linux-isms
bash might not be in /bin. Don't expect it there.
2015-10-20 08:48:59 -06:00
Jacob Alexander
96e785b571 Merge branch 'master' of https://github.com/smasher816/controller into smasher816-master 2015-03-15 18:27:35 -07:00
Jacob Alexander
ed71f7fad5 Initial commit for UARTConnect module
* Keyboard interconnect using two uarts
* Supports daisy chain addressing using a master/slave direction communication scheme

- Still needs more testing
- Functions have been tested alone to be generally working
2015-03-15 16:58:01 -07:00
Rowan Decker
2922fce0f7 Merge remote-tracking branch 'upstream/master' 2015-03-08 20:17:39 -07:00
Rowan Decker
1392571bd7 Fix whitespace
Use a consistent standard - Tabs in front for indenting, spaces after for anything else. This way everything stays nice and lined up while also letting users change there prefered indent level. Most of the new files from Haata where already in this format.
2015-03-08 18:40:01 -07:00
Jacob Alexander
f07e9342dd Fixing releasing Function key and holding layered key
- Pressed key will remain on the same layer until released
  regardless of the layer changes that happen in the meantime
2015-03-01 21:05:40 -08:00
Rowan Decker
8d4adb41ec Check for needed programs
Check for dfu-util and screen before using them. Also aborts if
teensy_loader_cli compilation fails.

Uses the type builtin to determine if a command exists. See here:
https://gist.github.com/sdelmas/7377271
2015-02-12 19:42:01 -08:00
Jacob Alexander
10aad1f3af Updating load scripts with command line arguments
- Fastload option (allows for remote flashing)
- Autoscreen option initiates screen after successfully loading the firmware
2015-02-09 16:01:27 -08:00
Jacob Alexander
3b06d8f6ae Adding convenience loader scripts for DFU based microcontrollers 2014-09-14 16:22:27 -07:00
Jacob Alexander
fd62e488be Removing sudo from Linux load script. 2014-05-26 23:47:47 -07:00
Jacob Alexander
5b8d1bb8db Another typo... 2014-04-19 20:17:38 -07:00
Jacob Alexander
4e805a21fb Forgot to add Windows loader script. 2014-04-19 19:59:51 -07:00
Jacob Alexander
c4c1d0a2b8 Windows is now working with libusb1.0 for the teensy-loader-cli.
- Not tested yet, but should be working.
2014-04-18 13:16:47 -07:00
Jacob Alexander
cc3f062875 Porting teensy-loader-cli to use libusb-1.0 (from 0.1).
- Currently only Linux tested.
2014-04-18 00:18:02 -07:00
Jacob Alexander
a82d239efc More Windows compatibility build fixes
- Still not verified to work though.
2014-04-17 19:20:56 -07:00
Jacob Alexander
1f1fa7efc8 More fixes for Windows compilation. 2014-04-17 18:49:40 -07:00
Jacob Alexander
c25ded384f ADCTest DAC support for Teensy 3.1
- Vref of 1.2 V isn't working (may be due to missing setup/hardware)
2014-04-12 23:10:39 -07:00
Jacob Alexander
81ea61de84 Adding teensy-loader-cli so it's not required.
- This is a patched version to work with Teensy 3.1 (current version on the website doesn't work)
- "Should" work with OS's other than Linux, but hasn't been tested
2014-04-12 20:52:32 -07:00
Jacob Alexander
c01efa2d53 Formalizing code module structure and inheritance (Large Commit)
- Commenting cleaned up
- usb_keyboard_debug is not finished yet in terms of cleanup (needs DEBUB_PRINT #ifdef's)
- Added LoadFile script generation
- Formalized KeyIndex and USBKeys data containers
- Split parts of scan_loop into Macro, USB, and main.c
- Added interface to USB modules
- Added interface to Macro modules
- Added proper Debug module enable/disable
2011-09-29 22:22:19 -07:00
Jacob Alexander
b4e1868d19 Reorganization for use with the CMake "Modules"
- Include option is currently "hacked" and needs to be fixed
- Builds on Linux, but Mac and Windows needs to be tested
- Loader script generation isn't complete
2011-09-28 23:25:51 -07:00