Skip to content

bkovac/pager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tiny Pager

This is a trivially simple chat app running on the LilyGO T LoRa Pager DevKit.

This is an extremely early version, so manage your expectations.

It uses a Scala/Akka bridge to interface with OpenAI, with WhatsApp integration in progress and potential for other services in the future.

Currently, it communicates with the server via Wi-Fi and websockets, using a trivially simple protocol with partial updates but no retries or read indicators yet.

Main reason why I made this was to experiment with the excellent clay layout library. The whole embedded side is written in pure C. A bunch of stuff is still kinda iffy (especially regarding the memory and WiFi of the ESP32S3).

TODO

Prio

  • There is no way to create a conversation
  • Code cleanup
  • Setup documentation
  • Input issues (random short/long press) - maybe related to debounce logic
  • Queue messages
  • Wifi reliability & speed (though maybe my wifi is ass)
  • WhatsApp business logic

Future plans

  • Partial display update
    • do this SIMD
    • might also free up a bunch of on-chip RAM since tiles will have to be accessed in a non-DMA scheme anyways
  • Scroll/edit in compose view
  • Animate compose view
  • Simulator
  • BMS advanced & gauge
  • Lower power usage (idk how much is possible)
  • Brightness
  • Dark mode
  • Signal business logic
  • LoRa
  • GSM extension board

Useful Stuff

to complie protoc-c (or protoc-gen-c) inside esp-idf:

CPPFLAGS="-I/opt/homebrew/opt/protobuf@21/include" \
CFLAGS="-I/opt/homebrew/opt/protobuf@21/include" \
LDFLAGS="-L/opt/homebrew/opt/protobuf@21/lib" \
LIBS="-lprotobuf" \
PROTOC="/opt/homebrew/opt/protobuf@21/bin/protoc" \
./configure

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published