Skip to content

Releases: cannatoshi/SimpleGo

v0.1.16-alpha: HAL Architecture

25 Jan 13:28
d2707d0

Choose a tag to compare

Pre-release

This release introduces the Hardware Abstraction Layer (HAL), enabling SimpleGo to run on multiple hardware platforms from a single codebase.


What's New

Hardware Abstraction Layer

Seven interface definitions that abstract all hardware-specific functionality:

  • Display - Screen initialization, rendering, backlight control
  • Input - Keyboard, touch, trackball, encoder support
  • Storage - NVS settings, filesystem, SD card access
  • Network - WiFi, cellular, connection management
  • Audio - Speaker, buzzer, notification sounds
  • System - Power management, battery, sleep modes

Multi-Device Architecture

Device Status
LilyGo T-Deck Plus Active Development
LilyGo T-Deck Pro Planned
LilyGo T-Lora Pager Planned
SimpleGo Secure (Tier 2) Design Phase
SimpleGo Vault (Tier 3) Planning

T-Deck Plus Support

  • Complete pin configuration
  • ST7789V display driver with DMA
  • Build and flash verified working

Documentation Overhaul

Complete rewrite of all project documentation for the multi-platform ecosystem approach.


Breaking Changes

  • Removed T-Embed CC1101 support (was temporary development device)

Build Instructions

idf.py set-target esp32s3
idf.py menuconfig  # Select target device
idf.py build flash monitor

Known Issues

  • A_MESSAGE parsing error with SimpleX apps still under investigation
  • HAL implementations incomplete (display driver only)

Full Changelog

See CHANGELOG.md

v0.1.15-alpha: Double Ratchet Implementation

24 Jan 21:39
bc849c9

Choose a tag to compare

Highlights:

  • Complete Double Ratchet encryption implementation
  • X3DH key agreement protocol
  • wolfSSL integration for X448/Curve448
  • All cryptography verified against Python reference
  • 12 encoding bugs fixed
  • Server accepts all messages with OK

New Modules:

  • smp_x448.c: X448 operations with byte-order fix
  • smp_ratchet.c: Double Ratchet, KDFs, AES-GCM
  • smp_handshake.c: E2E handshake, AgentConfirmation
  • smp_queue.c: SMPQueueInfo encoding

Bugs Fixed:

  • E2E key length encoding
  • prevMsgHash length encoding
  • MsgHeader DH key encoding
  • ehBody length encoding
  • emHeader size (124 to 123)
  • Payload AAD size (236 to 235)
  • Root KDF output order
  • Chain KDF IV order
  • wolfSSL X448 byte-order
  • SMPQueueInfo port encoding
  • smpQueues count encoding
  • queueMode Nothing encoding

Known Issues:

  • App shows A_MESSAGE error (investigating Tail encoding)

Status: Alpha - Cryptography verified, app compatibility in progress"