arcbtc / M5StackSats

A bitcoin point of sale terminal using the ESP32 based M5Stack
GNU General Public License v3.0
106 stars 21 forks source link

Room77: Button Functions and Menu #8

Open rootzoll opened 5 years ago

rootzoll commented 5 years ago

The LCD should over the buttons show the meaning of the buttons.

Those can be flexible based on if the user already entered an amount or not.

If a amount was entered:

A: CANCEL
B: Bitcoin (on-chain)
C: Bitcoin Lightning

If no amount was entered yet it could be a navigation or other options (to be discussed):

A: Info (Node & POS info)
B: History (to check latest payments for disputes)
C: Next Infoscreen/Menuscreen
arcbtc commented 5 years ago

This returns to the concept of keeping the device simple enough for a nocoiner employee. Maybe those options should be pushed to physical features, rather than clutter the screen (red cross on button A, Green tick on C)? "TO RESET PRESS A" could be then changed to "TO SWITCH BETWEEN MN/LN PRESS B"

hikaman commented 4 years ago

What do you think about following concept:

With amount: A / Cancel: reset C / OK : create invoice (show new screen) |-- Lightning Invoice ( Button A) |-- Onchain Invoice (Button B)

without amount: Button A / B: same behavior like with amount B / Menu: open menu screen

Regarding the menu function I wonder which information really makes sense at the POS. Do you have an example with an use case?

rootzoll commented 4 years ago

I am a bit hesitant about the extra new screen ... but I think it makes sense to give the bar staff clear info and not to have them learn the meaning of buttons. If "on-chain" is not available it can skip that screen and jump directly to the QR code.