Project Description
The task is to create a purely software-based application that lets a Sanden Vendo Vue 008 vending machine communicate over the MDB protocol through a Morefun Z80 module configured as a slave. Everything has to run on Android, so I need an APK (plus source) that can be installed on a standard tablet mounted inside the machine.
The workflow I have in mind is straightforward: the Android device connects to the Z80 via USB-OTG (or Bluetooth if you prefer; I’m flexible there) and takes over all MDB polling, cashless vending, and telemetry duties. The machine should behave exactly as if a traditional cashless validator were present—credit establishment, vend authorization, end-of-sale, and error reporting must all follow the MDB 4.2 spec.
Key points that will be checked during acceptance
• Reliable real-time exchange of MDB packets at the required 9600 bps, 9-bit, even-parity format
• Robust parsing of product prices, credit totals, and vend confirmations from the Sanden controller
• Clean, well-documented Java/Kotlin (or C++ with the NDK if you can justify it) so future updates remain simple
• Configuration screen on Android for device address, timeouts, and logging level
• Optional JSON log export so sales data can be pushed to our backend later
The objective is to add credit to the VMC so the buyer can make a selection and then our android app does the payment part, but we can't actually simulate the credit for some reason.
Hand over the signed APK, full source code, and a short README describing build steps, pinouts, and any special libraries used.