MiniRemoteComm_v1_7b
MiniRemoteComm_v1_7b
MiniRemoteComm_v1_7b
REMOTE
COMMUNICATION
Technical reference
Ethernet / RS232
Version: November 2017
MT Firmware 1.98
Revision history
Introduction .................................................................................................................4
Conventions used in this guide ............................................................................................................ 4
What you should understand before continuing .................................................................................. 4
Basics of communicating with the Mini Series...................................................................................... 5
Examples .............................................................................................................................................. 6
Quick Guide..................................................................................................................7
RS232 quick guide ................................................................................................................................ 7
Ethernet quick guide............................................................................................................................. 8
ENUMERATIONS.........................................................................................................42
ERROR CODES ............................................................................................................45
ENCODING .................................................................................................................46
Encoding tables .................................................................................................................................. 47
Page 4 of 52 Mini Series remote control manual
Introduction
The MiniTouch / MiniKey products are powerful stand-alone controllers with ability to perform almost any
print task using the print jobs as templates and external communication through RS232 or Ethernet.
Design layouts once, and fill with content as required. Select jobs. Change parameters. Ask status – and
many other functions are possible. Using intelligence of external software allows you to extend the
possibilities of the controllers to do almost anything you want.
And with the MiniTouch you have even more flexibility because of its ability to interact with external devices.
With this controller you get 7 output signals that can be controlled by events OR manually by remote control.
You do not get a pre-defined software package with Mini series. Instead, you get the building blocks which
allow you to custom build a tailored solution for the individual application.
In order to understand the protocol for communicating with the Mini series, you should understand:
Fundamentals of RS232 and the ASCII character set, such as hexadecimal values and escape codes
It does not matter what programming language you use to connect to the controller. Perl, Ruby, VB.NET,
C++, C# or AutoIT Script are all among possible alternatives.
Please bear in mind that HSA can not support you in the above fundamentals.
You should consult an external programmer if you do not fully understand this
documentation.
You are recommended to read the source code of the free examples we provide
and build your application from there.
Page 5 of 52 Mini Series remote control manual
Before going into details about the commands, you should understand some basics about communication
with the Mini Series.
For Ethernet, all commands and responses are terminated by the “#” character.
A group of “special characters” ( '#' ';' ':' '\' ) must be escaped by \ (backslash) to be used in
content.
ALL other character values are returned and sent in their raw ascii value (32 .. 255). Language
sets other than English must be encoded according to ANSI / Windows 12xx. Make sure that
characters above ascii 127 are not interpreted as control characters in your application. See section
on encoding.
For Ethernet: When content is returned (by a REQuest command) the content is NOT escaped, so
you have to be careful if the content contains one of the special characters. Example: content
##Hello## is returned as DAT:S1=static;tex=##Hello###
The programmer must evaluate only LAST returned separator in the string, or
communication will break.
For RS232 communication, use a NULL-modem cable on pins 2,3 and 5 with these parameters:
You can change these parameters if your applications requires it.
For RS232 you MUST enclose command strings in ESC (ascii 27) and EOT (ascii 04). These special
characters are written <ESC> and <EOT> in this guide.
For Ethernet communication, use device IP address, port 3000. You can set IP / Netmask / Gateway
manually or use DHCP server on same network. DHCP is the simplest and recommended.
The Mini Series will send a response to EVERY command you send with a result code. It is not
NECESSARY to evaluate response, but strongly recommended.
The Mini Series separates OBJECTS and CONTENT. Objects have visual properties like position,
where content have options for the text you can read.
The commands to use are abbreviated to single letters when using RS232. This is to speed up
communication
The commands AND all object names are CASE SENSITIVE. RO is not identical to Ro, like Object1
is not identical to object1
Page 6 of 52 Mini Series remote control manual
Examples
Below follows a few examples of the communication. If you do not understand at first, do not worry, the
commands will be explained below.
The examples both demonstrate connection, changing some content and disconnecting.
RS232 communication
<ESC>CC;admin;admin<EOT> Login
<ESC>C<ACK><EOT> ..accepted
<ESC>CF;FILE1<EOT> Load “FILE1”
<ESC>C<ACK><EOT> ..accepted
<ESC>Obatch:T=12345<EOT> Chg. batch to 12345
<ESC>O<ACK><EOT> ..acepted
<ESC>CD<EOT> Logout
Ethernet communication
CMD:C;admin;admin# Login
RES:0;Transmission OK# ..accepted
CMD:F;FILE1# Load “File1”
RES:0;Transmission OK# ..accepted
OBJ:batch;TEX=12345# Chg. batch to 12345
RES:0;Transmission OK# ..accepted
CMD:D# Logout
Page 7 of 52 Mini Series remote control manual
Quick Guide
Use the quick guide as a 1-page reference for the most common tasks. This is your checklist for most
communication.
For all commands, the controller will return a response in the form
<ESC>{command}<ACK><EOT> SUCCESS, command accepted
<ESC><NAK>{error code}<EOT> FAIL, not executed
COMMAND REFERENCE
This chapter contains a complete reference for the commands available on the Mini Series, including
examples.
Page 10 of 52 Mini Series remote control manual
Ex2:
<ESC>CC;<user>;<password><EOT>
<ESC>C<ACK><EOT>
User message U <line1>;<line2>;<line3> C<ACK> Displayes user text lines on MT <ESC>CU;Controlled;Important!; The 3 user lines are
(line2 + line3 are optional) display. Please don't turn off<EOT> displayed on MT
<ESC>C<ACK><EOT> "Remotely Controlled"
menu.
Reboot Q R (reboot optional) C<ACK> Reboots or shuts down MT
(shutdown if R is omitted)
Set output O <output C<ACK> Set an output (0-6), either with an <ESC>CO;1;200;2000<EOT> Output nr 0 = IO output 1
nr>;<delay(mm)>;<pulse(mm)> delayed pulse (outputs 0-3 only) or Output nr 1 = IO output 2
<output nr>;<1|0> with constant value (outputs 2-6 (set IO output 2 for 2000mm after 200mm) Output nr 2 = Control
only) output 1
<ESC>CO;2;1<EOT> Output nr 3 = Control
output 2
(set control output 1)
etc…
Page 12 of 52 Mini Series remote control manual
Text Objects
Name Function Parameters Reply Description Example Notes
Text <text_object> T=<new text> O<ACK> Sets text of text object (text <ESC>OMY_TEXT;T=this is a Max text size is 127 chars.
object must be linked to a static test<EOT> Only for text objects linked
content, and ONLY contain ONE to static content.
<ESC>O<ACK><EOT>
content).
Font by number <text_object> f=<font number> O<ACK> Sets text print font to font with <ESC>OT1;f=4<EOT>
list number
<font number>.
Font by name <text_object> F=<font name> O<ACK> Sets text print font to font with <ESC>OT1;F=Arial10<EOT>
<font name>.
Position <text_object> P=<x>,<y> O<ACK> Sets text object position in print. <ESC>OT1;P=600,10<EOT> (0,0) is upper left corner.
Measurement in pixel
600 pixel = 1 inch =
2.54cm
Page 14 of 52 Mini Series remote control manual
Graphic objects
Name Function Parameters Reply Description Example Notes
Logo <graphic_object> l=<logo name> O<ACK> Sets active logo of a Graphics logo object <ESC>OL1;l=mylogo<EOT>
by logo name (7-char logo name given at
upload time)
Logo by number <graphic_object> N=<logo number> O<ACK> Sets active logo of a Graphics logo object
by logo number.
Position <graphic_object> P=<x>,<y> O<ACK> Sets graphic object position in print.
Line width <graphic_object> W=<line width in pixels> O<ACK> Sets graphic box or line object line width.
Length <graphic_object> L=<object length in O<ACK> Sets graphic box width or line length.
pixels>
Height <graphic_object> H=<object height in O<ACK> Sets graphic box height.
pixels>
Fill <graphic_object> B=<1|0> (1=ON) O<ACK> Sets graphic box black fill ON/OFF.
Barcode objects
Static content
Name Function Parameters Reply Description Example Notes
Text <Static content> T=<new text> O<ACK> Sets text of a static content object. <ESC>OMY_STATIC;T=this is Max text size is 127 chars.
a test<EOT>
<ESC>O<ACK><EOT>
Counter content
Name Function Parameters Reply Description Example Notes
Minimum value <counter> m=<value> O<ACK> Set minimum count value of a counter Min value must be less than
content. counter max value.
Maximum value <counter> M=<value> O<ACK> Set maximum count value of a counter Max value must be larger than
content. counter min value.
Current value <counter> C=<value> O<ACK> Set current count value of a counter New counter value must be within
content. min/max limits.
Digits <counter> D=<value> O<ACK> Set amount of digits in a counter content. Max 10 digits.
Repeats <counter> R=<value> O<ACK> Set amount of prints per counter
increment.
Step <counter> S=<value> O<ACK> Set counter increment value.
Leadin <counter> L=< |'0'|> (' '=spaces O<ACK> Set leadin of printed counter value. <ESC>OCOUNTER;L=x<EOT>
leadin, (x = other so no leadin)
<ESC>O<ACK><EOT>
'0'=zeros leadin ,
blank/others=no leadin)
Page 17 of 52 Mini Series remote control manual
Date/Time content
Name Function Parameters Reply Description Example Notes
Expirery day offset <datatime_content> E=<day offset> O<ACK> Set day offset of a date content. In the layout design you can
also offset by months, years,
hours, minutes and seconds.
Format <datatime_content> F=<format string> O<ACK> Sets date/time content print format.
(see format types)
Date set <datatime_content> D=<year/month/day> O<ACK> Sets date of a data/time content object. <ESC>ODate1;D=2012/12/30<EOT>
<ESC>O<ACK><EOT>
Time set <datatime_content> T=<hour:minute:second> O<ACK> Sets time of a data/time content object. <ESC>ODate1;T=13:37:14<EOT>
<ESC>O<ACK><EOT>
Page 18 of 52 Mini Series remote control manual
Parameter commands are appended with <L|M|none> to set (L)ayout, (M)achine or none=Machine paremeters.
Example: Sets resolution, encoder parm, print mode and buffer mode Machine parameters in 1 command.
<ESC>PM:r=0;e=0,04;E=P;B=-<EOT>
<ESC>P<ACK><EOT>
Print parameters
Name Function Parameters Reply Description Example Notes
Picture length <L|M|none> L=<value> (in pixels) P<ACK> Set picture length i pixels. <ESC>PM:L=2400<EOT> 600 pixel = 1 inch = 2.54
cm
Resolution <L|M|none> r=<600|300|1row300A| P<ACK> Set print resolution. (Sets both vertical and <ESC>PM:r=600<EOT>
1row300B> horizontal resolution to selected). 1row300A
prints with row A only, 1row300B is row B
only.
Vertical Resolution <L|M|none> vres=<600|300|1row300 P<ACK> Set vertical resolution. 600 and 300 implies <ESC>P:vres=1row300A<EOT>
A|1row300B> 2row printing. 1row300A prints with row A
only, 1row300B is row B only.
Horizontal <L|M|none> hres=<75|90|110|150|2 P<ACK> Set horizontal resolution. <ESC>P:hres=320<EOT>
Resolution 00|240
|300|320|400|440|
480|500|600|800|
960|1200|1600|2400>
Print direction <L|M|none> D=<r|l|b> P<ACK> Set print direction (r)ight|(l)eft|(b)idir. <ESC>PL:D=b<EOT>
Page 19 of 52 Mini Series remote control manual
Bidir start direction <L|M|none> b=<r|l|1|2|3|4> P<ACK> Set start print direction on bidir print mode. <ESC>P:b=4<EOT> On input selection, start is
(right)|(l)eft|input(1) select|input(2) select either set print direction or
|input(3) select|input(4) select opposite set print direction
Start distance <L|M|none> S=<value> (in pixels) P<ACK> Set start distance from start signal to print i <ESC>PL:S=140<EOT>
pixels.
Start dist. (bidir) <L|M|none> >=<value> (right P<ACK> Set bidir start distances from start signal to <ESC>PM:>=1200;<=2400<EOT>
direction in pixels) print.
<=<value> (left direction (>)=right print direction
in pixels) (<)=left print direction
Start sensor edge <L|M|none> G=<+|-> P<ACK> Set startsensor active edge (+=positive, - <ESC>P:G=+<EOT>
=negative).
Modular parameter <L|M|none> M=<value> P<ACK> Set modular parameter.
Velocity parameter <L|M|none> V=<velocity> (in P<ACK> Set velocity parameter. (decimal notation is
meters/min) allowed)
Encoder parameter <L|M|none> e=<encoder_par> (in P<ACK> Set encoder parameter. (decimal notation is
mm/pulse) allowed)
Quadrature <L|M|none> Q=<+|-> P<ACK> Set encoder quadrature on|off.
Repeat <L|M|none> R=<repeats>,<repeat_di P<ACK> Set print repeats and distance between
stance> (in pixels) repeats.
Endless mode <L|M|none> U=<+|-> P<ACK> Set endless print on/off.
Print mode <L|M|none> E=<P|M|V> P<ACK> Set print mode (P)osition, (M)odular or
(V)elocity.
Buffer mode <L|M|none> B=<+|-|u> P<ACK> Set print buffer mode (+)normal buffer (-)no
buffer (u)user managed.
Head offset none O=<head nr>;<head P<ACK> Set pen offsets for a complete head. Offset <ESC>P:O=1;0;0;25mm;50.1mm Sets offsets for head 1, in this
offset>;<pen1 offset>;… are written with/without decimal point, and ;75.2mm<EOT> case a 4-pen stall with
value may be appended with unit type <ESC>P<ACK><EOT> head offset 0 and pen offsets
(mm, in or px for mm, inches or pixels 0, 25mm, 50.1mm and
notation). 75.2mm.
Head parameters None H=<head nr.>; Set head parameter: Offset, Upsidedown, <ESC>P:H=1;U=+<EOT> Enable upsidedown for head
<parameter>=<value> otherside, voltage or head size. <ESC>P<ACK><EOT> 1.
parameters:
offset:
O=<value><unit>
upside/down: U=<+|->
Page 20 of 52 Mini Series remote control manual
otherside: S=<+|->
Mirror: M=<+|->
voltage:
V=<voltage>;<fire
width(us)>
size:s=<head_size>
Pen parameters None P=<head nr>;<pen Set pen parameters: turn off, turn on, offset, <ESC>P:P=1;1;I=42;4<EOT> Set ink supply size (42ml) and
nr>;<parm>=<value> overlap, ink setup, ink warning level (4ml)
<ESC>P<ACK><EOT>
ink reset and pen auto switch. of pen 1 in head 1.
parameters:
turn off: -
turn on: +
offset:
O=<value><unit>
overlap: L=<value>
ink setup: I=<ink supply
(ml)>;<ink low (ml)>
ink reset: R+
pen switch: S=<+|->
Set date none d=<year>/<month>/<d P<ACK> Set system date. <ESC>P:d=2012/12/30<EOT>
ay>
(format yyyy/m/d)
Set time None t=<hour>:<minute>:<s P<ACK> Set system time. <ESC>P:t=17:32:59<EOT>
econd>
(format h:m:s)
Set start sensor block None z=<start_block_dist(units) P<ACK> Set start sensor start block distance and end <ESC>P:z=1mm;30mm<EOT>
distances >; block distance including units (mm|in|px).
<end_block_dist(units)>
Page 21 of 52 Mini Series remote control manual
OBJECT INFORMATION
Name Function Parameters Reply Description Example Notes
Grahic Object info o <grahic_line_object> Ro:<object_name>; Request information about a line. <ESC>Ro:gra1<EOT> See enumeration for graphic
(line) <graphic_type>; types.
<X>,<Y>; Measurements in pixel
<line_length>;<line_width>
Graphic Object o <grahic_box_object> Ro:<object_name>; Request information about a box
info <graphic_type>;
(box) <X>,<Y>;
<box_width>;<box_height>;
<line_width>;
<box_fill+|->
Graphic Object o <grahic_logo_object> Ro:<object_name>; Request information about a logo
info <graphic_type>;
(logo) <X>,<Y>;
<logo_width>;<logo_height>;
<logo_name>
Text Object info o <text_object> Ro:<object_name>; Request information about a text Linked content is the name of
<X>,<Y>;<rotation_type>; object the content linked into the
<font_name>; object
<linked_content_1>;…;<linked_content_n>;
<content_seperator_char>
Barcode Object o <barcode_object> Ro:<object_name>; Request information about a barcode Linked content is the name of
info <X>,<Y>;<rotation_type>; object the content linked into the
<font_name>; object
<linked_content_1>;…; See enumeration for barcodes
<linked_content_n>;
<content_seperator_char>;
Page 23 of 52 Mini Series remote control manual
<barcode_type>;
<checksum_0|1>;
<line_width>;
<black_size>;<white_size>;
<human_readable>;
<lines_height>
CONTENT INFORMATION
Name Function Parameters Reply Description Example Notes
Static Content info c <static_content> Rc:<content_name>;<static_text> Info on a static content <ESC>Rc:Sta1<EOT>
Notice! Special characters (;\#:) are <ESC>Rc:Sta1;Hello
world<EOT>
NOT escaped on request content
Counter Content c <counter_content> Rc:<content_name>; Info on a counter content Leadin type = < |0|>
info <current_value>;
<digits>;
<min_value>;<max_value>;
<repeats>;
<step_value>;<leadin_type>
DateTime Content c <data_time_content> Rc:<content_name>; Info on a datetime content Offset format:
info <format>; <year>-<month>-<day>
<offset>; <hour>:<min>:<sec>
<locales_name>
Shift Content info c <shift_content> Rc:<content_name>; Info on a shiftcode content Shift data format:
<shift_datetime_1>;<shift_data_1>; <year>-<month>-<day>
…; <hour>:<min>:<sec>
<shift_datetime_n>;<shift_data_n>
System Content c <system_content> Rc:<content_name>; Info on a system content
info <system_type>
Identifier content c <identifier_content> Rc:<content_name>; Info on an identifier content
<ID_format>
Page 24 of 52 Mini Series remote control manual
OTHER INFORMATION
Print Done Interrupt d +/- Rd:<print_done_interrupt_on|off_1|0> (when print done and print If print is very fast, there may
interrupt on:) be more than one print before
<ESC>SP:<prints_since_ an interrupt, so
last_interrupt><EOT> <ESC>SP:2<EOT> may be
returned. (or, 3,4…)
Page 26 of 52 Mini Series remote control manual
Reply on succes: RES:0;Transmission OK# IN THE DOCUMENTATION EXAMPLES BELOW THIS IS SHORTED RES:0#
Ex2:
CMD:C;<user>;<password>#
RES:0#
Disconnect D RES:0 Disconnect remote connection to MT CMD:D#
RES:0#
Start print R None – just start print mode. RES:0 Start print mode on MT. Parameter '-' CMD:R;-# CMD:R# with no parameters
(minus sign) starts print mode but RES:0;# starts print mode and MT will
(start print mode and wait for go
<-> (optional - wait for go) wait for go command before printing print on every start switch if
command)
on start switch. Parameter <sw> is valid.
<sw> (optional - print on next 'sw' start print go
CMD:R;1#
switches) command and MT will print on next
RES:0#
<sw> (print on next start switch only)
start switches.
Stop print S RES:0 Stop print mode on MT
Page 27 of 52 Mini Series remote control manual
TEXT OBJECTS
Name Function Parameters Reply Description Example Notes
Text <text_object> TEX=<new text> RES:0 Sets text of text object (text object OBJ:MY_TEXT;TEX=this is a test# Max text size is 127 chars.
must be linked to a static content). RES:0;# Only for text objects linked to static
content.
Font by number <text_object> FNT=<font number> RES:0 Sets text print font to font with list
number <font number>.
Font by name <text_object> FON=<font name> RES:0 Sets text print font to font with OBJ:Text1;FON=Arial10#
<font name>. RES:0;…#
Position <text_object> POS=<x>,<y> RES:0 Sets text object position in print. Position is in pixel, upper left corner is
(0,0)
GRAPHIC OBJECTS
Name Function Parameters Reply Description Example Notes
Logo <graphic_object> PAT=<logo name> RES:0 Sets active logo of a Graphics OBJ:log1;PAT=complog# Request object / content list for valid
logo object by logo name. RES:0;…# names.
Page 29 of 52 Mini Series remote control manual
BARCODE OBJECTS
Name Function Parameters Reply Description Example Notes
Text <barcode_object> CON=<new text> RES:0 Sets text of barcode object OBJ:BC1;CON=123456789012# Max text size is 127 chars.
(barcode object must be linked RES:0;…# Only for barcode objects linked
to a static content). to static content.
Font by number <barcode_object> FNT=<font number> RES:0 Sets human readable font to font
with list number
<font number>.
Font by name <barcode_object> FON=<font name> RES:0 Sets human readable font to font
with <font name>.
Position <barcode_object> POS=<x>,<y> RES:0 Sets barcode object position in
print.
STATIC CONTENT
Name Function Parameters Reply Description Example Notes
Text <static_content> TEX=<new text> RES:0 Sets text of a static content OBJ:MY_STATIC;TEX=this is a test# Max text size is 127 chars.
object. Special characters can be
RES:0;…#
escaped using \ character.
Literal \ is input as \\
COUNTER CONTENTS
Name Function Parameters Reply Description Example Notes
Minimum value <counter_content> MIN=<value> RES:0 Set minimum count value of a OBJ:C1;MIN=125# Min value must be less than
counter content. RES:0;…# counter max value.
Maximum value <counter_content> MAX=<value> RES:0 Set maximum count value of a Max value must be larger than
counter content. counter min value.
Current value <counter_content> CUR=<value> RES:0 Set current count value of a New counter value must be
counter content. within min/max limits.
Digits <counter_content> DIG=<value> RES:0 Set amount of digits in a counter Max 10 digits.
content.
Page 31 of 52 Mini Series remote control manual
DATE/TIME CONTENT
Name Function Parameters Reply Description Example Notes
Expirery day offset <datatime_content> EXP=<day offset> RES:0 Set day offset of a date content. OBJ:D1;EXP=10# Set relative date, based on
RES:0;…# no.of days.
In design mode offset can also
be set to years, months, hours
and minutes
Format <datatime_content> FOR=<format string> (see format RES:0 Sets date/time content print OBJ:D1;FOR=yyyy-mm-dd#
types) format. RES:0;…#
Date set <datatime_content> DAT=<year/month/day> RES:0 Sets date of a data/time content Set absolute value, opposite to
object. expiery day offset.
Time set <datatime_content> TIM=<hour:minute:second> RES:0 Sets time of a data/time content Set absolute time
object.
Page 32 of 52 Mini Series remote control manual
NORMAL PARAMETERS
Name Function Parameters Reply Description Example Notes
Picture length <L|M|none> LEN=<value> (in pixels) RES:0 Set picture length i pixels. PAR:L;LEN=600# 600 pixel = 1 inch = 2.54 cm
RES:0;…#
size=<value> (in pixels)
Resolution <L|M|none> RES=<600|300|1row300A|1row300B> RES:0 Set print resolution. (Sets both
resolution=<600|300|1row300A|1row300B> vertical and horizontal
resolution to selected)
1row300A prints with row A
only, 1row300B is row B only.
Vertical Resolution <L|M|none> vres=<600|300|1row300A|1row300B> RES:0 Set vertical resolution.
600 and 300 implies 2row
printing. 1row300A prints with
row A only, 1row300B is row B
only.
Horizontal <L|M|none> hres=<75|90|110|150|200|240|300| RES:0 Set horizontal resolution in DPI PAR;hres=440#
Resolution 320|400|440|480|500| RES:0;…#
600|800|960|1200|1600|2400>
Page 33 of 52 Mini Series remote control manual
Print direction <L|M|none> DIR=<right|left|bidir> RES:0 Set print direction right, left or
direction=<right|left|bidir> bidirectionel.
<L|M|none> BDR=<right|left|inp1|inp2|inp3|inp4> Set print start direction on Start direction is FIRST print
bidirection=<right|left|inp1|inp2|inp3|inp4> bidirectionel mode. direction after print mode has
Right, left, input1 select, input2 been activated.
select,…
Start distance <L|M|none> DIS=<value> (in pixels) RES:0 Set start distance from start
start=<value> (in pixels) signal to print i pixels.
Start dist. (bidir) <L|M|none> DRT=<value> (right direction in pixels) RES:0 Set bidir start distances from
DLT=<value> (left direction in pixels) start signal to print.
start right=<value> (right direction in pixels)
start left=<value> (left direction in pixels)
Start sensor edge <L|M|none> EDG=<pos|neg> RES:0 Set startsensor active edge
edge=<positive|negative> (+=positive, -=negative).
Modular <L|M|none> MOD=<value> RES:0 Set modular parameter.
parameter modular=<value>
Velocity parameter <L|M|none> VEL=<velocity> (in meters/min) RES:0 Set velocity parameter. (decimal PAR;VEL=25.33#
velocity=<velocity> (in meters/min) notation is allowed) RES:0;…#
Encoder parameter <L|M|none> ENC=<encoder_par> (in mm/pulse) RES:0 Set encoder parameter. PAR;ENC=0.00716#
encoder=<encoder_par> (in mm/pulse) (decimal notation is allowed) RES:0;…#
Quadrature <L|M|none> QDT=<+|-> RES:0 Set encoder quadrature on|off.
quadrature=<+|->
Repeat <L|M|none> REP=<repeats>,<repeat_distance> (in pixels) RES:0 Set print repeats and distance
repeat=<repeats>,<repeat_distance> (in between repeats.
pixels)
Endless mode <L|M|none> ENL=<+|-> RES:0 Set endless print on/off.
endless=<+|->
Print mode <L|M|none> ENM=<pos|mod|vel> RES:0 Set print mode to Position, PAR;mode=velocity#
mode=<position|modular|velocity> Modular or Velocity. RES:0;…#
Buffer mode <L|M|none> BUF=<+|-|u> RES:0 Set print buffer mode
buffermode=<+|-|u> (+)normal buffer (-)no buffer
(u)user managed.
Head offset <L|M|none> OFF|offset=<head nr>;<head offset>;<pen1 RES:0 Set offsets for a complete head. PAR:OFF=1;0;0;25mm;50.1mm;75.2mm# Sets offsets for head 1, in this
offset>;… Offset are written RES:0;…# case a 4-pen stall with
with/without decimal point, head offset 0 and pen offsets
PAR:OFF=2;3in;0;1in#
and value may be RES:0;…# 0, 25mm, 50.1mm and
Page 34 of 52 Mini Series remote control manual
1 command.
TEXT OBJECT
Name Function Parameters Reply Description Example Notes
Text Object info OBJ <text_object> DAT:<object_name>=text; Return information See enumerations on rotation
pos=<X>,<Y>pix; about a text object types and content types
object ori=<rotation_type>;
font=<font_name>;
<content_1_type>=<linked_content_1>;…;
<content_n_type=<linked_content_n>;
sep=<content_seperator_char>
BARCODE OBJECT
Name Function Parameters Reply Description Example Notes
Barcode Object OBJ <barcode_object> DAT:<object_name>=barcode; Return information See enumeration on barcode
info pos=<X>,<Y>pix; about a barcode types
object ori=<rotation_type>;font=<font_name>; object
<content_1_type>=<linked_content_1>;…;
<content_n_type=<linked_content_n>;
sep=<content_seperator_char>;
bartype=<barcode_type>;
checktype=<checksum_0|1>;
modules=<line_width>;
blacksize=<black_size>;
whitesize=<white_size>;
Page 37 of 52 Mini Series remote control manual
human read=<human_readable>;
height=<lines_height>
GRAPHIC OBJECT
Name Function Parameters Reply Description Example Notes
Grahic Object OBJ <grahic_line_object> DAT:<object_name>=graphic; Request info on a
info object type=<graphic_type>; line
(line) pos=<X>,<Y>pix;
length=<line_length>pix;
line=<line_width>pix
Graphic Object OBJ <grahic_box_object> DAT:<object_name>=graphic; Request info on a
info object type=<graphic_type>; box
(box) pos=<X>,<Y>pix;
width=<box_width>pix;
height=<box_height>pix;
line=<line_width>pix;
fill=<box_fill+|->
Graphic Object OBJ <grahic_logo_object> DAT:<object_name>=graphic; Request info on a
info object type=<graphic_type>; logo
(logo) pos=<X>,<Y>pix;
width=<logo_width>pix;
height=<logo_height>pix;
logo=<logo_name>
Page 38 of 52 Mini Series remote control manual
CONTENT information
Name Function Parameters Reply Description Example Notes
Static Content info CON <static_content> DAT:<content_name>=static;tex=<static_text> Request value of REQ:CON;MyStatic#
static content DAT:MyStatic=static;
tex=Hello, World#
content
username
Object list OLS DAT:objects;<object_name_1>=<tex|bar|grp>;…; Get an object list REQ:OLS#
objects <object_name_n>=<tex|bar|grp> DAT:objects;S1=tex;
S2=tex;obj145=tex#
ENUMERATIONS
BARCODES
Barcodes types Limitations
EAN8 8 digits (7 + checksum)
EAN13 13 digits (12+checksum)
UPCA 13 digits (12+checksum)
ITF Even number of digits (uneven number + checksum)
Code39 Digits only
Code128 None
EAN128 Must have identifier structure
DM None
GS1DM Must have identifier structure
DATE / TIME
Date & Time format types
| separates alternatives
Day of week #d | #D
Day of year #j | #J (zeros leadin)
Week of year #w | #W (zeros leadin)
Year (4 chars) yyyy | YYYY
Year (2 chars) yy | YY
Year (1 char) y|Y
Month (2 chars) mm | MM zero leadin
Month (1-2 chars) m|M
Month (short names) mmm | MMM
Month (long names) mmmm | MMMM
Day (2 chars) dd | DD zero leadin
Day (1-2 chars) d | DD
Day (short names) ddd | DDD
Day (long names) dddd | DDDD
Hour (1-2 chars) h|H
Hour (2 chars) hh | HH zero leadin
(Casing as indicated,
AM/PM hours pp | PP | Pp | pP eg. hhpp -> 02am, hPp -> 2Am)
Minute (1-2 chars) n|N
Minute (2 chars) nn | NN zero leadin
Seconds (1-2 chars) s|S
Seconds (2 chars) ss | SS zero leadin
Page 43 of 52 Mini Series remote control manual
CONTENT / OBJECTS
Content types
sta Static
cnt Counter
dat Date/Time
shf Shift Code
sys System var.
id Identifier
Object types
tex Text objects
bar Barcode objects
grp Graphic objects
System types
user print user name
line print line name
file print job filename
print print print number
Grahic types
0 Line
1 Box
2 Logo
Page 44 of 52 Mini Series remote control manual
PARAMETERS
Pen status decode:
0: Offline
1: Power off
2: Hot
3: Warm
4: Short
5: Power low
6: Power high
7: Fault
8: New pen installed
9: Stall open
10: Ink low
11: No ink
12: Pen online
ERROR CODES
ENCODING
Is is important to understand that MiniTouch and MiniKey are NOT using UniCode standards (multiple bytes
per character) to store character values. Instead, all characters are stored as a SINGLE byte value.
The actual character that will appear on the screen and in print will depend on the character encoding
selected on the font. In other words, a font encoded in "Western" may display a totally different character
from a font encoded in "Cyrillic". Whereas with UniCode, the character would always be the same.
Win-1251 Cyrillic
Win-1254 Turkish
Win-1257 Baltic
Win-1258 Vietnamese
Notice: Although encodings exist for Hebrew and Arab, these languages are not supported as the controller
can not combine characters in the correct way, and does not respect the R2L direction.
All other languages (character sets) not covered in the table above are generally NOT supported. This
especially includes all "complex scripts" (chinese, japanese, korean, arab, farsi, pashtun, hebrew, thai etc).
Notice also that UniCode contains many more diacritics not found in the encodings above. (example: ก)
The encodings above are fully supported given the right byte values. This includes screen menus, locales,
keyboard and variable print.
In order to communicate strings the raw byte values must be sent and interpreted when received. It is up to
the controlling software / device to know the encoding.
Page 47 of 52 Mini Series remote control manual
Encoding tables
Windows 1250
Windows 1251
Cyrillic
Page 48 of 52 Mini Series remote control manual
Win 1251
Windows 1253
Modern Greek
Page 49 of 52 Mini Series remote control manual
Win 1254
Turkish
Windows 1257
Baltic Region
Page 50 of 52 Mini Series remote control manual
Win 1258
Vietnamese
Windows 932
Japanese (Shift-JIS)
HSA Systems has developed a number of tools and example code that you can use as inspiration for your
projects.
Support
For technical support in remote communication to MiniTouch and MiniKey, please contact
applications@hsasystems.com