Project Coin Fruit Machines
- Project Coin Fruit Machines Machine
- Project Coin Fruit Machines
- Project Coin Fruit Machines Dispense
- Project Coin Fruit Machines For Sale
- Project Coin Fruit Machines Walmart
What types of reel-spinning fruit machines are available? Also called a slot machine, a fruit machine comes in three main formats: Multiplier: Pay-offs on a multiplier are proportionate to the coins played. For example, if the machine can take in three coins at once and you play with a single coin, the three bars would pay you back 10. I’m going to look at fruit machine cheats for £5 jackpot machines, and how you can turn your little trip to the seaside into a profitable venture with these low jackpot, low stakes fruit machines. Fruit machine cheats for £5 jackpot machines are often considerably different to their larger £100 and £70 jackpot counterparts,.
- 2Hardware
- 3Messages
Versions
We now have two versions of the custom cashless device:
- v1 - created for the Westomatic vending machine, and uses a nanode and RDM880 based RFID module, and is build mostly on perf board.
- v2 - created for the BevMax45 vending machine, and is heavily based on v1, but now uses a custom PCB with a SAM D21 MCU (same as the Arduino Zero), a WizNet Ethernet shield and a MFRC522 RFID reader. There is an aim to update the first vending machine to use a v2 cashless device, but as of Dec 2018, this hasn't been done yet.
Hardware
v1
The cashless device has been built around a nanode, which is connected using UDP/IP over an Ethernet connection to holly.
Project Coin Fruit Machines Machine
There is a board between the Nanode (see Media:VMC-Nanode Schematic.png) and the vending machine which both powers the nanode from the ~34vdc supply, and allows serial communication with the VMC.
The nanode is connected (using software serial) to an RFID reader mounted under the 'H' logo on the outside of the Vending machine.There is also a micro-switch attached to the coin-reject mechanism (to allow any RFID card read to be cleared from memory), and a blue LED above the reader to indicate when a card has been read & recognised. An LCD to show your username & current balance was added in July 2013.
Firmware for this device is in GitHub.
The diagram below shows the connection between devices:
v2
The second cashless device uses a cutom PCB using the SAM D21 MCU (as used in the Arduino Zero), and has numerous changes, including:
- A MFRC522 RFID module, which is the same as the NoteAcceptor, tools boards, etc., instead of a RDM880 based module
- Uses TCP/IP to connect to a Mosquitto MQTT broker on holly instead of UDP/IP. The messages sent remain the same.
- A serial based setup menu, to allow for entry of device name, IP, etc. This should allow the same firmware to be used unmodified in both machines.
Firmware for this version is also in GitHub.
Messages
Project Coin Fruit Machines
To keep things simple, the interface to holly is text based; the sequence of messages is shown in the flowchart below:
Project Coin Fruit Machines Dispense
For v1, these messages are sent using UDP/IP, for v2 they use MQTT, transmitting on the nh/<device_id>/tx
topic and receiving on the nh/<device_id>/rx
topic. Not an ideal implementation for MQTT by a long way, but reuses a message flow that's been working well for some years.
Message details
From | To | Details |
---|---|---|
VM | Holly | AUTH:<RFID serial> Sent when RFID card first read |
Holly | VM | GRNT:<RFID serial>:<transaction number> Sent in response to AUTH if the card is known & marked as active in the database. |
Holly | VM | DENY:<RFID serial> Sent in reply to AUTH if the card is either not know, or marked as expired/canceled. |
VM | Holly | VREQ:<RFID serial>:<transaction number>:<amount> Sent when a selection is keyed in. <amount> is in pence. |
Holly | VM | VNOK:<RFID serial>:<transaction number> Sent in response to VREQ if the purchase is permitted (e.g. credit limit won't be exceeded). |
Holly | VM | VDNY:<RFID serial>:<transaction number> Sent in response to VREQ is the vend should be denied for any reason. |
VM | Holly | VSUC:<RFID serial>:<transaction number>:<position> Sent after the VMC reports to the nanode that the product has been successfully vended. |
VM | Holly | VFAL:<RFID serial>:<transaction number> Sent if the VMC reports that the vend failed. ***UNTESTED*** for the Westomatic machine, as we don't beleive the machine can/would ever report a failed vend. The BevMax45can report failed vends (if enabled on the machine), but due to a fault with the drop sensors, it was reporting every vend as failed, so this has been switched off. |
VM | Holly | VCAN:<RFID serial>:<transaction number> Sent if the coin reject button is pressed. Will record a cancelled vend if an AUTH has been sent, but no VREQ yet received - otherwise it has no effect. |
VM | Holly | INFO:<debug message> Information message that can be sent at any stage - has no effect other than being written to a log on holly. |
Variable | Description |
---|---|
<RFID serial> | RFID serial number - expected to be 9 digits long |
<transaction number> | Unique number assigned to the vending machine transaction when an AUTH message is received with an active RFID serial, and must be included in all related messages. |
<position> | Position in the vending machine as reported by the VMC. Note that this location is mapped to the locations codes displayed in the vending by holly (e.g. 41-31 reported here corresponds to location A1). |
Example session
(card presented)AUTH:999999999
(Selection made)
GRNT:999999999:352VREQ:999999999:352:300
(Product vended)
VNOK:999999999:352VSUC:999999999:352:43-37
Source Code
Project Coin Fruit Machines For Sale
The code of the server side component is on Github (the relevant part is nh-vend.cpp). This code is common to both v1 & v2 of the cashless device, and also handles payments received via the NoteAcceptor & CoinAcceptor.