Payment Terminal with TFT screen: verschil tussen versies
(→RFID) |
(→Scherm) |
||
Regel 149: | Regel 149: | ||
===== Scherm ===== | ===== Scherm ===== | ||
+ | |||
+ | Zie https://github.com/dirkx/makerspaceleiden-payment-node/blob/a438f2147b141f79ae05a1da6a042f46baa2ddf0/makerspaceleiden-payment-node.ino#L132 | ||
+ | |||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | ! pin !! kleur !! functie | + | ! pin !! kleur !! label !! functie |
|- | |- | ||
− | | 1 || zwart || | + | | 1 || zwart || GND || GND |
|- | |- | ||
− | | 2 || rood || VCC | + | | 2 || rood || VCC || 3V3 |
|- | |- | ||
− | | 3 || wit || SCK | + | | 3 || wit || SCK || TFT_SCLK, GPIO14 |
|- | |- | ||
− | | 4 || geel || SDA | + | | 4 || geel || SDA|| TFT_MOSI, GPIO12 |
|- | |- | ||
− | | 5 || orange || RES | + | | 5 || orange || RES|| TFT_RST, GPIO2 |
|- | |- | ||
− | | 6 || groen || RS | + | | 6 || groen || RS|| TFT_DC, GPIO27 |
|- | |- | ||
− | | 7 || blauw || CS | + | | 7 || blauw || CS|| TFT_CS, GPIO26 |
|- | |- | ||
− | | 8 || paars || LED A | + | | 8 || paars || LED A || 3V3 with Capacitor. |
|} | |} |
Versie van 27 okt 2021 om 19:52
experimental - security/privacy & reliability is not yet quite at the level required
Current code: https://github.com/dirkx/makerspaceleiden-payment-node -- not yet versioned or tested.
Inhoud
Terminal met beeldscherm
Video: https://player.vimeo.com/video/628163050?h=e344411a85
Bij dit type terminal kun je kiezen wat je betaald met een "+" en "-" knop.
- Het display toont de text 'Swipe to Pay" met daaronder iets als "Bier" of "Koffie" en het bedrag.
- Met de + en - knop blader je door de opties. Totdat je de juiste hebt.
- Swipe je tag langs de terminal.
- Indien het bedrag groter is dan 5 euro komt de vraag "Pay <bedrag>" -- OK of Cancel. Bij cancel ga je terug naar stap 1. Bij Pay naar de volgende stap.
- Het display toont `paying' ... en tot slot 'Paid by <je eigen naam>'.
- En gaat daarna terug naar stap één.
Indien er iets fout gaat zie je op het scherm een foutmelding. Op de server wordt bijgehouden wat er fout ging. Als gebruiker kun je in dit geval niet veel meer doen dan cash betalen, het bij de mailing lijst melden, of het later weer proberen. Na een minuut geen gebruik gaat de terminal ook altijd terug naar stap 1.
Lasercut prototype
Settings for the laser cutter: Letters; 1500 at 30%; holes 1000 at 60% from 3mm plexiglass. Order: letters, small holes, big holes and then the outline.
Buttons are ~29-30 mm arcade style pushbuttons.
Bill of material
In decreasing cost
- ESP32, 38 pin version; ~7 euro (https://www.amazon.nl/gp/product/B074RG86SR)
- 1.77" 160(RGB)x128 TFT screen; ~7 euro (https://www.amazon.nl/AZDelivery-Display-128x160-compatibel-Inclusief/dp/B07TJGF8HS). Pulls 40+ mAmp; too much for GPIO direct drive.
- 1 RFID reader; ~2.50 Euro; (https://www.amazon.nl/gp/product/B074S9FZC5)
- 2 arcade buttons; ~ 2x2 Euro, donation to the space. LEDs pull about 11 milliAmps (direct GPIO drive ok). https://www.amazon.nl/EG-booglichten-ingebouwde-schakelaar-verlichte/dp/B01N11BDX9
- Stukje plexiglas uit lasercut restjes
- 3D printed spacers/pinnen van plastic voor RFID reader mount.
- 4 boutjes/moertjes 2.3mm uit space voorraad voor scherm - mag wel metaal zijn.
- Wat draadjes uit electronica voorraad.
- USB kabeltje en adaptortje (lag op tafel).
- Restje hipster hout
Totaal: < 20 euro; 10 minuten 3D printen; 15 minuten lasersnijden; 15 minuten hout zagen, nachtje drogen (dank aan de Bandspanner/Belt clamp strap) en 30 minuten solderen/assemblage.
Wiring
GPIO | Functie |
---|---|
Vin | to buttons LED, to power supply (5V) |
3V3 | To both boards, VCC, Both Anodes TFT (8,9) |
GND | To buttons, to both boards |
23 | LED button 1 |
22 | LED button 2 |
32 | Switch button 1 |
33 | Switch button 2 |
12 | TFT_MOSI |
14 | TFT_SCLK / clock |
26 | TFT_CS, SS, Select |
27 | TFT_DC, A0, data/command |
2 | TFT_RESET |
16 | RFID_SCLK |
16 | RFID_SCLK |
5 | RFID_MOSI |
13 | RFID_MISO |
25 | RFID_CS, SS, SDA |
16 | RFID_RESET |
3 | RFID_IRQ |
Plugs
Button 1
pin | kleur | label | functie |
---|---|---|---|
1 | geel | Switch | GPIO 32 |
2 | zwart | LED K, Switch | GND |
3 | rood | LED A | GPIO 23 |
Button 1
pin | kleur | label | functie |
---|---|---|---|
1 | geel | Switch | GPIO 33 |
2 | zwart | LED K, Switch | GND |
3 | rood | LED A | GPIO 22 |
RFID
pin | kleur | label | functie |
---|---|---|---|
1 | zwart | SDA | RFID_CS, GPIO25 |
2 | rood | SCK | RFID_SCLK, GPIO16 |
3 | wit | MOSI | RFID_MOSI, GPIO5 |
4 | geel | MISO | RFID_MISO, GPIO13 |
5 | orange | IRQ | RFID_IRQ, GPIO3 |
6 | groen | GND | GND |
7 | blauw | RESET | RFID_RESET, GPIO 17 |
8 | paars | 3V3 | 3V3 |
Scherm
pin | kleur | label | functie |
---|---|---|---|
1 | zwart | GND | GND |
2 | rood | VCC | 3V3 |
3 | wit | SCK | TFT_SCLK, GPIO14 |
4 | geel | SDA | TFT_MOSI, GPIO12 |
5 | orange | RES | TFT_RST, GPIO2 |
6 | groen | RS | TFT_DC, GPIO27 |
7 | blauw | CS | TFT_CS, GPIO26 |
8 | paars | LED A | 3V3 with Capacitor. |