Автономное приложение для генерации TOTP-кодов на устройстве M5Stack Cardputer ADV. Позволяет хранить зашифрованные данные на SD-карте и вводить коды на компьютер через USB-соединение (эмуляция клавиатуры).
- Запись экрана: Добавлена возможность захвата экрана в последовательность BMP-файлов. Идеально подходит для создания качественных скриншотов, GIF-анимаций и видеообзоров интерфейса.
- Ускорение SD-карты: Оптимизирована работа с картой памяти (частота шины SPI увеличена до 40 МГц), что значительно ускоряет процесс сохранения кадров и чтение данных.
- Фоновые процессы: Доработана логика фоновых процессов для повышения стабильности и плавности работы устройства.
- Деаутентификация: Добавлена опция в меню настроек для принудительной деаутентификации хранилища.
- Автоматическая деаутентификация: Деаутентификация происходит автоматически через 120 секунд бездействия.
- USB HID: Исправлена работа в режиме USB-клавиатуры для более быстрого и надёжного ввода.
- Синхронизация времени: Добавлена автоматическая синхронизация времени по Wi-Fi.
- Управление Wi-Fi: Реализован менеджер сетей — сканирование, подключение, управление списком сохранённых сетей.
- Энергосбережение: Добавлен спящий режим — экран гаснет автоматически через 30 секунд бездействия.
- Безопасность: Все данные о Wi-Fi сетях хранятся в зашифрованном виде на SD-карте.
- Оптимизация: Проведён рефакторинг кода, улучшены имена переменных, функций и элементов интерфейса.
- Расширенные настройки: Управление яркостью экрана, громкостью динамика и типом звукового отклика.
- Звуковая навигация: Система уникальных тональных последовательностей для каждого экрана, позволяющая ориентироваться в интерфейсе на слух.
- Поддержка Морзе: Возможность озвучки TOTP-кода (цифр) сигналами Морзе для использования устройства «вслепую».
Способ 1: M5Launcher (Рекомендуется)
- Установите M5Launcher от bmorcelli на ваше устройство.
- Скачайте TOTP-Auth-for-Cardputer-ADV-vX.X.X.bin в данном репозитории или через утилиту M5Burner.
- Поместите скачанный файл на SD-карту и загрузите прошивку через M5Launcher.
Способ 2: M5Burner
- Скачайте M5Burner.
- Выберите категорию Cardputer.
- Найдите TOTP Auth for Cardputer ADV и нажмите кнопку Burn.
Способ 3: Сборка через PlatformIO
- Установите Visual Studio Code и расширение PlatformIO.
- Клонируйте данный репозиторий.
- Для компиляции установите следующие библиотеки:
- M5Cardputer — Официальная библиотека от M5Stack.
- ArduinoJson — Мощный JSON-парсер от Benoit Blanchon.
- TOTP Library — Реализация алгоритма TOTP от Luca Dentella.
- QRCode — Генератор QR-кодов от Richard Moore.
- AESLib — Библиотека шифрования AES от Suculent.
- Нажмите Build и Upload для компиляции и загрузки прошивки через USB COM PORT.
- chillyc0de — Идея, общая логика приложения, интерфейс и работа с оборудованием, рефакторинг.
- Google Gemini (LLM) — Оптимизация кода, расчеты математических моделей анимации, локализация.
Распространяется под лицензией MIT. Проект использует сторонние библиотеки, список которых и их лицензии доступны в файле NOTICE.txt.
Standalone TOTP authenticator for M5Stack Cardputer ADV. It provides encrypted SD storage and automatic code entry via USB-HID (keyboard emulation).
- Screen Recording: Added the ability to capture the screen as a sequence of BMP files. Perfect for creating high-quality screenshots, GIF animations, and video reviews of the interface.
- SD Card Acceleration: Optimized memory card performance (SPI bus frequency increased to 40 MHz), significantly speeding up frame saving and data reading.
- Background Processes: Refined background process logic to improve overall stability and system smoothness.
- Deauthorization: Added an option in the settings menu to manually force vault deauthorization.
- Automatic Deauthorization: The vault now automatically deauthorizes after 120 seconds of inactivity.
- USB HID: Improved USB keyboard mode for faster and more reliable input.
- Time Synchronization: Added automatic time sync via Wi-Fi.
- Wi-Fi Management: Introduced a full-featured network manager with scanning, connection, and saved network management.
- Power Saving: Added sleep mode — the screen automatically turns off after 30 seconds of inactivity.
- Security: All Wi-Fi credentials are now stored encrypted on the SD card.
- Optimization: Code refactoring completed; improved naming of variables, functions, and UI elements for better readability and maintainability.
- Extended Settings: Control over screen brightness, speaker volume, and audio feedback type.
- Audio Navigation: A system of unique tonal sequences for each screen, enabling eyes-free interface navigation.
- Morse Support: Optional TOTP code playback (digits) using Morse code signals (configurable in Sound settings).
Method 1: M5Launcher (Recommended)
- Install M5Launcher by bmorcelli on your device.
- Download TOTP-Auth-for-Cardputer-ADV-vX.X.X.bin from this repository or via M5Burner.
- Place the downloaded file on your SD card and load the firmware using M5Launcher.
Method 2: M5Burner
- Download M5Burner.
- Select the Cardputer category.
- Search for TOTP Auth for Cardputer ADV and click the Burn button.
Method 3: Build via PlatformIO
- Install Visual Studio Code and the PlatformIO extension.
- Clone this repository.
- To compile, install the following libraries:
- M5Cardputer — Official library by M5Stack.
- ArduinoJson — Powerful JSON parser by Benoit Blanchon.
- TOTP Library — TOTP algorithm implementation by Luca Dentella.
- QRCode — QR code generator by Richard Moore.
- AESLib — AES encryption library by Suculent.
- Click Build and Upload to compile and flash the firmware via USB COM PORT.
- chillyc0de — Concept, application logic, UI design, hardware integration, refactoring.
- Google Gemini (LLM) — Code optimization, animation math modeling, localization.
Distributed under the MIT License. This project uses third-party libraries. A full list of components and their licenses can be found in the NOTICE.txt file.





















