Commit Graph
7 Commits
Author SHA1 Message Date
d0973e1cfb Add ferris 0.2 (#12133)
Co-authored-by: Ryan <fauxpark@gmail.com>
2021-04-18 17:51:45 +02:00
Pierre ChevalierandZach White 01b8ef39f5 Remove stale references to "handwired/ferris"
The code was moved to the "ferris" directory.

Fixes the following commands:
```
qmk compile ~/qmk_firmware/keyboards/ferris/keymaps/default/keymap.json
qmk compile ~/qmk_firmware/keyboards/ferris/keymaps/pierrec83/keymap.json
```

Addresses this issue:
https://github.com/pierrechevalier83/ferris/issues/5
2021-03-06 21:22:24 -08:00
Pierre ChevalierandGitHub 704934c427 Ferris reorganization (#10564)
* Add my own keymap

* Layer 0: Workman
* Layer 1: RSTHD (my own take on it)
* Layer 2: Mouse
* Layer 3: Navigation
* Layer 4: Symbols right
* Layer 5: Symbols left
* Layer 6: Fn keys
* Layer 7: Numbers
* Layer 8: Vim and misceallaneaous accessible from any other layer

* Move the current code to a 0.1 folder in preparation for upcoming changes

Version 0.2 is currently being prototyped and uses an arm chip which
will need its own firmware.

There is also the Ferris sweep which uses a pro-micro compatible board
which will need its own directory.

* Move Ferris out of handwired and into the light

The keyboard is now well out of the prototype phase as tens of them have
been produced and acquired by various people.

With 0.2 coming out, adoption is going to increase again as the board
will be available for sale at some recognized vendors.

Now is probably a good time to recognize its status as more than a
prototype :)

* Add code for the Ferris Sweep (a.k.a cradio)

The Ferris Sweep is a creation of the talented @davidphilipbarr, a.k.a DPB.
It has the key layout of a Ferris and uses a pro-micro connected to the
switches via direct pins so that diodes are not needed and the soldering
is minimal.

With their blessing, I took the code for it from DPB's own repo:
https://github.com/davidphilipbarr/36keys/tree/master/qmk/cradio
and did some adaptations such as removing commented out code, enabling
EE_HANDS and mouse keys for consistency with my existing Ferris code.

* Fix indentation in rules.mk

* Fix indentation in sweep's config

* Remove unnecessary lines from sweep's rules.mk

* Remove unnecessary lines from sweep's rules.mk

* Rename 0.1 to 0_1

This avoids the dot looking like the separation between a filename and
its extension.

In the same commit, bring matrix.c to the 0_1 folder as this was needed
for the code to compile properly (matrix.c is referred to in the readme
under `0_1` and is specific to that revision of the firmware).

* Update copyright statements for Sweep
2020-10-17 12:20:34 -07:00
Pierre ChevalierandGitHub 80d92525db Upstream a good default keymap for the Ferris handwired (#9926)
* Proper default keymap

* Update keyboards/handwired/ferris/keymaps/default/readme.md
2020-08-24 14:56:48 -07:00
a8c230743a Write firmware for the Ferris keyboard (#9634)
* Write firmware for the Ferris keyboard

Took inspiration from the gergoplex and the ergodox_ez firmware for the
split matrix with io_expander on the right hand.
Cleaned up a lot of bit fiddling on the mcu side by taking inspiration
from the `split_custom` in quantum.
Still bit fiddling on the mcp side as it is particularly natural to do
so with the abstractions provided by the i2c protocol. Would be good to
clean that up and abstract away the wiring from the generic i2c code in
a similar fashion as quantum and the mcp side behave.

One improvement over the ergodox_ez and the gergoplex firmwares is that
the wiring is straight forward as opposed to swapping rows and columns
in two different places that end up cancelling out for some reason.

At this stage, I have flashed this firmware to a board and have verified
that all keys are behaving as intended by shorting pins.
I still have to solder in some switches and test that everything works
correctly at normal typing speeds, but I don't expect any major issues
given I'm building up on previous effort, including the debouncing code
from the ergodox_ez.

* Remove rotation from info.json and label the keys as per default keymap

* Comply with minor review feedback points

* Use CUSTOM_MATRIX=lite to remove boilerplate

* Update keyboards/handwired/ferris/info.json

Didn't play nicely in the configurator

Co-authored-by: Ryan <fauxpark@gmail.com>

* Remove MIDI_ENABLE from rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

* Remove FAUXCLICKY_ENABLE from rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

* Prefer wait_ms over _delay_ms

Co-authored-by: Ryan <fauxpark@gmail.com>

* Remove unused include

Co-authored-by: Ryan <fauxpark@gmail.com>

* Remove unused include

Co-authored-by: Ryan <fauxpark@gmail.com>

* Remove unused include

Co-authored-by: Ryan <fauxpark@gmail.com>

* Remove unused includeh

Co-authored-by: Ryan <fauxpark@gmail.com>

* Use dprint over print and remove include for print.h

* Remove all unused includes

* Remove unused code

* Cleanups thanks to code review

* Move more personal settings from the ferris config to the default keymap config

These setting happen to be unused in the default keymap at the moment,
as it has only one layer with no homerow modifiers and no mouse key; but
I would like to keep it there for two reasons:
* It can serve as an example to people creating their own keymap
* I plan to design a more usable default keymap that uses these features
  once this PR which adds the Ferris keyboard is merged.

* Consolidate mcp logic inside matrix.c

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-07-18 13:57:33 +10:00
Pierre ChevalierandGitHub 4d218566cc [Keymap] Add pierrec83's gherkin keymap (#9465)
* [Keymap] Add pierrec83's gherkin keymap

Contribute my gherkin keymap upstream as it is semi-stable. It has grown
in symbiosis with my Kyria keymap which is already upstream.

Add a readme

* Remove generated keymap and instructions to generate it as it is done by qmk flash
2020-06-24 02:42:20 -07:00
Pierre ChevalierandGitHub 43b6f031b1 [Keymap] Add pierrec83's Kyria keymap (#9401) 2020-06-17 22:18:16 -07:00