ESP32 with lcd and coin acceptor

Job ID: 34720795

Budget: $250 – $750 USD

Need the following done

We need a quite simple point of sale.

Following components are what we are putting together.
1 x esp32
1 x comestro RM5 Coin acceptor
1 x Money control hopper MK4 value 1
1 x Money control hopper MK4 value 10
1 x LCD touch 3.2 ILI9327

Following pins are used as below mentioned:
LCD-Touch:
CS of ILI9327 to gpio33
RS of ILI9327 to gpio15
DR of ILI9327 to gpio02
WR of ILI9327 to gpio04
D0 of ILI9327 to gpio12
D1 of ILI9327 to gpio13
D2 of ILI9327 to gpio26
D3 of ILI9327 to gpio25
D4 of ILI9327 to gpio17
D5 of ILI9327 to gpio16
D6 of ILI9327 to gpio27
D7 of ILI9327 to gpio14

Coin acceptor RM5 input is connected as follows.
1 kr. input = gpio34
2 kr. input = gpio35
5 kr. input = gpio36
10 kr. input = gpio39
20 kr. input = gpio22

The Money control mk4 hoppers are connected to the following pins
10 kr. hopper output = gpio5
1 kr. hopper output = gpio21

The above mentioned input pins receive a 100ms gnd connection for each coin put in, this gnd connection depending on gpio credits either 1, 2, 5, 10, 20 kr to the LCD screen.


The point of the project is as follows

When a coin is put in on the 1, 2, 5, 10, 20 kr. channels of the coin acceptor, the amount must be shown in the top of the UI on the Touch display.

In the Bottom of the UI must be a payout button, where a payout of the credited or remaining amount must be paid out through the 1 kr. and the 10 kr. hopper.
So e.g if 99 kr. is credited and a user click payout 9x pulses to the 10 kr, hopper must be made and 9 pulses to the 1 kr. hopper. (1 pulse = 100 ms high).

Now to the UI.
Main screen.
Credit on top (All screens)
button 1 2 and 3
payout button. (All screens)

Button1 clicked
Credit on top (All screens)
18 buttons must show each with a price (might need to be split up in 1-6, 7-12 and 13-18)
(When button 1-18 is clicked, price must be deducted from credit.)
payout button. (All screens)
If payout is clicked, remaining credit must be paid out.
Back button (back to main screen).

Button2 clicked
Credit on top (All screens)
8 buttons must show each with a price (might need to be split up in 1-4 and 5-8)
(When button 1-8 is clicked, price must be deducted from credit.)
payout button. (All screens)
If payout is clicked, remaining credit must be paid out.
Back button (back to main screen).

Button3 clicked
Credit on top (All screens)
2 buttons must show each with a price
(When button 1 or is clicked, price must be deducted from credit.)
payout button. (All screens)
If payout is clicked, remaining credit must be paid out.
Back button (back to main screen).

When one of the 1-18, 1-8 or the 1-2 with price reduction is clicked, the button must be unavailable for x amount of minutes defined for each in the code..

TBD: a pin must be used to communicate with an Arduino Mega to turn on and off relays. (this will be a follow up project.)

Above should be quite simple for anyone that has experience with ESP32 and Arduino IDE, we request that you work over anydesk when testing, since its quite a task to send the equipment.

You bid is what you get, so dont low bid to get to chat, and then change your bid...