AUTOMATROM PICOBRIDGE RS232 User manual

Table of Contents
I. De ice o er iew..................................................................................................................4
II. Hardware o er iew.............................................................................................................5
1. Connectors description..................................................................................................5
2. Power supply requirements...........................................................................................6
3. De ice memory map......................................................................................................7
III. Low le el communication protocol....................................................................................8
A. Serial port settings.........................................................................................................8
B. Low le el protocol messages........................................................................................8
1. Write to memory........................................................................................................9
2. Read from memory....................................................................................................9
3. De ice reset...............................................................................................................9
4. Get de ice status.....................................................................................................10
5. Send some credit to the machine............................................................................11
6. Return change to the customer...............................................................................11
7. Request current credit.............................................................................................11
8. Product selected – unsolicited message.................................................................12
9. Transaction result – unsolicited message...............................................................12
10. Bill accepted by the ending machine – unsolicited message..............................12
11. Coin accepted by the ending machine – unsolicited message...........................12
12. Cashless in session – unsolicited message..........................................................12
13. Cashless finished session – unsolicited message................................................13
14. Change requested – unsolicited message............................................................13
IV. High le el protocol..........................................................................................................14
A. O er iew......................................................................................................................14
B. Protocol description.....................................................................................................14
1. Write to memory - METWRITEMEM.......................................................................14
2. Read from memory - METREADMEM....................................................................14
3. Send credit to the machine - METSENDCREDIT( alue)........................................15
4. Return change from the machine - METSENDCHANGE( alue)............................15
5. Get de ice status - METGETSTATUS.....................................................................15
6. De ice reset - METRESET......................................................................................15
7. Read product price - METREADPRICE(n)..............................................................16
8. Write product price – METWRITEPRICE(n, alue)..................................................16
9. Read maximum credit setting - METREADMAXCREDIT.......................................16
10. Write maximum credit setting - METWRITEMAXCREDIT( alue).........................16
11. Read maximum change setting - METREADMAXCHANGE.................................17
12. Write maximum change setting - METWRITEMAXCHANGE( alue)....................17
13. Read scaling factor - METREADSCALINGFACTOR............................................17
14. Write scaling factor – METWRITESCALINGFACTOR( alue)...............................18
15. Read decimal point - METREADDECIMALPOINT...............................................18
16. Write decimal point – METWRITEDECIMALPOINT( alue)..................................18
17. Read coins counter - METREADCOINSCOUNTER.............................................19
18. Write coins counter – METWRITECOINSCOUNTER( alue)................................19
19. Read bills counter - METREADBILLSCOUNTER.................................................19
20. Write bills counter – METWRITEBILLSCOUNTER( alue)....................................19
21. Read change counter - METREADCHANGECOUNTER......................................20
22. Write change counter – METWRITECHANGECOUNTER( alue)........................20
23. Read cashless counter - METREADCASHLESSCOUNTER................................20
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 2/26

24. Write cashless counter – METWRITECASHLESSCOUNTER( alue)..................20
25. Read product counter - METREADPRODUCTCOUNTER(n)...............................21
26. Write product counter – METWRITEPRODUCTCOUNTER(n, alue)...................21
27. Read ending settings - METREADVENDINGSETTINGS...................................21
28. Write ending settings – METWRITEVENDINGSETTINGS( alue)......................21
29. Read current credit - METREADCURRENTCREDIT............................................22
30. Setting RTC...........................................................................................................22
32. Reading RTC.........................................................................................................23
C. Unsolicited messages.................................................................................................23
1. Vend request...........................................................................................................23
2. Vend result...............................................................................................................23
3. Bill accepted............................................................................................................23
4. Coin accepted..........................................................................................................24
5. Change requested...................................................................................................25
6. Cashless finish session...........................................................................................25
7. Cashless start session.............................................................................................25
8. Button pressed........................................................................................................25
Notes:...................................................................................................................................26
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 3/26

I. Device overview
This de ice was designed to offer a quick de elopment support for cashless systems on
Executi e ending machines and using MDB payment systems. It acts like a bridge
between any Executi e machine and MDB payment systems (bill alidator, coin
acceptor/changer and a cashless de ice). This de ice is working only with Le el 3 or
higher coin changers, because it only supports alternati e payout change mode of MDB
protocol.
IMPORTANT!!! - The machine must be set on Executi e, either price holding mode (prices
are kept on the de ice not on the machine) or with prices on the machine. When the prices
are held on the machine, you will not be able to obtain a total alue of sold products, unles
your application keeps the prices for each item, too.
It can be used on any Executi e price holding ending machine with a maximum of 96
selections (products).
The de ice is self maintained and transparently manages the entire Executi e, MDB and
transactions flow.
The main functions a ailable remotely by using serial port are:
•reading de ice memory (including sales counters, cash counters, ending settings,
etc.);
•writing de ice memory (erasing counters, setting prices, setting ending settings,
etc.);
•rising a credit to the ending machine;
•gi e some change to the customer;
•reading informations about the MDB cash payment systems status;
•reading informations about the current selected product on the machine’s keyboard;
•reading informations about the last transaction ( end success, end failed);
•reading informations about the cash inserted and about the change returned to the;
•reading informations about the VMC status;
•resetting the de ice.
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 4/26

II. Hardware overview.
1. Connectors description
•J5 – see table below
Pin no. Pin description Function details
1 AC power IN AC power IN – only for Executi e bridge and MDB master mode
2 AC power IN AC power IN – only for Executi e bridge and MDB master mode
3 24VDC power IN/OUT MDB sla e power input
4 GND GND
5 GND Signal GND for MDB master mode
6 Master RX MDB master mode RX
7 GND GND
8 Master TX MDB master mode TX
9 GND GND
10 Executi e RX Executi e to MDB bridge mode – Executi e RX
11 GND GND
12 Executi e TX Executi e to MDB bridge mode – Executi e TX
13 GND GND
14 MDB sla e TX MDB sla e mode TX
15 GND GND
16 MDB sla e RX MDB sla e mode RX
17 Signal GND MDB sla e mode signal GND
18 Master wake Not implemented in this firmware ersion (battery mode MDB payment
systems wake signal)
•J1 – working mode change jumper
•J8 – when installed, enables MDB sniffer
•J4 – RS232 DB9 female connector. You need a straight cable or you can connect
an USB to RS232 cable. Please make sure your USB to RS232 cable/con erter can
correctly handle hardware flow (RTS/CTS). Best results were obtained using FTDI
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 5/26

based cables/con erters and PL2303 based cables/con erters. Please chek our
demo application to see the correct RTS/CTS handling.
2. Power supply requirements
The PICOBRIDGE can be powered with 24V AC/DC or 12V AC/DC, depending on your
MDB PERIPHERALS.
NOTE: If you apply 24AC, please make sure that your MDB peripherals can support
34VDC input. Otherwise, use a DC power supply.
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 6/26

3. Device memory map
The de ice’s non- olatile memory contains all settings and counters needed for the
de ice to work. The table below shows the memory map.
Address
(decimal)
Size
(bytes)
Description
0 → 383 384 Prices – not scaled (4 bytes for each price, from selection 1 to 96)
for example a price of EUR12.50 will be represented by the following alue:
- B0 – 0x00
- B1 – 0x00
- B2 – 0x04
- B3 - 0xE2
384 1 Vending settings - needs device reset command after successful write of this settings
- b0 – if set – machine is multi end, otherwise single end
- b1 – if set – machine is in price holding mode, otherwise, the prices are set on the machine
- b2 – if set – machine is in force end mode (no change without sale), otherwise it will return change e en
if no sale requested (can work as a change machine)
- b3 – if set – machine returns no change (change inhibited)
- b4 – if set – machine displays price if no credit a ailable
- b5 – b7 – reser ed (not used in this ersion)
385 → 388 4 Maximum cash credit accepted for a transaction - needs device reset command after successful write
of this settings
389 → 392 4 Maximum change that machine can return for a transaction - needs device reset command after
successful write of this settings
393 1 Scaling factor (usually 10 co ers most of the currencies) - needs device reset command after
successful write of this settings
394 1 Decimal point (on the machine’s display) - needs device reset command after successful write of this
settings
- if it is 0 – no decimal places
- if it is 2 – one decimal
- if it is 4 – two decimals
- if it is 8 - three decimals
395 → 398 4 Not used in this ersion
399 → 403 5 Not used in this ersion
404 → 454 50 Not used in this ersion
455 → 505 50 Not used in this ersion
506 → 556 50 Not used in this ersion
557 → 607 50 Not used in this ersion
608 → 611 4 Not used in this ersion
612 1 Button status – not used in this ersion – kept for PICOVEND GIGA protocol compatibility
- b0 – button 1 pressed since the last ACK sent to the de ice
- b1 – button 2 pressed since the last ACK send to the de ice
- b2 → b7 – reser ed for future use
613 → 814 207 Not used in this ersion
815 → 818 4 Cashless counter (accumulated cashless sales alue)
819 → 822 4 Change counter (accumulated change returned alue)
823 → 826 4 Bill counter (accumulated bill accepted alue)
827 → 830 4 Coins counter (accumulated coins accepted alue)
831 → 1023 192 Products counters (2 bytes for each product, from selection 1 to 96)
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 7/26

III. ow level communication protocol
A. Serial port settings
The low le el communication protocol can be used with and hardware flow control capable
RS232 de ice (PLC, SBC, industrial computer, etc.)
Communication parameters are:
•baud rate – 115200 (could be deli ered with other baud rates upon request)
•data bits – 8
•stop bits – 1
•parity – None
•hardware flow control (RTS/CTS)
B. ow level protocol messages
E ery message consists of a message header, message data and CRC. The CRC is
calculated by an XOR operation of the message header and message data bytes.
E ery time a command or a response is sent, the other de ice should answer with ACK or
NACK, accordingly.
ACK message is: 0xFC 0xFC 0xFC 0xFC 0x00
NACK message is: 0xFD 0xFD 0xFD 0xFD 0x00
As a con ention for the protocol description tables, B0, B1, … Bn represents “byte
number” and b0, b1, … bn represents “bit number”. Also, we will refer to this interface as
“de ice” or as “bridge”
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 8/26

1. Write to memory
Using this command the data is written into the de ice non- olatile memory. The maximum
length of data that could be written with one command is 64bytes. The de ice’s internal
memory store the ending settings, counters, prices, etc. It is possible to modify, at any
time, any of the de ice’s settings, reset the counters, etc. After modifying the ending
configuration, the user application must send a reset command to the de ice. Prices and
counters modification does not need a reset.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x01 - B2-B3 – beginning address to write (for example 0x02 0x58 means that the first byte will
be written at address decimal 600)
- B4-Bn – data bytes to be written starting with address [B2:B3]
CRC
Device response
ACK or NACK, according to the command execution result
WARNING!
Writing wrong values for some parameters may put the device in an unstable or
unknown state. You are responsible to manage parameter settings to keep the
interface working. Be careful modifying those parameters and please make sure you
clearly understand the meaning of each parameter.
2. Read from memory
Using this command the data could be read from de ice’s non- olatile memory. The
maximum length of data that could be read with one command is 64 bytes. The de ice’s
internal memory store the ending settings, counters, prices, etc. It is highly recommended
to read memory locations after write operations, to ensure that data was correctly written.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x02 - B2-B3 – beginning address to read (for example 0x02 0x58 means that the first byte will
be read from address decimal 600)
- B4-B5 – data length
CRC
Device response
0xFA 0x02 - B2 → Bn – data bytes read from memory CRC
3. Device reset
Using this command the user’s application can reset the de ice at any moment. After
reset, the ending settings are reloaded and the current credit is set to 0.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x03 No parameters 0xF9
Device response
ACK or NACK, according to the command execution result
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 9/26

4. Get device status
Using this command, at any time, the de ice can be interrogated about it’s and it’s
peripherals status.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x09 No parameters CRC
Device response
0xFA 0x09 Note: - the response CMD is 0x09 and not 0x04!!!
Status message
- B2 – B16 – De ice name (ASCII) for example PICOBRDGEXEMDB
- B17 – B24 – bill alidator status history (B24 contains the latest status – codes are based
on the MDB bill alidator answers on MDB poll command)
- B25 – B32 – coin acceptor status history (B32 contains the latest status – codes are
based on the MDB coin answers answers on MDB poll command)
- B33 – B40 – cashless de ice status history (B40 contains the latest status – codes are
based on the MDB cashless answers on MDB poll command)
- B41 – B44 – VMC status history (0x00 – machine is up and running, 0x40, machine is out
of order)
- B45 – B48 – coins alue counter
- B49 – B52 – bills alue counter
- B53 – B56 – cashless alue counter
- B57 – B60 – change alue counter
- B61 – B64 – tube status (total coins alue a ailable in changer tubes)
- B65 – Always read 0
- B66 – B69 – current cash credit
- B70 – B73 – current cashless credit
- B74 – B75 – allways read 0x0000
- B76 – B87 – de ice serial number (ASCII representation of HEX serial number)
Most of the abo e alues may be modified by using writemem command at the right
address (see memory map table)
CRC
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 10/26

5. Send some credit to the machine
Using this command the user’s application can send a credit to the ending machine in
order to offer the possibility to select and sell a product. If the credit is higher than the price
of the product selected by the customer, the difference will be ignored and cleared after
the transaction, if the transaction is successful. When the customer is selecting a product,
the de ice will return an unsolicited message containing selection number and selection
price (see below – “Product selected – unsolicited message”). At the end of the
transaction, the de ice will return an unsolicited message containing the transaction result
(success or failed) according to the machine’s response, based on Executi e protocol.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x06 - B2 → B5 – The alue (not scaled) that the user application needs to rise on the machine CRC
Device response
ACK or NACK, according to the command execution result
6. Return change to the customer
Using this command the user’s application can send a command to force return change tu
the customer.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x08 - B2 → B5 – The alue (not scaled) that the user application needs to return to the
customer
CRC
Device response
ACK or NACK, according to the command execution result
7. Request current credit
This command can be used at any time to check if the machine has some credit. The
“Send credit” command also modify the amount reported by this command.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x0C None CRC
Device response
0xFA 0x0C - B2 → B5 – The alue (not scaled) of the current credit on the machine.
For example, for EUR10.00 the alues will be:
- B2 = 0x00
- B3 = 0x00
- B4 = 0x03
- B5 = 0xE8
- B6 → B9 – The alue (not scaled) of the current cashless credit on the machine (if an
MDB cashless de ice is connected and the cashless media is inserted).
CRC
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 11/26

8. Product selected – unsolicited message
This message could be recei ed at any time, if the customer selects a product. It can be
recei ed e en if there is no credit on the machine. The user’s application can decide to
send the corresponding credit to the de ice. In this situation, the machine will automatically
sell the selected product. The credit must be sent in a short inter al that depends on the
machine (usually 8-10 seconds).
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x0A - B2 – selection number
- B3 → B6 – selection price
CRC
9. Transaction result – unsolicited message
This message it is recei ed at the end of e ery transaction, to inform the user’s application
about it.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x0B - B2 – transaction result (0x00 – transaction failed, 0x01 – transaction successful) CRC
10. Bill accepted by the vending machine – unsolicited message
This message is recei ed e ery time a bill is accepted and stacked.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x0D - B2 – B5 – the alue (not scaled) of the last bill accepted and stacked by the bill alidator
For example, for EUR10.00 the alues will be:
- B2 = 0x00
- B3 = 0x00
- B4 = 0x03
- B5 = 0xE8
CRC
11. Coin accepted by the vending machine – unsolicited message
This message is recei ed e ery time a coin is accepted and sorted.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x0E - B2 – B5 – the alue (not scaled) of the last coin accepted and sorted by the bill alidator
For example, for EUR1.00 the alues will be:
- B2 = 0x00
- B3 = 0x00
- B4 = 0x00
- B5 = 0x64
CRC
12. Cashless in session – unsolicited message
This message is recei ed e ery time the attached MDB cashless de ice is opening a
cashless session, if the cashless credit is not 0.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x10 - B2 – B5 – the alue (not scaled) of the credit a ailable on cashless media
For example, for EUR1.00 the alues will be:
- B2 = 0x00
- B3 = 0x00
- B4 = 0x00
- B5 = 0x64
CRC
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 12/26

13. Cashless finished session – unsolicited message
This message is recei ed e ery time the attached MDB cashless is closing the current
session
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x10 - B2 – B5 – always 0xFFFFFFFF CRC
14. Change requested – unsolicited message
This message is recei ed e ery time a customers press the change request button or le er
or e ery time the de ice is sending “Return change” command.
<HEADER>
(B0)
<CMD>
(B1)
<PARAMETERS>
(B2 to Bn)
<CRC>
(Bn + 1)
0xFA 0x0F - B2 – B5 – the alue (not scaled) of the last coin accepted and sorted by the bill alidator
For example, for EUR1.00 the alues will be:
- B2 = 0x00
- B3 = 0x00
- B4 = 0x00
- B5 = 0x64
Value is 0xFFFFFFFF if one of the conditions below are met (and the interface will not
return change to the customer e en if there is some credit remaining):
- credit comes o er the serial interface and not from inserted cash (let you control if you
want to return change for cashless credit loaded by serial port)
- machine is set for force end and no product sold, yet
- current cash credit is greater than maximum change set on the interface
- there are not enough coins in the coin changer
- if the change operation is inhibited in the interface settings
Pressing changer escrow le er while the current credit is 0 will be ignored. No message
sent in this situation.
CRC
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 13/26

IV. High level protocol
A. Overview
The high le el protocol is a ailable by using our demo application that is connecting to the
serial port and that can be accessed by the user’s application through a socket.
The application requires Python 3 to be installed on the user’s application computer and,
also, depends on PySerial (tested with PySerial ersions 3.0.1, 3.2.4 and 3.3).
The demo application requires one parameter (serial port name) and listens on port 5127
TCP.
You can use telnet or other similar application to test the daemon, sending simple
commands and recei ing JSON response messages.
The JSON answer is a list containing the hexadecimal alues of the binary low le el
protocol in chapter III or an interpreted message, depending on the issued command.
B. Protocol description
1. Write to memory - METWRITEMEM
This command writes a set of bytes starting at a specified address. The data set length
cannot be longer than 64 bytes. The dataset is a list of bytes, in decimal format.
Command
Example, setting second price to 1600 (EUR16.00)
METWRITEMEM(4,0,0,6,64)
First parameter of this function is the address to start writing, the rest of the parameters are byte alues to write
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
2. Read from memory - METREADMEM
This command writes a set of bytes starting at a specified address. The data set length
cannot be longer than 120 bytes. The dataset is a list of bytes, in decimal format.
Command
Example, reading second price
METREADMEM(4,4)
First parameter of this function is the address to start reading, the second parameter is the length (in bytes) to read
Device response
"{De iceMessage": "ReadMemory",
"StartAddress": 0,
"DataLegth": 10,
"MemoryData": [0,0,0,100,0,0,0,150,0,0]}
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 14/26

3. Send credit to the machine - METSENDCREDIT(value)
This command sends a credit to the machine (not scaled alue)
Command
Example, sending EUR1.60 to the machine
METSENDCREDIT(160)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
4. Return change from the machine - METSENDCHANGE(value)
This command returns change (not scaled alue)
Command
Example, return EUR1.60 from changer
METSENDCHANGE(160)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
5. Get device status - METGETSTATUS
This command returns a JSON corresponding to the peripherals and counters status.
Command
METGETSTATUS
Device response
{De iceMessage": "De iceStatus",
"De iceName": "PICOBRDGEXEMDB ",
"BillStatus": [144,0,128,0,144,0,128,0],
"CoinStatus": [0,1,2,0,1,0,1,0],
"CashlessStatus": [0,0,0,0,0,0,0,0],
"VMCStatus": [0,0,0,0],
"CoinsCounter": 4294967295,
"BillsCounter": 700,
"CashlessCounter": 4294967295,
"ChangeCounter": 300,
"A ailableChange": 8720,
"Button1": "NotPressed",
"Button2": "NotPressed",
"CurrentCashCredit": 0,
"CurrentCashlessCredit": 0,
"CurrentTemperature": 0.0,
"SerialNumber": "d880399756ca"}
This de ice has no buttons input circuits, it will always return “NotPressed” for buttons – kept for protocol compatibility
This de ice has no temperature sensor, it will always return 0.00 – kept for protocol compatibility
6. Device reset - METRESET
This command will reset the de ice
Command
METRESET
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 15/26

7. Read product price - METREADPRICE(n)
Using this command the user’s application can read the price of specified product. Prices
are stored into the de ice’s non- olatile memory
Command Description
METREADPRICE(n) - Reads the non-scaled price for the product number “n”. First
product is product number 1, last product is the product number
96
Below is the answer to the METREADPRICE(5) command
Device response
{"De iceResponse":"ReadPrice","ProductNumber":"5","ProductPrice":"150"}
8. Write product price – METWRITEPRICE(n,value)
Using this command the user’s application can write the price of specified product. Prices
are stored into the de ice’s non- olatile memory
Command Description
METWRITEPRICE(n, alue) - Writes the non-scaled price for the product number “n”. First
product is product number 1, last product is the product number
96. For example METWRITEPRICE(5,150) sets the price of the 5th
selection to EUR 1.50
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
9. Read maximum credit setting - METREADMAXCREDIT
Using this command the user’s application can read the maximum credit set on the de ice.
While a transaction, if the cash inserted by the customer reaches this limit, the payment
systems are inhibited. It Is a safety method to a oid returning too much change.
Command Description
METREADMAXCREDIT - Reads the non-scaled MAXIMUM CREDIT settings for
transactions.
Below is the an example answer to the METREADMAXCREDIT
command (maximum credit is set to EUR 10.00)
Device response
{"De iceResponse":"ReadMaxCredit","MaxCreditValue":"1000"}
10. Write maximum credit setting - METWRITEMAXCREDIT(value)
Using this command the user’s application can write the maximum credit set on the de ice.
While a transaction, if the cash inserted by the customer reaches this limit, the payment
systems are inhibited. It Is a safety method to a oid returning too much change.
Command Description
METWRITEMAXCREDIT( alue)
Requires METRESET after issuing this command, since the
value is loaded only once, at start-up
- Writes the non-scaled MAXIMUM CREDIT accepted for a
transaction. For example set max credit to EUR 5:.00
METWRITEMAXCREDIT(500)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 16/26

11. Read maximum change setting - METREADMAXCHANGE
Using this command the user’s application can read the maximum change permitted after
a transaction. If the credit remaining after a transaction is higher than this alue, them the
machine will not return change. It is used also as a safety method to a oid returning too
much change.
Command Description
METREADMAXCHANGE - Reads the non-scaled MAXIMUM CHANGE settings for
transactions.
Below is the an example answer to the METREADMAXCHANGE
command (maximum credit is set to EUR 9.00)
Device response
{"De iceResponse":"ReadMaxChange","MaxChangeValue":"900"}
12. Write maximum change setting - METWRITEMAXCHANGE(value)
Using this command the user’s application can write the maximum credit set on the de ice.
While a transaction, if the cash inserted by the customer reaches this limit, the payment
systems are inhibited. It Is a safety method to a oid returning too much change.
Command Description
METWRITEMAXCHANGE( alue)
Requires METRESET after issuing this command, since the
value is loaded only once, at start-up
- Writes the non-scaled MAXIMUM CHANGE accepted for a
transaction. For example set max change to EUR 5.00:
METWRITEMAXCHANGE(500)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
13. Read scaling factor - METREADSCA INGFACTOR
Using this command the user’s application can read the scaling factor on the de ice.
Usually is is a good practice to keep the scaling factor sync-ed with the machine’s scaling
factor setting. Some machines are ignoring this and work on their scaling factor. In that
case, if they are not matching, this will dri e you to display error on alues.
Command Description
METREADSCALINGFACTOR - Reads the SCALING FACTOR settings credit and price display.
Below is the an example answer to the
METREADSCALINGFACTOR command (where scaling factor is
10)
Device response
{"De iceResponse":"ReadScalingFactor","ScalingFactorValue":"10"}
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 17/26

14. Write scaling factor – METWRITESCA INGFACTOR(value)
Using this command the user’s application can write the scaling factor set on the de ice.
Usually is is a good practice to keep the scaling factor sync-ed with the machine’s scaling
factor setting. Some machines are ignoring this and work on their scaling factor. In that
case, if they are not matching, this will dri e you to display error on alues.
Command Description
METWRITESCALINGFACTOR( alue)
Requires METRESET after issuing this command, since the
value is loaded only once, at start-up
- Writes the SCALING FACTOR setting for credit/price display. For
example set scaling factor to 10:
METWRITESCALINGFACTOR(10)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
15. Read decimal point - METREADDECIMA POINT
Using this command the user’s application can read the decimal point on the de ice.
Usually is is a good practice to keep the decimal point sync-ed with the machine’s decimal
point setting. Some machines are ignoring this and work on their decimal point setting. In
that case, if they are not matching, this will dri e you to display error on alues.
Command Description
METREADDECIMALPOINT - Reads the DECIMAL POINT settings for credit/price display.
Below is an example answer to the METREADDECIMALPOINT
command (where decimal point is 2, meaning 2 decimals after the
decimal point):
Device response
{"De iceResponse":"ReadDecimalPoint","DecimalsNumber":"2"}
16. Write decimal point – METWRITEDECIMA POINT(value)
Using this command the user’s application can write the decimal point on the de ice.
Usually is is a good practice to keep the decimal point sync-ed with the machine’s decimal
point setting. Some machines are ignoring this and work on their decimal point setting. In
that case, if they are not matching, this will dri e you to display error on alues.
Command Description
METWRITEDECIMALPOINT( alue)
Requires METRESET after issuing this command, since the
value is loaded only once, at start-up
- Writes the DECIMAL POINT. For example set decimal point to 2:
METWRITESCALINGFACTOR(2)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 18/26

17. Read coins counter - METREADCOINSCOUNTER
Using this command the user’s application can read the non- olatile counter representing
the total alue of the cashed coins.
Command Description
METREADCOINSCOUNTER Reads the COINS COUNTER
Below is an example where the de ice shows a alue or EUR 6.70
for the cashed coins.
Device response
{"De iceResponse":"ReadCoinsCounterValue","CoinsCounterValue":"670"}
18. Write coins counter – METWRITECOINSCOUNTER(value)
Using this command the user’s application can write the non- olatile counter representing
the total alue of the cashed coins. It can be used to set this alue to 0 when the ending
machine operator is performing a cash-collect operation.
Command Description
METWRITECOINSCOUNTER( alue) - Writes the coins counter. For example resetting the counter on
cash-collect: METWRITECOINSCOUNTER(0)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
19. Read bills counter - METREADBI SCOUNTER
Using this command the user’s application can read the non- olatile counter representing
the total alue of the cashed bills.
Command Description
METREADBILLSCOUNTER Reads the BILLS COUNTER
Below is an example where the de ice shows a alue or EUR
104.00 for the cashed bills.
Device response
{"De iceResponse":"ReadBillsCounterValue","BillsCounterValue":"10400"}
20. Write bills counter – METWRITEBI SCOUNTER(value)
Using this command the user’s application can write the non- olatile counter representing
the total alue of the cashed bills. It can be used to set this alue to 0 when the ending
machine operator is performing a cash-collect operation.
Command Description
METWRITEBILLSCOUNTER( alue) - Writes the bills counter. For example resetting the counter on
cash-collect: METWRITEBILLSCOUNTER(0)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 19/26

21. Read change counter - METREADCHANGECOUNTER
Using this command the user’s application can read the non- olatile counter representing
the total alue of the returned change to the customers.
Command Description
METREADCHANGECOUNTER Reads the CHANGE COUNTER
Below is an example where the de ice shows a alue or EUR
12.10 for the returned change.
Device response
{"De iceResponse":"ReadChangeCounterValue","ChangeCounterValue":"1210"}
22. Write change counter – METWRITECHANGECOUNTER(value)
Using this command the user’s application can write the non- olatile counter representing
the total alue of the returned change. It can be used to set this alue to 0 when the
ending machine operator is performing a cash-collect operation.
Command Description
METWRITECHANGECOUNTER( alue) - Writes the change counter. For example resetting the counter on
cash-collect: METWRITECHANGECOUNTER(0)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
23. Read cashless counter - METREADCASH ESSCOUNTER
Using this command the user’s application can read the non- olatile counter representing
the total alue of the cashless transactions.
Command Description
METREADCASHLESSECOUNTER Reads the CASHLESS COUNTER
Below is an example where the de ice shows a alue or EUR
12.50 for cashless transactions.
Device response
{"De iceResponse":"ReadCashlessCounterValue","CashlessCounterValue":"1250"}
24. Write cashless counter – METWRITECASH ESSCOUNTER(value)
Using this command the user’s application can write the non- olatile counter representing
the total alue of the cashless transactions. It can be used to set this alue to 0 when the
ending machine operator is performing a cash-collect operation.
Command Description
METWRITECASHLESSCOUNTER( alue) - Writes the cashlesscounter. For example resetting the counter
on cash-collect: METWRITECASHLESSCOUNTER(0)
Device response
{"De iceResponse": "Acknowledge","MessageID": 101}
{"Error": "Syntax Error","ErrorCode": 1001}
{"Error": "Unknown command","ErrorCode": 1002}
© - 2018 – AUTOMATROM SRL – www.automatrom.ro Page 20/26
Table of contents
Popular Vending Machine manuals by other brands

AutoCrib
AutoCrib ROBOCRIB TX750 Operation manual

Laurel Metal Products Incorporated
Laurel Metal Products Incorporated 2599 Operation and service manual

Sanden
Sanden Vendo SVE 100 User and maintenance manual

Automatic Products
Automatic Products PREMIER 937 SATELLITE Setup and installation

Crane
Crane 721 parts manual

icetro
icetro ISIV-273SHC user manual