| Soldered Inputronic Keyboard - SKU: 333360 |
This Arduino library provides an easy-to-use driver for the Soldered Inputronic Keyboard (SKU 333360). It communicates over I²C (Qwiic / easyC) using the TI TCA8418 keypad controller, and supports both low-level key event reading and higher-level text input helpers.
- Simple initialization over I²C (
begin()) - Polling-based key event FIFO reading (no interrupt pin required)
- Pressed-state tracking (supports modifier keys such as SHIFT)
- Built-in UPPER / LOWER keymaps with CAPS toggle handled inside the driver
- Convert key labels to printable characters using
labelToChar()(SHIFT handled by the library) - High-level helpers:
stringInput()– blocking text entrytypeOn()– blocking “type mode” with callback (or default Serial output)
#include "SOLDERED-Inputronic-Keyboard.h"
InputronicKeyboard kbd;
void setup() {
Serial.begin(115200);
if (!kbd.begin()) {
Serial.println("Keyboard not found!");
while (true) delay(250);
}
Serial.println("Keyboard ready.");
}
void loop() {
// Your code here
}Use labelToChar() to get a final printable character from a mapped label:
void loop() {
while (kbd.eventsAvailable() > 0) {
bool isRelease = false;
uint8_t row = 0, col = 0;
const char* label = nullptr;
if (!kbd.readMappedEvent(isRelease, row, col, label)) break;
if (!label || isRelease) continue;
if (!strcmp(label, "SPACE")) { Serial.print(' '); continue; }
if (!strcmp(label, "BACK")) { Serial.print("\b \b"); continue; }
if (!strcmp(label, "ENTER")) { Serial.println(); continue; }
if (!strcmp(label, "CAPS") || !strcmp(label, "SHIFT")) continue;
char ch;
if (kbd.labelToChar(label, ch, true)) {
Serial.print(ch);
}
}
delay(1);
}This library separates layout customization into dedicated headers:
-
Inputronic-Keymap.h- Defines two keymaps:
INPUTRONIC_KEYMAP_UPPERandINPUTRONIC_KEYMAP_LOWER - The driver automatically toggles between them when CAPS is pressed
- Defines two keymaps:
-
Inputronic-Shiftmap.h- Defines how symbols/numbers are transformed while SHIFT is held
- Used by
labelToChar()for non-letter characters
- CAPS toggles the active keymap (UPPER/LOWER) internally
- SHIFT is treated as a held modifier:
- Letters use CAPS XOR SHIFT behavior (case inversion)
- Symbols/numbers use the
Inputronic-Shiftmap.hlookup table
The library includes multiple examples demonstrating different use cases:
- KeyboardPoll – print key labels and matrix coordinates (press events)
- SerialType – terminal-style typing into Serial Monitor (SHIFT handled by library)
- OledType – live text typing on SSD1306 OLED display
- InkplateType – typing on Inkplate e-paper with refresh-on-ENTER
- /src – library source files (
.h&.cpp) - /examples – example sketches for common use cases
- library.properties – Arduino Library Manager metadata
You can find the hardware design files in the dedicated hardware repository for the Soldered Inputronic Keyboard.
- Product page:
https://www.soldered.com/product/333360 - Tutorials and projects:
https://soldered.com/learn - easyC ecosystem:
https://soldered.com/blogs/learn/what-is-qwiic
This library is compatible with any Arduino-compatible platform that supports I²C.
Tested/typical platforms include:
- ESP32 family
- Arduino UNO / Mega / Due / UNO R4
- Soldered Inkplate series (e.g. Inkplate 5 v2, Inkplate 6 FLICK)
At Soldered, we design and manufacture a wide selection of electronic products to help you turn your ideas into acts and bring you one step closer to your final project. Our products are intended for makers and crafted in-house by our experienced team in Osijek, Croatia. We believe that sharing is a crucial element for improvement and innovation, and we work hard to stay connected with all our makers regardless of their skill or experience level. Therefore, all our products are open-source. Finally, we always have your back. If you face any problem concerning either your shopping experience or your electronics project, our team will help you deal with it, offering efficient customer service and cost-free technical support anytime.
This library is open-source under the MIT License.
Soldered invests significant time into open-source hardware & software development. Please support future development by purchasing original Soldered products.
The contents of this repository are provided "AS IS", without warranty of any kind.
© 2025 Soldered Electronics — Osijek, Croatia
https://www.soldered.com
And thank you from your fellow makers at Soldered Electronics.
