
Example of second type of message packets for Hopper (address 3) is
Host sends: [03][09][01] [A7] [00] [00] [00] [00] [00] [00] [00] [00] [01][4B]
Hopper answers: [01] [00] [03] [00] [FC] ACK
One token is paid
2.1.4a Command header 166 [hexA6], Request hopper status
This command returns four counters that explain the status of payment.
Host sends: [03][09][01] [A7] [00] [00] [00] [00] [00] [00] [00] [00] [01][4B]
Hopper answer: [01] [00] [03] [00] [FC] ACK
One token is paid.
2.1.4b Command header 166 [hexA6], Request hopper status
polling (solo per capire se è fermo, non per interpretare il numero delle monete erogato)
This command return four counters that explain the status of payment.
Host sends: [03][09][01] [A7] [00] [00] [00] [00] [00] [00] [00] [00] [01][4B]
Hopper answer: [01] [00] [03] [00] [FC] ACK
One token is paid.
These four bytes are:
1. Event Counter that show the number of good dispense events since last reset.
2. Payout coins remaining that show how many coins are still to pay.
3. Last Payout: coins paid, shows how many coins paid out since last dispensing command (increments with each coin dispensed)
4. Last Payout: coins unpaid, that show how many coins remained unpaid during last payout.
First two counters are saved in am, while last two are saved in eeprom. Default value of Event Counter and Payout coins remaining
is 0, at reset and after Emergency stop command. If a reset occurs, Event Counter and Payout coins remaining values are saved in
two Last Payout counters, in eeprom. Thus, after reset or power-off, hopper can return coin paid and unpaid during last payout.
Command format is
Host sends: [Dir] [00] [01] [A6] [Chk]
Hopper answer: [01] [04] [Dir] [00] [d1] [d2] [d3] [d4] [Chk]
Example of message packets for Hopper (address 3) is
Host sends: [03] [00] [01] [A6] [56]
Hopper answer: [01] [04] [03] [00] [00] [00] [07] [03] [EE]
In this example hopper is not perform a payout. During last payout the hopper was power off
while paying. It had to pay 10 coin, but only 7 was really paid. Three remained.
Another example of message packets for Hopper (address 3) is
Host sends: [03] [00] [01] [A6] [56]
Hopper answer: [01] [04] [03] [00] [0B] [09] [02] [00] [E2]
In this example hopper is performing a payout. It’s the 11
th
payout before last reset. A coin is
paid (9 are remaining) and during last payout 2 coin was paid.
2.1.5 Command header 163 [hexA3], Test Hopper
This command is used to test hopper hardware. It reports back a bit mask that shows various hopper errors. Bit meaning is shown
here :
BIT0 – Absolute maximum current exceeded BIT1 –
Payout timeout occurred BIT2 – Motor reverse during last payout to clear a jam BIT3 – Opto fraud attempt,
path blocked during idle BIT4 – Opto fraud attempt, short circuit during idle BIT5 – Opto blocked
permanently during payout BIT6 – Power up detected
BIT7 – Payout disabled
Command format is
Host sends: [Dir][00][01] [A3][Chk]
Hopper answer: [01] [00] [Dir] [00] [d1] [d2] [Chk]
Example of message packets for Hopper (address 3) is
Host sends: [03][00][01] [A3][59]
Hopper answer: [01] [02] [03] [00] [C0] [00] [3A]
The data byte Hex[60] means that Opto are blocked permanently during payout and power up was detected.
2.1.6 Command header 172 [hexAC], Emergency stop.
This command immediately stops the payout sequence and reports back the number of coins which the hopper failed to pay out.
After Emergency stop command hopper is disabled. To perform new payout sequence, hopper must be re-enabled.
Message format is:
Host sends: [Dir] [00] [01] [AC] [Chk]
Hopper answer: [01] [01] [Dir] [00] [d1] [Chk]
Example of message packets for Hopper (address 3) is