Programming the Coin Acceptor ============================= The ATM uses a programmable **HX-616** pulse coin acceptor. It must be taught which coins to accept and how many pulses to emit for each, before it is wired to the ESP32. .. warning:: Adjust the output voltage of the step-up converter **before** connecting the coin acceptor — it runs on **12 V**. Powering it incorrectly can damage the unit. How pulse counting works ------------------------ The coin acceptor signals each recognised coin by emitting a number of pulses on its "Coin" line (wired to GPIO 17 — see :doc:`wiring`). The firmware counts those pulses with a debounced interrupt and maps the pulse count to a cent value. When you program the acceptor, assign each coin a distinct pulse count so the firmware can tell them apart. Programming guides ------------------ Follow one of these detailed guides to program the acceptor for your coins: - `Coin Acceptor Programming Guide (English) `_ - `Coin Acceptor Programming Guide (German) `_ Once programmed, wire the acceptor and its blocking MOSFET as described in :doc:`wiring`.