Skip to content

Commit

Permalink
Merge pull request #24 from CharaChorder/charachorder-engine
Browse files Browse the repository at this point in the history
Initial draft for CCE
  • Loading branch information
jdestgermain authored Sep 10, 2023
2 parents 98bf2f7 + d5b3886 commit 837d71e
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 5 deletions.
44 changes: 42 additions & 2 deletions docs/CharaChorder Engine.rst
Original file line number Diff line number Diff line change
@@ -1,2 +1,42 @@
CharaChorder Engine - UNDER CONSTRUCTION
==============================================
CharaChorder Engine
===================

Welcome to the Official CharaChorder Engine guide. You can select the links
below to navigate to the topics that you find most relevant.

.. _CCE:
.. image:: /assets/images/CharaChorderEngine.jpg
:width: 1200
:alt: CharaChorder Engine

CharaChorder Engine is a multichip module that enables you to build your own
CCOS powered text entry device. If you are interested in learning how to utilize
CharaChorder Engine, please visit the `CharaChorder Engine Discord channel <https://discord.gg/VngNWSyZJb>`_
and ping Riley Keen or Matt Swarts.

.. contents::
:local:

Pinout Diagram
**************

.. _CCEPinout:
.. image:: /assets/cce/pinout.png
:width: 1200
:alt: CharaChorder Engine pinout table

Design
******

The Engine is designed primarily to work with a MCU to receive inputs (through
UART and later I2C or SPI), process the chording logic, query the onboard chordmap
library, and output the results back to the MCU (again over UART and later I2C or
SPI). However, the layout of the Engine exposes USB pins, which could have a future
capability for direct USB HID output. This could be limiting for some developers,
as they may want to control their HID reports themselves through their MCU.

Communicating with Engine Devices
*********************************

Like other CCOS powered devices, any device with CharaChorder Engine can use the
full power of the :doc:`Serial API<SerialAPI>`.
6 changes: 3 additions & 3 deletions docs/SerialAPI.rst
Original file line number Diff line number Diff line change
Expand Up @@ -315,7 +315,7 @@ CMD_VAR_COMMIT
:header: "I/O","Index","Name","Type","Example","Notes"

"INPUT","0","Command","Chars","VAR",""
"INPUT","1","SubCommand","Hexadecimal VAR Code","B0","Commit p arameters to memory"
"INPUT","1","SubCommand","Hexadecimal VAR Code","B0","Commit parameters to memory"
"OUTPUT","0","Command","Chars","VAR",""
"OUTPUT","1","SubCommand","Hexadecimal VAR Code","B0",""
"OUTPUT","2","Success","Boolean Number","0","This will be 0 on success, or greater than zero for an error if there was a problem commiting"
Expand All @@ -335,7 +335,7 @@ CMD_VAR_GET_PARAMETER

"INPUT","0","Command","Chars","VAR",""
"INPUT","1","SubCommand","Hexadecimal VAR Code","B1","Get parameter value"
"INPUT","2","Parameter Code","Decimal Parameter Code","2E",""
"INPUT","2","Parameter Code","Hexadecimal Parameter Code","2E",""
"OUTPUT","0","Command","Chars","VAR",""
"OUTPUT","1","SubCommand","Hexadecimal VAR Code","B1",""
"OUTPUT","2","Parameter Code","Hexadecimal Parameter Code","2E",""
Expand All @@ -357,7 +357,7 @@ CMD_VAR_SET_PARAMETER

"INPUT","0","Command","Chars","VAR",""
"INPUT","1","SubCommand","Hexadecimal VAR Code","B2","Set parameter value"
"INPUT","2","Parameter Code","Decimal Parameter Code","2E",""
"INPUT","2","Parameter Code","Hexadecimal Parameter Code","2E",""
"INPUT","3","Data In","Decimal Number","46",""
"OUTPUT","0","Command","Chars","VAR",""
"OUTPUT","1","SubCommand","Hexadecimal VAR Code","B2",""
Expand Down
Binary file added docs/assets/cce/pinout.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/images/CharaChorderEngine.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 837d71e

Please sign in to comment.