Skip to content

A modular wireless keyboard system built with Arduino and RF433 modules. Features multiple customizable keypad transmitters and a central USB receiver.

Notifications You must be signed in to change notification settings

fa11astro/ModuleKeyboard

 
 

Repository files navigation

Modular Wireless Keyboard Project

A customizable, modular wireless keyboard system built with Arduino and RF433 modules, featuring independent keypad modules and a central receiver.


Project Overview

This project implements a modular wireless keyboard system consisting of:

  • Two independent transmitter modules with 4×4 keypads
  • One receiver module that receives keystrokes via RF433 and outputs them as serial data

Each transmitter module can be customized with different key layouts and used independently, enabling flexible keyboard configurations for various applications (gaming, macros, shortcuts, etc.).


Hardware Components

  • Arduino Nano/Uno (x3 – one for each module)
  • RF433 MHz transmitter/receiver modules
  • 4×4 membrane keypads (x2)
  • Breadboards, jumper wires, resistors
  • Power source (batteries or USB)

Code Structure

1. Receiver Module (reciever.ino)

  • Listens for incoming RF signals
  • Decodes received bytes and prints them to Serial
  • Acts as a USB keyboard interface (can be extended with HID libraries)

2. Transmitter Module 1 (transmitter_1.ino)

  • Keypad layout: G H I J / K L M N / O P Q R / S T U V
  • Sends pressed keys as RF signals

3. Transmitter Module 2 (transmitter_2.ino)

  • Keypad layout: 0 1 2 3 / 4 5 6 7 / 8 9 A B / C D E F
  • Sends pressed keys as RF signals

How It Works

  1. Each transmitter module is paired with a 4×4 keypad.
  2. When a key is pressed, the Arduino reads the key and sends it via the RF433 transmitter.
  3. The receiver module (connected to a computer) receives the signal and outputs the corresponding character via Serial.
  4. The system can be expanded to support more modules, different key layouts, and USB HID emulation.

Libraries Used

  • VirtualWire – for RF433 communication
  • Keypad – for reading matrix keypad inputs

Setup Instructions

  1. Upload reciever.ino to the receiver Arduino.
  2. Upload transmitter_1.ino and transmitter_2.ino to their respective Arduinos.
  3. Connect RF433 TX pins to transmitter Arduino pin 13.
  4. Connect RF433 RX pins to receiver Arduino pin 3.
  5. Power all modules and open Serial Monitor on the receiver (9600 baud).

Features

  • Modular design – add or remove keypads as needed
  • Wireless communication – up to ~100m range (open space)
  • Customizable key layouts – easy to reprogram keymaps
  • Low power – suitable for battery operation
  • Open-source – fully hackable and extensible

Future Improvements...

  • Adding USB HID support (using Arduino Leonardo/Pro Micro)
  • Implementing encryption for secure transmission
  • Designing 3D-printed enclosures
  • Developing a configuration utility for key remapping
  • Supporting for more than two transmitters
  • Power saving features (sleep mode)

Team

  • Ekaterina Bereznyova – Project founder, programmer
  • Ilya Kazyonnov – Programmer
  • Vsevolod Chentsov – Programmer
  • Viktor Belogrudov – Designer

Repository

github.com/kazunovia/module_keyboard


🚀 Built with passion for open hardware and customizable input devices.

About

A modular wireless keyboard system built with Arduino and RF433 modules. Features multiple customizable keypad transmitters and a central USB receiver.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 100.0%