# PlotLost CW Keyer for Arduino GIGA R1 WiFi This repository contains the PlotLost GIGA R1 WiFi CW Keyer, a touchscreen and browser-controlled development of the Arduino CW keyer originally created by Anthony Good. The project is designed for the Arduino GIGA R1 WiFi with the Arduino GIGA Display Shield. It provides a complete standalone R1 touchscreen interface and an accessible web interface served directly by the keyer. ## Current version Firmware **0.1.31** The firmware, storage setup sketch, documentation, and precompiled binaries are included in the download package. The R1 and web DIAGNOSTICS pages check `https://www.plotlost.com/static/downloads/cw-keyer/latest.txt` over HTTPS when connected to the internet. They report whether a newer packaged firmware version is available; an unavailable check stops reporting "checking" after 30 seconds and can retry later. Updates are installed through Arduino IDE. The keyer now stops after 30 minutes of inactivity by default. The SYSTEM screen and web SYSTEM SETTINGS page can select 10, 30, 60 minutes, or OFF. This is a firmware shutdown, not a power cut: press the R1 RST button to restart it. ## Repository layout - `PlotLost_CW_Keyer` — main Arduino GIGA R1 WiFi firmware - `PlotLost_GIGA_Storage_Setup` — one-time storage preparation sketch - `Documentation/PlotLost_CW_Keyer_User_Guide_v0.1.31.docx` — complete user guide for firmware 0.1.31 - `Precompiled` — ready-built GIGA R1 WiFi firmware files ## Installation 1. Install Arduino IDE 2 and the Arduino Mbed OS GIGA Boards platform. 2. Install `Arduino_GigaDisplay_GFX`, `Arduino_GigaDisplayTouch`, and `Adafruit GFX Library` with its `Adafruit BusIO` dependency. 3. Download the [USBHostGiga ZIP](https://www.plotlost.com/static/downloads/dependencies/usbhostgiga/USBHostGiga.zip) from PlotLost's copy of Arduino USBHostGiga, then install it in Arduino IDE with **Sketch > Include Library > Add .ZIP Library**. 4. On a new GIGA, upload `PlotLost_GIGA_Storage_Setup`, open Serial Monitor at 115200 baud, answer `Y`, and wait for `USER STORAGE READY`. 5. Upload `PlotLost_CW_Keyer/PlotLost_CW_Keyer.ino` to the GIGA M7 core. Full installation, hardware, configuration, R1 display, and web-interface instructions are in the user guide under `Documentation`. ## Hardware warning Arduino GIGA R1 GPIO uses 3.3 V logic. Radio keying, PTT, sequencer, interlock, and receive-audio connections require suitable buffering, isolation, level conversion, and protection. Do not connect radio control or speaker-level signals directly to GPIO pins. ## License and attribution Based on the Arduino CW keyer Copyright Anthony Good 2011–2021. GIGA R1 WiFi Keyer, Copyright 2026 Steve de Bode, W0FFS. This project is distributed under the GNU General Public License, version 3 or later. See `LICENSE`, `COPYING.md`, and the source headers for details. ## Version 0.1.31 Disabled the unused rotary encoder and updated the prototype wiring plan for case-mounted key jacks with flexible leads and both A1 and D8 decoder paths. Existing saved settings remain compatible. Hardware testing is pending.