All projects

Payment Terminal Launcher & Cash-Register Bridge

Ceylon Business Appliances · 2026

An Android home-screen app for payment terminals. It limits the terminal to approved apps, downloads its settings remotely, and runs a bridge so the cash register can start a sale, void or settlement.

By W.K.D. Kavishka, Flutter & Android Developer

What I built

  • Launcher built with Jetpack Compose in a multi-module Gradle project.
  • Bridge service that takes commands over TCP sockets, USB serial and Bluetooth, with acknowledged message framing.
  • Foreground service that starts on boot and restarts itself, with battery-optimisation handling.
  • Remote settings download, so terminals can be reconfigured without a visit.
  • Python test clients that drive every command over each connection.
  • Related research: a Bluetooth SPP server that captures and decodes the ESC/POS print data a POS app sends to its printer.

Tech

  • Kotlin
  • Jetpack Compose
  • Android
  • Bluetooth
  • USB serial
  • TCP sockets
  • RxJava
  • ESC/POS