Commit Graph

381 Commits

Author SHA1 Message Date
Dave
5e4c1ed078 Fix shunted diode footprints on encoder boards
The encoder boards (ATmega328P, Atmega2560, Apple2(2560) can accomodate
keyboard matrices with no diodes, by adding per-row diodes on the
encoder board.  For keyboards with per-key diodes (the typical use
case), the per-row diodes are not needed, and therefore the footprints
should be shunted by default, using a special shunted diode footprint.
When diodes are installed, the shunt can be cut with an x-acto knife.
Previous board revs had the correct footprint, but somehow the regular
diode footprint was substituted on the last release of each of these
PCBS.  The correct footprint has been restored.
2021-08-08 13:16:38 -05:00
Dave
10f1f4966e Fixed typo and slight further clarification 2021-06-19 16:45:41 -05:00
Dave
a270418407 Added some clarifications to Classic order form 2021-06-19 16:42:54 -05:00
Dave
7d78b16738 the > and < symbols were backwards wrt "." and "," 2021-06-19 16:00:30 -05:00
Dave
4b18af964a Add multiple kicad footprints
- mounting posts (for futaba)
- aligner tool
- bending guide
2021-05-19 13:34:34 -05:00
Dave
63805800af firmware now compiles without errors
test suite passes
have not yet tested firmware
2021-05-19 13:32:23 -05:00
David Fenyes
23dd38b488 Fix test/CmakeLists.txt so tests compile.
Apparently some file pollution resulted in a successful compile that couldn't be
reprodued from a fresh git clone.  Fixed file copying and include paths so
compile works.  All tests pass.
2021-03-08 12:27:53 -06:00
Dave
1f2f420de0 Cleaned up generation of keymap table and NUM_KEYMAPS definition
Toward #23 and #27
2021-03-07 23:22:05 -06:00
Dave
b0c01bb0ef newmaps passes all tests with cmake build. 2021-03-07 20:56:34 -06:00
Dave
8310259cc7 Progress toward building new keymap scheme with cmake
- keymap files (c,h) are in src/Keymaps
- keymap files are added to the keymap library in src/Keymaps/CMakeLists.txt
- keymaps for the build are listed, along with positions, in /keymap_lists.cmake
- cmake generates a keymap jump table from the keymap lib and list
- tests mostly passing.  Keymap structure for testing will be used as the model
  for the app keymaps.
2021-03-07 20:38:40 -06:00
Dave
3a854d97f2 Get tests to pass with CMake build system
progress on issues #23 (new mechanism to add keymaps) and #27 (Cmake build)
2021-03-05 01:17:33 -06:00
Dave
a95a8ddb8d Remove redundant NUM_ROWS and NUM_COLS definition from test keymap 2021-03-05 01:00:40 -06:00
Dave
8088c0e157 Convert more keymaps to new scheme (untested)
- Replace asdf_keymap_defs_xxx.h files with asdf_keymap_xxx.[c,h] modules
- add _clang_format in keymaps directory
2021-03-05 01:00:40 -06:00
Dave
952e425986 New map scheme passes all tests. (Issue #25) 2021-03-05 01:00:40 -06:00
Dave
b688f1c56f Get virtual devices in new maps scheme to pass tests
Remove initialization from data structure.

Replace the previous virtual_init() with a virtual_init() that initializes the
data structures to a default state

Create virtual_sync() function to push the state of virtual devices to the
physical outputs.  Moved from the previous virtual_init() function.

The virtual device table is now built by direct calls to virtual_add() from the
setup function.

Toward issue [#23]
2021-03-05 01:00:39 -06:00
Dave
bcde21f3a8 Get keymap tests to pass (issues [#23] and [#25])
Clean compile of asdf_keymaps.c/h and tests

Clean up keymap pointer notation

Reduce number of keymaps to 16, matching number of DIP switches allocated for
keymap selection.
2021-03-05 01:00:19 -06:00
Dave
14ad7c4cc2 More keymap updates toward [#23] amd [#25]
App code now compiles clean, but test code still needs to be updated to set up
the test keymaps.  So, no passing tests yet.
2021-11-30 13:11:48 -06:00
David Fenyes
daa6ff672f WIP - non-compiling keymap updates
Please see ARCHITECTURE-keymaps.org for general idea and TODO list.
2021-03-05 00:59:46 -06:00
David Fenyes
99610395fc Get new keymap scheme to pass keymap tests
Toward issue #23
2021-03-05 00:59:40 -06:00
Dave
d6edb15734 Rebase newmaps branch to master
(WARNING: WIP) Gathered Work-in-progress on alternate keymap defs

Exploratory branch.  Code is messy and untested.
Examining creating a module for each keymap rather than header file.
2021-03-05 00:58:06 -06:00
Dave
859a5e03d1 Change order of version and architecture in build target name 2021-03-04 22:44:09 -06:00
Dave
fb3627e3a2 Change firmware version to 1.5 (in anticipation of 2.0 release) 2021-03-04 22:36:46 -06:00
Dave
e9c38e3c51 Replace Makefiles with CMake build system
- CMake build process handles dependencies much more effectively

- Cleaner separation of test and binary builds

- permit co-existing test and multiple architecture builds

- add support for AVR from cmake-avr:
      https://github.com/mkleemann/cmake-avr

- new build process avoids creating files in the src directory
2021-03-04 22:27:15 -06:00
dfnr2
1bcf10ae29 Update README.md
Fixed position of image
2021-02-13 07:42:24 -06:00
Dave
db861b6a32 Updated README.md with image of PCB 2021-02-13 07:41:14 -06:00
Dave
4fadd82a5c Added a keyboard adapter between Sol-20, Apple 1, Apple 2 2021-02-13 07:34:14 -06:00
Dave
fe4e12e86a Add + symbol to bottom silk of LEDs on the keyboards 2021-02-02 15:02:21 -06:00
Dave
8ad2025d0f Sol-20 spacebar stabilizer fix and other cleanups
- Replaced standard MX footprint with spacebar footprint, including stabilizers
- Fixed courtyard on MX footprints in library to avoid collisions
- Added a DIP switch variant with header position closer to pin 1
- moved option DIP switch/header to align header better with edge of PCB.
2021-02-01 14:39:57 -06:00
Dave
577f9d73ac pcb file consistency update 2021-01-24 13:07:10 -06:00
dfnr2
ebfee14c7a Update README.md 2021-01-15 22:49:34 -06:00
Dave
b77c69e042 Minor README tweaks for Sol keyboards 2021-01-01 00:39:03 -06:00
Dave
b32a69d1c4 tweaked Sol-20 README.md files
Clean up links between integrated and non-integrated versions
2021-01-01 00:36:01 -06:00
Dave
9a5fd4385b Fix markdown bug in link to integrated keyboard 2021-01-01 00:32:45 -06:00
Dave
d1b61d301a Update README for Sol keyboard to reference integrated keyboard 2021-01-01 00:29:59 -06:00
Dave
4469f46e05 Update README for integrated sol keyboard pcb
Add images including rendering of integrated PCB
2020-12-31 23:58:52 -06:00
Dave
a57f4cec0f Add Sol-20 keyboard with integrated encoder 2020-12-31 23:51:19 -06:00
Dave
933c658f7c Merged MX key footprint from newsol branch (narrower courtyard) 2020-12-31 23:39:44 -06:00
Dave
fd127dd4b0 Add SMD diodes and resistors to SOL keyboard 2020-12-29 20:15:23 -06:00
Dave
5b84fe914c Update interface-ascii to use either DIP switch or header-jumper 2020-12-29 18:26:07 -06:00
Dave
5f27567db3 Modify to use DIP switch or jumpers
- Add combined DIP-switch/Jumper footprint to footprint library
- Fix Apple2-encoder and interface-ascii-atmega2560 schematics and PCB to use
new footprint.
2020-12-29 17:11:50 -06:00
Dave
118999f085 Fix LED orientation 2020-09-22 03:22:10 -05:00
Dave
74c86a8a4e Added "HERE IS" and 1.5u TAB key to classic design 2020-09-22 03:05:48 -05:00
Dave
0daaad33f7 Fixed LED orientation on PCB
- CapsLock, Line Feed LEDs and D33 were wired correctly, but oriented backwards
on PCB relative to Power and OSI ShiftLock LEDs.  Fixed so Cathode is always on
the right.

- Marked Anode for all LEDs with (+) symbol.
2020-09-22 02:47:34 -05:00
Dave
4a3403abb1 Removed old keyboard cutout templates for classic keyboard.
cutouts are now included in the classic keyboard PCB file on separate layers.
2020-08-21 21:38:35 -05:00
Dave
efc4c7b5ab Removed vestigial R4 resistor and moved R3 to be on RX line.
Now, R3 only needs to be installed when using the serial port.  A zero-ohm
jumper can be used for serial-only output.
2020-08-18 15:32:53 -05:00
Dave
973602856f Include futaba pad/aligner shifts in futaba aligner 2020-08-17 16:13:26 -05:00
Dave
ed5f3fc8d6 Moved Cherry MX and futaba pads farther apart in combined footprint
- Offset cherry MX pads and aligners downward 0.004" from origin

- Offset futaba pads and aligners upward -0.004" from origin

- Update footprints in classic and sol-20 pcbs and aligners

- adjust mounting slots in Sol-20 aligners to match futaba or cherry offset
2020-08-17 15:21:06 -05:00
Dave
3e34defe4c Update Sol-20 keyboard to use fixed footprints
- Update all footprints on sol-20 keyboard and aligners

- Add soldermask clearance around cherry MX posts

- Move Cherry MX pads down 1 mil, and Futaba pads up 2 mils

- Adjust Cherry aligner footprints down 1 mil

- Adjust Futaba aligner footprints up 2 mils

- Move mounting slots up 1 mil on Cherry aligner

- Move mounting slots down 1 mil on Futaba aligner

- incorporate improved stabilizer post adapters in futaba aligner

- add slots for stabilizer posts in futaba aligner and Sol kebyoard PCB

- Move stabilizer bar bend guide to left bottom edge to facilitate bending

- Bump rev to 1.6
2020-08-16 22:47:26 -05:00
Dave
1f529d3a52 Update footprints to add soldermask clearance around Cherry MX posts 2020-08-16 22:46:32 -05:00
Dave
e6fd98c9bd Remove separated main and numpad aligners for SOL keyboard
Not needed.
2020-08-16 22:45:26 -05:00