Giter Site home page Giter Site logo

mindrustuk / maltron_s_edition Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 1.41 MB

An STM32 Black Pill controller for Maltron one handed keyboards based on QMK

License: GNU General Public License v2.0

C 99.29% Makefile 0.71%
keyboard mcp23017 mcp23018 qmk qmk-firmware stm32 maltron

maltron_s_edition's Introduction

Maltron - S Edition

** THIS IS A WORK IN PROGRESS, EXPECT BUGS AND DEBUGGING OPTIONS TO BE SET**

This repository contains historical documentation and instructions for creating a STM32 Black Pill based Keyboard controller for Maltron Right Handed Keyboards running the open source QMK Firmware.

I'm hoping to get the new firmware into QMK mainstream at some stage in the future.

If anyone has any feedback please feel free to open an issue on the GitHub tracker, and I'll respond to you when I can.

All files can be found in their respective subdirectories as follows:

  • EasyEDA Outfiles: This contains; Easy EDA, Altium, Gerber and SVG outputs of the Schematic and PCB design for the Maltron compatible STM32 Based controller.
  • QMK Firmware: The QMK Firmware for the Maltron S Edition keyboard. This is a work in progress and not final yet.
  • FreeCAD - PCB Stand Offs: This contains some simple PCB Stand-Offs that can be glued to the existing Maltron case's baseplate. These are designed to use M2 self taping wood screws.
  • Pictures: Pictures of the build for the historical document.

Circuit notes

  • All diodes are 1n4148
  • Resistors for LEDS (R3-R10) are 100 Ohm
  • Resistors for I2C Pull up (R1, R2) are 10K Ohm

FreeCAD Notes

  • Screws for PCB mounting are M2 Self Tapping Wood screws - Pan Head type.

QMK Firmware Notes

  • Large portions of this code were adapted from https://github.com/zvecr/qmk_firmware/blob/feature/ergodone_ctpc/keyboards/ktec/ergodone/matrix.c so all credit to this user for their work. This helped me massively with the MCP23018 I/O Expander.
  • Setup QMK as per https://docs.qmk.fm/#/newbs_getting_started
  • copy mindrustuk from the QMK Firmware directory to keyboards/ in the QMK installation path
  • NOTE: On first flash the STM32 Black Pill will need to be put into bootloader mode, do this by:
    • pushing and holding the reset button
    • then hold the boot0 button
    • release the reset button
    • then release the boot0 button.
    • The device should now be in the bootloader mode ready to be flashed.
  • compile using the following command qmk compile -kb mindrustuk/maltron_s_edition -km default
  • flash with the following command qmk flash -kb mindrustuk/maltron_s_edition -km default
  • Note: The firmware has bootmagic enabled. Any subsequent need to flash can be done by holding the esc key while plugging in the keyboard, doing this will force the keyboard into bootloader mode on boot.
  • Note: Debugging is currently enabled on this keyboard and output can be seen with qmk console -l

Miscellaneous Keyboard details

  • The keyboard has four layers, these have not been fully implemented yet:

    • Layer 1: English
    • Layer 2: Numeric Pad
    • Layer 3: German
    • Layer 4: Media Keys
  • Attempts have been made to preserve / replicate "one shot" behaviour and sticky keys on the Maltron keyboard. Please see the source code for details on these.

  • Bootmagic is set to use the escape key to flash firmware on boot, this could be re-mapped if desired:

    // Hold ESC on start up to boot into bootloader mode
    #define BOOTMAGIC_LITE_ROW 0
    #define BOOTMAGIC_LITE_COLUMN 14
    

History

For a history of how this project started and evolved please see history.md

maltron_s_edition's People

Contributors

mindrustuk avatar

Stargazers

 avatar

Watchers

 avatar  avatar

maltron_s_edition's Issues

Some QMK support for modded two-handed maltron keyboards does exist already.

Hi,

I recently was faced with a similar problem and hacked my two-handed Maltron keyboard to work with QMK:

https://github.com/dvdkhlng/qmk_firmware_dqz11n1g/tree/master/keyboards/handwired/dqz11n1g

Upstream QMK did accept a pull request with my firmware changes, so this specific keyboard is now also listed in the online QMK keyboard configurator:

https://config.qmk.fm/#/handwired/dqz11n1g/LAYOUT

It looks like your right-handed maltron's controller also uses a 17x2 DIL connector, so there might be some chance to come up with a controller board that supports both Maltrons.

I did not succeed in sourcing black-pill controllers so had to base my work on an Arduino pro-micro controller.

cheers,

David

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.