This material provides the necessary information for directly controlling the Brother PJ-600 series
printer (hereafter, referred to as “PJ unit”). This information is provided assuming that the user has full
understanding ofthe operating system being used and basic mastery ofUSB/Bluetooth/IrDA and
networksin a developer’s environment.
Details concerning the USB interface are not described in this material. If a USB interface is being
used, refer to “7. USB Specifications” to prepare the interface.
We accept no responsibility for any problems caused by programs that you develop using the
information provided in this material, affecting software, data or hardware, including the BrotherPJ unit,
and any problems resulting directly or indirectly from them. These materials are provided in their current
condition, and we assume no responsibility for their content. Use this material only if you accept these
terms.
This material shall not be reproduced, in part or in full, without prior approval. In addition, this material
shall not be used as evidence in a lawsuit or dispute in a way that is unfavorable towards our company.
The printing procedure is described below. For detailed flow charts, refer to “6. Flow Charts” For details
on each command, refer to “5. Command”.
1. Open USB/Bluetooth Serial/IrDA/Network port
Open the USB/Bluetooth Serial/IrDA/network port in the operating environment. In addition, since the
procedure for opening the USB port is not described in this material, perform the appropriate operation
for the environment being used.
2. Check machine status
The “Status information request” command is sent to the printer, the status information received from the
printer is analyzed, and then the status of the printer is determined. For details on the “Status information
request” command and on the definition of “status”, refer to “4. Status” in “Command Reference”.
Printing is possible if the analysis results show that the following conditions are met.
・ Paper compatible with the print data is installed in the printer.
・ No error has occurred.
This step is not necessary with a unidirectional transmission.
3. Send print data
The print data is sent. The structure of the print data is explained in the next section, “3. Print Data”.
4. Confirmation of printing completion
When printing is completed, the status is sent from the printer. This status is analyzed and, if printing is
completed, one page is printed. If the print job has multiple pages, 2 through 4 are repeated.
In addition, the status is not sent with a unidirectional transmission.
Sends the “invalid” command to the PJ unit, then clears
raster data remaining in the unit.
00 H, 00 H, 00 H, … ,00 H
2
Switch command mode
Switches the command mode of the PJ unit.
1B H , 69 H , 61 H , 00 H
3
Initialize
Initializes the print buffer.
1B H , 40 H
4
Set 2-ply mode
To specify the disable setting for 2-ply paper:
1B H , 7E H , 70 H , 00 H
5
Set density
Specifies the print density. To set the density to 5:
1B H, 7E H, 64 H, 80 H, 00H
6
Set form feed mode
Specifies the operation that is performed when the “Form
Feed” command is received.
To feed according to the paper size specified with the
“Set paper height” command (step 9):
1B H, 7E H, 66 H, 01 H
7
Set dash line print
To turn off printing of the dashed line:
1B H, 7E H, 2D H, 00 H
8
Set paper width
Specifies the paper width. For A4 on a 300 dpi model:
1B H, 7E H, 77 H, 2C H, 01 H
9
Set paper height
Specifies the paper size. For A4 on a 300 dpi model:
1B H, 7E H, 68 H, E4 H, 0C H
3. Print Data
3.1. Print data overview
The print data is constructed of the following: ① Initialization data, ② Printing commands and ③ Print
command. If the print job consists of multiple pages, ② through ③ are repeated.
1. Initialization data
The beginning of the job is specified only once.
*If an unlimited length or custom paper size is selected, use “Set paper length” command in step 9.
Moves the cursor the specified distance from the left
edge of the printable area in the X direction.
1B H, 7E H, 24 H, {n1}, {n2}
-
1 Raster line data
transfer
Sends the raster line data.
To send 300 bytes of data:
1B H, 7E H, 2A H, 2C H, 01 H, FF H, FF H….
-
Multi-line feed
Terminates raster line data and feeds 1 or more lines.
1B H, 7E H, 4A H, {n1}
Sequence
Command Name
Description/Example
-
Form feed
Specifies the end of a page.
1BH, 7EH, 0CH
2. Printing commands
Repeat for each raster line in the print job.
Note:
“Set left margin” and “1 Raster line data transfer” commands can be sent more than once per line
Example: The raster line data shown below can be sent with the following commands.
In addition, it is recommended that the “set left margin” command be used when a blank space extends
for 16 bytes or more.
Set left margin: 1BH, 7EH, 24H, 10H, 00H
Raster line data transfer: 1BH, 7EH, 2AH, 02H, 00H, 1FH, F8H
Set left margin: 1BH, 7EH, 24H, 30H, 00H
Raster line data transfer: 1BH, 7EH, 2AH, 01H, 00H, 3CH
Multi-line feed: 1BH, 7EH, 4AH, 01H
3. Print command
Specified at the end of the page.
The following shows how the raster is arranged on the pins of the print head according to "raster
graphics transfer".The number of offset pins is calculated automatically based on the “set paper width” command and
centering the print area across the print head
The raster data specified with the “set left margin” and “1 raster line data transfer” commands is
reflected in the pins of the print area.
Furthermore, specified print data that extends out of the print area is automatically cut by the unit. In
addition, the page margins (in all directions) in the figure shown below have no effect on the raster
line.
This chapter provides descriptions of the commands that can be interpreted by the PJ unit.
Section 5.2 provides descriptions of the commands used for printing in Raster mode. See section
3.1 for typical Print Data Sequence.
Section 5.3 provides descriptions of the commands for default printer settings and ESC/P mode.
If data transmission should be stopped midway, send the “initialize” command after
sending the “invalid” command for the appropriate number of bytes to return to the
receiving state, where the print buffer is cleared.
Name
Switch command mode
Syntax
ESC + i + a + {n1}
1B H + 69 H + 61 H + {n1}
Description
Switches between the machine's command modes. A machine that receives this
command operates in the specified command mode until the machine is turned off.
Definition of {n1}:
0:ESC/P・Raster (default)
1: Maintenance Mode
3:P-touch Template
Name
Initialize
Syntax
ESC + @
1B H + 40 H
Description
Initializes the print buffer.
Name
Status information request
Syntax
ESC + i + S
1B H + 69 H + 53 H
Description
Status information is transmitted.
Name
Set 2-ply mode
Syntax
ESC + ~ + p + {n1} + null
1B H + 7E H + 70 H + {n1} + 00 H
Description
Specifies whether or not the strobe time is extended and the print density is adjusted
when 2-ply paper is used.
Definition of {n1}:
ESC + ~ + e + D + {n1}
1B H + 7E H + 65 H + 44 H + {n1}
Description
When bidirectional transmission is enabled, the printer returns the “printing completed”
status when printing is finished. In addition, if an error occurred during printing, all print
data received for those pages is discarded.
Definition of {n1}:
0: Disable (default)
1: Enable
*Replies with a “status information request” command even if bidirectional transmission
is disabled.
Name
Set density
Syntax
ESC + ~ + d + {n1} + null
1B H + 7E H + 64 H + {n1} + 00 H
Description
Specifies the print density.
Note: Print density may differ from the conditions, such as the type of thermal paper,
print pattern, environment, etc. Please set the appropriate density.
ESC + ~ + e + V + 01 + {n1}
1B H + 7E H + 65 H + 56H + 01H + {n1}
Description
Specifies the print speed.
Note: Print density may differ from the conditions, such as the type of thermal paper,
print pattern, environment, etc. Please set the appropriate density.
End of Page:
The paper is fed until the end of the page is detected. However, this is a maximum
of 14 inches.
End of Page Retract:
The paper is fed until the end of the page is detected, and then the paper is
readjusted to the starting position.
Name
Set dash line print
Syntax
ESC + ~ + - + {n1}
1B H + 7E H + 2D H + {n1}
Description
Specifies whether or not a dotted line is printed between pages when the user sets the
paper type to “roll” and the form feed mode to “Fixed page”.
Definition of {n1}:
ESC + ~ + h + {n1} + {n2}
1B H + 7E H + 68 H + {n1} + {n2}
Description
Specifies the paper size. The default setting is Letter size.
The 2-byte data for pre-defined paper sizes is sent as the values for {n1} and {n2}.
―300dpi―
Paper Size Letter A4 Legal
Value 3200 3300 4100
(n1, n2) (80 H, 0C H) (E4 H, 0CH) (04 H, 10 H)
―200dpi―
Paper Size Letter A4 Legal
Value 2133 2200 2733
(n1, n2) (55 H, 08 H) (98 H, 08H) (AD H, 0A H)
ESC + ~ + w + {n1} + {n2}
1B H + 7E H + 77 H + {n1} + {n2}
Description
Specifies the paper width.
※The selection method is different for custom paper and for non-custom paper.
■Non-custom paper
The units of the data are in bytes.
Example: For A4, the number of dots for the print area is 2400, so 300 is set.
Ex. 1B H 7E H 77 H 2C H 01 H
→A4 setting (300)
■Custom paper
Specify the width according to the feed position, as shown below.
With [Center Alignment]
Specify, in bytes, the number of dots for the width of the print area.
Example: For a 140-mm-wide print area, the number of dots for the print area is 1654,
so 207 is set.
Ex.1BH 7EH 77H CFH 00H
With [Left Alignment]
Specify as fixed, regardless of the paper width, as shown below.
300dpi: 1BH 7EH 77H 34H 01H
200dpi: 1BH 7EH 77H CCH 00H
Name
Set paper length
Syntax
ESC + ~ + l + {n1} + {n2}
1B H + 7E H + 6C H + {n1} + {n2}
Description
Specifies the paper length.
Normally used with roll paper or custom lengths.
The setting range is 200 to 65535 (raster lines).
Ex. 1B h 7E H 6C H E4 H 0C H
→The length of the print area is set to 3300.
Moves the cursor the specified distance from the left edge of the printable area in the X
direction.
The setting is a 2-byte value, and the units are in bits.
Since the sent data is specified in bytes, it is treated as a multiple of 8.
If it is not a multiple of 8, the nearest value at a multiple of 8 is specified.
Ex) 1B H 7E H 24 H 44 H 00 H
44 H = 68 However, since it is treated as bytes, the setting becomes 64.
Terminates current raster line and performs a line feed of multiple raster lines on the
current page.
Definition of {n1}: Number of lines
This command is used in connection with the “1 raster line data transfer” command.
After raster line data is transferred, the line buffer data is deleted, and then the current
print position in the X direction remains the same while the print position is moved in the
Y direction by the number of lines specified with {n1}.
Ex) 1B H 7E H 4A H 03 H
Performs a line feed of 3 lines.
Name
1 Raster line data transfer
Syntax
ESC + ~ + * + {n1} + {n2} + {d1} + ... + {dk}
1B H + 7E H + 2A H + {n1} + {n2} + {d1} + ... + {dk}
Description
Sends the raster line data.
Definition of {n1} and {n2}:
Amount of data to be sent (Specified in units of bytes.)
Definition of {d1} + ... + {dk}:
Raster line data
The data print position specified with this command is for the current position of the
current raster line.
If more than 1 "Raster line data transfer" command is sent for the same raster line, the
data cannot be positioned to the left of the final raster byte already sent for this raster
line.
Ex) 1B H 7E H 2A H 2C H 01 H FF H FF H ...
300 bytes = Sends raster line data for 2400 dots
Prints the current page and ejects according to the setting of the “set form feed mode”
command.
Using this command, cursor position is automatically reset to left edge.
If no data is received for the current page, this command is ignored.
Specifies the page length as ((line feed amount when this command is specified)
* (n in lines)) inches.
In addition, when this command is executed, the bottom margin is set to 0
(canceled).
Definition of {n1}:01 H ~ 7F H(1~127)
・Basic page length settings (in lines) for each paper size and line feed
6LPI 8LPI/0.125 8LPI/0.12
Letter 66 88 91
Legal 84 112 116
A4 70 93 97
Name
Specify bottom margin
Syntax
ESC + N + {n1}
1B H + 4E H + {n1}
Description
Specify the size of the bottom margin.
Definition of {n1}:01 H ~ 7F H(1~127)
The units are in lines.
・Basic bottom margin settings for each paper size and line feed
6LPI 8LPI/0.125 8LPI/0.12
Letter 2 3 2
Legal 2 3 2
A4 2 3 2
5.3. Utility Command details
Note: These commands are primarily for setting power-on default values for printer
specific settings and for printing text-only data.
Specify line feed of 1/6 inch (6LPI).
The line feed becomes 1/6 inch.
After this command is specified, the page length in lines and bottom margin must
be specified again.
Name
Specify line feed of 1/8 inch
Syntax
ESC + 0
1B H + 30 H
Description
Specify line feed of 1/8 inch (8LPI).
The line feed becomes 1/8 inch.
After this command is specified, the page length in lines and bottom margin must
be specified again.
Name
Line feed at 8 LPI
Syntax
ESC + ~+ + + {n1}
1B H + 7E H + 2B H + {n1}
Description
Specify whether the line feed is “0.125"” or “0.12"” when the line feed is set to 1/8
inch.
You can use this command to allow extended ASCII graphic characters to touch
each other without creating a small vertical gap between the characters.
After this command is specified, the page length in lines and bottom margin must
be specified again.
Definition of {n1}
01 H(1) or 1F H(31) :0.120 inch Line feed
Other than those listed above :0.125 inch Line feed
Specifies the left margin position as the position from the left edge where
(character width when this command is specified) * n1, and specifies the area to
the left of this as an unprinted area.
Character width = 1 / Default pitch.
In addition, this printer operates as an 80-column device, and a setting that
extends past 4.5 inches from the left edge is ignored.
Definition of {n1}:01 H(1) ~ FF H(255)
The units are in columns.
Name
Specify right margin
Syntax
ESC + Q + {n1}
1B H + 51 H + {n1}
Description
Specifies the rightt margin position as the position from the left edge where
(character width when this command is specified) * n1,.
Character width = 1 / Default pitch.
Setting that extends past 8.0 inches from the left edge and that is less than left
margin is ignored.
Note that the setting indicates the value from left edge.
Definition of {n1}:01 H(1) ~ FF H(255)
Name
Specify Default pitch
Syntax
ESC + M + {n1}
1B H + 4D H + {n1}
Description
Select the character size (pitch).
After this command is specified, the left margin and right margin must be
specified again.
Definition of {n1}
00 H(0):10cpi
01 H(1):12cpi
02 H(2):15cpi
Applies or cancels proportional characters for alphanumeric characters.
After this command is specified, the left margin and right margin must be
specified again.
The width of proportional characters is halved (10 cpi→16.67 cpi and 12 cpi →
20 cpi).
After this command is specified, the page length in lines and bottom margin must
be specified again.
In addition, the final character size when this command is executed and the
“specify double-width characters” is set becomes the size of the double-width
characters after they are reduced.
Name
Cancel reduced characters.
Syntax
ESC + 0x12
1B H + 12 H
Description
Cancels reduced characters
After this command is specified, the page length in lines and bottom margin must
be specified again.
Name
Apply bold style
Syntax
ESC + E
1B H + 45 H
Description
Applies the bold style to alphanumeric characters.
Specifies or cancels double-width enlargement for alphanumeric characters.
After this command is specified, the page length in lines and bottom margin must
be specified again.
In addition, the final character size when this command is executed and the
“Specify reduced characters” is set becomes the size of the double-width
characters after they are reduced.
Definition of {n1}
00 H(0):Disable
01 H(1):Enable
Name
Apply/cancel underlining
Syntax
ESC + - + {n1}
1B H + 2D H + {n1}
Description
Specifies or cancels underlining of alphanumeric characters.
ex5) 1B H 7E H 65 H 42 H 01 H 02 H 00 H
Specify Visible to Other Devices Settings
→Sets that other devices cannot detect this machine (Disable).
ex6) 1B H 7E H 65 H 42 H 01 H 03 H 00 H
Specify Authentication and Encoding
Settings
→Sets that there is no authentication and encoding.
*The BT address is received at a fixed size of 6 bytes.
Name
Enter cleaning mode
Syntax
ESC + ~ + c + {n1} + NUL
1B H + 7E H + 63 H + {n1} + 00 H
Description
Sets the machine into cleaning mode.
Definition of {n1}:
01 H(1):ON
※To cancel cleaning mode, press the Feed button on the machine while it is in
cleaning mode.
Name
Print Unit Settings
Syntax
ESC + ~ + s + {n1} + NUL
1B H + 7E H + 73 H + {n1} + 00 H
Description
Sends the “print unit settings” command to the machine.
The machine that receives this command will print a page showing its current
settings
Definition of {n1}:
ESC + ~ + e + C + {n1}
1B H + 7E H + 65 H + 43 H + {n1}
Description
Automatically adjusts the threshold for the sensor that detects the paper. The
machine that receives this command feeds the paper and detects the black mark.
After this command is sent, notification of the results is returned as 2 bytes.
Definition of {n1}
01 H(1): Perform automatic adjustment
Notification of results
・First byte
00 H(0): Failed
01 H(1): Succeeded
・Second byte
Specified paper sensor threshold value if succeeded
ex) 1B H 7E H 65 H 43 H 01 H (perform automatic adjustment)
・Reception example of notification of results 1: 00 H
→Failed to perform automatic adjustment.
・Reception example of notification of results 2: 01 H 96 H
→Succeeded in performing automatic adjustment, and set the value to 150.
Name
Factory Reset
Syntax
ESC + ~ + R
1B H + 7E H + 52 H
Description
Returns the unit to its manufacturer default settings.
Overwrites the settings in both the non-volatile memory and RAM with the
manufacturer default settings.
If the current settings are the same as the manufacturer default settings, they are
not overwritten.
Then, the reset can be saved on the machine if the “initialize” command is sent.
Retrieve current settings (except Bluetooth settings)
Syntax
ESC + ~ + e + U + {n1}
1B H + 7E H + 65 H + 55 H + {n1}
Description
Retrieves the settings for the parameters that can be specified, except those
related to Bluetooth.
The data size (2 bytes) and data are returned from the machine.
The normal data size is 34 bytes.
For details on the data, refer to 5.4.
Definition of {n1}:
00 H(0): Host transmission
Name
Save settings
Syntax
ESC + ~ + S
1B H + 7E H + 53 H
Description
Saves the settings on the printer.
Overwrites them even if they are the same as those on the RAM and non-volatile
memory.
Name
Auto Power Off (AC/DC) 1 minute
Syntax
ESC + ~+ e + t + {n1} + 01h
Description
Specifies the amount of time that passes before the printer turns off automatically
when connected to an AC or DC power outlet.
Definition of {n1}
00h: None ~ 78h: 120 minutes
Name
Auto Power Off (Li-ion) 1 minute
Syntax
ESC + ~+ t + {n1} + 01h
Description
Specifies the amount of time that passes before the printer turns off automatically
when powered by the rechargeable Li-ion battery.
Definition of {n1}
00h: None ~ 78h: 120 minutes
5.3.1. PJ-700 Series Utility Command details
In this section, the Utility commands for only PJ-700 Series are listed.
WiFi Model : ESC+ i + X + K + 2 + 00h + 00h + {n1}
Bluetooth Model : ESC+ i + X + B + 2 + 01h + 00h + 06h + {n1}
Description
Allows disabling the Bluetooth or Wi-Fi button. This function is useful when you
use the printer in a place where signal transmissions are not allowed.
Definition of {n1}
03h: On
04h: Off
Name
Reset only Device Settings
Syntax
ESC + i + U + Z
Description
Resets only the settings that can be specified using the PJ-700 Device Settings
to the factory settings.
This chapter provides flow charts for printing with a bidirectional transmission.
To print with a unidirectional transmission, send the data to the unit as shown under “Print data
overview” in chapter 3.
※PJ-673 network printing does not support duplex transmission.
Transferring from PJ-500 series printers to PJ-600/700 series printers
With a USB connection, since the installed driver will change, the machine cannot simply be
exchanged. The driver must be replaced from the application.
With an IrDA/Bluetooth connection, the machine can simply be used as it is. However, if the printing
system for the PJ-500 series printers have created an assumed Friendly Name and PIN code (default),
printing is not possible on the PJ-600/700 series printers.
Data that can be printed on the PJ-500 series printers can be sent to the PJ-600/700 series printers
to be printed; however, the opposite does not apply.
*Note: The PJ-500 series actualy includes the PJ3/PJ3Plus.
8.2. Inquiry
Information for developers can be found at the website at the URL below.
Site for MPrint&PocketJetSDK developers:
http://www.brother.co.jp/dev/mwprintersdk/
In the event of doubts about the technical information, get in touch with the contact listed on the "Inquiry"
page of the above-mentioned website. Our company offers support at our option.
In addition, cases may arise in which we are unable to respond to technical inquiries received at our call