keychron_qmk_firmware/keyboards/mxss
MxBlu e661f1559e Add MxSS keyboard (#3335)
* Added basic MxSS support

* Fixed split RSHFT for ISO layouts

* Updated readme.md for MxSS

* Added initial support for individual control of front RGB LEDs

* Changed RGBLED color selection to work using hue and saturation rather than RGB
Added code for LED state change on layer change

* Avoid needing an entire 8 bits to store the brightness value

* Added custom keycodes, along with their handlers

* Added EEPROM storage for front LED config

* Fixed up ability to use QMK Configurator and updated readme.md

* Applied suggested changes from pull request: https://github.com/standard/standard/issues/452

Updated name in license descriptions
Updated layouts to snake case
Corrected mistakes in info.json
Updated layer_colors to a weak attributed array in mxss.c

* Defined a new safe range for custom keycodes in keymap.c
2018-07-07 19:33:36 -07:00
..
keymaps/default Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00
templates Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00
config.h Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00
info.json Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00
mxss_frontled.h Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00
mxss.c Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00
mxss.h Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00
readme.md Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00
rgblight.c Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00
rules.mk Add MxSS keyboard (#3335) 2018-07-07 19:33:36 -07:00

MxSS - Polycarb 65% Kit for MX/SMK

MxSS - Polycarb 65% Kit for MX/SMK

Information:

  • Case: Frosted Polycarbonate, CNC milled
  • Plate: Brass, mirror-finished and electroplated
  • Weight: Same as plate
  • PCB: Custom designed for the MxSS by kawasaki161, White solder mask and ENIG finish

Details:

  • 2.9 degrees angle on the case
  • Top mount plate
  • Center USB, Type-B Mini
  • MX and SMK (White and Orange) switch support
  • Holtite support
  • RGB underglow
  • 1.5kg with plate and weight

Keyboard Maintainer: MxBlue

Hardware Supported: Custom PCB, ATMega32u4

Hardware Availability: https://geekhack.org/index.php?topic=94986.0

Make example for this keyboard (after setting up your build environment):

make mxss:default

See build environment setup then the make instructions for more information.

Front LED Operation

The MxSS PCB has 2 front RGB LEDs which has a separate brightness and mode of operation to the rest of the RGB LEDs. These are controlled through the supplied custom keycodes.

There are 3 modes of operation:

  • FLED_OFF - Front LEDs stay off
  • FLED_RGB - Front LEDs are part of the standard RGB LED modes, only works correctly with rainbow modes (will fix on request)
  • FLED_INDI - Top front LED represents Caps Lock status, bottom LED represents current layer

Colors for FLED_INDI mode are hardcoded as hue/saturation values, the caps lock color can be found in mxss_frontled.h, the layer colors are defined in keymap.c (see default/keymap.c for example).

Custom Keycodes

  • FLED_MOD - Cycle between the 3 modes (FLED_OFF -> FLED_RGB -> FLED_INDI)
  • FLED_VAI - Increase front LED brightness
  • FLED_VAD - Decrease front LED brightness

Further Notes

As SAFE_RANGE is used for defining the custom keycodes seen above, please use NEW_SAFE_RANGE as the starting value for any custom keycodes in keymap.c, as per the example.