Commit Graph

30 Commits (43ee200b2b6e2e234ee8d13d8824e1d5068ba7d0)

Author SHA1 Message Date
Ben Blazak 467886299b made LED_BRIGHTNESS a makefile option 2012-10-12 10:29:50 -07:00
Ben Blazak df7bb3a7d2 working on layout graphic generator; almost there!
- also, additions to the ui-info.json file generator
- and probably some other small but useful things
2012-10-08 18:01:06 -07:00
Ben Blazak c330126076 misc; now compiling in os x
- also starting work on a new build script (to make an svg of the
  current layout, so it's easier to visualize)
2012-10-07 00:18:59 -07:00
Ben Blazak d7c1ffe0c4 removed linked lists; changed KBFUN_FUNCTION_ARGS handling
- linked lists need to be rewritten to be more memory efficient
- all kbfun functions are now of type `(void kbfun_...(void))`, and the
  arguments they need are passed via a group of global `main_arg_...`
  variables (and other `main_...` variables)
2012-08-06 15:57:23 -07:00
Ben Blazak ddade5b5dc reorganization (large one) (mostly moving files) 2012-07-31 14:48:31 -07:00
Ben Blazak 973cac3240 (more makefile modifications) 2012-06-12 16:11:18 -07:00
Ben Blazak 5260e7104d modified how dist is build; changed .gitignore hierarchy
there is now a toplevel makefile for making dist, so that we can keep
the project build systems separate (in src and contrib/UI*), and then
build dist from the root dir
2012-06-12 14:12:50 -07:00
Ben Blazak e37ff92137 makefile now generates a .map 2012-06-11 16:11:56 -07:00
Ben Blazak f5bd07c45c added convenience target 'dist-hex' to makefile 2012-06-04 00:09:15 -07:00
Ben Blazak 229a2446a7 moved libs around; split some code in layouts 2012-04-28 23:40:00 -07:00
Ben Blazak 4e913361ac abstracted layout access a little 2012-04-28 22:39:23 -07:00
Ben Blazak 1c6d31f012 changing how computed includes are handled 2012-04-28 01:23:51 -07:00
Ben Blazak 2009c160e4 moved the twi library 2012-04-28 00:46:35 -07:00
Ben Blazak 66a5932fa8 moved the key-functions files 2012-04-27 15:39:26 -07:00
Ben Blazak 15efb43b76 fixed *.md indenting
apparently, sublists need to be indented 4 spaces (1 tab) or more to be
recognized as such (because subsequent lines of a list may be indented
up to 3 spaces).  it's right there on the markdown syntax page, but i
didn't catch it the first time.
2012-04-26 03:44:20 -07:00
Ben Blazak b6cc6108ae (aesthetic; modified makefile) 2012-04-25 00:14:12 -07:00
Ben Blazak b7e5e7b735 refactoring layout stuff
- made short keycode macros for the USB keycodes (under "lib/...")
- refactored "keyboard/.../layout.c", to make way for multiple layouts,
  and to make it easier to read (by using short keycode macros)
  - layout.h has a computed include line now, and the code (and layout
    specific header stuff) is in a subdirectory.  the makefile should
    take care of which layout gets included and compiled
- changed kbfun_press() and kbfun_release() to be able to handle the
  modifier keys (instead of requiring a separate function for the
  modifiers)
- added a makefile variable for which keyboard gets compiled.  even
  though there's only one right now
2012-04-24 23:22:20 -07:00
Ben Blazak acba260663 increased error checks for mcp23018_updat_matrix()
and some aesthetic stuff
2012-04-24 12:17:06 -07:00
Ben Blazak bec0c7244f reorganized src/lib 2012-04-22 12:08:32 -07:00
Ben Blazak 502fa3a79f rewrote makefile (standalone now); removed some unnecessary stuff 2012-04-18 01:29:38 -07:00
Ben Blazak cae0560e04 removed makefile dependency on the unix shell (hopefully) 2012-04-13 19:05:06 -07:00
Ben Blazak 98033358f4 added ergodox circuit diagram; and a few misc things; time to clean up 2012-04-11 18:52:31 -07:00
Ben Blazak cd6826eeb5 checkin before deleting the debug code; almost ready for first beta!
- simple bug fix in kbfun_press() and kbfun_release()
- no longer check for previous init() in the mcp23018 functions;
  something would happen when i tried to read from it, sometimes, when
  it'd been unplugged or stoped some other way, and it would hang - and
  the only thing that would make it better was running the test_twi_2
  function (a series of writes, with stops after each).  so now
  mcp23018_init() is a series of writes, with stops after each.  it
  doesn't take appreciably longer to run...  maybe it should be looked
  into later though.
- changed the main() loop a little
2012-04-10 18:58:26 -07:00
Ben Blazak 57e82aebcf lots and lots; now writing/debugging keyboard logic
also, mcp23018_init() needs fixing: `twi_stop()` needs to be at the end
of transmission blocks.  i wouldn't think that would be necessary, but
it seems to be the only thing that'll make it work, and it also seems
consistent with the protocol diagram in the datasheet (lol, imagine
that), so i think that's what i'll have to do.  not as though it matters
much i guess, since it's a single master / single slave system anyway, i
was just hoping not to release the bus till i was finished..
2012-04-10 01:44:27 -07:00
Ben Blazak 2dce6e4066 lots
- fixed some includes (`uint8_t` comes from a header, not the language)
- put code from some of the .h files into .c files
- now using open drain logic (hi-Z or GND) on both chips instead of
  driving the row pins high on the teensy, or using a pull-up resistor
  on the row pins with the mcp23018
- put `return 0;` at the end of some functions that weren't void
- fixed/updated some documentation; esp. the row assignments for the
  mcp23018
- generalized the unused/row/column pin assignment and init code using
  macros, so they'll be much easier to move around if necessary
- fixed a redefinition error in "lib/usb/keyboard-usage-page.h"
2012-04-05 03:08:20 -07:00
Ben Blazak b0b9335651 few things; mostly, I2C works now!; it was a hardware error
i had been leaving the RESET pin floating... this does not work.  it
must be externally biased - high, if you want the chip to work.. :) lol
2012-03-31 17:02:55 -07:00
Ben Blazak a288b8a045 intermitent checkin; lots of stuff; i2c on hold; kb logic in progress 2012-03-27 03:06:52 -07:00
Ben Blazak 19725eed4a *lots* of stuff .. :) - got PWM working!
also, i didn't make a note of it in the *.md file, but Waveform
Generation Mode 15 for fast PWM wasn't working right (well.. wasn't
working how i expected it to).  i misinterpreted what the modes were
doing, partially (haha, or all-ly?) because i didn't read the
description of fast pwm thoroughly enough...  in any case, all the
information's in the datasheet, and it's actually not terribly long.
i'm not sure how to correctly use Mode 15 yet, but i think i'll leave it
alone for now, since Mode 5 works as expected, and i think what the
datasheet says about *that* makes enough sense to me for me to be
content for the moment.
2012-03-19 00:01:41 -07:00
Ben Blazak 4bcc0e5dc3 split the firmware into general/controller/keyboard files 2012-03-14 14:46:52 -07:00
Ben Blazak 6570e7ae39 added src files - not much there yet though 2012-03-11 18:52:31 -07:00