Sato Printer M 8400Rv Users Manual COVER.CHP

M-8400RV to the manual fcfc33cc-3638-4814-93b5-5d26b7e75499

2015-02-06

: Sato Sato-Printer-M-8400Rv-Users-Manual-526428 sato-printer-m-8400rv-users-manual-526428 sato pdf

Open the PDF directly: View PDF PDF.
Page Count: 242

DownloadSato Sato-Printer-M-8400Rv-Users-Manual- COVER.CHP  Sato-printer-m-8400rv-users-manual
Open PDF In BrowserView PDF
®

M-8400RV
Thermal Transfer Printer

Operator and Technical
Reference Manual
PN9001041 Rev. D

SATO America, Inc.
10350-A Nations Ford Rd.
Charlotte, NC 28273
Main Phone: (704) 644-1650
Fax: (704) 644-1661
Technical Support Hotline: (704) 644-1660
E-Mail:satosupport@satoamerica.com

© Copyright 1994, 1995, 1996, 1997, 1999
SATO America, Inc.
Warning: This equipment complies with the requirements in Part 15 of
FCC rules for a Class A computing device. Operation of this equipment in a
residential area may cause unacceptable interference to radio and TV
reception requiring the operator to take whatever steps are necessary to
correct the interference.
All rights reserved. No part of this document may be reproduced or issued
to third parties in any form whatsoever without the express permission of
SATO America, Inc. The materials in this document is provided for general
information and is subject to change without notice. SATO America, Inc.
assumes no responibilities for any errors that may appear.

SATO M-8400RV

PN9001041 Rev. D

PREFACE
M-8400RV PRINTER OPERATOR’S MANUAL
The M-8400RV Printer Operator’s Manual contains basic information about the
printer such as setup, installation, cleaning and maintenance. It also contains
complete instructions on how to use the operator panel to configure the printer. The
following is a brief description of each section in this manual.
SECTION 1. PRINTER OVERVIEW
This section contains a discussion of the printer specifications and optional
features.
SECTION 2. INSTALLATION AND CONFIGURATION
This section contains instructions on how to unpack and set up the printer,
load the labels and ribbon, and how to use the operator panel to configure the
printer.
SECTION 3. CLEANING AND MAINTENANCE
This section contains instructions on how to clean and maintain the printer.
SECTION 4. PROGRAMMING
This section introduces the SATO printer programming language. It contains
the commands that are used with the printer to produce labels with bar codes,
alphanumeric data and graphics.
SECTION 5. INTERFACE SPECIFICATIONS
This section contains the printer’s interface specifications, which include
detailed information on how to properly interface your printer to the host
system.
SECTION 6. TROUBLESHOOTING
This section contains troubleshooting procedures to follow in the event you
have printer problems.

SATO M-8400RV

9001041 Rev. D

Page - i

Preface

APPENDICES

Page - ii

APPENDIX A:

Command Code Quick Reference

APPENDIX B:

Bar Code Specifications

APPENDIX C:

Custom Characters and Graphics

APPENDIX D:

Optional Features

APPENDIX E:

Custom Protocol Command Codes

9001041 Rev. D

SATO M-8400RV

Preface

TABLE OF CONTENTS

SECTION 1. PRINTER OVERVIEW
Introduction . . . . . . . . .
Compatibility . . . . . . . . .
General Printer Specifications
Character Fonts . . . . . . . .
Bar Codes . . . . . . . . . . .
Physical . . . . . . . . . . . .
Optional Accessories . . . . .

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

1-1
1-1
1-3
1-5
1-6
1-7
1-8

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

2-1
2-2
2-3
2-5
2-10
2-12
2-13
2-14
2-15
2-19
2-33
2-35

Introduction . . . . . . . . . . . . . . . . . .
Procedures . . . . . . . . . . . . . . . . . . .
Adjusting the Print Quality . . . . . . . . .
Darkness . . . . . . . . . . . . . . . .
Print Speed . . . . . . . . . . . . . . .
Cleaning the Print Head, Platen and Rollers
Cleaning the Sensors . . . . . . . . . . . .
Replacing the Print Head . . . . . . . . . .

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

3-1
3-1
3-1
3-1
3-2
3-3
3-4
3-5

SECTION 2. INSTALLATION AND CONFIGURATION
Introduction . . . . . . . . . . . . .
Unpacking and Parts Identification . .
Setting Up the Printer . . . . . . . .
Loading Labels, Tags and Ribbon . .
Operator Panel . . . . . . . . . . . .
Rear Panel . . . . . . . . . . . . . .
Switches and Sensors . . . . . . . . .
Label Sensor Adjustment . . . . . . .
Printer DIP Switch Configuration . . .
Printer Adjustments . . . . . . . . . .
Potentiometer Adjustments . . . . . .
Printing Hex Dump Diagnostic Labels

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

SECTION 3. CLEANING AND MAINTENANCE

SATO M-8400RV

9001041 Rev. D

Page - iii

Preface

SECTION 4. PROGRAMMING
Introduction . . . . . . . . . . . . . . . .
The SATO RISC Programming Language . .
Selecting Protocol Control Codes . . . . . .
Using Basic . . . . . . . . . . . . . . . . .
The Print Area . . . . . . . . . . . . . . .
Rotated Fields . . . . . . . . . . . . . . .
Command Default Settings . . . . . . . . .
Command Codes . . . . . . . . . . . . . .
Bar Codes . . . . . . . . . . . . . . . .
Bar Codes, Expansion . . . . . . . . . .
Bar Codes, Variable Ratio . . . . . . . .
Base Reference Point . . . . . . . . . .
Characters, Custom Designed . . . . . .
Character Expansion . . . . . . . . . .
Character, Fixed Spacing . . . . . . . .
Character Pitch . . . . . . . . . . . . .
Character, Proportional Spacing . . . .
Clear Print Job(s) and Memory . . . . .
Continuous Forms Printing . . . . . . .
Copy Image Area . . . . . . . . . . . .
Cutter Command . . . . . . . . . . . .
Fonts, U, S, M, OA, OB, XU, XS and XM
Fonts, Vector . . . . . . . . . . . . . .
Fonts, WB,WL, XB and XL . . . . . . .
Form Feed . . . . . . . . . . . . . . .
Form Overlay Recall . . . . . . . . . .
Form Overlay Store . . . . . . . . . . .
Graphics, Custom . . . . . . . . . . . .
Graphics, PCX . . . . . . . . . . . . .
Job ID Store . . . . . . . . . . . . . .
Journal Print . . . . . . . . . . . . . .
Lines and Boxes . . . . . . . . . . . . .
Line Feed . . . . . . . . . . . . . . . .
Mirror Image . . . . . . . . . . . . . .
Off-Line/Pause . . . . . . . . . . . . .
Postnet . . . . . . . . . . . . . . . . .
Print Darkness . . . . . . . . . . . . .
Print Length, Expanded . . . . . . . . .
Print Position . . . . . . . . . . . . . .
Print Quantity . . . . . . . . . . . . .
Print Speed . . . . . . . . . . . . . . .
Repeat Label . . . . . . . . . . . . . .
Replace Data (Partial Edit) . . . . . . .
Reverse Image . . . . . . . . . . . . .
Rotate, Fixed Base Reference Point . . .
Rotate, Moving Base Reference Point . .
Sequential Numbering . . . . . . . . .
Start/Stop Label . . . . . . . . . . . .

Page - iv

9001041 Rev. D

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

4-1
4-1
4-2
4-2
4-4
4-8
4-8
4-10
4-11
4-16
4-17
4-19
4-21
4-23
4-25
4-26
4-28
4-29
4-30
4-31
4-33
4-34
4-36
4-38
4-40
4-41
4-42
4-43
4-45
4-46
4-47
4-48
4-50
4-52
4-54
4-55
4-56
4-57
4-59
4-61
4-62
4-63
4-64
4-66
4-68
4-70
4-72
4-74

SATO M-8400RV

Preface

Calendar Option Commands . . . . .
Calendar Increment . . . . . . . .
Calendar Print . . . . . . . . . .
Calendar Set . . . . . . . . . . .
Memory Card Option Commands . . .
Clear Card Memory . . . . . . . .
Expand Memory Area . . . . . . .
Fonts, TrueType Recall . . . . . .
Fonts, TrueType Store . . . . . .
Format/Field Recall . . . . . . . .
Format/Field Store . . . . . . . .
Graphics, Custom Recall . . . . .
Graphics, Custom Store . . . . . .
Graphics, PCX Recall . . . . . . .
Graphics, PCX Store . . . . . . . .
Initialize . . . . . . . . . . . . .
Slot Select . . . . . . . . . . . .
Status . . . . . . . . . . . . . . .
Custom Protocol Codes Download
Two-Dimensional Symbols . . . . . .
Data Matrix, Data Format . . . . .
Data Matrix, Print Data . . . . . .
Data Matrix Sequential Numbering
Maxicode . . . . . . . . . . . . .
PDF417 . . . . . . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

4-75
4-76
4-78
4-80
4-81
4-82
4-83
4-85
4-86
4-87
4-88
4-89
4-90
4-92
4-93
4-94
4-95
4-96
4-97
4-99
4-100
4-102
4-103
4-105
4-107

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

5-1
5-1
5-2
5-3
5-3
5-3
5-4
5-4
5-5
5-6
5-9
5-9
5-10
5-10
5-11

SECTION 5. INTERFACE SPECIFICATIONS
Introduction . . . . . . . . . . .
Interface Types . . . . . . . . . .
The Receive Buffer . . . . . . . .
RS232C Serial Interface . . . . .
General Specifications . . . .
Electrical Specifications . . . .
Pin Assignments . . . . . . .
Ready/Busy Flow Control . . .
X-On/X-Off Flow Control . . .
Bi-Directional Communications
Centronics Parallel Interface . . .
Electrical Specifications . . . .
Accessory (EXT) Connector . . . .
Pin Assignments . . . . . . .
External Output Signals . . . .

SATO M-8400RV

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

9001041 Rev. D

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Page - v

Preface

SECTION 6. TROUBLESHOOTING
Initial Checklist . . . . . . . . . . . . .
Using the Centronics (Parallel) Interface
Using the RS232C (Serial) Interface . .
Error Signals . . . . . . . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

6-1
6-1
6-3
6-4

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

B-1
B-2
B-3
B-4
B-5
B-6
B-8
B-9
B-10
B-11
B-12
B-13
B-14
B-15
B-17
B-18
B-20
B-21
B-22

APPENDICES
APPENDIX A: Command Code Quick Reference
APPENDIX B: Bar Code Specifications
Bar Code Symbologies . . . . . . . . .
Codabar . . . . . . . . . . . . . . .
Code 39 . . . . . . . . . . . . . . .
Interleaved Two of Five (I 2/5) . . .
UPC-A/EAN-13 . . . . . . . . . . .
EAN-8 . . . . . . . . . . . . . . . .
Industrial Two of Five . . . . . . .
Matrix Two of Five . . . . . . . . .
Code 128 . . . . . . . . . . . . . .
MSI . . . . . . . . . . . . . . . . .
Code 93 . . . . . . . . . . . . . . .
UPC-E . . . . . . . . . . . . . . . .
Bookland (UPC/EAN Supplements)
UCC-128 . . . . . . . . . . . . . .
Postnet . . . . . . . . . . . . . . .
Data Matrix . . . . . . . . . . . . .
Maxicode . . . . . . . . . . . . . .
PDF417 . . . . . . . . . . . . . . .
Code 128 Character Table . . . . .

Page - vi

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

APPENDIX C: Custom Characters and Graphics
Custom Designed Characters Example . . . . . . . . . . . . . .
Custom Graphics Example . . . . . . . . . . . . . . . . . . . .
PCX Graphics Example . . . . . . . . . . . . . . . . . . . . . .

C-1
C-4
C-8

APPENDIX D: Optional Accessories
Label Rewinder . . . . . . . .
Label Cutter . . . . . . . . .
Label Dispense Option . . . .
Memory Cards . . . . . . . .
Calendar . . . . . . . . . . .

D-1
D-2
D-3
D-5
D-7

.
.
.
.
.

9001041 Rev. D

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

SATO M-8400RV

Preface

APPENDIX E: Custom Protocol Command Codes
Description . . . . . . . . . . . . . . . . .
Download Command Structure . . . . . . .
Reset . . . . . . . . . . . . . . . . . . . .
Download Procedure . . . . . . . . . . . .

SATO M-8400RV

9001041 Rev. D

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

E-1
E-1
E-2
E-2

Page - vii

Preface

This page left intentionally blank.

Page - viii

9001041 Rev. D

SATO M-8400RV

SECTION 1.
PRINTER OVERVIEW
INTRODUCTION
The SATO M-8400RV Thermal Transfer Printer is a complete, high-performance
on-site labeling systems. All printer parameters are user programmable using the
front panel controls and the DIP switches. All popular bar codes and 12
human-readable fonts, including a vector font, are resident in memory providing
literally thousands of type styles and sizes.
The Operator’s Manual will help you understand the basic operations of the printer
such as setup, installation, configuration, cleaning and maintenance.
The M-8400RV has a resolution of 203 dpi and can print labels up to four inches wide.
The M-8400RV uses the standard SATO RISC printer command codes. The only
differences between it and other RISC printers are the allowable values representing
the print positions on the label. These values are specified in “dots” and will vary
depending upon the resolution of the printer and the amount of memory available for
imaging the label. The allowable range for the M-8400RV is specified in a table for
those command codes.
This commonality makes it very easy to convert labels from one RISC printer to
another without having to create an entirely different command stream. There are
some caveats that must be observed though to compensate for the different resolution
print heads. The effect of the different printer resolutions are best illustrated by
taking a label designed for a 203 dpi printer and sending the command stream to the
its 305 dpi counterpart. The label printed will be an exact two-thirds scale, including
the fonts, bar code dimensions and line lengths/widths. The only exception is the
PostNet bar code which has only one legal size and the printer resolution is
automatically compensated for by the printer. Conversely, a label designed for a 305
dpi printer and sent to its 203 dpi cousin will be one-third larger. It probably will be
“truncated” if the label size is larger than the maximum allowable for the printer.
The following general information is presented in this section:
• Compatibility Information
• General Printer Specifications
• Optional Accessories

COMPATIBILITY
The M-8400RV was designed to be compatible with the standard M-8400. If all of the
rules for command usage were followed when designing labels for an M-8400, then
the same command stream should create the same label on an M-8400RV. However,
the older M-8400 was more lenient in allowing the user to “bend” the rules,
especially in the area of the allowable sequence of commands. Because the thruput of

SATO M-8400RV

9001041 Rev. D

Page 1-1

Section 1. Printer Overview

the M-8400RV is much greater than the older M-8400, it must receive the commands
in the sequence it is anticipating.
There are some other minor differences in how the M-8400RV responds to certain
commands. For example, the M-8400RV can print at speeds up to 10 inches per
second whereas the older M-8400 had a maximum print speed of only 6 inches per
second. Therefore, if you send it a CS5 command, it interprets it as a
command to print at 10 ips whereas an M-8400 would interpret it as a command to
print at 6 ips. There is also a difference in how the newer M-8400RV handles graphic
files. When an A3 or R rotate commands is sent to an M-8400RV, it
rotates all fields, including graphic images. The older M-8400 on the other hand
would only rotate the text and bar code fields and not graphic fields. To compensate
for these differences, a Compatibility setting can be selected using DSW2-8. When it
is placed in the ON position, the M-8400RV will respond to these commands the
same as an M-8400 would.

NOTE: Even when DSW2-8 is in the ON position, the M-8400RV expects the
command sequences to follow the rules specified in the Programming Reference.
When printing labels designed for an M-8400 on the newer M-8400RV, the following
procedure is recommended.
1. First try printing the label with DSW-8 in the OFF position. If it prints all the fields
correctly but the print quality needs improvement, try adjusting the Print Darkness
using the front panel potentiometer.
2. If the print quality is still lacking, try changing the print speed and/or heat setting
using the front panel LCD controls. After each change, reprint the label using the
FEED key (printer must be ON LINE). If you resend the label to the printer,
any old software commands will override the changes you made with the
LCD controls. The M-8400RV uses a new intelligent print head that compensates to
a great degree for print quality variations due to print speed. Therefore, you should
not see as much variation in print quality due to print speed as was present with the
older M-8400.
3. If a new LCD setting solves the problem, then make the appropriate changes in the
command stream.
4. If the field placement is incorrect or if the printer “beeps” indicating it did not accept
the command stream, place DSW2-8 in the ON position, cycle power to make the
printer recognize the new switch setting and resend the label.
5. If the printer still does not accept the command stream, then something in the
command stream is not correct. It must be examined carefully to make sure it
conforms with all of the rules for usage outlined in Section 4: Programming
Reference.
If any problems are encountered with M-8400 compatibility, please contact the SATO
Technical Support department.

Page 1-2

9001041 Rev. D

SATO M-8400RV

Section 1. Printer Overview

GENERAL PRINTER SPECIFICATIONS

SPECIFICATION

M-8400RV

PRINT
Method

Direct or Thermal Transfer

Speed (User Selectable)

2 to 10 ips
50 to 250 mm/s

Print Module (Dot Size)

.0049 in.
.125 mm

Resolution

203 dpi
8 dpmm

Maximum Print Width

4.1 in.
104 mm

Maximum Print Length
(Expanded Print Length)

14 in.
356 mm

Maximum Print Length
with 2MB Memory Card

49.2 in.
1249 mm

MEDIA
Minimum Width

.87 in. (22 mm)

Minimum Length

.63 in. (16 mm)

Maximum Width

5.0 in. (128 mm)

Type
Maximum Caliper

Die Cut Labels, Fan-Fold, Tag Stock or Continuous
.010 in. (.25 mm)

Roll OD (max)

8.6 in. (218 mm), Face-In Wind

Core ID (min)

1.5 in. (38 mm)

Core ID (Recommended)

3 in. (76 mm)

SENSING
See-Thru for labels or tags

Movable

Reflective Eye-Mark

Movable

Continuous Form

Sensor not used

RIBBON
Maximum Width

4.4 in. (111 mm)

Length

1475 ft. (450 m)

Thickness

4.5 micron, Ink-In Wind

All specifications subject to change without notice.

SATO M-8400RV

9001041 Rev. D

Page 1-3

Section 1. Printer Overview

SPECIFICATION

M-8400RV

CONTROLS AND SIGNALS
On-Line

Green LED

Power

Green LED

Label

Red LED

Ribbon

Red LED

Error

Red LED

LCD Panel

2 Line x 16 Character

On/Off-Line Switch

Front Panel

Label Feed Switch

Front Panel

Power On/Off Switch

Front Panel

POTENTIOMETER ADJUSTMENTS
Print Darkness

Front Panel

Pitch

Front Panel

Offset

Front Panel

Display

Front Panel

INTERFACE CONNECTIONS
Parallel
Serial
Serial Protocol

Centronics Compatible Standard
RS232C (2400 to 19.2K bps) Standard
RS422/485 (2400 to 19.2K bps) Optional
Hardware Flow Control (Ready/Busy)
Software Flow Control (X-On/X-Off)
Bi-directional (ENQ/Response)

Data Transmission

ASCII Format

PROCESSING
CPU

32 Bit RISC

ROM

1M byte (4M bit x 2)

DRAM

2 MByte

All specifications subject to change without notice.

Page 1-4

9001041 Rev. D

SATO M-8400RV

Section 1. Printer Overview

CHARACTER FONTS

SPECIFICATION

M-8400RV

MATRIX FONTS
U Font

(5 dots W x 9 dots H)

S Font

(8 dots W x 15 dots H)

M Font

(13 dots W x 20 dots H)

XU Font

(5 dots W x 9 dots H) Helvetica

XS Font

(17 dots Wx 17 dots H) Univers Condensed Bold

XM Font

(24 dots W x 24 dots H) Univers Condensed Bold

OA Font

(15 dots W x 22 dots H) OCR-A

OB Font

20 dots W x 24 dots H) OCR-B

AUTO SMOOTHING FONTS
WB

WB Font (18 dots W x 30 dots H)

WL

WL Font (28 dot W x 52 dots H)

XB

XB Font (48 dots W x 48 dots H) Univers Condensed Bold

XL

XL Font (48 dot W x 48 dots H) Sans Serif

VECTOR FONT
Proportional or Fixed Spacing
Font Size 50 x 50 dots to 999 x 999 dots
Helvetica, 10 Font Variations
DOWNLOADABLE FONTS
TrueType Fonts with Optional Memory Card
CHARACTER CONTROL
Expansion up to 12X in either the X or Y coordinates
Character Pitch control
Line Space control
Journal Print facility
0°, 90°, 180° and 270° Rotation
All specifications subject to change without notice.

SATO M-8400RV

9001041 Rev. D

Page 1-5

Section 1. Printer Overview

BAR CODES

SPECIFICATION

M-8400RV

SYMBOLOGIES
Bookland (UPC/EAN Supplemental)
EAN-8, EAN-13
CODABAR
Code 39
Code 93
Code 128
Interleaved 2 of 5
Industrial 2 of 5
Matrix 2 of 5
MSI
POSTNET
UCC/EAN-128
UPC-A and UPC-E
Data Matrix
Maxicode
PDF417
Ratios
Bar Height

1:2, 1:3, 2:5 User definable bar widths
4 to 600 dots, User programmable

Rotation

0°, 90°, 180° and 270°

OTHER FEATURES
Sequential Numbering
Custom Characters

Sequential numbering of both numerics and bar codes
RAM storage for special characters

Graphics

Full dot addressable graphics, SATO Hex/Binary or .PCX
formats

Form Overlay

Form overlay for high-speed editing of complex formats.

All specifications subject to change without notice.

Page 1-6

9001041 Rev. D

SATO M-8400RV

Section 1. Printer Overview

PHYSICAL

SPECIFICATION

M-8400RV

DIMENSIONS
Wide

10.4 in. (265 mm)

Deep

17.1 in. (435 mm)

High

13.4 in. (341 mm)

WEIGHT

39.6 lbs (18 Kg)

POWER REQUIREMENTS
Voltage

100 - 115 V , ±10 % (Default Setting)
220V , ±10 %
50/60 Hz, ±1%

Power Consumption

50W Idle
130W Operating

ENVIRONMENTAL
Operating Temperature

41° to 104°F (5° to 40°C)

Storage Temperature

-0° to 104°F (-20° to 40°C)

Operating Humidity

15-85 % RH, non-condensing

Storage Humidity

Max 90% RH, non-condensing

Electrostatic Discharge

8KV

REGULATORY APPROVALS
Safety

UL, CSA

RFI/EMI

FCC Class A

All specifications subject to change without notice.

SATO M-8400RV

9001041 Rev. D

Page 1-7

Section 1. Printer Overview

OPTIONAL ACCESSORIES

ACCESSORY

M-8400RV

MEMORY EXPANSION

Two slots for PCMCIA Memory Cards (up to 2MB each). Can be used
for graphic file storage, print buffer expansion, format storage and
downloaded TrueType fonts.

CALENDAR

An internally mounted Date/Time clock that can be used to date/time
stamp labels at the time of printing.

LABEL CUTTER

An internally mounted attachment allowing labels to be cut at
specified intervals. Controlled through programming.

LABEL DISPENSER

Internal attachment allowing labels to be peeled from backing for
immediate (on demand) application. Backing is not rewound.

LABEL REWINDER

External option that rewinds labels onto a roll after they are printed.

COAX/TWINAX INTERFACE

Coax/Twinax adapter card must be installed. Coax I/F emulates an
IBM 3287-2 printer with a standard Type A BNC connector. Twinax
I/F emulates IBM 5224, 5225, 5226 or 4214 printers with
auto-terminate/cable-thru capabilities. Allows the Centronics interface
to remain operational.

All specifications subject to change without notice.

Page 1-8

9001041 Rev. D

SATO M-8400RV

SECTION 2.
INSTALLATION AND CONFIGURATION

INTRODUCTION
This section is provided to assist you in taking the M-8400RV from the shipping
container to the application environment.
The following information is provided in this section:
• Unpacking and Parts Identification
• Setting Up the Printer
• Loading Labels or Tags
• Loading the Ribbon
• Operator Panel
• Printer Configuration

SATO M-8400RV

9001041 Rev. D

Page 2-1

Section 2. Installation and Configuration

UNPACKING AND PARTS IDENTIFICATION
Consider the following when unpacking the printer:
• The box should stay right-side up.
• Lift the printer out of the box carefully.
• Remove the plastic covering from the printer.
• Remove the accessory items from their protective containers.
• If the printer has been stored in a cold environment, allow it to reach room
temperature before powering it on.
• Set the printer on a solid, flat surface. Inspect the shipping container and
printer for any signs of damage that may have occurred during shipping.

NOTE: The following illustrations are representative only. Your printer may not be
packed exactly as shown here, but the unpacking steps are similar.

M-8400RV Packing
Page 2-2

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

Verify that you have the following materials when unpacking:
• Printer
• Power Cord
• Extra Ribbon Core
• Operator’s and Technical Reference Manual

Power Cable
Printer

Extra Ribbon Core

Operator Manual

SETTING UP THE PRINTER
Consider the following when setting up the printer:
• Locate a solid flat surface with adequate room to set the printer. Make sure
there is enough room at the top and right-hand (facing the printer) side to
provide clearance for the label access door to swing open.
• The location should be near the host computer or terminal. The maximum
distance for RS232 cables is 50 feet and six feet for Centronics Parallel
cables. Cables can be purchased locally, and their configuration will depend
upon the host system being used.
• For information on interfacing the printer to a host system, see
Section 5: Interface Specifications.

SATO M-8400RV

9001041 Rev. D

Page 2-3

Section 2. Installation and Configuration

Ribbon Rewind
Spindle

Ribbon Supply
Spindle

Top Access
Door

Side Access
Door

LCD
Display

DIP Switch
Cover

Power Switch

Label Roll Retainer

Label Supply Spindle

Label Guide

Print Head

Head Latch

Platen

Page 2-4

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

LOADING LABELS, TAGS AND RIBBON
LOADING LABELS OR TAGS
Top Access Door

1. Open the Top Access Door by
swinging it up and to the left. Open
the Side Access Door by
swinging it to the rear of the
printer.

Side Access
Door

2. Open the Print Head Assembly by
pushing the Head Latch toward
the rear of the printer. The Print
Head Assembly is spring-loaded
and will automatically open as
soon as the Head Latch is
disengaged.

Label Roll
Retainer
Print Head

3. Loosen the Label Edge Guide and
push it to the outside of the printer
to give the maximum label width.

Head Latch

4. Remove the Label Roll Retainer.

Sensor
Assembly

Label Hold Down
Label
Edge
Guide

Label Guide

SATO M-8400RV

9001041 Rev. D

Page 2-5

Section 2. Installation and Configuration

5. If using roll labels (or tags), load the
roll onto the Label Supply
Spindle so that the printing side
of the labels faces upwards as it
unwinds from the roll. The labels
should be wound face-in. Push the
roll all the way to the inside of the
printer and push the Label Roll
Retainer snugly against the
outside of the label roll.
6. If using fanfold labels (or tags) set
them on a flat surface behind the
printer. Pass the labels (printing
side up) through the slot in the
rear of the printer.

Label Roll

Label Roll Retainer

7. Make sure the labels are routed
under the Label Guide and
through the Sensor Assembly.
8. Open the Label Hold-Down by
squeezing the green tab and the
release tab together. The Label
Hold Down is spring loaded and
will open automatically when the
latch is disengaged. Feed the
labels under the Label Guide,
under the Label Hold Down,
through the Sensor Assembly
and out the front of the printer.
9. Inspect the label routing and verify
that the path matches that
illustrated in the Label Loading
diagram. Set the Adjustable
Label Guide to keep the labels
against the inside of the printer.

Print
Head
Label
Guide

10. Close the Label Hold-Down by
pushing downward on the green
tab until it latches closed.

NOTE: If the Label Dispenser option has been purchased, see Appendix D, for
proper label routing instructions.

Page 2-6

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

Inside Label
Edge Guides

Label Hold
Down

Adjustable Label
Edge Guide

Route under
Label Guide

Sensor
Assembly

Sensor Positioning
Adjustment

11. Adjust the outside Label Edge
Guide until it touches the outside
edge of the label and tighten the
thumb screw. Make sure the labels
are also touching the inside edge
guides.

CAUTION: Using media narrower
than the maximum print width may
cause excess head wear due to the
label edge. See page 2-9 for
precautions.
12. If the ribbon is already loaded,
close the Print Head by rotating
the black Head Latch toward the
front of the printer until it latches
closed.

Head Latch

13. If the ribbon is not loaded, see the
following description for loading
instructions.
14. Close both the Access Doors.

SATO M-8400RV

9001041 Rev. D

Page 2-7

Section 2. Installation and Configuration

LOADING THE RIBBON

Ribbon Rewind
Spindle

Ribbon Path

Ribbon Roll

Head Latch

Dispensed
Labels

Label
Backing

Sensor
Assembly

Label Hold
Down

1. Open the Top Access Door by
swinging it up and to the left and
the Side Access Door by
swinging it toward the rear of the
printer.

Label Path

Top Access Door
Side
Access
Door

2. Open the Print Head by rotating
the Head Latch toward the rear
of the printer. The Print Head is
spring-loaded and will
automatically open as soon as the
Head Latch is disengaged.
3. Locate the Extra Ribbon Core
supplied with the printer. Place the core on the Ribbon Rewind Spindle,
pushing it all the way to the inside of the spindle. Note that the new empty core of
each subsequent roll becomes the next rewind core.
4. Load the ribbon onto the Ribbon Supply Spindle, also pushing it all the way to
the inside of the spindle. The dull side of the ribbon should be facing down as it
travels through the Print Head Assembly.
5. Feed the leader portion of the ribbon through the Print Head Assembly and up
to the Ribbon Rewind Spindle following the routing shown in the diagram.

Page 2-8

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

6. Load the ribbon behind and over
the top of the Ribbon Rewind
Spindle and tape it to the Extra
Ribbon Core. Make sure it
matches the ribbon path shown in
the diagram.

Tape

Ribbon
Core

7. Manually turn the Rewind
Spindle to wrap the ribbon onto
the core one to two turns to
secure it.

Ribbon
Rewind
Spindle

8. If the labels or tags are already loaded, close the Print Head Assembly by
pushing downward on the green tab until it latches closed.

NOTE: Run a test print to ensure that the labels and ribbons were loaded correctly.
See the “User Test Print” section of this chapter on page 2-30 for instructions on
how to run test prints.

CAUTION: If your labels are less than the full width of the print head, the outside
edge will eventually wear out a small portion of the print head, resulting in an area
that will not print. Special care must be taken if you plan to use multiple widths of
labels, since the damaged portion of the print head caused from edge wear on a
more narrow label may affect the printing on a wider label. We suggest you plan
your print formats carefully to avoid using the area of possible damage on the print
head when using a wider label. The small area of damage will have no effect on
printing with the undamaged part of the print head.
Damage from a label edge is physical damage and is unavoidable. It is not covered
by warranty. It is possible to delay such damage by always ensuring that the ribbon
used is wider than the label stock. This will help to protect the print head from label
edge damage.

SATO M-8400RV

9001041 Rev. D

Page 2-9

Section 2. Installation and Configuration

OPERATOR PANEL

LCD
DISPLAY PANEL

LINE

FEED

POWER
LABEL
PRINT

RIBBON

OFFSET

ERROR

PITCH
ON LINE

DSW1

DISPLAY

DSW2

DSW3

The M-8400RV Operator Panel consists of five LED indicators, two momentary
contact switches, three DIP switches, four adjustment potentiometers and one LCD
Display. All of these are accessible from the front of the printer. They are used to set
the printer operating parameters and to indicate the status of the printer to the
operator. After you power on the printer, familiarize yourself with the keys and
indicators as it will help you understand the configuration process.

Page 2-10

PRINT:

Potentiometer to adjust print darkness (fine tuning).

OFFSET:

Potentiometer to adjust amount of back/forward feed
for dispenser/cutter/tear-off bar position (+/-3.75 mm)

PITCH:

Potentiometer to adjust home position of the label
(+/- 3.75 mm). Affects stop position of label feed, print
position and dispense position.

DISPLAY:

Potentiometer to adjust the contrast of the LCD.

POWER:

LED, illuminated when the power is on.

LABEL:

LED, illuminated when label supply is out.
9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

RIBBON:

LED, illuminated when ribbon motion sensor does not
detect any ribbon motion (ribbon out).

ERROR:

LED, illuminated when there is a system fault such as
an open print head.

ON LINE:

LED, illuminated when printer is ready to receive data.
It is turned on and off by toggling the LINE key.

LINE:

Momentary switch. Pressing this key toggles the
printer between the on-line and off-line mode. When
the printer is on-line, it is ready to receive data from
the host. This key acts as a pause during a print job by
taking the printer off-line. It can also be used as a
Pause function key to stop the printer during the
printing process.

FEED:

Momentary switch. Pressing this key feeds one blank
label through the printer when it is off-line. When the
printer is on-line, another copy of the last label will be
printed.

DSW:

DIP switch array to set operational parameters of the
printer.

LCD:

2 Line x 16 Character LCD display. Used for setting
operational parameters of the printer and displaying
error conditions.

SATO M-8400RV

9001041 Rev. D

Page 2-11

Section 2. Installation and Configuration

REAR PANEL
AC Input:

Input 115V 50/60 Hz connector. Use the cable
provided.

AC Fuse:

Input power protection. Type 3A/250V.

Serial Interface:

RS232C serial port connector, DB-25P.

Parallel Interface:

Centronics parallel port connector, AMP 57-40360.

Memory Card Slot:

Two connectors for optional PCMCIA Memory Cards.
(Inside Side Cover)

EXT:

External signal connector, AMP 57-60140.

DC 5V:

Power for accessory items.

Fan-Fold
Access
Panel

+5V
Connector
EXT Port
Connector
Parallel Port
Connector

Serial Port Connector

AC Connector

Fuse

Page 2-12

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

SWITCHES AND SENSORS
Ribbon End Sensor:

This sensor is a motion detector that signals the printer
when the ribbon supply is turning.

Head Open Switch:

When the print head is opened, this switch is activated
and the printer will stop printing.

Label Sensor Unit:

This sensor unit contains two types of sensors, one for
label gap and one for Eye-Mark sensing. The sensors
are adjustable over a limited range.

SATO M-8400RV

9001041 Rev. D

Page 2-13

Section 2. Installation and Configuration

LABEL SENSOR ADJUSTMENT
The Label Sensor Assembly can be positioned to match the location of the label
registration hole/gap/edge. The diagram below illustrates the relative position of
each sensor along the Label Sensor Unit and its range of movement. To position the
sensors, use the adjustment knob located outside and below the print head assembly.
Reflective Sensor

Eye-Mark
on bottom
of liner

Label Gap Sensor

14mm
min
Reflective
7mm to 54 mm
Label Gap
17mm to 64mm

The range of sensor adjustment can be
increased to allow the Gap sensor to be
positioned as close as 3mm from the inside label
edge. Contact SATO for information on how to
make this modification.

Page 2-14

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

PRINTER DIP SWITCH CONFIGURATION
DIP Switch Panels
There are three DIP switches (DSW1, DSW2 and DSW3) located underneath a
snap-on cover on the front panel. These switches can be used to set:
• RS232C transmit/receive parameters
• Thermal transfer or direct thermal mode
• Label sensor enable/disable
• Head check mode
• Hex dump mode
• Receive buffer size
• Operation mode
Each switch is an eight section “toggle” switch. The ON position is always to the top.
To set the switches, first power the unit Off, then position the DIP switches. Finally,
after placing the switches in the desired positions, power the printer back on. The
switch settings are read by the printer electronics during the power up sequence.
They will not become effective until the power is cycled.
RS232 Transmit/Receive Setting
Data Bit Selection (DSW1-1). This switch sets the printer to receive either 7 or 8
bit data bits for each byte transmitted.
DSW1
DSW1-1

SETTING

Off

8 data bits

On

7 data bits

ON
OFF
1

2

3

4

5

6

7

8

Parity Selection (DSW1-2, DSW1-3). These switches select the type of parity
used for error detection.
DSW1-2

DSW1-3

SETTING

Off

Off

No Parity

Off

On

Even

On

Off

Odd

On

On

Not Used

DSW1
ON
OFF
1

2

3

4

5

6

7

8

Stop Bit Selection (DSW1-4). Selects the number of stop bits to end each byte
DSW1
transmission.

SATO M-8400RV

DSW1-4

SETTING

ON

Off

1 Stop Bit

OFF

On

2 Stop Bits

9001041 Rev. D

1

2

3

4

5

6

7

8

Page 2-15

Section 2. Installation and Configuration

Baud Rate Selection (DSW1-5, DSW1-6). Selects the data rate (bps) for the
RS232 port.
DSW1

DSW1-5

DSW1-6

SETTING

Off

Off

9600

ON

Off

On

19200

OFF

On

Off

4800

On

On

2400

1

2

3

4

5

6

7

8

Protocol Selection (DSW1-7, DSW1-8). Selects the flow control and status
reporting protocols. See Section 5: Interface Specifications for more information.
DSW1

DSW1-7

DSW1-8

SETTING

Off

Off

Rdy/Bsy

ON

Off

On

Xon/Xoff

OFF

On

Off

Bi-Com

On

On

Not Used

1

2

3

4

5

6

7

8

Printer Set Up
Print Mode Selection (DSW2-1). Selects between direct thermal printing on
thermally sensitive paper and thermal transfer printing using a ribbon.
DSW2-1

SETTING

Off

Therm Xfr

On

Direct Therm

DSW2
ON
OFF
1

2

3

4

5

6

7

8

Sensor Type Selection (DSW2-2). Selects between the use of a label gap or a
reflective Eye-Mark detector. See page 2-16 for the location of these sensors.
DSW2-2

SETTING

Off

Gap

On

Eye-Mark

DSW2
ON
OFF
1

2

3

4

5

6

7

8

Head Check Selection (DSW2-3). When selected, the printer will check for head
elements that are electrically malfunctioning.
DSW2
DSW2-3

SETTING

ON

Off

Disabled

OFF

On

Enabled

1

2

3

4

5

6

7

8

7

8

Hex Dump Selection (DSW2-4). Selects Hex Dump mode (see page 2-35).
DSW2-4

SETTING

Off

Disabled

On

Enabled

DSW2
ON
OFF
1

Page 2-16

9001041 Rev. D

2

3

4

5

6

SATO M-8400RV

Section 2. Installation and Configuration

Receive Buffer Selection(DSW2-5). Selects the operating mode of the receive
buffer. See Section 5: Interface Specifications for more information.
DSW2-5

SETTING

Off

Single Job

On

Multi Job

DSW2
ON
OFF
1

2

3

4

5

6

7

8

7

8

Protocol Code Selection (DSW2-7). Selects the command codes used for
protocol control. Refer to Appendix E for more information.
DSW2-7

SETTING

Off

Standard

On

Non-Std

DSW2
ON
OFF
1

2

3

4

5

6

M84XX Emulation Mode (DSW2-8). For emulating M-8400 software. Should be
used only if problems are encountered when using existing M-8400 software.
DSW2-8

SETTING

Off

Off

On

M-8400

DSW2
ON
OFF
1

2

3

4

5

6

7

8

Mode Selection (DSW3-1 and DSW3-2). Selects the operating mode of the
printer. Batch/Continuous disables the label taken (dispense option) sensor.
DSW3-1 DSW3-2

DSW3

SETTING

Off

Off

Batch/Continuous

ON

Off

On

Tear Off

OFF

On

Off

Cutter

On

On

Dispenser

1

2

3

4

5

6

7

8

Label Sensor Selection (DSW3-3). Enables or disables the Label Pitch Sensor. If
the Sensor is enabled, it will detect the edge of the label and position it
automatically. If it is disabled, the positioning must be under software control using
Line Feed commands for continuous media printing.
DSW3-3

SETTING

Off

Sensor Used

On

Not Used

DSW3

ON
OFF
1

2

3

4

5

6

7

8

Back-Feed Selection (DSW3-4). When Back-Feed is enabled, the printer will
position the label for dispensing/cutting and retract it before printing the next label.
See page 2-34 for information on setting the amount of offset.
DSW3

SATO M-8400RV

DSW3-4

SETTING

ON

Off

Enabled

OFF

On

Disabled

9001041 Rev. D

1

2

3

4

5

6

7

8

Page 2-17

Section 2. Installation and Configuration

External Signal Interface. See Section 5: Interface Specifications for information
on the External Signals.
EXT Print Start Signal Selection (DSW3-5). Allows an external device to
initiate a label print. See page 5-10 for a description of signal requirements.
DSW3-5

SETTING

Off

Disabled

On

Enabled

DSW3
ON
OFF
1

2

3

4

5

6

7

8

Note: This switch must be in the On position if a VeriScan is used to control the
printer via the EXT connector.
External Signal Type Selection (DSW3-6, DSW3-7). Selects the type of
output signal. See page 5-11 for a definition of signal types.
DSW3

DSW3-6

DSW3-7

SETTING

Off

Off

Type 4

ON

Off

On

Type 3

OFF

On

Off

Type 2

On

On

Type 1

1

2

3

4

5

6

7

8

Repeat Print via External Signal (DSW3-8). Allows an external device to
control the reprint of the label in the print buffer. See page 5-11 for a description of
the signal requirements.
DSW3-8

SETTING

Off

Disabled

On

Enabled

DSW3
ON
OFF
1

2

3

4

5

6

7

8

Reserved for Future Use (DSW2-6)

Note: The Centronics (Parallel) communications port on the M-8400RV is always
enabled regardless of the settings for the RS232 port. There are no settings for
Centronics! Both the Centronics and RS232 ports are active at all times. Care
should be taken to ensure that data is not transmitted to both ports simultaneously
as the received message will be corrupted.
Default Settings
Switch Selections - All switches are placed in the Off position (default) for shipping.
This will result in the following operating configuration:

Page 2-18

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

Communications:
Protocol:
Sensor:
Receive Buffer:
Mode:
Label Sensor:
Backfeed:
External Signals:

8 data bits, no parity, 1 Stop bit, 9600 Baud
Ready/Busy
Gap Sensor
Single Job
Batch/continuous
Sensor Used
Disabled
Disabled

Software Default Settings - The printer stores any software settings upon receipt from
the host and uses them until they are again changed by receipt of a command
containing a new setting. These settings are stored in non-volatile RAM and are not
affected by powering the printer off. The printer may be reset to use the default
software settings by depressing the LINE and FEED keys simultaneously while
powering the printer on. This will result in the following default configuration:
Parameter

Default Settings

Print Darkness

“3”

Print Speed
Print Reference

6 in. per sec.
Vertical = 0001, Horizontal = 0001

Zero

Slash

Auto On Line

Enabled

Once the default operation is completed, a “SATO DEFAULT COMPLETED” message
will be displayed on the LCD panel and a single “beep” will be heard. The printer
should be powered off while this message is being displayed. This saves the default
settings in the EEPROM where they will be automatically loaded the next time the
printer is powered on.

SATO DEFAULT
COMPLETED
PRINTER ADJUSTMENTS
The LCD Panel on the M-8400RV is used in conjunction with the LINE and FEED
switches by the operator to manually enter printer configuration settings. Many of the
settings can also be controlled via software commands and in the case of conflict
between software and control panel settings, the printer will always use the last valid
setting. If you load a label job that includes software settings and then enter a new
setting via the Operation Panel, the manually set values will be used by the printer. If
you set the values manually and then download a job with software settings, the
software settings will be used.

SATO M-8400RV

9001041 Rev. D

Page 2-19

Section 2. Installation and Configuration

POWER ON
Normal/User Mode

ON LINE

POWER

QTY:000000

Page 2-28

Print Test Labels

USER TEST PRINT
LARGE
SMALL

POWER + FEED

Page 2-21

Advanced Mode Settings and Adjustments
POWER + LINE

ADVANCED MODE
SETUP
Page 2-30

Load SATO Default Settings
POWER + FEED + LINE

SATO DEFAULT
COMPLETED
Page 2-19

Download User Defined Protocol Codes
POWER + LINE + DSW2-7=ON

USER DOWNLOAD
Page E-2

Reset to SATO Default Protocol Codes
POWER + LINE + FEED + DSW2-7=ON

ALT PROTOCOL
DEFAULT COMPLETE
Page E-2

Print Hex Dump Label
POWER , then DSW2-4=ON

Print Hex Dump Label
POWER + DSW2-4=ON

Page 2-20

9001041 Rev. D

Print Buffer
Hex Dump Label
Page 2-35

Receive Buffer
Hex Dump Label
Page 2-35
SATO M-8400RV

Section 2. Installation and Configuration

Normal Mode
When the printer is powered on, the readout should display the following message:

ON LINE

QTY:000000

The LCD Panel will display the Online status on the top line of the display. The
bottom line will contain the label quantity (QTY) status. The ON LINE message will
be changed to OFF LINE whenever the printer is switched offline by depresing the
LINE key. As soon as a print job is received, the QTY message will indicate the
number of labels to be printed. As soon as the label job begins to print, the display
will indicate the number of labels remaining in the print job that remain to be printed.
User Mode
To enter the USER mode:
1. The printer is first taken offline by pressing the LINE key once. The display will
change to:

OFF LINE

000000

2. When the display changes to OFF LINE, press the FEED and LINE keys
simultaneoulsy for more than one second.
The printer now displays the first USER mode adjustment (Print Darkness).
Print Darkness Setting
There are five Darkness (or heat range) settings on M-8400RV. The higher numbers
represent darker settings. The current setting is indicated by an underline under one
of the range settings. To change the setting:

PRINT DARKNESS
1 2 3 4 5
1. Use the LINE key to step the underline cursor to the desired setting.
2. Once the correct setting is underlined, press the FEED key to accept the setting and
advance to the next adjustment.
Note: This setting can be overriden by software (see Print Darkness Page 4-56).
After setting the heat range with this command, finer adjustments can be made using
the PRINT potentiometer adjustment on the Adjustment panel. See Section 3:
CLEANING AND MAINTENANCE, for additional information on how to make this
adjustment for optimum print quality.
SATO M-8400RV

9001041 Rev. D

Page 2-21

Section 2. Installation and Configuration

Print Speed Adjustment
There are five SPEED settings on the M-8400RV. The setting is listed on the bottom
line of the display. The current setting is indicated by an underline under one of the
speed settings. To change the setting:

PRINT SPEED
1 2 3 4
Print Speed
Setting

5

DSW2-8 OFF

DSW2-8 ON

1 = 2 ips
2 = 4 ips
3 = 6 ips
4 = 8 ips
5 = 10 ips

1 = 2 ips
2 = 3 ips
3 = 4 ips
4 = 5 ips
5 = 6 ips

1. Use the LINE key to step the underline cursor to the desired speed setting.
2. Once the correct setting is underlined, press the FEED key to accept the setting and
advance to the next adjustment.
Note: This setting can be overriden by software (see Print Speed, Page 4-62).
See Section 3: CLEANING AND MAINTENANCE, for additional information on how to
make this adjwill cause the jmum print quality.
Pitch Offset and Direction
The label Pitch is the distance from the leading edge (the edge that comes out of the
printer first) of a label and the leading edge of the next label. The leading edge
position of the label can be adjusted relative to the print head +/- 49 mm in
increments of 1 mm using the following procedure. Once the position is set, it can be
adjusted +/- 3.75mm using the PITCH potentiomenter on the Adjustment panel (see
page 2-33).

ABCDEFG

Page 2-22

Sensor Position

Label Feed Direction

ABCDEFG

ABCDEFG

9001041 Rev. D

Must be moved
with Minus (-)
Offset to print
on leading
edge of label
Leading Edge of Label as
detected by the sensor
Original First
Line Print
Position
Moved with
Positive (+) Offset
to print on trailing
edge of label
SATO M-8400RV

Section 2. Installation and Configuration

PITCH DIRECTION
+
1. Use the LINE key to step the underline cursor to either the positive (+) or negative
(-) selection. A positive selection increases the label pitch while a negative
selection decreases the label pitch.
2. Once the correct setting is underlined, pressing the FEED key will accept the
setting and advance to the Pitch Offset adjustment.

PITCH OFFSET

+ 00mm

3. Use the LINE key to step the counter to the desired position. The display will
increment one step for each time the LINE key is pressed. If the LINE key is held
pressed for more than two seconds, it will automatically go into the fast scroll
mode. The reading will advance to a setting of 49 mm after which it will
automatically wrap and start at “00” again. The Pitch Direction set in the previous
step will be displayed in front of the Offset setting.
4. Once the setting is correct, pressing the FEED key will accept the setting and
advance to the Cancel Print Job display.
5. You may wish to check your settings by printing a test label after you have
completed the adjustments to ensure that they are correct. See Page 2-30 for
instructions on how to print a test label.
Cancel Print Job
If the printer has a print job(s) loaded in memory, selecting YES will cause the job(s)
to be cleared. The default selection is NO. Make sure that you want to cancel the
print job before selecting YES as the job cannot be recovered and will have to be
retransmitted to the printer.

CANCEL PRINT
NO
YES
1. Use the LINE key to step the underline cursor to either the YES or NO selection.
2. Once the correct setting is underlined, pressing the FEED key will accept the
setting and terminate the User Mode of operation and return you to the Normal
Mode OFF LINE display.
If you wish to change any of the settings, you must enter the User Mode again by
simultaneously pressing FEED and LINE keys for more than one second.
Advanced Mode Settings and Adjustments

SATO M-8400RV

9001041 Rev. D

Page 2-23

Section 2. Installation and Configuration

An Advanced Mode is provided to make adjustments that require only occasional
adjustments. Since they affect the basic operation of the printer, the procedure for
entering this mode is designed to prevent someone from accidently changing the
settings.
To enter the Advanced Mode, the printer is powered on while pressing the LINE
key. The printer will “beep” one time and display the first configuration selection on
the LCD panel.
From the Advanced Mode display, the Advanced settings are accessed in sequence by
pressing the FEED key.
Zero Slash Setting
This setting determines if a zero is printed with a slash or without a slash. This setting
can also be controlled via software commands. When YES is selected, the U, S, M,
WB, WL, XU, XS, XM, XB, XL and vector fonts will have a slash through the center of
the zero character.

ZERO SLASH
YES
NO
1. Use the LINE key to step the underline cusor to either the YES or NO selection.
2. Once the correct setting is underlined, pressing the FEED key will accept the
setting and advance the display to the Auto Online display.
Auto Online Setting
This setting determines the mode in which the printer powers up. If the YES selection
is made, the printer powers up in the ON LINE mode and is ready to print. If NO is
selected, the printer powers up in the OFF LINE mode and must be manually placed
in the ON LINE mode by pressing the LINE key before it is ready to print.

AUTO ONLINE
YES
NO
1. Use the LINE key to step the underline to either the YES or NO selection.
2. Once the correct setting is underlined, pressing the FEED key will accept the
setting and advance the display to the Vertical Offset display.
Vertical Offset Setting
Vertical Offset is the distance down from the leading edge (the edge of the label that
comes out of the printer first) to the first vertical print position. It is always a positive
setting since making it negative would move it up and off the printable label. This
setting changes the base reference point for all subsequent label jobs. It’s effect is
identical to the A3 Base Reference point command (see Page 4-19). Since the
printer moves the label in discrete steps equal to the size of the print dot, the units of
Page 2-24

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

measure for Vertical Offset distance is dots. The maximum value that can be set is
1424(2848 in Expanded mode).

VERT. OFFSET

V:0000

Note: This setting can be overriden by the Base Reference Point Command, Page
4-19).
1. Use the LINE key to step the counter to the desired setting. The display will
increment one step for each time the LINE key is pressed. If the LINE key is held
pressed for more than two seconds, it will automatically go into the fast scroll
mode. The reading will advance to the maximum setting (the maximum vertical
offset) after which it will automatically wrap and start at “0000” again.
2. Once the setting is correct, pressing the FEED key will accept the setting and
advance to the Horizontal Direction display.
Note: The printers will not “wrap” images that extend beyond the print area. Any
part of the image that extends beyond the print area will be truncated.
Horizontal Offset and Direction
Horizontal Offset is the distance that the label image is shifted either to the right or
left on the label. The image is shifted to the left (towards the inside edge of the label)
for a positive setting and it is shifted to the right (towards the outside edge of the
label) for a negative setting. This setting changes the base reference point for all
subsequent label jobs. It’s effect is identical to the A3 Base Reference point
command (see Page 4-19)Since the printer can only print in discrete steps equal to
the size of the print dot, the units of measure for the Horizontal Offset distance is
dots.
Note: This setting can be overriden by the Base Reference Point Command, Page
5-19).

HOR. DIRECTION
+

-

1. Use the LINE key to step the underline to either the positive (+) or negative (-)
selection. A positive selection increases moves the horizontal reference point for
the label to the right edge of the label, towards the outside, while a negative
selection moves the horizontal reference point for the label to the left, towards
the inside of the printer.
2. Once the correct direction setting is underlined, pressing the FEED key will accept
the setting and advance to the Horizontal Offset adjustment.

HOR. OFFSET
SATO M-8400RV

H+ 0000

9001041 Rev. D

Page 2-25

Section 2. Installation and Configuration

3. Use the LINE key to step the counter to the desired setting. The display will
increment one step for each time the LINE key is pressed. If the LINE key is held
pressed for more than two seconds, it will automatically go into the fast scroll
mode. The reading will advance to the maximum setting (the maximum
Horizontal Offset is 832) after which it will automatically wrap and start at “000”
again. The Horizontal Direction set in the previous step will be displayed in front
of the Offset setting.
Note: The M-8400RV printer will not “wrap” images that extend beyond the
print area. Any part of the image that extends beyond the print area will be
truncated.
4. Once the setting is correct, pressing the FEED key will accept the setting and
advance to the Sensor Threshold display.

ABCDEFG

Inside Label Edge

Label Feed Direction

ABCDEFG

Original Print
Line Position
Moved with both
Vertical and (+)
Horizontal Offset

Sensor Threshold Level
The M-8400RV printer determines the location of the leading edge of the label by
measuring the difference between light levels when it sees either a label edge or a
black “EYE” mark. This adjustment allows you to manually set the threshold voltage
level, between the maximum and minimum light levels. DIP switch DSW2-2 selects
the sensor type. If DSW2-2 is in the OFF position, the setting will be for a See-Thru
(or Gap) sensor and the LCD will display “GAP” on the top line along with the
current setting. If DSW2-2 is in the ON position, the LCD will display “EYE” on the
top line with its current setting. If the value entered for the bottom line setting is
“0.0V”, then the printer will automatically calculate the setting when the first label is
fed after the printer is powered on or the head is closed. There are some instances
where the automatically calculated value must be adjusted to ensure reliable label
Page 2-26

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

feeding, such as when the backing opacity or the reflectance of the EYE mark varies
significantly within a roll of labels or between label rolls. In these instances the value
should be set using the following procedures.

GAP
INPUT

(X.XV)
(X.XV)

GAP - When setting the “gap” threshold, the voltage shown on the top line of the
display must be measured with nothing but the backing in the sensor and then again
with a label still attached to the backing. The formula to be used for setting the
threshold is:
(High Voltage Level + Low Voltage Level) x 0.5 = Start Value
1. Insert a label still attached to the backing into the sensor (see page 2-14 for
location of the sensors) and close the Label Hold-Down. Record the voltage
shown on the top line of the LCD panel. This line should have the message “GAP”
on the top line (DIP switch DSW2-2 = OFF). Make sure the label is all the way
under the sensor.
2. Strip the label from the backing and insert the backing strip under the sensor and
close the Label Hold-Down. Record the voltage shown on the top line of the LCD
panel. The voltage ranges measured should be within the following ranges:
Backing with Label

Label Backing Only

2.0V to 3.5V

Less than 1.0V

If the measured values are outside this range, you may have trouble in finding a value
that will work properly under all conditions. If this is the case, a higher quality
label material may be needed to get adequate performance.
3. Calculate the starting point voltage using the formula shown above.
4. Use the LINE key to step the counter to the desired setting. The display will
increment one step for each time the LINE key is pressed. If the LINE key is held
pressed for more than two seconds, it will automatically go into the fast scroll
mode. The reading will advance to a setting of 4.9 (the maximum voltage) after
which it will automatically wrap and start at “0.0” again. If a value of “0.0” is set,
the printer will automatically set the level half way between the two measured
voltages each time the printer is powered on with labels loaded.
5. Once the setting is correct, pressing the FEED key will accept the setting and
advance to the Calendar Set display.
6. Repeat this procedure using values slightly higher or lower until the optimum
performance is obtained. If you cannot find a setting between the high and low
readings that gives adequate performance, then the label stock has too much
variation in its opacity and a better quality stock should be used.

SATO M-8400RV

9001041 Rev. D

Page 2-27

Section 2. Installation and Configuration

EYE - When setting the “eye” threshold, the voltage must be measured with nothing
but the label under the sensor and then again with the printed “eye” mark under the
sensor. The formula for this is:
(High Voltage Level + Low Voltage Level) x 0.5 = Start Value
1. Insert a label into the sensor (see Section 3: Cleaning and Maintenance for location
of the sensors) and close the Label Hold-Down. Make sure the printed “eye” mark
is not under the sensor. Record the voltage shown on the top line of the LCD
panel. This line should have the message “EYE” on the top line (DIP switch
DSW2-2 = ON).
2. Now pull the label forward until the “eye” mark is positioned under the sensor (the
voltage reading should be at its highest point). Record the voltage shown on the
top line of the LCD panel. The voltage ranges measured should be within the
following ranges:
Label Only

Eye Mark

Less than 1.0V

2.5V to 3.5V

If the measured values are outside this range, you may have trouble in finding a value
that will work properly under all conditions. If this is the case, a higher quality
label may be needed to get adequate performance.
3. Calculate the starting point voltage using the formula.
4. Use the LINE key to step the counter to the desired setting. The display will
increment one step for each time the LINE key is pressed. If the LINE key is held
pressed for more than two seconds, it will automatically go into the fast scroll
mode. The reading will advance to a setting of 4.9 (the maximum voltage) after
which it will automatically wrap and start at “0.0” again. If a value of “0.0” is set,
the printer will automatically set the level each time the printer is powered on
with labels loaded or the head is closed.
5. Once the setting is correct, pressing the FEED key will accept the setting and
advance to the Calendar Set display.
6. Repeat this procedure using values slightly higher or lower until the value that
gives adequate performance is found. If adequate performance cannot be
obtained, then the label stock or printed “Eye” mark has too much variation in its
reflectance and a better quality stock should be used.
Calendar Set
If the Calendar Option is installed in the printer, the date and time can be set
manually using the LCD Display or via the WT Calendar Set command (see
Page 4-80). The last setting, set either manually via software command, received by
the printer will be the value used.

CALENDAR ENABLED
NO
YES
Page 2-28

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

To enable the Calendar feature (if installed) press the LINE key until the underline
cursor is beneath the YES. If the Calendar feature is to be disabled, press the LINE
key until the underline cursor is beneath the NO. When the desired setting is
selected, press the FEED key.
The format of the display is YY/MM/DD hh:mm (Year/Month/Day/hours:minutes).
The date format is fixed and cannot be changed.

CALENDAR
00/00/00

00:00

1. Year - The first display shown will have the two digit year selection underlined. You
can scroll through the dates by pressing the LINE key. The year number will
increase by one each time the LINE key is pressed until it reaches its maximum
legal value (i.e., “99” for the year digits) at which point it will wrap around to the
“00” setting.
2. Month - After you have set the correct year, pressing the FEED key will advance
the underline cursor to the two digit Month position. You can scroll through the
numbers corresponding to the month by pressing the LINE key. The month
number will increase by one each time the LINE key is pressed until it reaches a
value of “12” at which point it will wrap around to the “01” setting.
3. Day - After you have set the correct month, pressing the FEED key will advance the
underline cursor to the two digit Day position. You can scroll through the
numbers corresponding to the month date by pressing the LINE key. The date
number will increase by one each time the LINE key is pressed until it reaches a
value of “31” at which point it will wrap around to the “01” setting.
4. Hour - After you have set the correct date, pressing the FEED key will advance the
underline cursor to the two digit Hour position. You can scroll through the
numbers corresponding to the hour (using a 24 hour clock) by pressing the LINE
key. The hour number will increase by one each time the LINE key is pressed
until it reaches a value of “24” at which point it will wrap around to the “01”
setting.
5. Minute- After you have set the correct hour, pressing the FEED key will advance
the underline cursor to the two digit Minute position. You can scroll through the
numbers corresponding to the hour by pressing the LINE key. The minute
number will increase by one each time the line key is pressed until it reaches a
value of “60” at which point it will wrap around to the “01” setting.
6. After you have set the calendar, pressing the FEED key will accept the setting and
advance to the CR/LF display.
Ignore CR/LF
This selection tells the printer to strip out all carriage return/line feed pairs (CRLF )
from the data stream, including graphics and 2D bar codes. It is used primrily to
maintain compatibility with earlier models of SATO printers.
1. Use the LINE key to step the underline cusor to either the YES or NO selection.
SATO M-8400RV

9001041 Rev. D

Page 2-29

Section 2. Installation and Configuration

IGNORE CR/LF
YES
NO
2. Once the correct setting is underlined, pressing the FEED key will accept the
setting and advance the display to the Print Darkeness display.
Print Darkness Type
This selection provides a dual level heat control. The normal setting is Type 1 which
provides head energy control for normal label printing, such as typical shipping
labels. The Type 2 selection provides better control of the head heat for high print
density labels.

print darkness
type

1

1. Use the LINE key to step the underline cusor to either the “1” or “2” selection.
2. Once the correct setting is underlined, pressing the FEED key will accept the
setting and advance the display to the Exit Advanced Mode display.
Exit Advanced Mode

EXIT advanced MODE
NO
YES
1. Use the LINE key to step the underline cusor to either the YES or NO selection.
2. Once the correct setting is underlined, pressing the FEED key will accept the
setting. If you selected No, the display will return to the initial Advanced Mode
Setup display.
3. If you selected Yes, the printer will return to the normal OFFLINE mode.
Advanced Mode Counters
The Advanced Counters Mode is provided for reading and clearing internal counters.
These counters allow the user to keep track of the number of centimeters of label
material that has passed through the printer, how many labels have been dispensed
or how many lables have been cut. The Advanced Mode Counters in entered by
pressing the LINE key once.

advanced mode
Counters
The Counters display allows you to select the counter to be viewed or cleared.

Page 2-30

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

COUNTERs
hd dsp cut life
The counters are identified in the display as:
HD:
DSP:
CUT:
LIFE:

Head Counter
Dispense Counter
Cutter Counter
Life Counter

1. Use the LINE key to select the counter to be accessed, the Head (HD) counter,
Dispenser (DSP) counter or the CUT (Cutter) counter. Use the FEED key to
display the values stored for that particular counter.

HEAD COUNTER

0.0

2. Pressing the FEED key again will bring up the counter Clear display. To clear the
counter, press the FEED key until the underline cursor is beneath the YES. If you
do not want to clear the counter, press the LINE key until the underline cursor is
beneath the NO. Pressing the FEED key will clear the selected counter if YES was
chosen and bring you to the Exit Advanced Mode Setup display. Note that the
LIFE counter cannot be cleared.

HEAD CNTR CLEAR
NO
YES
Exit Mode
This allows you to exit the Advanced Mode or to recycle through the selections again.
1. Use the LINE key to step the underline cursor to either the YES or NO selection.
The default position is NO.
2. Once the correct setting is underlined, pressing the FEED key will advance the
display to the OFF LINE mode if YES was underlined or back to the Zero Slash
display if NO was selected.
USER TEST PRINT
This option allows you to print a test label. It is recommended that you print a test
label after you have changed any of the settings in the Advanced Mode. The test label
allows you to verify that you indeed did make the desired changes. To enter the User
Test Print Mode, power the printer on while pressing the FEED key. The printer will
“beep.” Release the FEED key and the printer will display the following message on
the LCD panel:
1. Use the LINE key to step the underline cursor to either the LARGE or SMALL
selection. If LARGE is underlined, a label will be printed for a maximum width label.
The default position is LARGE.
SATO M-8400RV

9001041 Rev. D

Page 2-31

Section 2. Installation and Configuration

USER TEST PRINT
LARGE
SMALL
If LARGE was selected, a label containing a head check pattern and the current
printer setting information will be printed.
2. Once the desired label size setting is underlined, pressing the FEED key will cause
a label to be printed if LARGE was underlined. If SMALL was underlined, the
display will advance to the Print Size display.
Print Size
If SMALL was selected, the Print Size message will be displayed. You must enter the
size of the label. The minimum label size that can be selected is 4 cm (1.6") and the
maximum size is 10 cm (4").
Pressing the LINE key will increment the setting by 1 cm for each time the key is
pressed. Once the maximum size is reached, the display will wrap arond and start
incrementing at 04 cm again. Once the correct label width is selected, pressing the
FEED key will initiate the print. The SMALL label only contains a head check pattern.

PRINT SIZE

04 cm

If you wish to pause the printer after its starts to print a test label, press the LINE key
to place it Off Line. Pressing the LINE key again will palce the printer back On Line
and the test label will resume printing. If you wish to stop the test label print, pause
the printer and then turn power off without placing it On Line.

Page 2-32

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

POTENTIOMETER ADJUSTMENTS
PITCH
After the pitch has been set, it is sometimes desirable to make minor adjustments.
This can be done using the PITCH potentiometer on the front panel. This
potentiometer is set at the factory so that it has a range of +/- 3.75 mm. The
midpoint setting should have no effect on the pitch. Turning the potentiometer all the
way clockwise should move the print position 3.75 mm up towards the top edge of
the label. Turning it all the way counterclockwise should move the print position
down 3.75 mm.
1. While depressing the LINE key on the front panel, power the printer on.
2. When you hear one beep from the printer, release the LINE key and the printer
will begin printing Test Labels continuously.
3. Select the a Large or Small label width using the LCD display lanel and the LINE
key. If Small is selected, you must also set the appropriate width. See Page 2-31,
“Print Size.”
4. Adjust the PITCH potentiometer on the front panel until the first print position is
at the desired location on the label. If the potentiometer does not have enough
range, then you will have to change the pitch setting using the front panel display.
5. Press the FEED key to stop the printer.
Adjusting the PITCH potentiometer will affect the stop position of the label and the
cut/dispense/tear-off position.

Label Feed Direction

ABCDEFG

SATO M-8400RV

Moved with
Minus (-) Offset

ABCDEFG

Original Print
Line

ABCDEFG

Moved with
Positive (+) Offset

9001041 Rev. D

Page 2-33

Section 2. Installation and Configuration

OFFSET
When the printer is in dispense mode, the Feed Offset is used to correctly position the
label for dispensing/cutting. Once the correct Feed Offset is obtained, the printer will
position the label for dispensing/cutting and then reposition the next label before
printing.
The amount of backfeed is controlled by the OFFSET potentiometer on the front
panel. When turned all the way clockwise, the amount of backfeed adjustment is
+3.75 mm, and -3.75 mm when it is turned all the way counterclockwise.
1. Turn the printer on.
2. Press the LINE key to place the printer in the Off Line condition.
3. Press the FEED key to feed out a blank label.
4. Adjust the position using the OFFSET potentiometer on the front control panel and
feed another label by depressing the FEED key.
5. When the adjustment is correct, turn the printer off.
DISPLAY
This potentiometer is used to adjust the contrast of the LCD display for optimum
viewing under various lighting conditions.

Page 2-34

9001041 Rev. D

SATO M-8400RV

Section 2. Installation and Configuration

HEX DUMP DIAGNOSTIC LABELS
In addition to the User Test Print Labels (see Page 2-30), the printer contents of the
receive and print buffers can be examined using the Hex Dump Test Labels.
Print Buffer Hex Dump
The contents of the Print Buffer can be examined using the Hex Dump mode. The
label numbers each line of data received in the left-hand column, the data in
hexadecimal format in the center columns followed by the same data in ASCII format
in the right-hand column.
1. Turn the printer on.
2. Send and print label.
3. Place the printer in the Off Line mode by pressing the LINE key. The LINE LED
should go out.
4. Place DSW2-4 in the On position.
5. Press the LINE key to place the printer back in the On Line status.
6. Press the FEED key.
7. A label should be printed containing the contents of the print buffer in Hexadecimal
format.
8. Return DSW2-4 to the off position.
9. Turn the printer off and then back on to place it back in the normal print mode.
Receive Buffer Hex Dump
The data that is being received by the printer (before it is placed in the Print Buffer)
can be examined by using the Hex Dump Mode. The label numbers each line of
data received in the left-hand column, the data in hexadecimal format in the center
columns followed by the same data in ASCII format in the right-hand column.
1. Turn the printer off.
2. Place DSW2-4 in the on position.
3. Turn the printer on.
4. Transmit the data to the printer.
5. The data received is printed out on a label in hexadecimal format.
6. Return DSW2-4 to the off position.
7. Turn the printer off and then back On to place it back in the normal print mode.
SATO M-8400RV

9001041 Rev. D

Page 2-35

Section 2. Installation and Configuration

Hex Dump Label

Page 2-36

9001041 Rev. D

SATO M-8400RV

SECTION 3.
CLEANING AND MAINTENANCE
INTRODUCTION
This section provides information on user maintenance for the M-8400RV. This
section contains the following information.
• Adjusting the Print Quality
• Cleaning the Print Head, Platen and Rollers
• Replacing the Print Head
• Replacing the Fuse

PROCEDURES
ADJUSTING THE PRINT QUALITY
The M-8400RV printer is equipped with two different methods of adjusting the
quality of the print: print darkness and speed. When adjusting the printer for
optimum print quality, a bar code verifier system should be used. The human eye is a
poor judge of the relative widths of the bars in a symbol, a characteristic that is
extremely important for good bar code quality.
Darkness (Print)
This adjustment allows the user to control (within a specified range) the amount of
power that is used to activate the individual print head heat elements. It is important
to find a proper print darkness level based on your particular label and ribbon
combination. The printed images should not be too light nor should the ink from the
ribbon “bleed.” The edges of each image should be crisp and well defined.
The Print Darkness range can be set using the front panel LCD panel (see Page 2-21)
or by downloading the setting using the Print Darkness software command (see Page
4-56). There are three ranges, 1 (Low), 2 (Medium) and 3 (High). Once the range
has been selected, the PRINT Potentiometer on the front panel can be used to make
finer adjustments.

SATO M-8400RV

9001041 Rev. D

Page 3-1

Section 3: Cleaning and Maintenance

Print Potentiometer
The fine adjustment for Print Darkness is the PRINT potentiometer on the operator
panel. It provides a continuous range of adjustment, allowing you to make precise
changes. Use a small cross-point screwdriver, turning clockwise for darker print and
counterclockwise for lighter print.

NOTE: The PRINT potentiometer adjustment will affect the darkness in all of the
command code speed ranges, i.e. if the PRINT potentiometer is adjusted for lighter
print, the darkness will be lighter in all speed ranges selected by the command code.
Print Speed
The other method of controlling print quality is by controlling the speed at which the
label is printed. This adjustment is made only on an individual label basis using either
the Print Speed command code or the LCD display panel. For more details on this
command, see Page 4-62 in Section 4: Programming. Changing the print speed allows
the user to control the amount of time allowed for print element cooling before the
media is stepped to the next print position. It is especially critical when printing
“ladder” bar codes (bar codes printed with the bars parallel to the print line). When
printing a “ladder” bar code, it is important to allow the head to cool sufficiently
before stepping to the next position. If it does not have sufficient time to cool, the bar
will be “smeared” on the trailing edge.
The Print Speed can be set to 2, 4, 6, 8 or 10 inches per second (with DSW2-8 Off)or
2, 3, 4, 5 or 6 inches per second(DSW2-8 On) using the LCD panel (see Page 2-22) or
with the Print Speed command code (see Page 4-62). The software command will
override the any setting entered using the LCD panel.

Page 3-2

9001041 Rev. D

SATO M-8400RV

Section 3: Cleaning and Maintenance

CLEANING THE PRINT HEAD, PLATEN AND ROLLERS
Supplies needed:

SATO SA070 Cleaning Kit

Cleaning the Print Head and Platen
1. Turn the printer off and remove the power
cable.
2. Open the Top Access and Side Access
doors.
3. Open the Print Head by pushing the Head
Latch toward the rear of the printer. The
Print Head is spring-loaded and will
Print Head
automatically open as soon as the Head
Latch is disengaged. Remove the ribbon.
4. Apply SATO Thermal Print Head Cleaner to a
cotton swab.

Platen

Head Latch

5. The Print Head faces downward along the front edge of the assembly. Pass the
end of the dampened swab along the entire width of the Print Head (you may
need to move the ribbon out of the way to do this).
6. Check for any black coloring or adhesive on the swab after cleaning.
7. Repeat if necessary until the swab is clean after it is passed over the head.
8. The head should be cleaned at least every time the ribbon is changed and more
often in harsh environments.
9. Apply SATO Thermal Print Head Cleaner to one of the cotton swabs.
10. The Platen is the rubber roller directly below the Print Head. It should be
cleaned of any ribbon or label residue.

SATO M-8400RV

9001041 Rev. D

Page 3-3

Section 3: Cleaning and Maintenance

Cleaning the Rollers and Guides
1. The Label Load Drive is located
underneath the Label Hold-Down. It
should be cleaned of any label residue or
foreign material. The Label Hold Down
Roller is located on the underneath side of
the Label Hold Down. It should also be
cleaned of any residue or foreign material.

Label Edge
Guides

2. There are two Label Edge Guides used in
guiding the labels through the printer. They
should be cleaned of any residue or foreign
material.

Sensor
Assembly

Label Hold
Down Roller
Label Drive
Roller

3. Repeat when necessary. The rollers and
guides should be cleaned whenever foreign matter such as dust or adhesive is
present.

CLEANING THE SENSORS
There are two sensors that are used to control the positioning of the label. One is a
transmissive see-thru sensor that detects the edge of the label by looking through the
backing paper which is translucent and detecting the presence of the opaque label.
The other is a reflective sensor that detects the light reflected from the bottom of the
label liner. When a printed black Eye-Mark passes through the beam, the light is no
longer reflected back to the sensor detector, indicating to the printer that it should
use this position as the start of a new label. When dust, dirt or other foreign matter
interferes with the light path of either of these sensors, the results is erratic label
positioning. These sensors should be cleaned regularly, at least every two rolls of
labels. They are both located on an adjustable assembly in the throat of the printer
between the Label Hold Down and the Print Head.
1. Turn the printer off and remove the power cable.
2. Open the Top Access and Side Access doors.
3. Open the Print Head by pushing the Head Latch toward the rear of the printer.
The Print Head is spring-loaded and will automatically open as soon as the
Head Latch is disengaged. Remove the ribbon.
4. Apply SATO Thermal Print Head Cleaner to a cotton swab.
5. Carefully insert the swab between the top and bottom portions of the Sensor
Assembly. The location of the sensors is identified by two marks on the front of
the assembly.
6. Move the swab back and forth to clean any residue from the sensors (see Page 2-14
for location of sensors).

Page 3-4

9001041 Rev. D

SATO M-8400RV

Section 3: Cleaning and Maintenance

REPLACING THE PRINT HEAD
The print head on the M-8400RV printers is a user-replaceable item. If it becomes
damaged for any reason, it can be easily removed and replaced. Contact your local
SATO representative for information on obtaining a new print head.
Supplies needed:

No. 2 Phillips screwdriver (a magnetic tip is helpful)

1. Turn the printer off and remove the power cable.
2. Open the Top and Side Access doors.
3. Open the Print Head by pushing the Head Latch toward the rear of the printer.
The Print Head is spring-loaded and will automatically open as soon as the
Head Latch is disengaged.
4. Remove the ribbon from the Ribbon Rewind Spindle if necessary.
5. Remove the Label Cover Assembly by removing the securing screw from the
assembly.

Label Cover
securing screw
Label Cover

SATO M-8400RV

9001041 Rev. D

Page 3-5

Section 3: Cleaning and Maintenance

Print Head
Mounting Screw

Print Head
Head Latch

Print Head
Connector

6. View the Print Head from the front of the printer. Locate the center mounting
screw on the top of the assembly. Unscrew this screw and set it aside.
7. The Print Head should now be loosened from the top of the assembly by grasping
either side and carefully pulling it down.
8. Disconnect the signal and power cables from the print head connectors and set the
Print Head aside.
DO NOT remove the two outside screws (painted red) on either side of the center
mounting screw. The Print Head is pre-aligned and if these screws are lossened, it
will have to be re-aligned for proper print quality.
9. Carefully attach the new print head to the connectors, using caution to make sure
the connector keys are correctly positioned.

NOTE: Be careful not to scratch the printing surface of the print head while installing
it. Scratching the surface will cause permanent and irreparable damage and is not
covered by the warranty!
10. Locate the mounting screw in the top plate assembly and align it with the tapped
hole in the new print head.
11. Re-secure the print head by tightening the screw.

Page 3-6

9001041 Rev. D

SATO M-8400RV

Section 3: Cleaning and Maintenance

CAUTION: For your protection, SATO printers have been tested and listed by the
Underwriters Laboratories. These tests include the printer and certain electrical
components which are an integral part of the printer as approved. These important
parts include the Print Head, PC Boards, Power Supply and Motor. It is a violation of
the UL listing to replace any of these parts with parts other than those approved as
part of the UL listing.

PLEASE NOTE THAT IF A PART OTHER THAN THESE GENUINE SATO PARTS
IS INSTALLED IN THE PRINTER, THE UL LISTING IS VOID AND THE
APPROVAL LABEL MUST BE REMOVED FROM THE PRINTER.
We strongly suggest that if someone attempts to install such a part on your SATO
printer or, sell you such a part, that you have a written statement from them
indicating that they are aware that installation of the part in question voids the UL
listing and requires the removal of the indication of this listing from the printer.
Finally, we call your attention to the fact that many legal jurisdictions, cities and/or
counties, in the United States prohibit the installation of products such as SATO
printers without a listing by an agency such as Underwriters Laboratories.

REPLACING THE FUSE
Supplies needed:

250V 3A Fuse

1. Turn the printer power off and remove the power cable.
2. On the back of the printer, locate the Fuse Cap on the right-hand side of the AC
connector.
3. Unscrew the cap and remove the defective fuse.
4. Replace with a new 250V 3A fuse.
5. Screw the cap back onto the printer and replace the power cord.

SATO M-8400RV

9001041 Rev. D

Page 3-7

Section 3: Cleaning and Maintenance

This page left intentionally blank.

Page 3-8

9001041 Rev. D

SATO M-8400RV

SECTION 4.
PROGRAMMING
INTRODUCTION
This section presents the commands that are used with the SATO RISC Series printers
to produce labels with logos, bar codes and alphanumeric data. All of the RISC
commands use the same syntax. Some commands reference a physical point on the
label using horizontal and vertical dot reference numbers. The allowable range for
these references is dependent upon the particular printer to accomodate different
print widths and resolutions. These differences are noted in tables under the
commands affected.
The following information is presented in this section:
• The SATO RISC Programming Language
• Selecting Protocol Control Codes
• Using Basic
• The Print Area
• Command Codes

THE SATO RISC PROGRAMMING LANGUAGE
A programming language for a printer is a familiar concept to most programmers. It is
a group of commands that are designed to use the internal intelligence of the printer.
The commands, which are referred to as RISC Command Codes, contain
non-printable ASCII characters (such as , , ) and printable
characters. These commands must be assembled into an organized block of code to be
sent as one data stream to the printer, which in turn interprets the command codes
and generates the desired label output. The programmer is free to use any
programming language available to send the desired data to the SATO RISC Series
printer.
The command codes used by the SATO RISC Series Printers are based upon “Escape”
(1B hexadecimal) sequences. Typically there are four types of command sequences:
{Command}
These commands generally tell the printer to perform a specific action, like “clear the
memory.”
{Command} {Data}
Commands with this format tell the printer to perform a specific action which is
dependent upon the following data, like “print X labels”, where the value for X is
contained in the data.
{Command} {Parameter}
SATO M-8400RV

9001041 Rev. D

Page 4-1

Section 4. Programming Reference

These commands set the operational parameters of the printer, like “set the print
speed to 3.”
 {Command} {Parameter} {Data}
Some commands can contain both Parameter and Data elements, such as “print a
Code 39 symbol containing the data”.

SELECTING PROTOCOL CONTROL CODES
Protocol codes are the special control characters that prepare the printer to receive
instructions. For example, the  character tells the printer that a command
code will follow and the  character asks for the printer status.
There are two pre-defined different sets of Protocol Control codes to choose from.
Each set is made up of six special characters. The Standard Protocol Control codes are
non-printable characters, and the Non-Standard Protocol Control codes are printable
characters. The Non-Standard set may be useful on host computers using protocol
converters or in an application where non-printable ASCII characters cannot be sent
from the host. This manual uses the Standard Protocol Control codes for all of the
examples. Alternately, the user may define and download a set of custom Protocol
Control Codes (see Appendix E).
The Protocol Control codes are selected by a DIP switch DSW2-7 on the front panel
(see Section 2: Printer DIP Switch Configuration, Page 2-15).
CONTROL
CHARACTER

STANDARD
DSW2-7 OFF

NON-STANDARD
DSW2-7 ON

DESCRIPTION

STX

02 Hex

7B Hex = {

Start of Data

ETX

03 Hex

7D Hex = }

End of Data

ESC

1B Hex

5E Hex = ^

Command code to follow

~

7E Hex

7E Hex = ~

Cutter command

ENQ

05 Hex

40 Hex = @

Get printer status, Bi-Com mode

CAN

18 Hex

21 Hex = !

Cancel print job, Bi-Com mode

Off-Line

40 Hex

5D Hex = ]

Take printer Off-Line

USING BASIC
It may be useful to test your printer using a BASIC program on a PC. You may also
write your actual production programs in BASIC. Whatever the reason, if you will be
working in BASIC, some of the following hints may help you get started:
1. Set the WIDTH of the output device to 255 characters to avoid automatically sending
 and  characters after every line. The command string should be
continuous and uninterrupted by  and/or  commands. The examples
given in this manual are printed on separate lines because they will not fit on one line
and do not contain any  and/or  characters. If these characters are
needed, they are explicitly noted by the inclusion of  and  notations.

Page 4-2

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

2. If you are using the printer’s RS232 interface, it is necessary to set the COM port on the
PC such that the CTS and DSR signals will be ignored. Send your OPEN “COM”
statement in the following way:
OPEN “COM1:9600,E,8,1,CS,DS” AS #1
This sets the RS232 communication parameters of the host PC’s COM1 port for 9600
baud, Even parity, 8 Data bits, 1 Stop bit and directing the port to ignore the CTS
and DSR control signals.
3. You may want to minimize keystrokes and program size by assigning the 
character to a string variable since this character is used quite often.
The following two examples in BASIC show a typical example using these hints. Both
of these examples use the Standard Protocol codes.
Printing with the Parallel Port
5

REM Parallel Example:

Identifies the program as a parallel port
print label. The “REM” prevents this
data from being sent to the printer and
displays it only on the screen.

10 E$=CHR$(27)

Sets the “E$” string as an 
character

20 WIDTH “LPT1:”,255

Sets the width of the output to 255
characters

30 LPRINT E$;"A";

Sends an “A” command code to
the LPT1 parallel port

40 LPRINT E$;"H400";E$;"V100";E$;"XL1SATO";

Sends the data “SATO” to be to be
placed 400 dots horizontally and 100
dots vertically on the label and printed in
the “XL” font.

50 LPRINT E$;"Q1";

Instructs the printer to print one label.

60 LPRINT E$; “Z”;

Tells the printer that the last command
has been sent. The printer can now
create and print the job.

Printing with the RS232 Port:
5

REM RS232 Example

Identifies the program as an RS232
port print label. The “REM” prevents this
data from being sent to the printer and
displays it only on the screen.

10 E$=CHR$(27)

Sets the “E$” string as an 
character.

20 OPEN “COM1:9600,N,8,1,CS,DS” AS #1;

Opens the COM1 port for output and
sets the parameters as 9600 baud, No
parity, 8 Data bits, 1 Stop bit and
instructs the port to ignore the CTS and
DSR control signals.

30 PRINT #1,CHR$ (2);

Sends an  (ASCII Code a
decimal “2”) to the printer instructing it
to prepare to receive a message.

SATO M-8400RV

9001041 Rev. D

Page 4-3

Section 4. Programming Reference

50 PRINT #1,E$;"A";

Sends an “A” command code to
Print Port #1 opened by statement 20
above.

60 PRINT #1, E$;"H400",E$;"V100";E$;"XL1SATO"; Sends the data “SATO” to be placed
400 dots horizontally and 100 dots
vertically on the label and printed in the
“XL” autosmoothed font.
50 PRINT #1, E$;"Q1";

Instructs the printer to print a quantity of
one label.

60 PRINT #1, E$; “Z”;

Tells the printer that the last command
has been sent. The printer can now
create and print the job.

70 PRINT #1,CHR$ (3);

Sends an  (ASCII Code decimal
“3”) to the printer telling it that this is the
end of the message.

THE PRINT AREA
The maximum print area for the M-8400RV is listed in Table 4.1 on Page 4-5. Most of
your label applications will not require labels that fill the entire print area, therefore
it is important to understand how to work with labels that do not use the entire print
area. The goal is to help you avoid printing where no label exists, which may lead to
print head damage, not to mention frustration when you cannot see the printed
output.
The diagram below illustrates the maximum print area and a sample 2 inch wide by 3
inch long label placed within this area. As can be seen, your label will be oriented
against the inside left edge of the printer as viewed from the front of the printer. The
normal reference point is located at the H1, V1 position of the print area in the
normal print orientation (no rotation).

Max
Print
Width
Print Area
Max. Print
Length

Label
Feed
Direction

2"

3"

Normal
Reference
Point
H1, V1

Your
Label
Max. Print
Width minus 2"

Page 4-4

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Table 4.1, Print Area
M-8400RV
Resolution

203 dpi
8 dpmm

Max Print Width

832 dots
4.1 in.
104 mm

Max Label Width

5.0 in.
128 mm

Std Print Length

1424 dots
7.0 in.
178 mm

Expanded Print Length
using AX
command

2848 dots
14.0 in.
356 mm

Expanded Print Length Using Memory Card (2)
128 Kbyte

1257 dots
6.2 in.
157 mm

512 Kbyte

5038 dots
24.8 in.
629 mm

1 Mbyte

9999 dots (1)
49.2 in.
1249 mm

2 Mbyte

9999 dots (1)
49.2 in.
1249 mm

(1). Limited by number of digits in command field.
(2). When a Memory Card is used to expand the print length, the card capacity is used
instead of the internal memory, not in addition to the internal memory.

There are two methods available to make sure your printed output will appear
correctly on your label. They are as follows:
1. Send the Base Reference Point command as part of your data to the printer to set a new
base reference point for your label.
Calculate the distance (in dots) from the normal base reference point to the closest edge
of the label. For an 8 dpmm printer, this would be:
Label Width = 2" x 25.4 mm/in x 8 dpmm = 406 dots
The new Base Reference Point then becomes:
New Base Reference Point = Maximum Print Width - Label Width

SATO M-8400RV

9001041 Rev. D

Page 4-5

Section 4. Programming Reference

For the M-8400RV, the new Base Reference Point is:
New Base Reference Point = 832 dots minus 406 dots = 426 dots
Issue the Base Reference Point command A3 after the Start command in your
data stream.
AA3H426V0001. . . . . .
This resets the reference point for all the following data.
2. Use the normal base reference point from the print area and use the horizontal position
for each field to properly locate it on the label.
Calculate the distance (in dots) from the normal base reference point to the closest edge
of the label For an 8 dpmm printer:
Label Width = 2" x 25.4 mm/in x 8 dpmm = 406 dots
New Base Reference Point = Maximum Print Width - Label Width
For the M-8400RV printer, this becomes:
New Base Reference Point = 832 dots - 406 dots = 426 dots
Each H command would have the value “426” added to it to correctly position
each field.

Note: The A3 Base Reference Point command (Page 4-19) can also shift the
reference point in a negative direction (toward the outside edge of the label).
The Command Code subsection contains a sample label output for each command
code. These samples reflect how the printed information would appear on a five inch
wide label. If you want to test any of the sample label outputs and are using labels
less than five inches in width, we suggest that you add the Base Reference Point
command to the data stream in order for the images to print on your labels.
You must be careful not to print off the label surface as the label provides a heat sink
for the print head elements. Doing so will cause irreparable damage to the head. This
damage is not covered under the print head warranty. The addition of the Base
Reference Point command to the sample data stream may help to adjust the print for
your labels. See the following two examples or refer to the Base Reference Point
command description.
For example, the following illustrates a sample data stream for a M-8400RV printer
and the resulting label assuming a 4 inch wide label:
A
H0050V0100L0303XMSATO
H0050V0200B103100*SATO*
H0070V0310L0101XUSATO
Q1
Z
Page 4-6

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Label

Label

4"

2"

If you are using a 2 inch wide label, the entire image may not appear on your label.
By adding the following Base Reference Point command to the second line of the data
stream, the base reference point will be changed, causing the image to be shifted over
toward the inside of the printer where it can be printed on the narrower label.
A
A3H406V0001
H0050V0100L0303XMSATO
H0050V0200B103100*SATO*
H0170V0310L0101XUSATO
 Q1
Z
The image is moved horizontally to the right 2 inches (406 dots) so that it can be
printed on a 2 inch wide label.
For more information, see the Base Reference Point command description.

H=50

V=100

V=200

V=310

SATO
*SATO*
*SATO*
*SATO*

H=70
4.0"

SATO M-8400RV

9001041 Rev. D

Page 4-7

Section 4. Programming Reference

SATO

SATO

*SATO*
*SATO*

*SATO*
*SATO*
2" Label
4.0"

ROTATED FIELDS
The CL Series printers can rotate each print field in 90° increments using the Rotate
command. There are two variations of this command.
• % - The field rotates, but the base reference point for the field
remains the same.
• R - The field and the base reference point rotate.
The following data stream will rotate the print field but will not change the base
reference point of the field:
A%1V800H200L0202XB1EQ1Z
The following data stream will rotate both the field and the base reference point for
that field:
ARV0200H0100L0202P02XB1EQ1Z

COMMAND DEFAULT SETTINGS
There are some types of commands that must have a value specified before a label
can be printed. If the data stream does not contain these commands, a “default” value
is assumed. The commands and the corresponding default values are:
COMMAND
Print Rotation
Vertical Reference Point
Horizontal Reference Point
Character Pitch
Base Reference Point
Page 4-8

DEFAULT
0°
0
0
2
H=0, V=0

9001041 Rev. D

NOTE
(1)
(1)
(1)
(1)
(2)
SATO M-8400RV

Section 4. Programming Reference

Base
Ref
Point

H=200

V=200

V=800

“%1”
Character Expansion
Print Darkness
Print Speed DSW2-8 On
Print Speed DSW2-8 Off
Proportional Spacing
Cutter Command

E

E

Label
Feed
Direction

Base
Ref
Point

1
2
6 ips
4 ips
Enabled
Disabled

H=100

“R”
(1)
(1)
(2)
(2)
(1)
(1)

NOTES:
(1) The settings for these commands will revert to the default value when the printer
receives an Z or an *.
(2) The values transmitted with these commands will remain in effect until a new
command is received.

SATO M-8400RV

9001041 Rev. D

Page 4-9

Section 4. Programming Reference

COMMAND CODES
This section contains all the RISC printer Command Codes. The commands must be
sent to the printer in an organized fashion in order for the label(s) to print.
The purpose of this section is to:
1. Explain the different commands and provide examples of their usage.
2. To provide a detailed reference for programming the CL Series Printers.
Each command begins on a separate page with its own heading. A uniform layout is
used to help you find key information about each command. For each Command
Code in this section, there will be a sample data input stream to the printer and the
expected print output. By studying the examples, you can learn how to use the
particular command within a whole block of printer code. Pay particular attention to
the “Special Notes” with each command to learn other important information.
The subject commands are highlighted in bold letters in the Reference Sheets. There
are two parts of most, but not all, commands. The first is the command character
which immediately follows the  code. It is always an upper case alpha or a
special character (such as an “&” or a “%”). It is never a lower case alpha character. If
the command requires additional variable information, it is represented by a group of
lower case alpha characters immediately following the command character. For
example, if an aaaabb is listed following the basic command, the printer will look
for six characters immediately following the command. The first four would represent
the value of aaaa and the next two the value of bb.
The maximum number of characters defined in a parameter is represented by the
number of characters shown in the command structure. For example, a command
followed by an aaaa can have up to four characters. In general, commands with only
one parameter following the command can be entered without the leading zeroes.
However, certain commands require the exact number of matching characters. A
command with two parameters listed following the command code without a comma
delimiter, such as aaaabbbb require the exact number of digits to be entered. If the
value of aaaa is “800” and the value of bbbb is “300”, then the parameters must be
entered as “08000300”. It is recommended that you make it a practice to always
enter leading zeros to prevent any mistakes.

NOTE: These examples assume the use of the Standard Protocol Command Codes,
a parallel interface and a 4 inch wide label in an M-8400RV printer. The labels for all
other printers will be similar, but, because of different resolutions and print widths
may be larger or scaled differently.
An alphabetical listing of the command codes is contained in Appendix A: Command
Code Quick Reference.

Page 4-10

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Bar Codes
Command Structure

Command Function

SATO M-8400RV

1:3 narrow/wide bar ratio: Babbcccd
2:5 narrow/wide ratio:
BDabbcccd
1:2 narrow/wide bar ratio: Dabbcccd
a

=

Bar Code Symbol
0 Codabar
1 Code 39
2 Interleaved 2 of 5 (I 2/5)
3 UPC-A / EAN-13
4 EAN-8
5 Industrial 2 of 5
6 Matrix 2 of 5
7 reserved
8 reserved
9 Code 128
A MSI
B reserved
C Code 93
D reserved
E UPC-E
F Bookland
G Code 128
I UCC 128

bb

=

Number of dots (01-12) for narrow bar and narrow space

ccc =

Bar height in dots (001-600)

d

UCC 128 only. Not used for other bar code types
0 No human readable text
1 Human readable at top
2 Human readable at bottom

=

Example:

BD103200

Placement:

Immediately preceding data to be encoded

Default:

None

To print bar code images on a label. With this command, there are 13
standard bar code symbologies available to be printed and three two
dimensional symbols (see Two Dimensional bar code symbols
starting on Page 4-99). Each of the bar codes are unique, and it is
important to know the differences. See Appendix B for specific
information on using each individual bar code symbol.

9001041 Rev. D

Page 4-11

Section 4. Programming Reference

Input to Printer
A
H0025V0025B103100*CODE 39*
H0155V0130XS*CODE 39*
H0025V0200BD20210045676567
H0075V0310XM45676567
H0025V0375BD30215001234567890
H0025V0600BD50210012345
H0175V0710XS12345
H0025V0775BD60210012345
H0105V0885XS12345
H0025V0950BA03100123455
H0095V1060XS12345
H0025V1125BC03100081234ABCD
H0080V1240XS1234ABCD
H0525V0025B002100A12345B
H0565V0135XS12345
H0475V0200BD303100123456789012
H0525V0375BD4031001234567
H0525V0550DE03100123456
H0500V0600OB0
H0533V0655OB123456
H0350V0725D30315009827721123
L0101H0320V0800OB0
H0365V0878OB98277
H0505V0878OB21123
H0665V0760BF0313021826
H0680V0730OB21826
H0425V1125D30315000633895260
L0101H0395V1200OB0
H0440V1278OB06338
H0580V1278OB95260
H0730V1155BF0314024
H0745V1125OB24
H0325V0950BG03100>GAB>B789>C123456
H0435V1055XSAB789123456
Q1Z

Note: Carriage Returns and Line Feeds have been added to the command listing
for clarity and should not be included in the actual data stream.

Page 4-12

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Printer Output

SATO M-8400RV

9001041 Rev. D

Page 4-13

Section 4. Programming Reference

UCC-128

Without Incrementing
A
H0100V0100BI07150101234567000000001
Q2Z

With Incrementing
A
H0100V0100F001+001BI07150101234567000000001
Q2Z

Page 4-14

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Special Notes

1. UPC and EAN bar codes are not affected by the different types of
narrow to wide ratios. Instead, the D command adds
descender bars to these codes where needed to meet UPC
specifications. The BD command puts decender bars and
human readable text below the symbol.
2. The Code 128, UCC 128, MSI, and Code 93 bar codes are not
affected by the narrow to wide ratios.
3. The Codabar, Code 39, Industrial 2 of 5, and Matrix 2 of 5 bar
codes are affected by the Character Pitch command. This
command must be placed before the Bar Code command.
4. See Appendix B for more specific instructions and detailed
information regarding individual bar code symbols.
5. Because of their unique characteristics, two-dimensional symbols
are covered separately (see page 4-99).
6. For UCC128, the FNC1 code is automatically inserted and the Mod
10 and Mod 103 check digits are automatically calculated.
7. For the MSI bar code, the check digit is not automatically calculated.

SATO M-8400RV

9001041 Rev. D

Page 4-15

Section 4. Programming Reference

Bar Codes, Expansion
Command Structure

BWaabbb
aa

=

bbb =

Expansion factor by which the width of all bars and spaces
will be increased (01-12)
Bar height by dot (004-600 dots)

Example:

BW02100

Placement:

Immediately follows the BT command and
precedes data to be encoded.

Default:

None

Command Function

This command works together with the BT command to
specify an expansion factor and the bar code height for the particular
symbol being printed.

Input to Printer:

A
H0050V0050BT001030103BW04100*1234*
Q1Z

Printer Output:

Special Notes

1. This command must be preceded by the Variable Ratio Bar Codes
BT command (see Page 4-17).
2. The following bar codes will be affected by the Character Pitch
command: Codabar, Code 39, Interleaved 2 of 5, Matrix 2 of 5.

Page 4-16

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Bar Codes, Variable Ratio
Command Structure

BTabbccddee
a

=

Bar Code Symbol:
0 Codabar
1 Code 39
2 Interleaved 2 of 5
5 Industrial 2 of 5
6 Matrix 2 of 5

bb
cc
dd
ee

=
=
=
=

Narrow space in dots (01-99)
Wide space in dots (01-99)
Narrow bar in dots (01-99)
Wide bar in dots (01-99)

Example:

BT101030103

Placement:

Following print position commands and preceding
BW

Default:

Current setting

Command Function

To print a bar code with a ratio other than those specified through the
standard bar code commands (B,BD, and D). This is done through
individual control of each of the bar code elements (bars, spaces) as
shown above. Remember that this command only applies to the five
bar code types shown.

Input to Printer:

A
H0050V0050BT001030103BW03100*1234*
Q1Z

Printer Output:

SATO M-8400RV

9001041 Rev. D

Page 4-17

Section 4. Programming Reference

Special Notes

1. This command must be immediately followed by the BW Bar
Code Expansion command (see Page 4-16).
2. You may use only one variable ratio bar code per label.
3. If the data specified in this command is incorrect, the command is
ignored and the ratio used will be based on the previous setting.
4. See Appendix B for more specific instructions and details regarding
individual bar code symbols.

Page 4-18

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Base Reference Point
Command Structure

A3H-aaaaVbbbb
-

Command Function

=

This character is optional. When present, it specifies that
the horizontal offset is in the negative direction. If it is left out
the offset direction is positive.

aaaa =

Horizontal Print Offset (see Note 5 for field range)

bbbb =

Vertical Print Offset (see Note 5 for field range)

Example:

A3H100V0050

Placement:

Preceding all images that are based on the new base
reference point

Default:

Current V and H offset setting in the printer configuration

To establish a new base reference point for the current label. The
base reference point is the top left corner or “origin” from where all
print position commands are based.
This command may be very helpful when using labels less than four
inches wide to place images on the printable label surface. It may
also be used to move images past preprinted fields on a label.

Input to Printer:

AL0202
H0025V0025WB0NORMAL REFERENCE POINT
A3H0300V0075
H0100V0050WB0NEW REFERENCE POINT
Q1Z

Printer Output:

SATO M-8400RV

9001041 Rev. D

Page 4-19

Section 4. Programming Reference

Special Notes

1. Use of this command will set the Vertical/Horizontal Offset setting of
the printer configuration until a new Base Reference Point
command is issued or the setting is changed from the operator
panel. See Section 2: Printer Configuration.
2. This command may be used more than once in a print job.
3. An alternative to using this command is to make changes to your
current Horizontal and Vertical Print Position commands (see
Page 4-59).
Example:
Let’s say the current base reference point is H=1, V=1 and you
wish to move all the fields on your label downward vertically by
150 dots. You could either (1) add the Base Reference Point
command or (2) change all the vertical position commands by an
additional 150 dots.
4. For a more detailed example of the Base Reference Point
command, see “Print Area” in this section (Page 4-4).
5. The allowable field ranges for this command are:
M-8400RV

Page 4-20

Horizontal
aaaa

-0832 to 0832

Vertical
bbbb

0001 to 1424

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Characters, Custom-Designed
Command Structure

Store Command: Tabcc
Recall Command: Kab90cc
a

=

1
2

b

=

Specifies the character encoding method for the data stream
H Hexadecimal characters
B Binary characters

cc

=

Memory location to store/recall the character. Valid memory
locations are 21 to 52 (counting in Hex) or “!” to “R” in Binary

(data)

=

16x16 matrix
24x24 matrix

Data to describe the character

Example:

T1H3F
K1H903F
See Appendix C for a more detailed explanation

Placement:

The Store command is typically sent in its own data
stream to the printer, between the Start/Stop commands.
The Recall command is sent in a secondary data stream
to print the character,and follows any necessary position
or size commands.

Default:

None

Command Function

To allow for the creation, storage, and printing of custom characters,
such as special fonts or logos. Up to 50 individual characters may be
stored in the custom character volatile memory.

Printer Input

See Appendix C for a detailed explanation.
A
T1H3F
0100038007C00FE01FF03FF87FFCFFFE07C007C007C007C007C007C007C007C0
Z
A
H150V100L0505K1H903F
H350V100L1010K1H903F
Q1Z

SATO M-8400RV

9001041 Rev. D

Page 4-21

Section 4. Programming Reference

Printer Output

Special Notes

1. When printing the custom character using the Recall command, the
character is affected by the following commands:
Character Expansion (see Page 4-23)
Character Pitch (see Page 4-26)
Line Feed (see Page 4-50)
Rotate, Fixed Base Reference Point (see Page 4-68)
Rotate, Moving Base Reference Point (see Page 4-70)
2. The characters are stored in volatile memory and must be reloaded
if the printer power is lost.
3. Do not use ASCII  or  characters (carriage return or line
feed) as line delimiters within the graphic data or the actual image
will not be printed as specified.

Page 4-22

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Character Expansion
Command Structure

Laabb
aa
bb

=
=

Multiple to expand horizontally (01-12)
Multiple to expand vertically (01-12)

Example:

L0305

Placement:

Preceding the data to be expanded

Default:

L0101

Command Function

To expand characters independently in both the horizontal and
vertical directions. The command allows you to enlarge the base size
of each font (except the vector font) up to 12 times in either direction.
Expanded characters are typically used for added emphasis or for
long distance readability.

Input to Printer

A
AH0100V0100XMSATO
H 0100V0200L0402XMSATO
H0100V0300L0204XMSATO
Q1Z

Printer Output

SATO M-8400RV

9001041 Rev. D

Page 4-23

Section 4. Programming Reference

Special Notes

This command will expand the following fonts:
1. Fonts U, S, M, XU, XS, XM, OA & OB (see Page 4-34) and fonts
WB, WL, XB and XL (see Page 4-38).
2. This command will also affect the following commands:
Character Pitch (see Page 4-26)
Characters, Custom-Designed (see Page 4-21)
3. The Character Expansion value is in effect for the current print job
until a new expansion command is specified.
4. The Line and Box command, if used within the data stream, may
return all subsequent text to the default expansion of 1 x 1.
Therefore, either send the Character Expansion command before
all printed data, or send Line and Box commands last, preceding
the Q Quantity command.

Page 4-24

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Character, Fixed Spacing
Command Structure

PR
Example:

See Above

Placement:

Preceding the data

Default:

The default is Proportional Spacing.

Command Function

To reset proportional spacing and place the printer back to fixed
spacing.

Printer Input

A
H0025V0050PS
L0202XMPROPORTIONAL SPACING
H0025V0130PR
L0202XMFIXED SPACING
Q1Z

Printer Output

Special Notes

SATO M-8400RV

1. This command only works with the proportionally spaced fonts XU,
XM, XS, XL and XB.

9001041 Rev. D

Page 4-25

Section 4. Programming Reference

Character Pitch
Command Structure

Paa
aa

=

Number of dots between characters (00-99)

Example:

P03

Placement: Preceding the text to be printed
Default:

P02

Command Function

To designate the amount of spacing (in dots) between characters.
This command provides a means of altering character spacing for
label constraints or to enhance readability.

Input to Printer:

A
H0025V0025L0202XB1M-8400RV
H0025V0125L0 202P20XB1M-8400RV
H0025V0225L0202P40XB1M-8400RV
Q1Z

Printer Output:

Page 4-26

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Special Notes

1. This command is affected by the L Character Expansion
command (see Page 4-23). The character pitch is actually the
product of the current horizontal expansion multiple and the
designated pitch value.
Example:
L0304
P03
Pitch = (03) x (03) = 9 dots
2. To avoid confusion, you may want to include the L
Character Expansion command and this command together in
your program.
3. This command affects fonts U, S, M, XU, XS, XM, OA & OB (see
Page 4-34, fonts WB, WL, XB and XL (see Page 4-38), and the
vector font (see Page 4-36).
4. Character Pitch will always revert to the default value unless it is
specified before each new font command in the data stream.
5. This command also affects Codabar, Code 39 and Industrial
2 of 5 bar codes.

SATO M-8400RV

9001041 Rev. D

Page 4-27

Section 4. Programming Reference

Character, Proportional Spacing
Command Structure

PS
PR

Set to proportional spacing
Reset to fixed spacing

Example:

See above

Placement:

Preceding the data to be proportional spaced

Default:

PS

Command Function

To specify the printing of proportional or fixed spacing for
proportionally spaced fonts.

Printer Input

A
H0025V0050PS
L0202XMPROPORTIONAL SPACING
H0025V0130PR
L0202XMFIXED SPACING
Q1Z

Printer Output

Special Notes

Page 4-28

1. Once this command is sent in the data stream, it is in effect until the
end of the print job unless a reset command is sent.

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Clear Print Job(s) & Memory
Command Structure

*a
a

=

If the “a” parameter is not included with this command and
the printer is in the multi-buffer mode, this command clears
all print jobs in the printer memory, including the current
print job.

a

=

If “a” is included with this command, it specifies the internal
memory section to be cleared
T To clear the custom character memory
& To clear the form overlay memory
X To clear all internal memory

Example:

*
*X

Placement:

This command should be sent to the printer as an
independent data stream.

Default:

None

Command Function

To clear individual memory or buffer areas of the printer.

Input to Printer:

A
*
Z

Printer Output:

There is no printer output as a result of this command. The current
print job in the buffer will be terminated and all other print jobs in the
buffer cleared.

Special Note

1. See Memory Card Functions for variations of this command used to
clear data from the memory card (Page 4-82).
2. It is not necessary to clear the printer’s memory between each print
job.
3. The primary purpose of this command is to clear all print jobs in the
multi-buffer mode. The “a” parameter can be used in either the
multi-buffer or single job mode to clear specific parts of the
memory.
4. When the “a” parameter is used, the section of memory specified
will not be cleared until the label is printed.

SATO M-8400RV

9001041 Rev. D

Page 4-29

Section 4. Programming Reference

Continuous Forms Printing
Command Structure

None
The printer locates the end of an adhesive label by sensing the
backing between labels or through the use of an eye-mark (black
rectangle on the reverse side of the backing). It locates the end of a
tag from a notch, eye-mark, or a hole between tags. Both sensors
should be disabled when printing continuous forms by placing the
Label Sensor Selection switch (DSW3-3) in the ON position. See
Section 2: Printer Configuration for instructions on configuring the
printer using the front panel DIP switch array.
If you will be using continuous labels or tags, the printer must be told
to stop feeding in another manner. The length is determined by the
position of the last printed image on the label or tag. The printer will
stop feeding when this last field is finished printing. The length may
be increased with printed spaces (20 hexadecimal) if necessary.
There is no command code to control label length.

Page 4-30

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Copy Image Area
Command Structure

WDHaaaaVbbbbXccccYdddd
aaaa =

Horizontal position of the top left corner of the area to be copied

bbbb =

Vertical position of the top left corner of the area to be copied

cccc =

Horizontal length of the image area to be copied

dddd =

Vertical length of the image area to be copied

Example:

WDH0100V0050X0600Y0400

Placement:

Anywhere within the data stream, after specifying the
location of the duplicate image.

Default:

None

Command Function

To copy an image from one location to another on the same label.
This may be useful for duplicating individual fields or entire sections
of the label with only one command.

Input to Printer:

A
H0050V0050E010XM
SATOSATOSATOSATOSATOSATOSATO
SATOSATOSATOSATOSATOSATOSATO
SATOSATOSATOSATOSATOSATOSATO
SATOSATOSATOSATOSATOSATOSATO
H0180V0250WDH0165V0050X0400Y0200
Q1Z

Printer Output:

SATO M-8400RV

9001041 Rev. D

Page 4-31

Section 4. Programming Reference

Special Notes

1. Use the Print Position commands (V and H) to locate the new area
for the duplicate image (see Page 4-59).
2. Position of the new target area must not be inside the original
image.
3. If you use the Rotate command, V, H, X and Y axis will be reversed.
4. If the reference area of the target image exceeds the print area, it
will not be printed.
5. The allowable ranges for these fields are as follows:

M-8400RV

Page 4-32

Horizontal
aaaa
cccc

0001
to
0832

Vertical
bbbb
dddd

0001
to
1424

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Cutter Command
Command Structure

aaaa
~aaaa
aa

=

Number of labels to print between each cut (01-9999)

Example:

~0002

Placement:

Following the Print Quantity command Q

Default:

0001 (if cutter enabled)

Command Function

To control the cutting of labels when using a SATO cutter unit with
the printer printer. This command allows the cutting of a multi-part tag
or label at a specified interval within a print job.

Input to Printer:

A
H0020V0020WB1TEST LABELQ3
~0002
Z

Printer Output:

This set of commands will print 6 labels (3 x 2) with two labels
between each cut.

Special Notes

1. You must have the optional printer Cutter to use this function.
Contact your SATO representative for more information.
2. To use this command, the printer configuration must have the cutter
option enabled. See Printer Configuration in Section 2 of this
manual.
3. If the cutter option has been enabled in the printer configuration
and the cut value (aaaa = 0000), the cutter is inactive.
The  represents the ASCII 00 Hex character and can be
interchanged with a tilde character.
4. When using the Cutter command, the total number of labels printed
is the product of the cut value and the print quantity. For example,
if the cut value is 2, and the print quantity is 20, then 20 sets of
two labels will be printed.

SATO M-8400RV

9001041 Rev. D

Page 4-33

Section 4. Programming Reference

Fonts U, S, M, OA, OB, XU, XS & XM
Command Structure

Command Function

Font XU:
Font XS:
Font XM:
Font OA:

XU
XS
XM
OA

Font U:
Font S:
Font M:
Font OB:

U
S
M
OB

Example:

See above

Placement:

Preceding the data to be printed

Default:

None

To print text images on a label. These are eight of the built-in fonts
available on the printer. All matrices include descenders.
U
S
M
OA
OB

NON-PROPORTIONAL
5W x 9H dot matrix
8W x 15H dot matrix
13W x 20H dot matrix
OCR-A font 15W x 22H dot matrix
OCR-B font 20W x 24H dot matrix

PROPORTIONAL(1)
XU
5W x 9H dot matrix
XS
17W x 17H dot matrix
XM
24W x 24H dot matrix

(1) These fonts will be printed with proportional spacing only if preceded by an
PS command.

Input to Printer

APS
H0001V0100L0202XUSATO
H0001V0175L0202XSSATO
H0001V0250L0202XMSATO
H0001V0325L0101OASATO
H0001V0400L0101OBSATO
H0300V0100L0202USATO
H0300V0175L0202SSATO
H0300V0250L0202MSATO
Q1Z

Printer Output

Page 4-34

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Special Notes

1. Characters may be enlarged through the use of the Character
Expansion command (see Page 4-23).
2. Character spacing may be altered through the use of the Character
Pitch command (see Page 4-26). The default is 2 dots between
characters. It is recommended to use a spacing of 5 dots for
OCR-A and 1 dot for OCR-B.
3. You may also create custom characters or fonts. See the T
Custom-Designed Characters command (Page 4-21).
4. A font must be defined for each field to be printed. There is no
default font.
5. Fonts U, S, M, OA and OB are identical to fonts U, S, M, OA and
OB on the SATO M-8400 printer.
6. The proportionally spaced fonts XU, XS, XM, XL and XA can be
printed with fixed spacing using the PS Proportional Space
command.

SATO M-8400RV

9001041 Rev. D

Page 4-35

Section 4. Programming Reference

Font, Vector
Command Structure

Specify Vector Font:

$a,b,c,d

Data for Vector Font:

$=(data)

a

=

b
c
d

=
=
=

A Helvetica Bold (proportional spacing)
B Helvetica Bold (fixed spacing)
Font width (50-999)
Font height (50-999 dots)
Font variation (0-9) as follows:
0 Standard
1 Standard open (outlined)
2 Gray (mesh) pattern 1
3 Gray (mesh) pattern 2
4 Gray (mesh) pattern 3
5 Standard open, shadow 1
6 Standard open, shadow 2
7 Standard mirror image
8 Italic
9 Italic open, shadow

Example:

$A,100,200,0$=123456

Placement:

Immediately preceding data to be printed.

Default:

None

Command Function

To specify printing of the unique SATO vector font. The vector font
allows large characters to be printed with smooth, round edges. Each
character is made of a number of vectors (or lines), and will require
slightly more printer compiling time.

Input to Printer

A
H0100V0100$A,100,100,0$=SATO AMERICA
H0100V0200$=VECTOR FONT
H0100V0350$A,200,300,8$=SATO
Q1Z

Page 4-36

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Printer Output

Special Notes

1. The Pitch command can be used with Vector fonts.
2. If the font size designation is out of the specified range, a default
value of 50 is used.
4. The font width and height values include asenders, desenders and
other space.
5. A font must be defined for each field to be printed. There is no
default font.

SATO M-8400RV

9001041 Rev. D

Page 4-37

Section 4. Programming Reference

Fonts WB, WL, XB & XL
Command Structure

Font WB: WBa
Font WL: WLa
a

Command Function

=

0
1

Font XB: XBa
Font XL: XLa

Disables auto-smoothing of font
Enables auto-smoothing of font (see notes below)

Example:

WB1123456

Placement:

Preceding the data to be printed

Default:

None

To print text images on a label. These are the four auto-smoothing
fonts available on the printer.
NON-PROPORTIONAL
WB
18W x 30H dot matrix
WL
28W x 52H dot matrix

XB
XL

PROPORTIONAL(1)
48W x 48H dot matrix
48W x 48H dot matrix

(1) These fonts will be printed with proportional spacing only if preceded by an
PS command.

Input to Printer:

ESC>APS
H0001V0100WB0SATO
H0001V0185WB1SATO
H0001V0270WL0SATO
H0001V0355WL1SATO
H0300V0100XB0SATO
H0300V0185XB1SATO
H0300V0270XL0SATO
H0300V0355XLSATO
Q1Z

Printer Output:

Page 4-38

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Special Notes

1. Auto-smoothing (when enabled) is only effective if the character
expansion rate is at least (3) times in each direction.
2. Characters may be enlarged through the use of the L
Character Expansion command (see Page 4-23).
3. Character spacing may be altered through the use of the A
Character Pitch command (see Page 4-26).
4. A font must be defined for each field to be printed. There is no
default font.
5. The proportionally spaced fonts XU, XS, XM, XL and XB can be
printed with fixed spacing using the PS Proportional Space
command.

SATO M-8400RV

9001041 Rev. D

Page 4-39

Section 4. Programming Reference

Form Feed
Command Structure

A(space)Z
Example:

See above

Placement:

Separate data stream sent to printer

Default:

None

Command Function

To feed a blank tag or label, which is the equivalent of a “form feed”

Input to Printer

A(space)
Z

Printer Output

Blank label or tag

Page 4-40

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Form Overlay, Recall
Command Structure

/
Example:

See above

Placement:

Must be preceded by all other data and placed just before
the Print Quantity command (Q)

Default:

None

Command Function

To recall the label image from the form overlay memory for printing.
This command recalls a stored image from the overlay memory.
Additional or different data can be printed with the recalled image.

Input to Printer

A
H0001V0125
STHIS IS THE STORED IMAGE WITH A BARCODE
H0001V0165B103100*12345*
&Z

AH0001V0050
STHIS IS RECALLING AND ADDING TO THE STORED IMAGE/
Q1Z

Printer Output

Special Notes

1. The overlay is stored using the & Form Overlay Store
command (see Page 4-42).
2. If the this command is used with the AX Expanded Print
Length command (see Page 4-57) the Form Overlay length
cannot exceed 14".

SATO M-8400RV

9001041 Rev. D

Page 4-41

Section 4. Programming Reference

Form Overlay, Store
Command Structure

&
Example:

See above

Placement:

Must be preceded by all other data and placed just before
the Stop command (Z)

Default:

None

Command Function

To store a label image in the volatile form overlay memory. Only one
label image may be stored in this memory area at a time.

Input to Printer

A
H0001V0125
STHIS IS THE STORED IMAGE WITH A BARCODE
H0001V0165B103100*12345*
&
Z

Printer Output

There is no output from this command. It stores the label image in the
overlay buffer.

Special Notes

1. Remember that this storage is volatile. Therefore, if the printer
loses power, the overlay must be sent again.
2. The overlay is recalled using the / Form Overlay Recall
command (see Page 4-41).
3. Form overlays do not have to be recompiled each time they are
called to be printed and therefore may result in much faster print
output.

Page 4-42

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Graphics, Custom
Command Structure

Gabbbccc(data)
a

=

Specifies format of data stream to follow
B Binary format
H Hexadecimal format

bbb =

Number of horizontal 8 x 8 blocks (001-248)

ccc =

Number of vertical 8 x 8 blocks (001-267)

(data)=

Hex data to describe the graphic image

Example:

GH006006
See Appendix C for a detailed example

Placement:

May be placed anywhere within the data stream after the
necessary position commands.

Default:

None

Command Function

To create and print custom graphics (logos, pictures, etc.) on a label.
The graphic image may be printed along with other printed data to
enhance label appearance or eliminate the need for preprinted label
stock. Using a dot-addressable matrix, design the graphic image in 8
dot by 8 dot blocks, then send it in a binary format to the printer.

Printer Input

A
H0100V0100GH006006
FFFFFFFFFFFFFFFFFFFFFFFFC00000000003
C00000000003C000FFFFFFF3C00080000013
C00080000013C0009FFFFF13C00080000013
C00080000013C0009FFFFF13C00080000013
C00080000013C000FFFFFFF3C00000000003
C00000000003C00000000003C00000000003
C00000000003C00000000003C00003C00003
C00007E00003C0000FF00003C0000FF00003
C0000FF00003C0000FF00003C00007E00003
C00003C00003C00003C00003C00003C00003
C00003C00003C00003C00003C00003C00003
C00003C00003C00003C00003C00003C00003
C00003C00003C00001800003C00000000003
C00000000003FFFFFFFFFFFFFFFFFFFFFFFF
H0300V0100XSPLEASE PLACE YOUR DISK
H0300V0150XSIN A SAFE PLACE
Q1Z

See Appendix C for a details on the data format.

SATO M-8400RV

9001041 Rev. D

Page 4-43

Section 4. Programming Reference

Printer Output

Special Notes

1. Do not use ASCII  or  characters (carriage return or line
feed) as line delimiters within the graphic data or the actual image
will not be printed as specified.
2. A custom graphic cannot be enlarged by the L Character
Expansion command (Page 4-23).
3. A custom graphic is not affected by either of the Rotation
commands. Therefore, always design and locate your graphic
image to print in the appropriate orientation.
4. Use an optional Memory Card to expand the print length.
5. To store graphic images in an optional memory card, see the
Memory Card Functions section.
6. The binary format reduces the transmission time by 50%.

Page 4-44

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Graphics, PCX
Command Structure

GPaaaaa,(data)
aaaaa

=

Number of bytes to be downloaded

Example:

GP32000, ... data...

Placement:

Anywhere within the job data stream

Default:

None

Command Function

To allow the creation and printing of graphic images using a PCX file
format.

Printer Input

See Appendix Appendix C for a detailed example
A
V0150H0100GP03800,(...Data...)
Q1
Z

Printer Output

Special Notes

1. The maximum number of bytes that can be downloaded is 32K
(compressed). The number specified by this command includes
the PCX header information. The maximum size of the
uncompressed PCX file is 64K. If the uncompressed file exceeds
64K, the graphic will not print.
2. Only black and white PCX files can be downloaded.
3. The file size specified by this command is the DOS file size in bytes.

SATO M-8400RV

9001041 Rev. D

Page 4-45

Section 4. Programming Reference

Job ID Store
Command Structure

IDaa
aa

=

Job ID assigned (01 to 99)

Example:

ID09

Placement:

Immediately following the A in the job data stream.

Default:

None

Command Function

To add an identification number to a job. The status of the job can
then be determined using the ENQ command in the Bi-Com status
mode (See Section 5: Interface Specifications for more information).

Printer Input

A
ID02
. . . Job . . .
Z

Printer Output

There is no printer output as a result of this command.

Special Notes

1. Works only in Bi-Com mode. The Job ID number must be stored
before Bi-Com status mode can be used.
2. If more than one ID number is sent in a single job, i.e.
A
ID01
..........
ID02
.........
the last number transmitted will be used.

Page 4-46

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Journal Print
Command Structure

J
Example:

See above

Placement:

Immediately following A

Default:

None

Command Function

To print text in a line by line format on a label. By specifying this
command, you automatically select Font S with a Character
Expansion of 2x2. You also establish a base reference point of
H2,V2. The character pitch is 2 dots and the line gap is 16 dots.
Simply issue an ASCII  at the end of each text line.

Input to Printer

A
J WITH THE JOURNAL FEATURE
YOU CAN PRINT TEXT WITHOUT
USING ANY FONT COMMANDS
OR POSITION COMMANDS
Q1Z

Printer Output

Special Notes

1. Journal mode assumes a maximum label width . Otherwise, you
may print where there is no label and damage your print head.
2. It is effective only for the current print job.

SATO M-8400RV

9001041 Rev. D

Page 4-47

Section 4. Programming Reference

Lines and Boxes
Command Structure

Line

FWaabcccc

aa

=

Width of horizontal line in dots (01-99)

b

=

Line orientation
H Horizontal line
V Vertical Line

cccc =

Length of line in dots (see Note 2 for max length)

Box:

FWaabbVccccHdddd
aa

=

Width of horizontal side in dots (01-99)

bb

=

Width of vertical side in dots (01-99)

cccc =

Length of vertical side in dots (see Note 2 for max length)

dddd =

Length of horizontal side in dots (see Note 2 for max length)

Example:

FW02H0200

Placement:

Following the necessary positioning commands

Default:

None

Command Function

To print horizontal lines, vertical lines, and boxes as images on the
label.

Input to Printer

A
H0100V0100FW20H0200
H0320V0100FW20V0200
H0350V0100FW1010H0200V0200
Q1Z

Page 4-48

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Printer Output

Special Notes

1. It is recommended that all lines and boxes be specified in the
normal print direction.
2. The maximum allowable lengths are as follows.

SATO M-8400RV

LINE/BOX
LENGTH

M-8400RV

Horizontal
cccc

0001 to 0832

Vertical
cccc

0001 to 1424
001 to 2824 (Expanded Print Length)

9001041 Rev. D

Page 4-49

Section 4. Programming Reference

Line Feed
Command Structure

Eaaa
aaa =

Number of dots (001-999) between the bottom of the
characters on one line to the top of the characters on
the next line

Example:

E010

Placement:

Preceding the text that will use the line feed function

Default:

None

Command Function

To print multiple lines of the same character size without specifying a
new print position for each line. With the Line Feed command, specify
the number of dots you want between each line. Then, send an ASCII
 at the end of each line of text. The printer automatically
identifies the size of the last character, moves down the number of
dots specified, and begins printing the next line.

Input to Printer

A
E010H0050V0050L0202S
THIS IS THE 1ST LINE
THIS IS THE 2ND LINE
THIS IS THE 3RD LINE
Q1Z

Printer Output

Special Notes

1. This command can be used for text and for bar codes.
2. It is effective only for the current data stream.
3. When printing lines or boxes in the same data stream with the Line
Feed command, the Lines and Boxes command should be
specified last, preceding Q Quantity command.

Page 4-50

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

4. This command is invalid only if the value specified is zero.
5. The rotation command can be used with this command.
6. Following this command with a  character will allow you to
print with auto line feed. In this case, the print position will be
determined from the value specified in the command and the H
value set in the printer. However, if you specify several H values
after this command, the print position will be determined by the H
value last specified. You must redefine the font to be used after
each H command.

SATO M-8400RV

9001041 Rev. D

Page 4-51

Section 4. Programming Reference

Mirror Image
Command Structure

HhhhhVvvvvRMaaaa,bbbb
hhhh =
vvvv =
aaa =
bbbb =

Horizontal position of the top left corner of the area to be
mirrored (see Print Position commands on Page 4-59)
Vertical position of the top left corner of the area to be
mirrored (see Print Position commands on Page 4-59)
Horizontal length in dots of image area to be mirrored
(0008 to 9999)
Vertical length in dots of image area to be mirrored
(0008 to 9999)

Example:

H100V100RM0150,0050

Placement:

After fields to be mirrored

Default:

None

Command Function

To allow mirror image printing of data, such as on transparent labels
to be applied to a glass or other transparent surface.

Input to Printer

Label #1
AH0100V0050XL0ABCDEF
RM
Q1Z
Label #2
AH0100V0050XL0ABCDEF
V0050H0100RM0150,0100
Label #3
A%1H0100V0100XL0ABCDEF
RM
Q1Z
Label #4
AH0100V0100XL0ABCDEF
%1RM
H01000100XL0ABCDEF
Q1Z

Printer Output

Page 4-52

Label #1

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Label #2

Mirrored Area

Label #3

7"

Label #4

7"

Special Notes

1. If Vertical and Horizontal position is not specified in the command,
all data preceding the command will be mirrored.
2. This command can be used with the % Rotate Fixed Base
Reference Point command (see Page 5-66). It cannot be used
with the R Rotate Moving Base Reference Point command
(see Page 5-68). Please note that the reference point rotation is
dependent upon the location of the % command in the
data stream
3. This command should not be specified more than once in any
single job.
4. This command cannot be used with commands requiring re-editing
of the print area, such as Sequential Numbering, Real time clock
or Copy Image Area.
5. Any data outside the printable area is not mirrored the command is
treated as a command error. Any print job containing the
RM comand and without any print data will be treated as a
command error.

SATO M-8400RV

9001041 Rev. D

Page 4-53

Section 4. Programming Reference

Off-Line/Pause
Command Structure

@,nn...n
nn...n

=

Optional message to be displayed on the LCD.
Maximum of 32 characters

Example:

See above

Placement:

Anywhere in the print job between A and Z

Default:

None

Command Function

To specify the printer to come to an off-line state. When used within a
print job, the printer goes off-line after finishing the print job.

Input to Printer

A
@,Load Blue Labels and place printer On-Line
. . . Job . . .
Z

Printer Output

There is no printer output for this command. The printer is placed in
the Off-Line mode as soon as the current print job is finished.

Special Notes

1. You must press the LINE key on the front panel to return the printer
to an On-Line status (see Operator Panel in Section 2 of this
manual).
2. Remember, when using this command, that if the print job specifies
Q10, all ten labels will print before the printer will go
off-line.

Page 4-54

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Postnet
Command Structure

BPn...n
n...n =

5 digits (Postnet-32 format)
6 digits (Postnet-37 format)
9 digits (Postnet-52 format)
11 digits (Postnet-62, Delivery Point format)

Example:

BP123456789

Placement:

Immediately preceding the data to be encoded

Default:

None

Command Function

To print Postnet bar codes

Printer Input

A
H0100V0120BP94089
H0100V0160BP123456
H0100V0200BP123456789
H0100V0240BP12345678901
Q1Z

Printer Output

Special Notes

1. If the number of data digits does not match those listed, the
command is ignored.
2. Only numeric data will be accepted.

SATO M-8400RV

9001041 Rev. D

Page 4-55

Section 4. Programming Reference

Print Darkness
Command Structure

#Ea
a

=

Print darkness value
(see Note 2 for allowable setting)

Example:

#E2

Placement:

Must be placed immediately after A and
immediately before Z in its own separate data stream

Default:

See Note 2

Command Function

To specify a new print darkness setting. This command allows
software control of the darkness setting for unique media and ribbon
combinations.

Input to Printer

A
#E2
Z

Printer Output

There is no printer output for this command.

Special Notes

1. This becomes the new setting in the printer configuration for all
subsequent print jobs, unless changed. The setting is stored in
non-volatile memory and is not affected by cycling power.
2. The allowable Print Darkness settings are as follows:

M-8400RV
Darkness
Settings

1, 2, 3, 4, or 5
Default values are shown in bold type.

Page 4-56

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Print Length, Expanded
Command Structure

AX Sets the print length to 14" (356 mm)
AR Resets the maximum print length to 7" (178 mm)
Example:

See above

Placement:

Must follow the Start Code command (see Page 4-74)
and be in it’s own separate data stream.

Default:

AR

Command Function

To double the maximum print length (in feed direction) for a label.

Input to Printer:

A
AX
Z
A
H0050V0100WB1EXPAND TO:
H0050V2700WB114 INCHES
Q1Z
A
AR
Z

Printer Output:

14"

SATO M-8400RV

9001041 Rev. D

Page 4-57

Section 4. Programming Reference

Special Notes

1. AX is effective until AR is sent to reset the printer to its standard
print length, or until the printer is repowered.
2. It may be included in an independent data stream to specify the
size of the maximum print area:
LENGTH

M-8400RV

A
AX
Z

14"
2848 dots

A
AR
Z

7"
1424 dots

3. When this command is used with the & Store Form Overlay
command (see Page 4-42) the Form length cannot exceed 14".

Page 4-58

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Print Position
Command Structure

Horizontal Position:

Haaaa

Vertical Position:

Vbbbb

aaaa =

Number of dots horizontally from the base reference point
(1 to maximum) See Note 2.

bbbb =

Number of dots vertically from the base reference point
(1 to maximum) See Note 2.

Example: H0020V0150
Placement:

Default:

Preceding any printed field description of lines/boxes,
fonts, bar codes or graphics.

H0001
V0001

Command Function

The Horizontal and Vertical commands specify the top left corner of a
field or label, using the current base reference point as an origin.
They also establish a reference point for subsequent fields until the
next horizontal and/or vertical print position command is issued.

Input to Printer

A
H0025V0050L0303MSATO
H0100V0150MSATO
Q1Z

Printer Output

Special Notes

SATO M-8400RV

1. The print position of a field is affected by both the Rotate (R
and A3) commands.

9001041 Rev. D

Page 4-59

Section 4. Programming Reference

2. For print lengths greater than 14 inches an optional Memory Card
must be used.
M-8400RV
Maximum Print
Width
aaaa

832 dots
4.1 in.
104 mm

Standard Print
Length
bbbb

1424 dots
7.0 in.
178 mm

Expanded with
AX
bbbb

2848 dots
14.0 in.
356 mm

Maximum Length with Memory Card (2)
128 Kbyte
bbbb

1257 dots
6.2 in.
157 mm

512 Kbyte
bbbb

5038 dots
24.8 in.
629 mm

1 Mbyte
bbbb

9999 dots (1)
49.2 in.
1249 mm

2 Mbyte
bbbb

9999 dots (1)
49.2 in.
1249 mm

(1) Limited by the number of digits in the command field.
(2) When a Memory Card is used to expand the print length, the card capacity is
used instead of the internal memory, not in addition to the internal memory.

3. If any part of an image is placed past the maximum number of dots
for standard length and or the capacity of the memory card, that
part of the image will be lost.
4. If any part of an image is placed past maximum allowable dots
across the label, that part of the image will be lost.
5. If you attempt to print where there is no paper, you may damage
the print head.
6. For these commands, the leading zeroes do not have to be
entered. The command V1 is equivalent to V0001.

Page 4-60

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Print Quantity
Command Structure

Qaaaaaa
aaaaaa

=

Total number of labels to print (1-999999)

Example:

Q500

Placement:

Just preceding Z, unless NUL exists, then
preceding that. This command must be present in every
print job.

Default:

None

Command Function

To specify the total number of labels to print for a given print job.

Input to Printer

A
H0100V0100WB1M-8400RV
Q3
Z

Printer Output

Three labels containing the data “M-8400RV” wll be printed.

Special Notes

1. To pause during a print job, you must press the LINE key on the
Operator Panel.
2. To cancel a print job, you must turn off the printer, or you may send
the  code if using the Bi-Com mode. Multi-Buffer jobs can
be cleared with the * Clear Print Job(s) and Memory
command (see Page 4-29).
3. When used with the F Sequential Numbering command (see
Page 4-72, the Print Quantity value should be equal to the total
number of labels to be printed.
4. If you do not specify a Print Quantity, the printer will not print a label.
5. For this command, leading zeroes do not have to be entered. The
command Q1 is equivalent to Q000001.

SATO M-8400RV

9001041 Rev. D

Page 4-61

Section 4. Programming Reference

Print Speed
Command Structure

CSa
a

=

Designates the speed selection
See Note 2 for allowable settings

Example:

CS6

Placement:

Must be placed immediately after A and
immediately before Z in its own separate data stream

Default:

As previously set in the printer configuration

Command Function

To specify a unique print speed through software for a particular
label. This allows flexibility in finding the best performance and quality
for the particular label format, media, and ribbon. All subsequent
labels will print at this speed unless the speed is changed with this
command or through the Operator Panel.

Input to Printer

A
CS5
Z

Printer Output

There is no printer output for this command. It sets the print speed of
the printer.

Special Notes

1. This becomes the new setting in the printer configuration for all
subsequent print jobs, unless changed. The setting is stored in
non-volatile memory and is not affected by cycling the power.
2. The allowable Print Speed settings are as follows:
CS Command

DSW2-8 OFF

DSW2-8 ON

1
2
3
4
5

2 ips (50mm/s)
4 ips (100mm/s)
6 ips (150mm/s)
8 ips (150mm/s)
10 ips (250mm/s)

2 ips (50mm/s)
3 ips (75mm/s)
4 ips (100mm/s)
5 ips (125mm/s)
N/A

Default values are shown in bold type.

Page 4-62

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Repeat Label
Command Structure

C
Example:

See above

Placement:

Must be placed immediately after A and
immediately before Z in its own separate data stream

Default:

None

Command Function

To print duplicate of the last label printed

Input to Printer

A
C
Z

Printer Output

A duplicate of the previous label will be printed.

Special Notes

1. This command will have no effect if the power to the printer was
cycled off and back on since printing the previous label.

SATO M-8400RV

9001041 Rev. D

Page 4-63

Section 4. Programming Reference

Replace Data (Partial Edit)
Command Structure

0 (zero)
Example:

See above

Placement:

Must follow A and precede all other print data

Default:

None

Command Function

To replace a specified area of the previous label with new data. This
command will cause the previous label to print along with any
changes specified within the current data stream.

Input to Printer

A
H0025V0020WB0M-8400
H0025V0085WB1M-8400RV
H0025V0150WL0M-8400RV
H0025V0215WL1M-8400RV
Q1Z
A
0H0025V0020WB0M-8400RV
Q1Z

Printer Output

Special Notes
Page 4-64

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

1. Specify the exact same parameters for the image to be replaced as
were specified in the original data stream, including rotation,
expansion, pitch, etc. This will ensure that the new data will
exactly replace the old image. If the replacement data contains
fewer characters than the old data, then the characters not
replaced will still be printed.
2. This command will not function if the power has been cycled off and
back on since the last label was printed.
3. Proportional Pitch text cannot be used with this command.

SATO M-8400RV

9001041 Rev. D

Page 4-65

Section 4. Programming Reference

Reverse Image
Command Structure

(aaaa,bbbb
a
b

=
=

Horizontal length in dots of reverse image area
Vertical height in dots of reverse image area.
See Note 6 for field ranges

Example:

(100,50

Placement:

This command must be preceded by all other data and be
placed just before Q

Default:

None

Command Function

To reverse an image area from black to white and vice versa. Use the
Print Position commands (H and V) to locate the top
left corner of the reverse image area.

Input to Printer

A
H0050V0120L0202WB1REVERSE
H0250V0300L0202WB1HALF
H0040V0110(370,100
H0240V0290(220,47
Q1Z

Printer Output

Page 4-66

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Special Notes

1. A reverse image area is affected by the rotate commands.
Therefore, always assume the printer is in the normal print
orientation when designing and sending the Reverse Image
command.
2. If using reverse images with the form overlay, place this command
before the Form Overlay command in the data stream.
3. If the Rotate commands are used with this command, the V and H
parameters are reversed.
4. If the height and width to be reversed contain other than
alphanumeric data, the area is not printed.
5. If the values specified exceed the maximum ranges, the reverse
image is not created.
6. The maximum allowable settings are as follows:
M-8400RV

SATO M-8400RV

Horizontal
aaaa

0001 to 0832

Vertical
bbbb

0001 to 1424

9001041 Rev. D

Page 4-67

Section 4. Programming Reference

Rotate, Fixed Base Reference Point
Command Structure

%a
a

=

0
1
2
3

Sets print to normal direction
Sets print to 90°CCW
Sets print to 180° rotated (upside down)
Sets print to 270° CCW

Example:

%3

Placement:

Preceding any printed data to be rotated

Default:

%0

Command Function

To rotate the print direction in 90° increments without changing the
location of the base reference point. The diagram below illustrates the
use of the % Rotate command. Note that the entire print area
is shown, but your label will probably not be as large as the entire
area.

Input to Printer

A
%0H0200V0100MNORMAL DIRECTION
%1H0200V0300MONE
%2H0200V0400MTWO
%3V0500MTHREE
Q1Z

Printer Output

Page 4-68

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Special Notes

1. Do not combine this command and the R Rotate command
(see Page 4-70) in the same data stream.
2. The specified values are valid until another Rotate (%)
command is received.
3. Receipt of a Stop Print (Z) command will reset the setting to
the default value.

SATO M-8400RV

9001041 Rev. D

Page 4-69

Section 4. Programming Reference

Rotate, Moving Base Reference Point
Command Structure

Command Function

Normal Direction: N
Rotated Direction: R
Example:

See above

Placement:

Preceding any printed data to be rotated

Default:

N

The R command rotates the printing of all subsequent images
in a print job by 90° counterclockwise each time it is used. It also
moves the base reference point to a different corner of the print area.
The N command returns to the original base reference point
and returns printing to the normal orientation.

Input to Printer

A
NH0100V0010MNORMAL DIRECTION
RH0100V0100MONE
RH0100V0100MTWO
RH0100V0100MTHREE
RH0100V0100MFOUR
Q1Z

Printer Output

Page 4-70

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Special Notes

1. Do not combine this command and the % rotate command
(see Page 4-68) in the same data stream.
2. A custom graphic is not affected by this command. Therefore,
always design and locate your graphic image to print in the
appropriate orientation.
3. See Section 4, Rotated Fields, Page 4-8, for more information.
4. The specified values are valid until another Rotate (R)
command is received.
5. Receipt of a Stop Print (Z) command will reset the setting to
the default value.

SATO M-8400RV

9001041 Rev. D

Page 4-71

Section 4. Programming Reference

Sequential Numbering
Command Structure

Faaaabcccc,dd,ee
aaaa =

Number of times to repeat the same data (0001-9999)

b

Plus or minus symbol (+ for increments; - for decrements)

=

cccc =

Value of step for sequence (0001-9999)

,dd

=

Number of digits for sequential numbering (01-99). The first
incrementing character position starts after the positions
exempted from sequential numbering as specified in ee.
If these digits are left out, the default is 8.

,ee

=

Number of digits free from sequential numbering (00-99)
starting with the right most position. If these digits are left out,
the default is 0.

Example:

F001-001,04,03
Decrementing
004321321
Free from Decrementing

In this example, the right most (least significant) three digits
would not decrement and the next four would decrement.
Placement:

Preceding the starting value to be incremented or
decremented.

Default:

None

Command Function

To allow the ability to print sequential fields (text, bar codes) where all
incrementing is done within the printer. Up to eight different
sequential fields can be specified per label. Sequencing is effective
for up to 99-digit numeric data within each field.

Input to Printer

AH0100V0100MSERIAL NUMBER:
H0100V0200F001+005
L0202M1000
Q2Z

Page 4-72

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Printer Output

Special Notes

1. The value specified for Print Quantity (see Page 4-61) should be
equal to the number of different sequential values desired
multiplied by the number of repeats specified.
Example:
To print 2 sets each of the numbers 1001-1025 on separate
labels, we need 50 total labels. The commands would be as
follows:
A
H0100V0100F002+001XM1001
Q50
Z

2. It is necessary to specify the print position for each sequential field
on a label.
3. Up to eight different sequential fields can be specified per label.
4. This command ignores alpha characters in the sequential number
field.
5. This command can not be used with the following commands:
Copy Image, Page 4-31
Reverse Image, Page 4-66
Line Feed, Page 4-50
SATO M-8400RV

9001041 Rev. D

Page 4-73

Section 4. Programming Reference

Start/Stop Label
Command Structure

Start Command: A
Stop Command: Z
Example:

See above

Placement:

A must precede data
Z must follow data

Default:

None

Command Function

For all print jobs, the Start command must precede the data, and the
Stop command must follow. The print job will not run properly if these
are not in place.

Input to Printer

A
H0001V0100WB1SATO
H0130V0200B103150*M-8400RV*
H0170V0360L0202S*M-8400RV*
Q1Z

Printer Output

There is not output for these commands they are not accompanied by
other label printing commands. However, these commands must
precede and follow each print job sent to the printer.

Page 4-74

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Calendar Option Commands
The following commands in this section require the Calendar option.

SATO M-8400RV

9001041 Rev. D

Page 4-75

Section 4. Programming Reference

Calendar Increment
Command Structure

WPabbb
a

=

bbb =

Y Years
M Months
D Days
h Hours
Numeric data: Years (1-9), Months (01-99),
Weeks (01-99), Days (001-999), Hours (001-999)

Example:

WPM03

Placement:

Anywhere within the data stream

Default:

None

Command Function

To add a value to the printer’s current date and/or time, which may
then be printed on the label. This command does not change the
printer’s internal clock setting.

Input to Printer:

A
H0100V100XB1Current Date:
WAMM/DD/YY
WPM06
H0100V0200XB1Expiration Date:
WAMM/DD/YY
Q1Z

Printer Output:

Page 4-76

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Special Notes:

1. This command requires the Calendar Option. See your SATO
representative for more details
2. Once the year increments past “99” it will wrap back to “00”.
3. This command can only be used once per data stream.
4. The printer’s internal clock may be set through the Calendar Set
command (see Page 4-80).
5. If a print quantity of more than one label per job is used, the same
time and date will be on each label of the entire print job.
6. Calendar Increment Example:
1998 January 15 (ww=03) plus 48 weeks = week 51
7. The Week Calendar specification follows ISO8601. Days of the
week are numbered 1 thru 7, beginning with Monday. The first
week of the year is the week containing the first Thursday. If
January 1st falls on Friday, it belongs to the last week of the
previous year. If December 31st falls on a Wednesday, it belongs
to the first week of the following year. If Calendar Increment
calculation extends over the year, the result belongs to the week
number of the following year.

SATO M-8400RV

9001041 Rev. D

Page 4-77

Section 4. Programming Reference

Calendar Print
Command Structure

WA(elements)
(elements) =

YYYY
YY
MM
DD
HH
hh
mm
ss
TT
JJJ
WW
ww

4 digit Year (1981-2080)
2 digit Year (00-91)
Month (01-12)
Day (01-31)
12 Hour Clock (00-11)
24 Hour Clock (00-23)
Minute (00-59)
Seconds (00-59)
AM or PM
Julian Date (001-366)
Week (00-53)
Week (01-54)

Example:

WAMM/DD/YY hh:mm

Placement:

Anywhere within the data stream

Default:

None

Command Function

To specify the printing of a date and/or time field from the printer’s
internal clock. This may be used to date/time stamp your labels.

Input to Printer:

A
H0100V0100XB1The current date is:
XB1WAMM/DD/YY
H0100V0200XB1The current time is:
XB1WAhh:mm
Q1Z

Printer Output:

Special Notes:

1. This function requires the Calendar Option. See your SATO
representative for details.
2. The date and time elements may be placed in any order for printing.
3. Use a slash (/) to separate date elements and a colon (:) to
separate time elements.

Page 4-78

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

4. The font for the date/time elements must be specified before this
command.
6. The printer’s internal clock may be set through the Calendar Set
command (see Page 4-80).
7. This command can be used up to six times per job.
8. The Copy (WD), Mirror Image (RM) or Reverse
Image (/) commands cannot be used with this command.
9. Up to 16 characters can be used with this command.
10. Century Ranges are:
For Year + YY, any year equal to or greater than 80 and less or equal
to 99, then the century equals 19. for any year equal to or greater
than 80, then the century equals 20.
11. The Julian date is the accumulated day from January 1st to the
current date. The first day of the year is January 1st (001) and the
last day of the year is December 31st (365 or 366 for leap years).
12. The TT command parameter should not be specified for printing in
numeric only bar codes.
13. The Week Calendar specification follows ISO8601. Days of the
week are numbered 1 thru 7, beginning with Monday. The first
week of the year is the week containing the first Thursday. If
January 1st falls on Friday, it belongs to the last week of the
previous year. If December 31st falls on a Wednesday, it belongs
to the first week of the following year. If Calendar Increment
calculation extends over the year, the result belongs to the week
number of the following year.
14. All time and date rules conform to the ISO8601 specification.

SATO M-8400RV

9001041 Rev. D

Page 4-79

Section 4. Programming Reference

Calendar Set
Command Structure

WTaabbccddee
aa
bb
cc
dd
ee

=
=
=
=
=

Year (01-99)
Month (01-12)
Day (01-31)
Hour (00-23)
Minute (00-59)

Example:

WT9101311200

Placement:

This command must be sent in an independent data
stream.

Default:

None

Command Function

To set the time and date of the printer’s internal clock.

Input to Printer:

A
WT9312251300
Z

Printer Output

There is no printer output for this command. It sets the current date to
December 25, 1993 and the current time to 1:00 PM in the printer.

Special Notes

This command requires the Calendar Option. See your SATO
representative for details.

Page 4-80

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Memory Card Option Commands
These commands require the Memory Card Option.

Note: Before a Memory Card can be used for the first time, it must be initialized
using the BJF command (see Page 4-94). If it is not initialized, the printer will
not recognize the card and respond as if no card was installed.

SATO M-8400RV

9001041 Rev. D

Page 4-81

Section 4. Programming Reference

Memory Card Function
Clear Card Memory
Command Structure

*a,bb
a

=

bb

=

Memory card section to be cleared
G To clear SATO graphic files from memory card
P To clear PCX graphic files
F To clear formats from the memory card
O To clear TrueType fonts
Memory Card storage area to be cleared
01 to 99 for Graphics, PCX or Formats
00 to 99 for TrueType fonts

Example:

*G,01

Placement:

This command should be sent to the printer immediately
following the CC Slot Select command.

Default:

None

Command Function

To clear individual memory areas in the Memory Card.

Input to Printer

A
CC1*O,09
Z

Printer Output

There is no printer output as a result of this command.

Special Notes

1. To clear everything in the memory card, use the BJF
Memory Card Initialize command (see Page 4-94).
2. This command is ignored if there is no data to be cleared.
3. This command is ignored if a memory card is not installed in the
printer.

Page 4-82

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Memory Card Function
Expand Memory Area
Command Structure

EXa
a

=

Memory Designation
0 Use Printer Memory
1 Use Memory Card Slot 1
2 Use Memory Card Slot 2

Example:

EX1

Placement:

In its own data stream imediately after powering on.

Default:

None

Command Function

This command expands the memory available to image labels by
using the Memory Card.

Input to Printer

A
EX2
Z

Printer Output

There is no printer output as a result of this command.

Special Notes

1. You must have the optional Memory Card to use this command.
Call your local SATO representative for details.
2. When the printer is turned off, the the Memory Card is reset to
normal operation.
3. If the Memory Card specified already contains data, it cannot be
used for memory expansion.
4. The printer will reserve the specified Memory Card for expanded
memory until it is turned off or receives another EX
Expand Memory Area command.
5. Use care with Line and Box commands as excessively long lines
can damage the print head.
6. The maximum vertical position that can be specified by the
V vertical position command is shown in the table below:

SATO M-8400RV

9001041 Rev. D

Page 4-83

Section 4. Programming Reference

M-8400RV
Standard Print
Length

1424 dots
7.0 in.
178 mm

Expanded with
AX
Command

2848 dots
14.0 in.
356 mm

Maximum Length with Memory Card (2)
128 Kbyte

1257 dots
6.2 in.
157 mm

512 Kbyte

5038 dots
24.8 in.
629 mm

1 Mbyte

9999 dots (1)
49.2 in.
1249 mm

2 Mbyte

9999 dots (1)
49.2 in.
1249 mm

(1) Limited by the number of digits in the command field.
(2) When a Memory Card is used to expand the print length, the card capacity is
used instead of the internal memory, not in addition to the internal memory.

7. If a job contains elements out of the memory range, it is ignored.
8. This command cannot be used with the AX and AR
Expanded Print Length commands or the R Rotate,
Moving Base Reference Point command.
9. If the Forms Overlay command & is used with a Memory
Card to expand the print area, the Form Overlay length is still
limited to 14".

Page 4-84

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Memory Card Function
Fonts, TrueType Recall
Command Structure

BJRabbccddeeeeff...f
BJTaa,bb,cc,dd,ee,ffff,gggg
aa =
bb =
cc =
dd =
ee =
ffff =
g..gg =

Font ID (0 thru 9 or 00 thru 99)
Horizontal Expansion (01 thru 12)
Vertical Expansion (01 thru 12)
Character Pitch (01 thru 99)
Always 00
Number of characters to be printed using the font
Data to be printed

Example:

BJR1020201000004SATO

Placement:

Immediately following the CC Slot Select
command.

Default:

None

Command Function

This command recalls previously stored TrueType fonts from a
Memory Card.

Printer Input

A
V0100H0100CC1BJR1020201000004SATO
Q1Z

Printer Output

Special Notes

SATO M-8400RV

1. This command requires the Memory Card option. See your SATO
representative for details.

9001041 Rev. D

Page 4-85

Section 4. Programming Reference

Memory Card Function
Fonts, TrueType Store
Command Structure

Begin Download BJ( aa...abb..b
Download
BJDcccccddddee...e
End Download
BJ)
aa..a =
bb..b =
ccccc=
dddd =
ee...e=

40 byte font description
10 byte date information
Memory offset (hexadecimal)
Number of data bytes to be stored (0001-2000)
Font data to be downloaded

Example:

BJ({50 byte header}
BJD{5 byte hex memory offset}{data}
BJ)

Placement:

Immediately following the CC Slot Select
command.

Default:

None

Command Function

This command allows TrueType fonts to be stored in a Memory Card.

Printer Input

The download data stream is very complex and it is recommended
that the TrueType Download utility program be used instead of
manually creating the required command and data stream.

Printer Output

There is no printer output as a result of this command. See
BJR TrueType Font Recall command.

Special Notes

1. This command requires the Memory Card option. See your SATO
representative for details.
2. The SATO TrueType Download utility program can be used to
automate the download process from a computer running
Windows 3.1 or above. A copy of this utility program is included
as a part of the Memory Card Option.

Page 4-86

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Memory Card Function
Format/Field Recall
Command Structure

YR,aa /D,bb,cc...c
aa =
bb =
cc...c =

Format number to be recalled (01-99)
Field number to be recalled (01-99)
Data to be placed in recalled field.

Example:

YR,01/D,01,99

Placement:

Immediately after CC Slot Select command

Default:

None

Command Function

To recall a field from a stored format and place new data in the field.

Printer Input

A
CC1
YR,02/D,01,TWO FIELDS OF/D,02,VARIABLE DATA
Q1Z

Printer Output

Special Notes

1. This command requires the Memory Card option. See your SATO
representative for details.
2. Only one format can be recalled at a time. However, multiple fields
may be recalled from the same format.
3. The number of data characters contained in the “cc...c” field cannot
exceed the value designated in the /N Field Store
command. If it does, the data will be truncated to fit the field
length defined in the Field Store Command.

SATO M-8400RV

9001041 Rev. D

Page 4-87

Section 4. Programming Reference

Memory Card Function
Format/Field Store
Command Structure

YS,aa/N,bb,cc{.......}
aa
bb
cc
{.....}

=
=
=
=

Format number to be stored (01-99)
Field number to be stored (01-99)
Length of field to be stored (01-99)
Command stream describing the field to be stored.

Example:

YS,01/N,01,05

Placement:

Immediately after CC Slot Select command.

Default:

None

Command Function

To store a format field description in the memory card.

Printer Input

A
CC1
YS,02/N,01,13V0100H0100XB1
/N,02,13V0200H0200XB1
Z

Printer Output

There is no printer output as a result of this command. See
YR Format/Field Recall command.

Special Notes

1. This command requires the Memory Card option. See your SATO
representative for details.
2. Each job should be sent individually. If more than one job is sent in
a data stream, only the first one will be accepted and the
remainder ignored.
3. The following commands cannot be stored in a format:
CS Print Speed
NULL Cut Label
/D
Recall Field
T
Custom Characters
@
Off Line
BJ
TrueType Fonts
G
Store Custom Graphics
BT
Variable Ratio Bar Codes
0
Partial Edit

Page 4-88

9001041 Rev. D

C
Q
EX
&
#E
ID
*
PI

Repeat Label
Print Quantity
Expanded Label Storage
Store Form Overlay
Print Darkness
Store Job ID
Clear Memory & Buffer
Store PCX Graphics

SATO M-8400RV

Section 4. Programming Reference

Memory Card Function
Graphics, Custom Recall
Command Structure

GRaaa
aaa =

Graphics storage number (001-999)

Example:

GR111

Placement:

The Recall command is sent in a secondary data stream
to print the graphic, and follows any necessary position
or size commands.

Default:

None

Command Function

Use the Recall command any time you want to print a graphic image
on a label along with other printed data.

Printer Input

Non Rotated Graphic
Graphic Rotated 90°
ACC1
ACC1%1
V0100H0080L0505 V0180H0250L0505
GR001
GR001
Q1Z
Q1Z
Graphic Rotated 180°
Graphic Rotated 270°
ACC1%2
ACC1%3
V0180H0500L0505 V0100H0700L0505
GR001
GR001
Q1Z
Q1Z

Printer
Output

Special Notes

1. The graphic image to be stored cannot be rotated before it is
stored. It can be rotated when it is recalled.
2. Graphic images cannot be stored as part of a label format.
3. See the GI Custom Graphic Store command Page 4-90).

SATO M-8400RV

9001041 Rev. D

Page 4-89

Section 4. Programming Reference

Memory Card Function
Graphics, Custom Store
Command Structure

GIabbbcccddd{data}
a

=

bbb =
ccc =
ddd =
{data}=

Specifies character format of the data
H Hex data
B Binary data
Number of horizontal 8 x 8 blocks (001-248)
Number of vertical 8 x 8 blocks (001-267)
Graphics storage number (001-999)
Hex or binary data to describe the graphic image

Example:

See Appendix C for detailed information on creating Hex
and Binary graphic files.

Placement:

Immediately following the CC Slot Select
command.

Default:

None

Command Function

To provide similar functionality to the G Custom Graphic
command (see Page 4-43), but allows for the graphic image to be
stored in a Memory Card. Use the Store command to send the
graphic data to the printer, which is held in the optional memory card,
even if printer power is lost.

Printer Input

A
CC1GIH002002001
0100038007C00FE01FF03FF87FFCFFFE07C007C007C007C007C007C007C007C0
Z
Note: See Appendix C for detailed explanation on how to format a graphics data
stream.

Printer Output

There is no printer output as a result of this command. See
GR Recall Custom Graphics command.

Special Notes

1. You must have the optional Memory Card to use this command.
Call your SATO representative for details.
2. The maximum storage capacity is 999 graphics, up to the capacity
of the memory card used.
3. If a data transmission error occurs, the printer will beep and the
“ERROR” LED will come on. You must then retransmit the image.
See Appendix D for information on Memory Card error reporting.
4. Each graphic to be stored must be sent in its own data stream.

Page 4-90

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Example of correct data stream:
A
GIHaaabbb001(DATA)
Z
A
GIHaaabbb002(DATA)
Z
Example of incorrect data stream:
A
GIHaaabbb001(DATA)
GIHaaabbb002(DATA)
Z
5. Do not use ASCII  or  characters (carriage return or line
feed) as line delimiters within the graphic data or the actual image
will not be printed as specified.
6. The graphics storage number (ddd) must be specified with this
command.

SATO M-8400RV

9001041 Rev. D

Page 4-91

Section 4. Programming Reference

Memory Card Function
Graphics, PCX Recall
Command Structure

PYaaa
aa

=

Storage area number (001 thru 099)

Example:

PY001

Placement:

This command must be placed within its own data
stream specifying the placement of the graphic.

Default:

None

Command Function

To recall for printing a graphic file previously stored in a PCX format
in the Memory Card.

Printer Input

Normal Rotation
ACC1
V0100H0000PY001
Q1Z

Rotate Base Reference Point
ACC1%1
V0330H0180PY001
Q1Z

2nd Rotation, Base Reference Point
ACC1%2
V0330H0600PY001
Q1Z

3rd Rotation, Base Reference Point
ACC1%3
V0100H0800PY001
Q1Z

Printer Output

Special Notes:

1. This command requires Memory Card option. See your SATO
representative for details.
2. See the PI Store PCX Graphics command.

Page 4-92

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Memory Card Function
Graphics, PCX Store
Command Structure

PIaaa,bbbbb,{data}
aaa
bbbbb
{data}

=
=
=

Storage area number (001 thru 999)
Size of PCX file in bytes
Data

Example:

PI001,32000,{data}

Placement:

This command must be placed within its own data
stream

Default:

None

Command Function

To store for later printing a PCX graphic file in the Memory Card.

Printer Input

BASIC Program to Download a PCX file to Memory Card #1, Location
#1
OPEN “C:\WIZARD\GRAPHICS\LION.PCX” FOR INPUT AS #2
DA$ = INPUT$(3800,#2)
C$ = CHR$(27)
WIDTH “LPT1:”,255
LPRINT C$;"A";C$;"CC1";
LPRINT C$; “PI001,03800,”;DA$
LPRINT C$;"Z";
CLOSE #2

Printer Output

There is no printer output as a result of this command. See PY
PCX Graphics Recall command.

Special Notes:

1. This command requires Memory Card option. See your SATO
representative for details.
2. Graphics cannot be stored as part of a format.
3. Only black and white PCX files can be stored.
4. The file size specified by this command is the DOS file size in bytes.

SATO M-8400RV

9001041 Rev. D

Page 4-93

Section 4. Programming Reference

Memory Card Function
Initialize
Command Structure

BJFaaaaaaaa
aaaaaaa

=

Eight character alphanumeric user ID

Example:

BJFsatocard

Placement:

Immediately following the CC Slot Select
command.

Default:

None

Command Function

This clears all of the data from Memory Card in the specified slot and
prepares the card to accept data.

Input to Printer

A
CC2BJFsatocard
Z

Printer Output

There is no printer output as a result of this command.

Special Notes

1. You must have the optional memory card to use this command. Call
your local SATO representative for information.
2. All Memory Cards must be initialized before they can be used for
the first time.
3. Care should be exercised when using this command as it destroys
any data previously written to the card. It will clear all data from
the card and assign the new ID (“satocard” in the above example).

Page 4-94

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Memory Card Function
Slot Select
Command Structure

CCa
a

=

Memory Card Slot
1 Slot 1
2 Slot 2

Example:

CC1

Placement:

Immediately following the A Start Code.

Default:

Last selected Memory Card Slot.

Command Function

Selects the card slot to be used for following Memory Card
commands.

Printer Input

A
CC1
{commands}
Z

Printer Output

There is no printer output as a result of this command.

Special Notes

1. This command requires the Memory Card option. See your SATO
representative for more information.

SATO M-8400RV

9001041 Rev. D

Page 4-95

Section 4. Programming Reference

Memory Card Function
Status
Command Structure

BJS
Example:

BJS

Placement:

After the CC Slot Select command.

Default:

None

Command Function

Casues the printer to print the card status.

Printer Input

A
CC1BJS
Z

Printer Output

MEMORY CARD
Slot [ 1 ]

Special Notes

1. This command requires the Memory Card option. See your SATO
representative for more information
2. The following information is provided on the status label:
Line 1: Memory size of the card in Kbytes
Line 2: The ID number assigned with the BJF command
Line 3: Number of formats stored and bytes used
Line 4: Number of graphics stored and bytes used
Line 5: Number of PCX files and bytes used
Line 6: Number of TT fonts stored and bytes used
Line 7: Remaining free memory
Line 8: Max expandable print length using the card
Line 9: Battery check results

Page 4-96

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Custom Protocol Command Codes
Download
Command Structure

LD,a,b,c,d,e,f,g,h,i
a
b
c
d
e
f
g
h

=
=
=
=
=
=
=
=

i

=

Replacement character for STX in ASCII or hex format
Replacement character for ETX in ASCII or hex format
Replacement character for ESC in ASCII or hex format
Replacement character for ENQ in ASCII or hex format
Replacement character for CAN in ASCII or hex format
Replacement character for NULL in ASCII or hex format
Replacement character for OFFLINE in ASCII or hex format
Auto-Online. Printer powers up in the On Line mode.
0 = Yes
1 = No
Zero Slash. Places a slash through the “0” character.
0 = Yes
1 = No

Example:

LD,{,},%,#,&,*,~,0,0

Placement:

Immediately following the A Start command and in
an independent data stream.

Default:

Standard Protocol command Codes

Command Function

Allows the user to defines custom Protocol Command codes.

Printer Input

A
LD,{,},%,#,&,*,~,0,0
Z

Printer Output

A Protocol Command code status label will be printed as a result of
the a successful download of a custom set of Protocol Command
codes.

SATO M-8400RV

9001041 Rev. D

Page 4-97

Section 4. Programming Reference

STX = 7B
ETX = 7D
ENQ = 23 CAN = 26
OFFLINE = 7E
AUTO ONLINE =
ZERO SLASH =

ESC = 25
NULL = 2A
YES
YES

Press the “FEED” key to activate the User
Default or power the printer off to ignore
them.

Special Notes

1. Commas must be used to separate the parameters. If a parameter
is omitted between two commas, the default Non-Standard
Protocol Command codes for that parameter will be used. See
Appendix E.
2. This command must be sent as an independent data stream
immediately following the A Start code and immediately
preceding the Z Stop code. No other commands can be
included in the data stream.
3. If more or less than nine commas are included in the command, the
entire command sequence will be ignored. The command must
contain exactly nine commas.
4. If two characters are specified for a parameter, it will be interpreted
as a hex value. For example:
Command Parameter
2B
+

Resulting Command Code
+
+

If a combination of characters are outside the hexadecimal range,
the entire command sequence will be ignored.
5. Downloading Auto Online and Zero Slash settings will overwrite the
values selected using the LCD panel. If these settings are
changed using the LCD panel, they will overwrite any previously
downloaded settings.

Page 4-98

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Two-Dimensional Symbols
The following commands are used to create the two-dimensional symbologies
supported by the M-8400RV printers.

SATO M-8400RV

9001041 Rev. D

Page 4-99

Section 4. Programming Reference

Two-Dimensional Bar Codes
Data Matrix, Data Format
Command Structure

BXaabbccddeeefffghh
aa

=

bb

=

cc
dd
eee
fff
g

=
=
=
=
=

hh

=

Format ID. 01-06 or 11-16. The values 07 and 17
will not be accepted by the printer.
Error correction level. 00 ,01, 04-14 or 20. All other values
will be processed as a 00.
Horizontal cell size. 03 - 12 dots/cell.
Vertical cell size. 03 - 12 dots/cell.
Number of cells in one line. Must use 000 to optimize.
Number of cell lines. Must use 000 to optimize.
Mirror Image
0 = Normal Print
1 = Reverse Print
Guide Cell Thickness. 01-15. 01 indicates normal type.

Example:

BX03080505000000001

Placement:

Immediately preceding data to be encoded

Default:

None

Command Function

To designate the format for a Data Matrix two-dimensional bar code
image on a label.

Printer Input

A
%0V0100H0100BX05051010000000001
DCDATA MATRIX DATA MATRIX
Q1Z

Printer Output

There is no printer output as a result of this command. See the
DC Print Data command for printer output.

Special Notes

1. If any of the parameters entered are outside the valid range, a
symbol will not be printed when the DC Print Data
command is sent to the printer.
2. The number of cells per line (eee) and the number of cell lines (fff)
should be specified as all zeroes, allowing the printer to
automatically calculate the optimum configuration for the symbol.
3. The Reference Point for the Data Matrix symbol is the upper-left
corner. If an R Rotate command is used to rotate the
symbol, it will rotate in the counter-clockwise direction.

Page 4-100

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

4. The Format ID specified for “aa” is defined by the following table.
The printer only supports the Format ID’s defined in the table.
ID
NUMBER

CHARACTER SET

ENCODING
SCHEME

16 Bit CRC
01

Numeric, Space

Base 11

02

Upper Case Alpha, Space

Base 27

03

Upper Case Alpha, Space,Comma, Period,
Slash, Minus

Base 41

04

Upper Case Alphanumeric, Space

Base 37

05

ASCII 7-bit, Full Keyboard (20H -7FH)

ASCII

06

ISO 8-bit, International (20H -FFH)

8-Bit

32 Bit CRC
11

Numeric, Space

Base 11

12

Upper Case Alpha, Space

Base 27

13

Upper Case Alpha, Space, Comma, Period,
Slash, Minus

Base 41

14

Upper Case Alphanumeric, Space

Base 37

15

ASCII 7-bit, Full Keyboard (20H -7FH)

ASCII

16

ISO 8-bit, International (20H -FFH)

8-Bit

5. The maximum number of data characters that can be specified for
either the 16-Bit or 32-Bit CRC modes is 500.

SATO M-8400RV

9001041 Rev. D

Page 4-101

Section 4. Programming Reference

Two-Dimensional Bar Codes
Data Matrix, Print Data
Command Structure

DCxx...x
xx...x =

Data, maximum of 500 characters

Example:

DC00006000

Placement:

Immediately following the BC Data Format
designation command or the FX Sequential
Numbering command.

Default:

None

Command Function

To print a Data Matrix two-dimensional bar code image on a label.

Printer Input

A
%0V0100H0100BX05051010000000001
DCDATA MATRIX DATA MATRIX
Q1Z

Printer Output

Special Notes

1. The maximum amount of data that can be printed with this
command is 500 characters.
2. If an BX Data Format designation command contains any
parameters out of the valid range, no symbol will be printed when
this command is sent.

Page 4-102

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Two-Dimensional Bar Codes
Data Matrix, Sequential Numbering
Command Structure

FXaaabcccdddeee
aaa =
b
=

ccc =
ddd =
eee =

Number of duplicate labels to be printed (001 -999)
Increment or Decrement
+ = Increment
- = Decrement
Increment/Decrement Steps (001 - 999)
Sequential numbering start position (001 - 999)
Referenced to left side.
Incremented data length measured from start position
(001 - 999)

Placement:

Immediately following the BX Data Format
designation command and preceding the DC
Print Data Command.

Default:

None

Command Function

To print sequential numbered Data Matrix symbols.

Printer Input

A
V0100H0100
BX03081010000000001
FX002+001005003DC000060000
Q4Z

Printer Output

Label Set #1

SATO M-8400RV

9001041 Rev. D

Page 4-103

Section 4. Programming Reference

Label Set #2

1. The maximum number of FX Sequential Numbering
commands that can be used in one job is eight.
2. In the example above four total labels will be printed
(FX002+005003DC00006000), the sequential
numbering will start at position 5 and the three digits “600” will be
incremented in steps of 1. A total of two sets of labels will be
printed, the first set of two labels with the value “00006000” and
the next two label set with the value “00006010”.

1st Label
2nd Label

Label Set #1
00006000
00006000

3rd Label
4th Label

Label Set #2
00006010
00006010

3. The Q Label Quantity command must be set for the total
number of labels to be printed. In the above example, the value
for the Q command should be 2 sets x 2 labels/set = 4. If,
in the above example, it was set to a value of “1”, only the first
label would be printed.

Page 4-104

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Two-Dimensional Bar Codes
Maxicode
Command Structure

BVa,b,c,ddddddddd,eee,fff,gggg.....
a

=

b

=

c

=

ddd..ddd
eee =
fff
=
gg..g =

Position of Maxicode symbol within the set, when used
in a structured append format 1~8.
Total number of Maxicode symbols in the set, when used
in a structured format 1~8.
2 For Mode 2 Structured Carrier Message
for Domestic U.S. UPS shipments
3 For Mode 3 Structured Carrier Message
for International UPS shipments
4 Standard symbol
5 Not currently supported
6 Reader programming
9 digit numeric Postal Code
3 digit numeric Country Code
3 digit numeric Service Class
Data, terminated by 

Example:

BV1,2,3,123456789,222,333,MESSAGE

Placement:

Immediately preceding data to be encoded

Default:

None

Command Function

To print a Maxicode two-dimensional bar code image on a label. See
Appendix B for specific information on using each individual bar code
symbol.

Command Function

To print a UPS Maxicode symbol.
AV0100H0100
BV1,1,2,123456789,840,001,[)01961Z01547089UPSN
05687234999999999001/005029N
LENEXAKS
Q001Z

Printer Output

SATO M-8400RV

9001041 Rev. D

Page 4-105

Section 4. Programming Reference

Special Notes

1. The Secondary Message field (ee...e) must contain exactly 84
characters. If a smaller message is specified, the field must be
padded with “exclamation point” character(s).
2.  represents Hex 1E,  represents Hex 1D, 
represents Hex 04,  represents Hex 1B and 
represents Hex 20.

Page 4-106

9001041 Rev. D

SATO M-8400RV

Section 4. Programming Reference

Two-Dimensional Bar Codes
PDF417
Command Structure

BKaabbcddeeffffnn...n
aa

=

bb

=

c
dd

=
=

ee

=

ffff =
nn...n =

Minimum module dimension (03-09 dots). Will not print
if values of 01, 02 or greater than 10 are specified.
Minimum module pitch dimension (04-24 dots). Will not
print if values of 01, 02, 03 or greater than 25 are
specified.
Security (error detection) Level (1-8).
Code words per line (01-30). If 00 is specified for both
dd and ee, the printer automatically optimizes the number
of rows per symbol.
Rows per symbol (00 or 03-40). If 00 is specified for both
dd and ee, the printer automatically optimizes the number
of rows per symbol.
Number of characters to be encoded (0001-2700).
Data to be printed.

Example:

BK0304400000021

Placement:

Immediately preceding data to be encoded

Default:

None

Command Function

To print a PDF417 two-dimensional bar code image on a label.

Printer Input

A
V0100H0100BK0607400000021PDF417 PDF417 PDF417
Q1Z

Printer Output

Special Notes

SATO M-8400RV

1. When the code words per line and the number of rows per symbol
(“dd” and“ee”) are set to all zeroes, the printer will calculate the
optimum configuration.

9001041 Rev. D

Page 4-107

Section 4. Programming Reference

2. If the product of the values entered for “dd” and “ee” are not equal
to or less than the value of “fff” (i.e.,“ffff” is greater that “dd” x
“ee”), an error will occur and the symbol will not be printed. It is
recommended that these values each be set to “000” and the
printer be allowed to automatically calculate the optimum values.
3. The values for “dd” and “ee” need to be made larger if the security
level is increased.
4. The maximum data length is 2700 characters, but may be less
depending upon:
- the minimum module dimension (“aa”)
- the security level specified by “c”.
- the number of data characters
5. The Reference Point of the PDF417 symbol is the upper-left corner.
6. The F Sequential Numbering command cannot be used with
this command.
7. The E Line Feed command cannot be used with this
command.
8. The Macro and Truncated PDF417 symbols are not supported.
9. The values 00H thru 1FH can be specified as print data.
10. This command can be stored in a format.
11. The R Rotate command can be used.
12. The print height of the symbol will vary depending upon the data
specified; numeric only, alpha only or alphanumeric.

Page 4-108

9001041 Rev. D

SATO M-8400RV

SECTION 5.
INTERFACE SPECIFICATIONS
INTRODUCTION
This section presents the interface specifications for the M-8400RV printer. These
specifications include detailed information on how to properly interface your printer
with your host system.
The following information is presented in this section:
• Interface Types
• Using the Receive Buffer
• RS32C Serial Interface
General Specifications
Electrical Specifications
Pin Assignments
Ready/Busy Flow Control
X-On/X-Off Flow Control
Bi-Directional Communications Protocol
• Centronics Parallel Interface
• Accessory (EXT) Connector

INTERFACE TYPES
In order to provide flexibility in communicating with a variety of host computer
systems all M-8400RV printers can be configured for operation with either parallel or
serial data transfers. Both a parallel Centronics and a serial RS232 interface are
supplied with the standard printer.
The Centronics Parallel interface will probably be the most useful in communicating
with IBM PCs and compatibles. The RS232C Serial interface allows connectivity to a
number of other hosts. For instructions on how to properly configure your M-8400RV
printer for either of these interface types, see the Printer Configuration instructions in
Section 2 of this manual.

NOTE: Both the Centronics and RS232C interfaces are active at the same time, i.e.
data can be received on either one, however no provision is made for port
contention. If data is transmitted to both ports simultaneously, it will cause the data
in the receive buffer to be corrupted.
WARNING: Never connect or disconnect interface cables (or use a switch box) with
power applied to either the host or the printer. This may cause damage to the
interface circuitry in the printer/host and is not covered by warranty.

SATO M-8400RV

9001041 Rev. D

Page 5-1

Section 5. Interface Specifications

THE RECEIVE BUFFER
The M-8400RV printer have the ability to receive a data stream from the host in one
of two ways. The receive buffer may be configured to accept one print job at a time or
multiple print jobs. The single job print buffer is generally used by software programs
that wish to maintain control of the job print queue so that it can move a high priority
job in front of ones of lesser importance. The multiple job buffer, on the other hand
prints all jobs in the order they are received by the printer, and the order of printing
cannot be changed.
Single Job Buffer
The printer receives and prints one job at a time. Each job must not exceed 64K bytes.
Multi Job Buffer
The printer is able to continuously receive print jobs, compiling and printing other
jobs at the same time. It acts much like a “print buffer” to maximize the performance
of the host and the printer.

0

62K

64K

DTR High
or
X-On
Buffer Near Full

DTR Low
or
X-Off

When using the RS232 Serial interface, the Multi Job Buffer uses either the
Ready/Busy with DTR (pin 20) or X-On/X-Off flow control protocols. See these
sections for more details. With an empty receiving buffer, the status of DTR is “high”
(or an X-On status if using X-On/X-Off), meaning the printer is ready to receive
data. When the receive buffer is holding 62K bytes of data (2K bytes from being full),
DTR will go “low” (or an X-Off is sent) indicating the printer can no longer receive
data. This condition is called “Buffer Near Full” (see figure below).

0

DTR Low
or
X-Off

SATO M-8400RV

56K

64K

DTR High
or
X-On
Buffer Available

9001041 Rev. D

Page 5-2

Section 5. Interface Specifications

The receiving buffer will not be able to receive more data again until a “Buffer
Available” condition occurs. This takes place when the receiving buffer has emptied
so that only 56K bytes of data are being held (8K bytes from being full). At this time,
DTR will go “high” or an X-On is sent to tell the host that it can again receive data.
All printer error conditions (i.e., label out, ribbon out) will cause the printer to go
busy (DTR “low” or X-Off) until the problem is corrected and the printer is placed
on-line. The printer will also be busy if taken off-line from the front panel.

RS232C SERIAL INTERFACE
GENERAL SPECIFICATIONS
Asynchronous ASCII

Half-duplex communication
Ready/Busy Hardware Flow Control
Pin 20, DTR Control
Pin 4, RTS Error Condition
X-On/X-Off Software Flow Control
Bi-Directional Communication (ENQ/Response)

Data Transmission Rate

2400, 4800, 9600 and 19200 bps

Character Format

1 Start Bit (fixed)
7 or 8 data bits (selectable)
Odd, Even or No Parity (selectable)
1 or 2 Stop bits (selectable)

ELECTRICAL SPECIFICATIONS
Connector

DB-25S (Female)

Pin 1

Pin 13

Pin 25

Pin 14

Cable

DB-25P (Male), 50 ft. maximum length. For cable
configuration, refer to Cable Requirements appropriate
to the RS232C protocol chosen.

Signal Levels

High = +5V to +12V
Low = -5V to -12V

SATO M-8400RV

9001041 Rev. D

Page 5-3

Section 5. Interface Specifications

PIN ASSIGNMENTS

RS232C Interface Signals
PIN

DIRECTION

SIGNAL DEFINITION

1

Reference

2

To Host

TD (Transmit Data) - Data from the printer to the host computer.
Sends X-On/X-Off characters or status data (Bi-Directional
protocol).

3

To Printer

RD (Receive Data) - Data to the printer from the host computer.

4

To Host

RTS (Request to Send) - Used with Ready/Busy flow control to
indicate an error condition. RTS is high and remains high unless
the print head is open (in this case, RTS would return to the high
state after the print head is closed and the printer is placed back
on-line) or an error condition occurs during printing (e.g., ribbon
out, label out).

5

To Printer

CTS (Clear to Send) - When this line is high, the printer assumes
that data is ready to be transmitted. The printer will not receive
data when this line is low. If this line is not being used, it should be
tied high (to pin 4).

6

To Printer

DSR (Data Set Ready) - When this line is high, the printer will be
ready to receive data. This line must be high before data is
transmitted. If this line is not being used, it should be tied high (to
pin 20).

7

Reference

SG (Signal Ground)

20

To Host

FG (Frame Ground)

DTR (Data Terminal Ready) - This signal applies to Ready/Busy
flow control. The printer is ready to receive data when this pin is
high. It goes low when the printer is off-line, either manually or due
to an error condition, and while printing in the Single Job Buffer
mode. It will also go low when the data in the buffer reaches the
Buffer Near Full level.

READY/BUSY FLOW CONTROL
Ready/Busy is the hardware flow control for the serial interface on the M-8400RV
printer. By raising/lowering the voltage level on Pin 20 of the RS232 port, the printer
notifies the host when it is ready to receive data. Pin 4 (RTS) and pin 20 (DTR) are
the important signals on the printer for this method of flow control. The host must be
capable of supporting this flow control method for it to function properly.

SATO M-8400RV

9001041 Rev. D

Page 5-4

Section 5. Interface Specifications

Cable Requirements
HOST
FG
TD

INTERCONNECTION

PRINTER

←→

1

FG (Frame Ground)

→

3

RD (Receive Data)



4

RTS (Request to Send)



5

CTS (Clear to Send)



6

DSR (Data Set Ready)

*

←

20 DTR (Data Terminal Ready)

SG

←→

7

SG (Signal Ground)

* This connection at the host side of the interface would depend upon the pin that is being used as the Ready/Busy
signal by the driving software. Typically, on a PC, it would be either CTS (pin 5) or DSR (pin 6) on a DB-25 connector.

Data Streams
Once the flow control method has been chosen for the RS232C interface, the data
stream must be sent in a specific manner. The STX and ETX control characters must
frame the data stream.
A . . Job#1 . . ZA . . Job#n . . Z

NOTE: All characters, including STX, ESC and ETX are in ASCII.
X-On/X-Off FLOW CONTROL
X-On/X-Off flow control must be used whenever hardware (Ready/Busy) flow
control is not available or desirable. Instead of a voltage going high/low at pin 20,
control characters representing “Printer Ready” (X-On =11 hexadecimal) or “Printer
Busy” (X-Off = 13 hexadecimal) are transmitted by the printer on pin 2 (Transmit
Data) to the host. In order for this method of flow control to function correctly, the
host must be capable of supporting it. X-On/X-Off operates in a manner similar to
the function of pin 20 (DTR) as previously explained. When the printer is first
powered on and goes on-line, an X-On is sent out. In the Single Job Buffer mode,
when the printer receives a viable job, it transmits an X-Off and begins printing.
When it is done printing, it transmits an X-On. In the Multi Job Buffer mode, the
printer sends an X-Off when the “Buffer Near Full” level is reached and a X-On
when the data level of the buffer drops below the “Buffer Available” mark. When the
printer is taken off-line manually, it transmits an X-Off indicating it cannot accept
data. When it is placed back on line manually, it sends an X-On, indicating it is again
available for receipt of data. If an error occurs during printing (paper out, ribbon
out), the printer sends nothing in the Single Job Buffer mode since the last character
transmitted was an X-Off. When the error is cleared and the printer resumes
printing, no X-On is sent until the current job is completed and the printer is once
again ready to receive the next job. If it is in the Multi Job Buffer mode, it sends an
X-Off as soon as an error condition is detected. When the error is cleared and the
printer is placed back on-line, it transmits an X-On indicating it is again ready to
accept data.
Upon power up if no error conditions are present, the printer will continually send XOn characters at five millisecond intervals until it receives a transmission from the
host.

SATO M-8400RV

9001041 Rev. D

Page 5-5

Section 5. Interface Specifications

Cable Requirements
HOST

INTERCONNECTION

PRINTER

FG

←→

1

FG (Frame Ground)

RD

←

2

TD (Transmit Data)

TD

→

3

RD (Receive Data)



4

RTS (Request to Send)



5

CTS (Clear to Send)



6

DSR (Data Set Ready)



20 DTR (Data Terminal Ready)

SG

←→

7

SG (Signal Ground)

Data Streams
The data streams for X-On/X-Off are constructed in the same way as they are for
Ready/Busy flow control. The STX and ETX control characters must frame the data
stream. (NOTE: All characters, including STX, ESC and ETX are in ASCII).
A . . Job#1 . . ZA . . Job#n . . Z
Example: A . . Job#1 . . ZXXXXX

BI-DIRECTIONAL COMMUNICATIONS
This is a two-way communications protocol between the host computer and the
printer, thus enabling the host to check printer status. When this protocol is selected,
there is no busy signal from the printer (pin 20, DTR, is always high). The host must
request the complete status from the printer, including ready/busy. Whenever the
host requests printer status, it transmits an ENQ to the printer and the printer will
respond with its status within five milliseconds. If printing, it will respond upon
finishing the current label, then resume printing. In order for this protocol to work
properly, pin 6 (DTR) and pin 5 (CTS) must be held high by the host. One way to
ensure these pins are always in the correct state is to tie pin 20 (DTR) to pin 6
(DSR) and pin 4 (RTS) to pin 5 (CTS) at the printer end of the cable.
Cable Requirements
HOST

INTERCONNECTION

PRINTER

FG

←→

1

FG (Frame Ground)

RD

←

2

TD (Transmit Data)

TD

→

3

RD (Receive Data)



4

RTS (Request to Send)



5

CTS (Clear to Send)



6

DSR (Data Set Ready)



20 DTR (Data Terminal Ready)

SG

SATO M-8400RV

←→

7

SG (Signal Ground)

9001041 Rev. D

Page 5-6

Section 5. Interface Specifications

If a CAN (18 hexadecimal) is received by the printer, it will cancel the current print
job and clear all data from the receive buffer.
Status Response
The Bi-Com protocol is an advanced version of bi-directional communications where
the printer can also report the number of labels remaining to be printed for the
current print job. Upon receipt of an ENQ command, the printer responds with nine
bytes of status information bounded by an STX/ETX pair. The Bi-Com protocol
works only in the Multi Job Buffer mode. The status information is defined as follows:
{ 2 Byte ID}{1 Status Byte}{6 Byte Label Remaining}

ID - This is a two byte number identifying the current print job ID. The print
job ID is defined using the ID Job ID command transmitted with the
print job (see Job ID Store in the command listing for more information on
how to use this command). The range is from 00 to 99.
Status - A single byte defining the current status of the printer.(see the
Status Byte Definition table on Page 5-8).
Label Remaining - Six bytes defining the number of labels remaining in the
current print job. The range is from 000000 to 999999 labels.
If an ENQ is received after the print job specified in the ID bytes has been completed,
or there is no data in the buffer, the printer will respond with two “space” characters
(20 hexadecimal) for the ID number and six “zero” characters (30 hexadecimal) in
the Remaining Labels bytes.
If a CAN (18 hexadecimal) command is received , it will stop the print job and clear
all data from the receive and print buffers. A delay of five milliseconds or more is
required before any new data can be downloaded. The CAN command is effective
immediately upon receipt, even if the printer is off-line or in an error condition. The
printer will return an ACK (06 hexadecimal) if there is no printer error condition and
a NAK (15 hexadecimal) if an error condition exists.
Upon receipt of a valid print job (A . . . Z), and ACK (06
hexadecimal) will be returned by the printer if there are no errors and a NAK (16
hexadecimal) if a printer error exists.

SATO M-8400RV

9001041 Rev. D

Page 5-7

Section 5. Interface Specifications

Status Byte Definition, Bi-Com Protocol
ASCII

HEX

DEFINITION
OFF-LINE

0

30

No Errors

1

31

Ribbon Near End

2

32

Buffer Near Full

3

33

Ribbon Near End and Buffer Near Full
ON-LINE, WAITING FOR DATA

A

41

No Errors

B

42

Ribbon Near End

C

43

Buffer Near Full

D

44

Ribbon Near End and Buffer Near Full
ON-LINE, PRINTING

G

47

No Errors

H

48

Ribbon Near End

I

49

Buffer Near Full

J

4A

Ribbon Near End and Buffer Near Full
ON-LINE, WAITING TO DISPENSE A LABEL

M

4D

No Errors

N

4E

Ribbon Near End

O

4F

Buffer Near Full

P

50

Ribbon Near End and Buffer Near Full
ON-LINE, COMPILING PRINT JOB

S

53

No Errors

T

54

Ribbon Near End

U

55

Buffer Near Full

V

56

Ribbon Near End and Buffer Near Full
OFF-LINE, ERROR CONDITION

a

61

Receive Buffer Full

b

62

Head Open

c

63

Paper End

d

64

Ribbon End

e

65

Media Error

f

66

Sensor Error

g

67

Head Error

h

68

reserved

i

69

Memory Card Error

j

6A

Cutter Error

k

6B

Other Error Condition

SATO M-8400RV

9001041 Rev. D

Page 5-8

Section 5. Interface Specifications

CENTRONICS PARALLEL INTERFACE
ELECTRICAL SPECIFICATIONS
Printer Connector

AMP 57-40360 (DDK) or equivalent

Cable Connector

AMP 57-30360 (DDK) or equivalent

Cable Length

10 ft. or less

Signal Level

High = +2.4V to +5.0V
Low = 0V to -0.4V

DATA STREAMS
Single Job Buffer: The Single Job Buffer mode is not available when using the
Centronics interface.
Multi Job Buffer:

A . . Job#1 . . Z
A . . Job#n . . Z

Note that for parallel communications, the STX and ETX characters are not required .

Centronics Parallel Interface Pin Assignments
PIN

SIGNAL

DIRECTION

PIN

SIGNAL

DIRECTION

1

STROBE

To Printer

19

STROBE
Return

Reference

2

DATA 1

To Printer

20

DATA 1 Return

Reference

3

DATA 2

To Printer

21

DATA 2 Return

Reference

4

DATA 3

To Printer

22

DATA 3 Return

Reference

5

DATA 4

To Printer

23

DATA 4 Return

Reference

6

DATA 5

To Printer

24

DATA 5 Return

Reference

7

DATA 6

To Printer

25

DATA 6 Return

Reference

8

DATA 7

To Printer

26

DATA 7 Return

Reference

9

DATA 8

To Printer

27

DATA 8 Return

Reference

10

ACK

To Host

28

ACK Return

Reference

11

BUSY

To Host

29

BUSY Return

Reference

12

PTR ERROR

To Host

30

PE Return

Reference

13

SELECT

To Host

31
FAULT

To Host

14

32

15

33

16

34

17

FG

18

+5V (Z=24K ohm)

SATO M-8400RV

Frame Ground

35
36

9001041 Rev. D

Page 5-9

Section 5. Interface Specifications

ACCESSORY (EXT) CONNECTOR
The Accessory (or EXT) connector on the M-8400RV printer rear panel is intended for
use with the external printer accessories such as label rewinders or applicators. The
14-pin Centronics type connector provides a choice of four different output signals
along with various error conditions.
PIN ASSIGNMENTS
PIN

DIRECTION

SIGNAL DESCRIPTION

1

To Host

Label Out - This pin goes low (0V) when a label out error exists.

2

Reference

Signal Ground

3

To Host

Ribbon Out - This pin goes low when the ribbon is out.

4

To Host

Error - This pin goes low when the printer detects an error
condition such as head open or receiving buffer full.

5

To Printer

Print Start - The printer will print one label when this pin is pulled
to ground. This signal must be enabled by placing switch
DSW3-5 on the Control Panel in the ON position.

6

To Host

End Print - It is used to drive an applicator or other external
device requiring synchronization with the print cycle. You may
choose between four types of output signals using control panel
DSW3-6 and DSW3-7 selections.

7

To Printer

Print Repeat - The printer repeatedly prints the current label in
the print buffer immediately after receiving this signal.

10

To Host

+12V - Used to power accessory items.

12

To Host

+24V - Used to power accessory items

13

To Host

Vcc - +5V

14

Reference

Frame Ground

NOTE: The signals on pins 1, 3, 4 and 6 each have an open collector output. These pins normally measure +.07V
maximum when a true condition exists. If a false condition occurs, the voltage will drop to 0V. To achieve a signal
level of +5V, you must add a 1K ohm, 1/4W pull-up resistor between the open collector output pin and Vcc (pin 13) as
illustrated . This will provide a signal level of +5V for a true condition and 0V when a false condition exists. The maximum voltage that can be applied to these pins is +50V and the maximum current they can sink is 500 milliamps.

Pin 13
Vcc= +5V

1 K ohm, 1/4W

Signal Out
Pin 1, 3, 4 or 6

SATO M-8400RV

9001041 Rev. D

Page 5-10

Section 5. Interface Specifications

EXTERNAL OUTPUT SIGNAL TYPES

TYPE 1

+5V
0V
20 milliseconds

TYPE 2

+5V
0V

TYPE 3

TYPE 4

+5V
0V
+5V
0V
Start Print.
(Label
Feed Start)

SATO M-8400RV

9001041 Rev. D

End Print
(Label
Feed Stop)

Page 5-11

Section 5. Interface Specifications

This page left blank intentionally.

SATO M-8400RV

9001041 Rev. D

Page 5-12

SECTION 6.
TROUBLESHOOTING

This section has been devised to help you if you are unable to produce output on the
M-8400RV. Use this section to make sure the basics have been checked before
deciding you are unable to proceed any further. The section is divided into three
parts:
• Initial Checklist
• Centronics Parallel Interface
• RS232C Serial Interface

INITIAL CHECKLIST
1. Is the printer powered up and On-Line?
2. Do any of the Front Panel LEDs indicate an error condition? If this light is
ON, it may mean the print head assembly is open.
3. Is the Print Head and the Label Hold-Down in the down and latched
position.

USING THE CENTRONICS (PARALLEL) INTERFACE
1. Is the IBM parallel printer cable connected securely to your parallel port
(DB-25S Female) on the PC and to the Centronics connector on the
printer?
WARNING: Never connect or disconnect interface cables (or use a switch box)
with power applied to either the printer or the host. This may cause damage
to the interface circuitry and is not covered by warranty.
2. Is there more than one parallel interface port on your PC (LPT1, LPT2,
etc.)? If so, make sure you are sending data out the correct port.
3. When you send the print job to the printer, and it does not respond, do you
get an error message on your PC that says “Device Fault” or something
similar?
This may mean that the computer doesn’t know the printer is there. Verify
that:
a. Both ends of the cable are securely inserted into their respective connectors.
b. The printer is On-Line.

SATO M-8400RV

9001041 Rev. D

Page 6-1

Section 6. Troubleshooting

c. The cable is not defective. There are other things that can cause this error
message on your computer, but at this stage, a defective cable may be one
of the reasons.
4. When you send the print job to the printer and it does not respond, and
there is no error message on the PC:
a. Check your data stream for some of the basics. Is your job framed as
follows?
A—DATA—Z
b. Verify that you’ve included all required parameters in the data stream.
c. Verify the following:
• You have not typed a “0” (zero) for an “O” (letter) or vice-versa.
• You have not missed any  characters where they’re needed.
• Make sure all printer command codes are capital letters.
• Your protocol codes are set for Standard or Non-Standard and
your data stream is consistent with these.
5. If you’ve checked all of the above and the printer still isn’t printing, you may
want to try a Receive Buffer Hex Dump to determine what (if anything)
the printer is receiving from your computer. See Hex Dump Diagnostic
Labels, Page 2-35.
The Centronics port is now listening for incoming data. Send your print job.
The printer will now print (only once) a Hexadecimal (Hex) Dump of
everything it received from the host computer. Each 2-digit hexadecimal
character represents a character the printer received. It may be tedious,
but now you can analyze and troubleshoot the data stream.
6. While checking the Hex Dump printout, if you notice 0D 0A (Carriage
Return and Line Feed) characters throughout. The command string should
be continuous and not CR or LF characters are allowed between the Start
Command (A) and the Stop Command (Z). If you are
using BASIC, it may be adding these characters automatically as the line
wraps. Adding a “width” statement to your program can help to suppress
these extra 0D 0A characters by expanding the line length up to 255
characters. See the beginning of Section 4:Programming Reference for
details on writing a program in BASIC.
If you’re not programming in BASIC, check to see if you have an equivalent
statement in the language you’re using to suppress extra carriage returns
and line feeds from your data being sent out to the printer. We want the
data stream to be one complete line going to the printer.

Page 6-2

9001041 Rev. D

SATO M-8400RV

Section 6. Troubleshooting

USING THE RS232C (SERIAL) INTERFACE
1. Is the RS232C Serial cable connected securely to your serial port on the PC
(DB- 25S Male) and to the RS232C connector on the printer?
WARNING: Never connect or disconnect interface cables (or use a switch box)
with power applied to either the printer or the host. This may cause damage
to the interface circuitry and is not covered by warranty.
2. Is the cable defective? At the very least, you should be using a “Null Modem
Cable,” which crosses pins in a specific manner. This should enable your
printer to print. But we recommend that you eventually use a cable built
to specifications as described in Section 5: Interface Specifications.
3. Check for obvious errors in the data stream. Remember that all print jobs
for serial data must be framed by an STX and ETX. Again, see Section 5 if
necessary.
4. If after sending your job to the printer, it only “beeps” (or displays a
Framing Error message on the LCD panel) indicating a “framing error”
message, you may have a configuration problem. There may be some
inconsistencies with the Baud Rate, Parity, Data Bits, or Stop Bits in
relation to your host computer. If you are confused as to what the printer’s
current RS232 settings are, you may choose the SATO defaults (all DIP
switches in the OFF position) to achieve 9600 baud, no parity, 8 databits,
and 1 stop bit.
5. If you still are unable to get printer output, try the Hex Dump as described
in Step 5 under the Centronics Interface troubleshooting. In this case, the
printer monitors its RS232C interface for incoming data.
6. From the Hex Dump, if you are seeing extra 0D 0A (CR and LF) characters,
and are using BASIC, refer to the beginning of the Command Code
section. It provides hints for writing a SATO program in BASIC.

SATO M-8400RV

9001041 Rev. D

Page 6-3

Section 6. Troubleshooting

ERROR SIGNALS

LED

LCD
MESSAGE

AUDIBLE
BEEP

ERROR CONDITION

TO CLEAR

Error On

Machine Error

1 Long

Machine Error

Cycle power on/off

Error On

EEPROM Error

1 Long

EEPROM Read/Write

Cycle power on/off

Error On

Head Error

1 Long

Head

Cycle power on/off

Error On

Sensor Error

3 Short

Sensor

Cycle power on/off

Error Blinks

Card R/W Error

1 Long

Memory Card Read/Write

Cycle power on/off

Error Blinks

Card Low Battery

1 Long

Memory Card Battery Low

Cycle power on/off

Error Blinks

Head Open

3 Short

Head Open

Close head lever

Error Blinks

Cutter Error

3 Short

Cutter

Cycle power on/off

Error On
Line Blinks

PARITY ERROR

3 Short

RS232 Parity Error

Cycle power on/off

Error On
Line Blinks

Overrun Error

3 Short

RS232 Overrun Error

Cycle power on/off

Error On
Line Blinks

Framing Error

3 Short

RS232 Framing Error

Cycle power on/off

Error On
Line Blinks

Buffer Over

3 Short

Buffer Overflow

Cycle power on/off

Error Blinks
Label On

Paper End

3 Short

Label End

Open/close Head Lever
Open/close Label Holddown

Error Blinks
Ribbon On

Ribbon End

3 Short

Ribbon End

Open/close Head Lever
Open/close Label Holddown

Error Blinks
Label Blinks

Media Error

3 Short

Media Error

Open/close Head Lever

Ribbon Blinks

None

Ribbon Near End

Replace ribbon with full roll

Line Blinks

None

Buffer Near Full

Slow down transmission
rate

Page 6-4

9001041 Rev. D

SATO M-8400RV

APPENDIX A.
COMMAND CODE QUICK REFERENCE
INSTRUCTION

DESCRIPTION

PAGE

A

Start Code. Begins all print jobs.

Page 4-74

A(space)Z

Form Feed. Feeds a blank tag or label.

Page 4-40

AR

Normal Print Length. This command resets the printer to the
Standard print length (7 inches).

Page 4-57

AX

Expanded Print Length. This command sets the printer to the
Expanded print length (14 inches). This command does not work with
the CL612.

Page 4-57

A3H-aaaa
Vbbbb

Base Reference Point. Establishes a new base reference point
position in dots for the current label. Units of measurement are dots.
- = Optional character. If included, will shift reference point in
negative direction.

Page 4-19

M-8400RV
aaaa = Horizontal Print Offset
bbbb = Vertical Print Offset

Babbcccd

SATO M-8400RV

+/-0832
0001-1424

Bar Codes. Prints a 1:3 ratio bar code.
a=
0 Codabar
1 Code 39
2 Interleaved 2 of 5 (I 2/5)
3
UPC-A/EAN-13
4 EAN-8
5 Industrial 2 of 5
6 Matrix 2 of 5
7 reserved
8 reserved
9 Code 128
A MSI
B reserved
C Code 93
D reserved
E UPC-E
F Bookland
G Code 128
I
UCC 128
bb
= Number of dots (01-12) for narrow bar and narrow space
ccc = Bar height in dots (001-600)
d
= UCC 128 only
0 No human readable text
1 Human readable at top
2 Human readable at bottom
9001041 Rev. D

Page 4-11

Page A-1

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

PAGE

BDabbcccd

Bar Codes. Prints a 2:5 ratio bar code, except for UPC, EAN, Code
93, Code 128 and UCC128 symbols, which are fixed width bar codes.
For values a, bb, ccc and d see instructions for Babbcccd.

Page 4-11

For UPC/EAN bar codes, this command puts descender bars and
humand readable text below the symbol.
BKaabbcdd
eeefffnn...n

PDF417. Prints PDF417 2-D symbols.
Page 4-107
aa
= Minimum module dimension (03-09 dots). Will not print
for values of 01, 02 or ≥ 10.
bb
= Minimum module pitch dimension (04-240 dots). Will not
print for values of 01, 02, 03 or greater than 25.
c
= Security level (1-8).
dd
= Code words per line (01-30). If 00 is specified for dd and ee, printer
will automatically optimize settings.
ee
= Rows/symbol (00 or 03). If 00 is specified for dd and ee, printer will
automatically optimize settings.
fff
= Number of characters to be encoded (0001-2700)
nn...n = Data to be printed.

BPn...n

Postnet. Prints Postnet bar codes.
n...n = 5 digit ZIP (Postnet-32 format)
6 digits (Postnet-37 format)
9 digit ZIP+4 (Postnet -52 format)
11 digit ZIP+4+DPC (Postnet-62, Delivery Point format).

Page 4-55

BTabbccddee

Bar Codes. Variable Ratio. provides the ability to print a bar code with
a ratio other than those specified through the standard bar code
commands (B, BD, and D).
a
= Bar code option:
0 Codabar
1 Code 39
2 Interleaved 2 of 5
5 Industrial 2 of 5
6 Matrix 2 of 5
bb
=
Narrow space in dots (01-99)
cc
= Wide space in dots (01-99)
dd = Narrow bar in dots (01-99)
ee
= Wide bar in dots (01-99)

Page 4-17

BVa,b,c,
ddddddddd,
eee,f f f,gg..g

Maxicode. Prints 2-D Maxicode symbols per AIM I.S.S. specification.
a
= Position of symbol within the set
b
= Total number of symbols in the set
c
= Mode
dd..d = 9 digit numeric Postal Code
eee = 3 digit numeric Country Code
f f f = 3 digit numeric Service Class
gg..g = Data, terminated by 

Page 4-105

Page A-2

9001041 Rev. D

SATO M-8400RV

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

BWaabbb

Bar Codes. Expansion. Works together with the BT command to
specify an expansion factor and the bar code height for the particular
symbol being printed.
aa
= Expansion factor by which the width of all bars and spaces
is increased (01-12)
bbb = Bar height by dot (004-600 dots)

BXaabbccdd
eeefffghh

Data Matrix. Data Format. Specifies the format of the Data Matrix 2-D Page 4-100
symbology.
aa
= Format ID (01-16, The values 07 and 17 will not be accepted)
bb
= Error correction level (00, 01, or 04-14, the values 02, 03 or ≥ 15
will not be accepted).
cc
= Horizontal cell size (03-12 dots/cell)
dd
= Vertical cell size (03-12 dots per cell)
eee = Cells per line. Must use 000 for optimized symbol.
fff
= Cell lines. Must use 000 to optimize.
g
= Mirror image
0 Normal Print
1 Reverse Print
hh
= Guide cell thickness (01-15) 01 indicates normal type.

C

Repeat Label. Prints a duplicate of the last label printed.

Page 4-63

CSa

Print Speed Selection. Specifies a unique print speed in in./sec.
through software for a particular label.

Page 4-62

a = Speed Setting

PAGE

DSW2-8 Off

DSW2-8 On

1 = 2 ips
2= 4 ips
3 = 6ips
4= 8 ips
5 =10 ips

1 = 2 ips
2 = 3 ips
3 = 4 ips
4 = 5 ips

Page 4-16

Dabbcccd

Bar Codes. Prints 1:2 ratio bar code. For UPC and EAN bar codes,
this will add descender bars. For values a, bb, ccc and d see
instructions for Babbcccd.

Page 4-11

DCxx...x

Data Matrix. Print Data. Prints data using Data Matrix format specified
in BX Data Format command.
xx...x = Data to be printed. Cannot exceed 500 characters.

Page 4-102

Eaaa

Line Feed. Provides the ability to print multiple lines of the same
character size without specifying a new print position for each line.
aaa = Number of dots (1-999) between the bottom of the
characters on one line to the top of the characters on the
next line.

Page 4-50

SATO M-8400RV

9001041 Rev. D

Page A-3

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

PAGE

Faaaabcccc
ddee

Sequential Numbering. Allows the printing of sequencing fields (text,
Page 4-72
bar codes) where all incrementing is done within the printer.
aaaa = Number of times to repeat the same data (0001-9999)
b
= Plus or minus symbol (+ for increments; - for decrements)
cccc = Value of step for sequence (001-9999)
dd
= No. of digits for sequential numbering (01-99, default = 8)
ee
= No. of digits free from sequential numbering (01-99, default = 0)

FWaaHbbbb

Horizontal Line. Prints a horizontal line. Units of measurement are
dots.

Page 4-48

M-8400RV
aa = Width of Horizontal Line
bbbb = Length of Horizontal Line

FWaabbVccc
Hdddd

01 to 99
0001-0832

Box. Prints a box. For values aa, bbbb, cc, and dddd, see instructions
for horizontal and vertical lines. Units of measurement are dots.

Page 4-48

M-8400RV

FWccVddd

aa = Width of Horizontal Side

01 to 99

bb = Width of Vertical Side

01 to 99

cccc = Length of Vertical Side

0001-1424

dddd = Length of Horizontal Side

0001-0832

Vertical Line. Prints a vertical line. Units of measurement are dots.

Page 4-48

M-8400RV
cc = Width of Vertical Line

01 to 99

dddd = Length of Vertical Line

FXaaabccc
dddeee

Page A-4

0001-1424

Data Matrix. Sequential Numbering. Prints sequential numbered
Data Matrix 2-D symbols.
aaa = Number of duplicate labels (001-999)
b
= Increment or decrement
+ Increment
- Decrement
ccc = Increment/decrement steps (001-999)
ddd = Sequential numbering start position (001-999). Referenced
to left side.
eee = Incremented data length (001-999). Measured from start
position.

9001041 Rev. D

Page 4-103

SATO M-8400RV

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

PAGE

Gabbbccc(data) Custom Graphics. Allows the creation and printing of graphic images
using a dot-addressable matrix.
a
= Specifies format of data stream to follow
B Binary
H Hexadecimal
bbb = Number of horizontal 8 x 8 blocks (001-152)
ccc = Number of vertical 8 x 8 blocks
(001-178 or 001-356 for 14" label)
data = Data to describe the graphic image

Page 4-43

GPaaaaa

PCX File. Downloads PCX file to the internal graphics image memory.
Page 4-45
aaaaa = No. of bytes to be downloaded (max DOS file size = 32K)

Haaaa

Horizontal Position. Specifies a field’s horizontal location across the
width of the label from the current base reference point. The units of
measurement are dots.

Page 4-59

M-8400RV
aaaa = New Horizontal Position

0001-0832

IDaa

Store Job ID. Stores the Job ID number.
aa
= Job ID number assigned (01-99)

Page 4-46

J

Journal Print. Provides the ability to print text line by line. Fixed
spacing between lines and characters.

Page 4-47

Kab90cc

Recall Custom Designed Characters. Recalls for printing a custom
character stored by the Tabcc(data) command.
a
= 1 16 x 16 matrix
2 24 x 24 matrix
b
= Indicates the format that data stream was stored in
B Binary
H Hexadecimal
bb
= Memory location where the character was stored.
Valid locations are 21 to 52 or “!” to “R” in hex values.

Page 4-21

Laabb

Character Expansion. Expands characters in both directions.
aa
= Multiple to expand horizontally (01-12)
bb
= Multiple to expand vertically (01-12)

Page 4-23

LD,a,b,c,d,e,f,g,i Download Protocol Command Codes. Downloads a user defined set
of Alternate Protocol Command Codes. See Appendix E for details on
the proper usage of this command.

Page 4-97

M

Font type. Specifies the 13W x 20H dot matrix font (including
descenders).

Page 4-34

N

Rotate. Moving Base Reference Point. Sets the original base
reference point and returns printing to normal orientation.

Page 4-70

SATO M-8400RV

9001041 Rev. D

Page A-5

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

PAGE

OA

Font type. Specifies the OCR-A font with dot matrix.

Page 4-34

M-8400RV
OA Font Matrix

OB

15W x 22H

Font type. Specifies the OCR-B font dot matrix.

Page 4-34

M-8400RV
OB Font Matrix

20 W x 24H

Paa

Character Pitch. Designates the number of dots between characters.
aa = Number of dots between characters (01-99)

Page 4-26

PR

Fixed Font Spacing. Returns the printer to fixed character spacing
mode.

Page 4-25

PS

Proportional Font Spacing. Places the printer in the proportional
character spacing mode. Will not work with U Font.

Page 4-28

Qaaaaaa

Print Quantity. Specifies the total number of labels to print.
aaaaaa = Total number of labels to print for the job
(000001-999999)

Page 4-61

R

Rotate, Moving Base Reference Point. Rotates the printing of all
subsequent images by 90 degrees counterclockwise each time it is
used. Also moves the base reference point.

Page 4-70

RMaaaa,bbbb

Mirror Image. Prints mirror image of data.
aaaa = Horizontal distance in dots of the image area to be
mirrored.
bbbb
Vertical distance in dots of the image area to be
mirrored.

Page 4-42

S

Font type. Specifies the 8W x 15H dot matrix font (including
descenders).

Page 4-34

Tabcc(data)

Store Custom Designed Characters. To create and store custom
characters or images in the printer’s volatile memory. See Kab90cc to
recall the character for printing.
a
= 1 16 x 16 matrix
2
24 x 24 matrix
b
= Specifies data stream format to follow
B Binary
H Hexadecimal
cc
= Memory location to store the character.
Valid locations are 21 to 52 or “!” to “R” in hex values.
(data) = Data to describe the character.

Page 4-21

U

Font type. Specifies a 5W x 9L dot matrix font (including descenders).

Page 4-34

Page A-6

9001041 Rev. D

SATO M-8400RV

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

PAGE

Vbbbb

Vertical Position. Specifies a field’s vertical location down the length
of the label from the current base reference point. Units of
measurement are dots.

Page 4-59

M-8400RV
bbbb = New Vertical Position

WBa

0001-1424

Font type. Specifies the 18W x 30L dot matrix font (including
descenders).
a
= 0 Disables auto-smoothing of font
1 Enables auto-smoothing if expansion is greater than 3

Page 4-38

WDHaaaaVbbbb Copy Image Area. To copy an image to another location of the label.
XccccYdddd
aaaa = Horizontal position of the top left corner of image area
bbbb = Vertical position of the top left corner of image area
cccc =
Horizontal length of image area
dddd = Vertical length of image area

Page 4-31

WLa

Font type. Specifies the 28W x 52H dot matrix font (including
decenders).
a
= 0 Disables auto-smoothing of font
1 Enables auto-smoothing if expansion is greater than 3

Page 4-38

XBa

Font type. Specifies the 48W x 48L dot matrix font (including
descenders).
a
= 0 Disables auto-smoothing of font
1 Enables auto-smoothing if expansion is greater than 3

Page 4-38

XLa

Font type. Specifies the428W x 48H dot matrix font (including
decenders).
a
= 0 Disables auto-smoothing of font
1 Enables auto-smoothing if expansion is greater than 3

Page 4-38

XM

Font type. Specifies the 24W x 24H dot matrix font (including
descenders).

Page 4-34

XS

Font type. Specifies the 17W x 17H dot matrix font (including
descenders).

Page 4-34

XU

Font type. Specifies the 5W x 9H dot matrix font (including
descenders).

Page 4-34

XWa

Font type. Specifies the 48W x 48H dot matrix font (including
descenders).
a
= 0 Disables auto-smoothing of font
1 Enables auto-smoothing if expansion is greater than 3

Page 4-38

Z

Stop Code. Ends all print jobs.

Page 4-74

SATO M-8400RV

9001041 Rev. D

Page A-7

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

PAGE

%a

Rotate. Fixed Base Reference Point. Rotates printing in 90°
increments without changing the base reference point.
a
= 0 Sets print to normal direction
1 Sets print to 90° CCW
2 Sets print to 180° rotated (upside down)
3 Sets print to 270° CCW (90° CW)

Page 4-68

$a,b,c,d

Vector font. Specifies printing of the unique SATO vector font.
a
= A Helvetica Bold (proportional spacing)
B Helvetica Bold (fixed spacing)
b
= Font width (50-999 dots*)
c
= Font height (50-999 dots*)
d
= Font variation (0-9) as follows:
0 Standard
1 Standard open (outlined)
2 Gray (mesh) pattern 1
3 Gray (mesh) pattern 2
4 Gray (mesh) pattern 3
5 Standard, shadow 1
6 Standard, shadow 2
7 Standard mirror image
8 Italic
9 Italic open (outlined)

Page 4-36

$=(data)

Data for Vector font.

Page 4-36

#Ea

Print Darkness. Specifies a new print darkness setting. The lightest
setting is “1”.

Page 4-56

M-8400RV
a = Print Darkness

(aaaa,bbbb

1, 2, 3, 4, or 5

Reverse Image. Reverse image from black to white and vice versa.
Units of measure are dots.

Page 4-66

M-8400RV
aaaa = Horizontal Length

0001-0832

bbbb = Vertical Length

0001-1424

&

Store Form Overlay. Stores a specified label image in the printer’s
volatile form overlay memory.

Page 4-42

/

Recall Form Overlay. Recalls the label image from the printer’s form
overlay memory for printing.

Page 4-41

0 (zero)

Replace Data (Partial Edit). Provides the ability to replace a specified
area of the previous label with new data.

Page 4-64

Page A-8

9001041 Rev. D

SATO M-8400RV

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

PAGE

*a

Clear Print Job(s) and Memory. Clears individual memory and
Page 4-29
buffers.
a
= When not included in command, clears print jobs in
Multi-Buffer mode.
a
= If included in command, specifies memory section to be cleared
T Custom character memory, printer
& Form overlay memory, printer
X Clears all memory all memory and buffers

@, nn...n

Off-Line/Pause. Signals the printer to go off-line after the completion
Page 4-54
of a print job.
nn..n = Optional 32 character message to be displayed on the LCD.

~aaaa

Cutter Command. Controls the cutting of labels when using the
optional SATO cutter unit. (A  can be used in place of the “~”.)
aaaa = Number of labels to print between each cut (0000-9999)

Page 4-33

Calendar Option Commands
WA(elements)

Calendar Print. Prints the date and/or time field (up to 16 characters)
from the printer’s internal clock. Use slash to separate date elements
and colon to separate time elements.
elements = YY
2 digit Year (00-91)
YYYY 4 digit Year (1981-2080)
MM
Month (01-12)
DD
Day (01-31)
HH
12 Hour Clock (00-11)
hh
24 Hour Clock (00-23)
mm
Minutes (00-59)
ss
Seconds (00-59)
TT
AM or PM
JJJ
Julian Date (000-366)
WW
Week (00-53)
ww
Week (01-54)

WPabbb

Calendar Increment. To add a value to the printer’s current date
Page 4-76
and/or time. Does not change the printer’s internal time setting.
a
= Y Years
M Months
D Days
h Hours
bbb = Numeric data, Years (1-9), Months (01-99), Weeks (00-99),
Days (001-999), Hours (001-999).

WTaabbccddee Calendar Set. To set the time and date of the printer’s internal clock.
aa
= Year (00-99)
bb
= Month (01-12)
cc
= Day (01-31)
dd
= Hour (00-23)
ee
= Minute (00-59)

SATO M-8400RV

9001041 Rev. D

Page 4-78

Page 4-80

Page A-9

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

PAGE

Memory Card Option Commands
BJ(aa..abb..b

Start TrueType Font Storage. Prepares the Memory Card to accept
TrueType font data.
aa...a = 40 byte font description
bb...b = 10 byte date field

Page 4-86

BJDcccccdddd Download TrueType Font Data. Downloads the TrueType font data
ee...e
to the memory area specified.
ccccc = Memory Offset (hexadecimal)
dddd = Data size in bytes (max = 2000)
ee...e = Font data to be downloaded

Page 4-86

BJ)

End TrueType Font Storage.Ends the TrueType font storage process

Page 4-86

BJFaaaaaaaa

Initialize Memory Card. Initializes the Memory Card and formats it for
use. Should be preceded by the Slot Select command for the card to
be initialized.
aaaaaaaa
= 8 character alphanumeric password

Page 4-94

BJRabbccdd
eeffffgg..g

TrueType Font Recall. Recalls a previously stored TrueType font for
use.
a
= Font ID (1-9)
bb
= Horizontal Expansion (01-12)
cc
= Vertical Expansion (01-12)
dd
= Character pitch (01-99)
ee
= Always 00
f f f f = Number of characters
gg..g = Data to be printed using font

Page 4-85

BJS

Memory Card Status. Reports the status of the currently active
Memory Card to the host by printing a status label.

Page 4-98

BJTaa,bb,cc
dd,ee,ffff,gg..g

TrueType Font Recall. Recalls a previously stored TrueType font for
use.
aa
= Font ID (01-99
bb
= Horizontal Expansion (01-12)
cc
= Vertical Expansion (01-12)
dd
= Character pitch (01-99)
ee
= Always 00
f f f f = Number of characters
gg..g = Data to be printed using font

Page 4-85

CCa

Slot Select. Selects the Memory Card slot for all following Memory
Card commands.
a
= 1 Slot 1
b
= 2 Slot 2

Page 4-95

Page A-10

9001041 Rev. D

SATO M-8400RV

Appendix A: Command Quick Reference

INSTRUCTION

DESCRIPTION

EXa

Expand Memory Area. Expands the memory area used by the printer
to image the label.
a
= 0 Return to using internal printer RAM
1 Use Memory Card in Slot 1
2 Use Memory Card in Slot 2

Page 4-83

GIabbbcccdd
ee...e

Store Custom Graphics. Stores a graphic image in the memory card
to be called later for printing on a label.
a
= Specifies format of data stream to follow
B Binary
H Hexadecimal
bbb = Number of horizontal 8 x 8 blocks (001-248)
ccc = Number of vertical 8 x 8 blocks
(001-267 for 7" label)
dd
= Graphics storage number (01-99)
ee...e = Data to describe the graphic image

Page 4-9

GRcc

Recall Custom Graphics. Recalls for printing the graphic image
stored by the GI command.
cc
= Storage number (01-99)

Page 4-89

PIaa,bbbbb,
cc...c

Store PCX Graphics File. Stores a PCX graphic file.
aa
= Storage number (01-99)
bbbbb= Number of bytes in the file to be stored.

Page 4-93

PYaa

Recall PCX Graphics File. Recalls a PCX graphics file.
aa
= The storage number assigned to the file (01-99)

Page 4-92

YR,aa
/D,bb,cc...c

Recall Format/Field. To recall a field from a format previously stored
in the memory card.
aa
= Number of format to be recalled (01 to 99)
bb
= Number of field to be recalled (01-99)
cc...c = Data to be placed in field.

Page 4-87

YS,aa
/Nbb,cc

Store Format/Field. To store a field in a format in the memory card.
aa
= Format number
bb
= Field number (01-99)
cc
= Number of characters in the field

Page 4-88

*abb

Clear Card Memory. Clears individual memory and buffer areas.
a
= Memory section to be cleared
G SATO graphicfiles (01-99)
P PCX graphic file (01-99)
F Stored formats (01-99)
O TrueType fonts, memory card (01-09)
bb
= Storage number

Page 4-82

SATO M-8400RV

PAGE

9001041 Rev. D

Page A-11

Appendix A: Command Quick Reference

This page left intentionally blank.

Page A-12

9001041 Rev. D

SATO M-8400RV

APPENDIX B.
BAR CODE SPECIFICATIONS
BAR CODE SYMBOLOGIES
This section contains detailed information on the printing of bar codes on the
M-8400RV printers. Information on printing the following bar code symbologies is
provided:
• Codabar
• Code 39
• Interleaved 2 of 5
• UPC-A/EAN-13
• EAN-8
• Industrial 2 of 5
• Matrix 2 of 5
• Code 128
• MSI
• Code 93
• UPC-E
• UPC Supplements(Bookland)
• UCC-128
• Postnet
• Data Matrix
• Maxicode
• PDF417

SATO M-8400RV

9001041 Rev. D

Page B-1

Appendix B: Bar Code Specifications

Codabar
Command Structure

Character Set

1:3 ratio
2:5 ratio
1:2 ratio

B0bbcccd (data) d
BD0bbcccd (data) d
D0bbcccd (data) d

bb
ccc
d
(data)

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Required Start and Stop character (A, B, C, or D)
Bar code data (alphanumeric)

=
=
=
=

0-9, -,$,:,/,+
A, B, C, D (Start/Stop characters)

Density Table
Narrow/
Wide
Ratio

Value
of “bb”

“X”
Dimension
(mils)

Density
(char/inch)

1:3

01

5.0

16.9

1:3

02

10.0

8.5

2:5

01

10.0

9.2

1:2

02

5.0

10.2

Example

H0400V0025B002100A12345B
H0440V0135XS12345

Notes

You must add the appropriate (A, B, C or D) Start and Stop
characters to the data string. The printer does not automatically add
them when printing.

Page B-2

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

Code 39
Command Structure

Character Set

1:3 ratio:
2:5 ratio:
1:2 ratio:

B1bbccc* (data) *
BD1bbccc* (data) *
D1bbccc* (data) *

bb
ccc
*
(data)

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Required Start and Stop character (asterisk)
Bar code data (alphanumeric)

=
=
=
=

0-9, A-Z, Space, $, %, +, -, .,/
* (Start/Stop character)

Density Table
Narrow/
Wide
Ratio

Value of
“bb”

“X”
Dimension
(mils)

Density
(char/inch)

1:3

01

5.0

12.7

1:3

02

10.0

6.4

2:5

01

10.0

7.0

1:2

01

5.0

15.6

1:2

02

10.0

7.8

Example

H0100V0025B103100*CODE 39*
H0230V0130XS*CODE 39*

Notes

You must add the “*” Start/Stop characters to the data stream. The
printer does not add them automatically.

SATO M-8400RV

9001041 Rev. D

Page B-3

Appendix B: Bar Code Specifications

Interleaved Two of Five (I 2/5)
Command Structure

Character Set

1:3 ratio:
2:5 ratio:
1:2 ratio:

B2bbccc (data)
BD2bbccc (data)
D2bbccc (data)

bb
=
ccc
=
(data) =

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Bar code data (numeric); must be an even number of digits
or else the printer will add a leading zero; start and stop
code are provided by the printer

0-9 (numeric only)

Density Table
Narrow/
Wide
Ratio

Value of
“bb”

“X”
Dimension
(mils)

Density
(char/inch)

1:3

01

5.0

22.6

1:3

02

10.0

11.3

2:5

01

10.0

12.7

1:2

01

5.0

14.5

1:2

02

10.0

9.7

Example

H0100V0100B20310045676567
H0140V0210XM4567 6567

Notes

To add horizontal guard bars to the top and bottom of the bar code,
use the Line and Box command (see page 5-47).

Page B-4

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

UPC-A/EAN-13
Command Structure

B3bbccc (data)
D3bbccc (data)
BD3bbccc (data)
bb
=
ccc
=
(data) =

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Bar code data (numeric); must be exactly 13 digits. For
UPC-A, the first digit must be a zero and the last 11 digits
are the actual UPC-A data followed by a check digit.

To select UPC-A, 11 digits of data is sent. The printer adds a “0” and
automatically generates the check digit. If 12 digits of data are sent,
the printer assumes an EAN-13 symbol and automatically generates
the check digit. The last digit of the bar code data is a modulo 10
check digit. If 13 digits of data are sent to the printer, the check digit
is not created and must be supplied by the programmer. It must be
the last character in the 13 digit string and can be determined by
using the calculations outlined below.
Character Set

0-9 (numeric only)

Density Table
Value of “bb”

Narrow Bar Width
(mils)

Magnification
Factor

02

10.0

75%

03

15.0

112%

04

20.0

150%

Notes

D3 provides guide bars that extend longer than the rest of the bar
code. BD3 provides guide bars and the human readable text below
the symbol.

Example

H0100V0375BD30215001234567890

SATO M-8400RV

9001041 Rev. D

Page B-5

Appendix B: Bar Code Specifications

Calculating the
Mod 10 Check Digit
ODD
EVEN

If you wish to encode the UPC-A data “01234567890”, follow these
steps to find the correct check digit.
0

2
1

4
3

6
5

8
7

0
9

CD

1. First add all the numbers in the ODD positions.
i.e., 0+2+4+6+8+0 = 20
2. Multiply the result of Step 1 by 3.
i.e., 20 x 3 = 60
3. Add up all the numbers in the EVEN positions.
i.e., 1+3+5+7+9 = 25
4. Add the result of Step 2 to that of Step 3.
i.e., 60 + 25 = 85
5. Subtract the result of Step 4 from the next highest increment of 10.
i.e., 90 - 85 = 5
6. The correct Modulo 10 check digit for the 11 digit string
“01234567890” is 5.

Page B-6

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

EAN-8
Command Structure

B4bbccc (data)
D4bbccc (data)
bb
=
ccc
=
(data) =

Character Set

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Bar code data (numeric); must be exactly 8 digits.

0-9 (numeric only)

Density Table

Notes

Value of “bb”

Narrow Bar Width
(mils)

Magnification
Factor

02

10.0

75%

03

15.0

112%

04

20.0

150%

1. D4 provides guide bars that extend longer than the rest of the bar
code and the human readable text below the symbol.
2. The check digit is automatically calculated for EAN-8.

Example

SATO M-8400RV

H0400V0375BD4031001234567

9001041 Rev. D

Page B-7

Appendix B: Bar Code Specifications

Industrial Two of Five
Command Structure

1:3 ratio:
2:5 ratio:
1:2 ratio:

B5bbccc (data)
BD5bbccc (data)
D5bbccc (data)

bb
=
ccc
=
(data) =

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Bar code data (numeric); must be an even number of digits or
else the printer will add a leading zero

Character Set

0-9 (numeric only)

Notes

To add horizontal guard bars to the top and bottom of the bar code,
use the Line and Box command (see Page 4-48).

Example

H0100V0600BD50310012345
H0300V0710XS12345

Page B-8

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

Matrix Two of Five
Command Structure

1:3 ratio:
2:5 ratio:
1:2 ratio:

B6bbccc (data)
BD6bbccc (data)
D6bbccc (data)

bb
=
ccc
=
(data) =

Width of narrow element in dots (01-12)
bar height in dots (001-600)
Bar code data (numeric only); must be an even number of
digits or else the printer will add a leading zero.

Character Set

0-9 (numeric only)

Notes

To add horizontal guard bars to the top and bottom of the bar code,
use the Line and Box command (see Page 4-48).

Example

H0100V0775BD60310012345
H0230V0885XS12345

SATO M-8400RV

9001041 Rev. D

Page B-9

Appendix B: Bar Code Specifications

Code 128
Command Structure

BGbbcccdd (data)
bb
ccc
dd

=
=
=

(data) =

Character Set

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Start code to specify initial subset of bar code data
>G
Subset A Start code
>H
Subset B Start code
>I
Subset C Start code
Includes bar code data and subset Shift codes; Shift codes
are used to change the subset type within the bar code data.
Shift codes:
>E
Subset A Shift code
>D
Subset B Shift code
>C
Subset C Shift code

See Code 128 Character Table on Page B-18

Density Table
Value of
“bb”

Example

“X”
Dimension

Density

(char/inch)

(mils)

Subsets A, B

Subset C

01

5.0

18.2

36.5

01

10.0

9.1

18.3

03

15.0

13.8

12.2

The following will start in Subset A for the characters “AB”, shift to
Subset B for “789”, then shift to Subset C for “123456”.
H0200V0550BG03100>GAB>B789>C123456
H0310V655XSAB789123456

Page B-10

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

MSI
Command Structure

1:3 ratio:
2:5 ratio
1:2 ratio

BAbbccc (data) d
BDAbbccc (data) d
DAbbccc (data) d

bb
ccc
(data)
d

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Bar code data (numeric); maximum of 15 digits
Required check digit

=
=
=
=

Character Set

0-9 (numeric only)

Example

H0100V0950BA03100123455
H0170V1060XS12345

SATO M-8400RV

9001041 Rev. D

Page B-11

Appendix B: Bar Code Specifications

Code 93
Command Structure

Character Set

1:3 ratio:

BCbbcccdd (data)

bb
ccc
dd
(data)

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Length of data (number of digits, 00-99)
Bar code data (alphanumeric); length must match value of
parameter “dd”; check digit is supplied by printer

=
=
=
=

0-9, A-Z, -, ., Space, $, /, +, %

Density Table

Example

Page B-12

Narrow/Wide
Ratio

Value of
“bb”

“X”
Dimension
(mils)

Density
(char/inch)

1:3

01

5.0

22.5

1:3

02

10.0

11.3

1:3

03

15.0

7.5

H0100V1125BC03100081234ABCD
H0155V1240XS1 234ABCD

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

UPC-E
Command Structure

BEbbccc (data)
DEbbccc (data)
bb
=
ccc
=
(data) =

Character Set

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Bar code data (numeric); must be exactly 6 digits

0-9 (numeric only)

Density Table
Value of “bb”

Narrow Bar Width
(mils)

Magnification
Factor

02

10.0

75%

03

15.0

112%

04

20.0

150%

Notes

Command DE provides guide bars that extend longer than the rest of
the bar code.

Example

H0400V0550DE03100123456
H0375V0600OB0
H0408V0655OB123456

SATO M-8400RV

9001041 Rev. D

Page B-13

Appendix B: Bar Code Specifications

Bookland (UPC/EAN Supplements)
Command Structure

BFbbccc (data)
bb
=
ccc
=
(data) =

Character Set

Width of narrow element in dots (01-12)
Bar height in dots (001-600)
Bar code data (numeric); must be exactly 2 or 5 digits

0-9 (numeric only)

Density Table

Example

Page B-14

Value of “bb”

Narrow Bar Width
(mils)

Magnification
Factor

02

10.0

75%

03

15.0

112%

04

20.0

150%

H0325V0725D30315009827721123
L0101H0295V0800OB0
H0340V0878OB98277
H 0480V0878OB21123
H640V0760BF0313021826
H655V0730OB21826

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

UCC-128
Command Structure

BIbbcccd (data)
bb
ccc
d

=
=
=

Width of the narrow elements in dots (01 to 12)
Bar height in dots (001 to 600)
Placement of human readable text
0 None
1 Text at top of bar code
2 Text at bottom of bar code
(data) = 17 digits made up of the following:
1st digit = Container type
digits 2-8, Shipper identification
digits 9-17, Container Sequential number
Note: The Container Sequential number is not automatically
sequenced by the printer.
Character Set

See Code 128 Character Table on Page B-18

Density Table

See Code 128, Page B-10

Notes

1. The Start, Function, Stop and Extension codes will be created by
the printer and added automatically.
2. The internal Modulo 10 check character will be automatically
created and added by the printer. The overall Code 128 symbol
check character will be automatically created by the printer and
added.
3. The automatically created human readable text will be created
according to the following rules:
• The spacing between the bar code and the text is fixed at 10
dots (.050 inches).
• If the width of the human readable text is wider than the bar
code, it will start at the same position as the bar code and
extend past the right of the bar code.
• If the width of the human readable text is less than the bar
code, it will be centered on the bar code.
• The automatically generated human readable font is OCR-B.
• If any part of the human readable text extends outside the
printable area, none of it will be printed. Care should be
exercised when placing the bar code to allow for any
automatically created human readable text.

SATO M-8400RV

9001041 Rev. D

Page B-15

Appendix B: Bar Code Specifications

Example

Without incrementing
A
H0100V0100BI04150101234567000000001
Q2Z

With incrementing
A
H0100V0100F001+001
BI04150101234567000000001
Q2Z

Page B-16

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

Postnet
Command Structure

BP (data)
data

=
=
=
=

5 digits ZIP
6 digits for Postnet 37
9 digits for ZIP+4
11 digits for Dlelivery Point Bar Code

Character Set

1-9 (numeric only)

Notes

1. Frame bits and check digits added automatically by printer.
2. Bar code width and height are fixed and cannot be changed.
3. If the number of digits sent to the printer as data does not match
one of the formats specified above (i.e. 5, 6, 9 or 11), the
command is ignored and nothing will be printed.
4. If a “–” is included in the data stream (i.e. 84093-1565), it is ignored.

Example

SATO M-8400RV

H0100V0120BP94089
H0100V0160BP123456
H0100V0200BP123456789
H0100V0240BP12345678901

9001041 Rev. D

Page B-17

Appendix B: Bar Code Specifications

Data Matrix
Command Structure

Data Format
aa

=

bb

=

cc
dd
eee
fff
g

=
=
=
=
=

hh

=

BXaabbccddeeefffghh

Format ID. 01-06 or 11-16. The values 07 and 17
will not be accepted by the printer.
Error correction level. 00 ,01, 04-14 or 20. All other values
will be processed as a 00.
Horizontal cell size. 03 - 12 dots/cell.
Vertical cell size. 03 - 12 dots/cell.
Number of cells in one line. Must use 000 to optimize.
Number of cell lines. Must use 000 to optimize.
Mirror Image
0 = Normal Print
1 = Reverse Print
Guide Cell Thickness. 01-15. 01 indicates normal type.

Sequential Numbering FXaaabcccdddeee
aaa
b

=
=

ccc
ddd

=
=

eee

=

Print Data
xx...x =

Page B-18

Number of duplicate labels to be printed (001 - 999)
Increment or Decrement
+ = Increment
- = Decrement
Increment/Decrement Steps (001 - 999)
Sequential numbering start position (001 - 999)
Referenced to left side.
Incremented data length measured from start position
(001 - 999)
DCxxx...x
Data, maximum of 500 characters

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

Character Set
ID
NUMBER

CHARACTER SET

ENCODING
SCHEME

16 Bit CRC
01

Numeric, Space

Base 11

02

Upper Case Alpha, Space

Base 27

03

Upper Case Alpha, Space,Comma, Period,
Slash, Minus

Base 41

04

Upper Case Alphanumeric, Space

Base 37

05

ASCII 7-bit, Full Keyboard (20H - 7FH)

ASCII

06

ISO 8-bit, International (20H - FFH)

8-Bit

32 Bit CRC
11

Numeric, Space

Base 11

12

Upper Case Alpha, Space

Base 27

13

Upper Case Alpha, Space, Comma, Period,
Slash, Minus

Base 41

14

Upper Case Alphanumeric, Space

Base 37

15

ASCII 7-bit, Full Keyboard (20H - 7FH)

ASCII

16

ISO 8-bit, International (20H - FFH)

8-Bit

Notes

See AIM USA Technical Specification Data Matrix for information on
the structure of this symbology.

Example

V0100H0100
BX05051010000000001
DCDATA MATRIX DATA MATRIX

SATO M-8400RV

9001041 Rev. D

Page B-19

Appendix B: Bar Code Specifications

Maxicode
Command Structure

BVa,b,c,ddddddddd,eee,fff,gggg.....
a

=

b

=

c

=

ddd..ddd
eee
=
fff
=
gg..g =

Position of Maxicode symbol within the set, when used
in a structured append format 1~8.
Total number of Maxicode symbols in the set, when used
in a structured format 1~8.
2 For Mode 2 Structured Carrier Message
for Domestic U.S. UPS shipments
3 For Mode 3 Structured Carrier Message
for International UPS shipments
4 Standard symbol
5 Not currently supported
6 Reader programming
9 digit numeric Postal Code
3 digit numeric Country Code
3 digit numeric Service Class
Data, terminated by 

Character Set
MODE

POSTAL CODE

COUNTRY CODE SERVICE CLASS

MESSAGE
LENGTH

2

9 digits max
numeric only

3 digits max
numeric only

3 digits max
numeric only

84 characters
alphanumeric

3

6 digits fixed
alphanumeric

3 digits max
numeric only

3 digits max
numeric only

84 characters
alphanumeric

4
6

“000000“
fixed data

“000“
fixed data

“000“
fixed data

91 characters
alphanumeric

Notes

See AIM I.S.S specification for information on the structure of this
symbology.

Example

AV0100H0100
BV1,1,2,123456789,840,001,[)01961Z01547089
UPSN05687234999999999001/005
029NLENEXAKS
Q001Z

Page B-20

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

PDF417
Command Structure

BFaabbcddeeffffnnn...n
aa

=

bb

=

c
dd

=
=

ee

=

ffff
=
nn...n =

Minimum module dimension (03-09 dots). Will not print
if values of 01, 02 or greater than 10 are specified.
Minimum module pitch dimension (04-24 dots). Will not
print if values of 01, 02, 03 or greater than 25 are
specified.
Security (error detection) Level (1-8).
Code words per line (01-30). If 00 is specified for both
dd and ee, the printer automatically optimizes the number
of rows per symbol.
Rows per symbol (00 or 03-40). If 00 is specified for both
dd and ee, the printer automatically optimizes the number
of rows per symbol.
Number of characters to be encoded (0001-2700).
Data to be printed.

Character Set

ASCII 128 character set plus PC437 Extended Character set.

Notes

See AIM USA Uniform Symbology Specification PDF417 for
information on the structure of this symbology.

Example

V0100H0100BK0607400000021PDF417 PDF417 PDF417

SATO M-8400RV

9001041 Rev. D

Page B-21

Appendix B: Bar Code Specifications

CODE 128 CHARACTER TABLE
The Code 128 Table lists 105 data values for the three subsets: A, B, and C. Each
subset column displays either a single column of data or a double column of data.
• If the subset column displays a single column of data, that is the data to be
entered to produce the result.
• If the subset column displays a double column of data, the first column contains the desired output, and the second column contains the actual characters to be entered.
For example, look at value 99 in the table:
If you are currently using Subset A or Subset B, you can change to Subset C by
encoding “>C”.
VALUE

SUBSET A

SUBSET B

SUBSET C

99

Subset C >C

Subset C >C

99

100

Subset B >D

FNC4 >D

Subset B >D

101

FNC4 >E

Subset A >E

Subset A >E

102

FNC1 >F

FNC1 >F

FNC1 >F

Note: When Subset C is chosen, you must specify an even number of data
positions because of the interleaved encodation method.

Page B-22

9001041 Rev. D

SATO M-8400RV

Appendix B: Bar Code Specifications

Code 128 Character Table
VALUE

SUBSET
A

SUBSET
B

SUBSET
C

VALUE

SUBSET
A

SUBSET
B

SUBSET
C

0

SP

SP

00

36

D

D

36

1

!

!

01

37

E

E

37

2

“

”

02

38

F

F

38

3

#

#

03

39

G

G

39

4

$

$

04

40

H

H

40

5

%

%

05

41

I

I

41

6

&

&

06

42

J

J

42

7

‘

‘

07

43

K

K

43

8

(

(

08

44

L

L

44

9

)

)

09

45

M

M

45

10

*

*

10

46

N

N

46

11

+

+

11

47

O

O

47

12

,

,

12

48

P

P

48

13

-

-

13

49

Q

Q

49

14

.

.

14

50

R

R

50

15

/

/

15

51

S

S

51

16

0

0

16

52

T

T

52

17

1

1

17

53

U

U

53

18

2

2

18

54

V

V

54

19

3

3

19

55

W

W

55

20

4

4

20

56

X

X

56

21

5

5

21

57

Y

Y

57

22

6

6

22

58

Z

Z

58

23

7

7

23

59

[

[

59

24

8

8

24

60

\

\

60

25

9

9

25

61

]

]

61

26

:

:

26

62

^

^

62

27

;

;

27

63

__

__

63

28

<

<

28

64

NUL

>(space)

64

29

=

=

29

65

SOH

30

>

>

30

66

31

?

?

31

67

32

@

@

32

68

33

A

A

33

34

B

B

35

C

C

SATO M-8400RV

>(space)

‘

>!

a

>!

65

STX

>"

ETX

>#

b

>"

66

c

>#

67

EOT

>$

d

>$

68

69

ENQ

>%

e

>%

69

34

70

ACK

>&

f

>&

70

35

71

BEL

>’

g

>’

71

9001041 Rev. D

Page B-23

Appendix B: Bar Code Specifications

Code 128 Character Table (cont’d)
VALUE

SUBSET
A

SUBSET
B

SUBSET
C

VALUE

SUBSET
A

SUBSET
B

SUBSET
C

72

BS

>(

h

>(

72

89

EM

>9

y

>9

89

73

HT

>)

i

>)

73

90

SUB

>:

z

>:

90

74

LF

>*

j

>*

74

91

ESC

>;

{

>;

91

75

VT

>+

k

>+

75

92

FS

><

|

><

92

76

FF

>,

l

>,

76

93

GS

>=

}

>=

93

77

CR

>-

m

>-

77

94

RS

>>

~

>>

94

78

SO

>.

n

>.

78

95

US

>?

DEL

>?

95

79

SI

>/

o

>/

79

96

FNC3

>@

FNC3

>@

96

80

DLE

>0

p

>0

80

97

FNC2

>A

FNC2

>A

97

81

DC1

>1

q

>1

81

98

SHIFT

>B

SHIFT

>B

98

82

DC2

>2

r

>2

82

99

Subset C

>C

Subset C

>C

99

83

DC3

>3

s

>3

83

100

Subset B

>D

FNC4

>D

Subset B

>D

84

DC4

>4

t

>4

84

101

FNC4

>E

Subset A

>E

Subset A

>E

85

NAK

>5

u

>5

85

102

FNC1

>F

FNC1

>F

FNC1

>F

86

SYN

>6

v

>6

86

103

SUBSET A START CODE

>G

87

ETB

>7

w

>7

87

104

SUBSET B START CODE

>H

88

CAN

>8

x

>8

88

105

SUBSET C START CODE

>I

Page B-24

9001041 Rev. D

SATO M-8400RV

APPENDIX C.
CUSTOM CHARACTERS AND GRAPHICS
CUSTOM-DESIGNED CHARACTER EXAMPLE
The following example is presented to help understand the use of the Custom
Designed Characters command. It demonstrates the design and printing of an “arrow”
in a 16 x 16 matrix.
1. Determine which matrix size to use
• 16 dot x 16 dots
• 24 dots by 24 dots
2. Lay out a grid and draw the image on the grid.
• Each square represents one dot
• Blacken squares for each printed dot
1

2

3

4

5

6

7

8

1

2

3

4

5

6

7

8

1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8

SATO M-8400RV

9001041 Rev. D

Page C-1

Appendix C: Custom Characters and Graphics

3. Transfer the image into two bit map representations and then into hexadecimal or
binary format.
ROW
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

BIT MAP
0000
0000
0000
0000
0001
0011
0111
1111
0000
0000
0000
0000
0000
0000
0000
0000

0001
0011
0111
1111
1111
1111
1111
1111
0111
0111
0111
0111
0111
0111
0111
0111

0000
1000
1100
1110
1111
1111
1111
1111
1100
1100
1100
1100
1100
1100
1100
1100

HEX
0000
0000
0000
0000
0000
1000
1100
1110
0000
0000
0000
0000
0000
0000
0000
0000

01
03
07
0F
1F
3F
7F
FF
07
07
07
07
07
07
07
07

00
80
C0
E0
F0
F8
FC
FE
C0
C0
C0
C0
C0
C0
C0
C0

4. To store the custom designed character in memory using a hexadecimal data
stream, the command would be:
A
T1H3F0100038007C00FE01FF03FF87FFCFFFE07C007C007C007C007C007C007C007C0
Z

Note: This should be a continuous data string without any CR or LF characters.

5. To recall the custom character from memory, send the following code to the
printer. Note that you can print other data as well. Also note how the character size
was expanded using the L command.
A
L0505H0150V100K1H903F
L0505H0600V100K1H903F
L0303H0125V0250MTHIS SIDE UP !
Q1
Z

6. To store the custom designed character in memory using a binary data stream, the
command would be:
A
T1B3F 01H 00H 03H 80H 07H C0H 0FH E0H 1FH F0H 3FH F8H 7FH FCH FFH FEH
07H C0H 07H C0H 07H C0H 07H C0H 07H C0H 07H C0H 07H C0H 07H C0H
Z
NOTE: Spaces are shown between hexidecimal values in the above example for clarity only and
are not included in the data string.

Note that the data stream is only half as long as the hexadecimal format. This is because
we can send the binary equivalent of “11111111” (represented above in its
hexidecimal value of FFH), for example, using one eight bit word while it takes two
eight bit words to transmit the hexadecimal equivalent “F” and “F”. To send binary
characters using BASIC, the expression “CHR (&HFF) will send the binary equivalent
of FF (i.e., 11111111).
Page C-2

9001041 Rev. D

SATO M-8400RV

Appendix C: Custom Characters and Graphics

6. To recall the custom character from memory, send the following code to the
printer:
A
L505H0150V100K1B903F
L505H0600V100K1B903F
L0303H0125V0250XMTHIS SIDE UP !
Q1
Z

The printer output for both the hexadecimal and binary format examples is:

SATO M-8400RV

9001041 Rev. D

Page C-3

Appendix C: Custom Characters and Graphics

CUSTOM GRAPHICS EXAMPLE
The following example is presented to help you understand the use of the Custom
Graphics command. It demonstrates the design and printing of a “diskette” in a 48 x
48 matrix.
1. Determine the matrix size for the graphic. It must be in 8 dot by 8 dot blocks. The
example here has six blocks horizontally and six blocks vertically (48 x 48).
2. Lay out a grid and draw the image on the grid.
• Each square represents one dot
• Blacken squares for each printed dot

Page C-4

9001041 Rev. D

SATO M-8400RV

Appendix C: Custom Characters and Graphics

3. Transfer the image into a bit map representation and then into hexadecimal format:
1

BIT MAP
4

3

11111111
11111111
11000000
11000000
11000000
11000000
11000000
11000000

11111111
11111111
00000000
00000000
00000000
00000000
00000000
00000000

11111111
11111111
00000000
00000000
11111111
10000000
10000000
10011111

11111111
11111111
00000000
00000000
11111111
00000000
00000000
11111111

11111111
11111111
00000000
00000000
11111111
00000000
00000000
11111111

11111111
11111111
00000011
00000011
11110011
00010011
00010011
00010011

FF
FF
C0
C0
C0
C0
C0
C0

FF
FF
00
00
00
00
00
00

FF
FF
00
00
FF
80
80
9F

FF
FF
00
00
FF
00
00
FF

FF
FF
00
00
FF
00
00
FF

FF
FF
03
03
03
13
13
13

11000000
11000000
11000000
11000000
11000000
11000000
11000000
11000000

00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000

10000000
10000000
10011111
10000000
10000000
11111111
00000000
00000000

00000000
00000000
11111111
00000000
00000000
11111111
00000000
00000000

00000000
00000000
11111111
00000000
00000000
11111111
00000000
00000000

00010011
00010011
00010011
00010011
00010011
11110011
00000011
00000011

C0
C0
C0
C0
C0
C0
C0
C0

00
00
00
00
00
00
00
00

80
80
9F
80
80
FF
00
00

00
00
FF
00
00
FF
00
00

00
00
FF
00
00
FF
00
00

13
03
13
13
13
F3
03
03

11000000
11000000
11000000
11000000
11000000
11000000
11000000
11000000

00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000

00000000
00000000
00000000
00000000
00000011
00000111
00001111
00001111

00000000
00000000
00000000
00000000
11000000
11100000
11110000
11110000

00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000

00000011
00000011
00000011
00000011
00000011
00000011
00000011
00000011

C0
C0
C0
C0
C0
C0
C0
C0

00
00
00
00
00
00
00
00

00
00
00
00
03
07
0F
0F

00
00
00
00
C0
E0
F0
F0

00
00
00
00
00
00
00
00

13
13
13
13
03
03
03
03

11000000
11000000
11000000
11000000
11000000
11000000
11000000
11000000

00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000

00001111
00001111
00000111
00000011
00000000
00000000
00000000
00000000

11110000
11110000
11100000
11000000
00000000
00000000
00000000
00000000

00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000

00000011
00000011
00000011
00000011
00000011
00000011
00000011
00000011

C0
C0
C0
C0
C0
C0
C0
C0

00
00
00
00
00
00
00
00

0F
0F
07
03
00
00
00
00

F0
F0
E0
C0
00
00
00
00

00
00
00
00
00
00
00
00

03
03
03
03
03
03
03
03

11000000
11000000
11000000
11000000
11000000
11000000
11000000
11000000

00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000

00000001
00000011
00000011
00000011
00000011
00000011
00000011
00000011

10000000
11000000
11000000
11000000
11000000
11000000
11000000
11000000

00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000

00000011
00000011
00000011
00000011
00000011
00000011
00000011
00000011

C0
C0
C0
C0
C0
C0
C0
C0

00
00
00
00
00
00
00
00

01
03
03
03
03
03
03
03

80
C0
C0
C0
C0
C0
C0
C0

00
00
00
00
00
00
00
00

03
03
03
03
03
03
03
03

11000000
11000000
11000000
11000000
11000000
11000000
11111111
11111111

00000000
00000000
00000000
00000000
00000000
00000000
11111111
11111111

00000011
00000011
00000011
00000001
00000000
00000000
11111111
11111111

11000000
11000000
11000000
10000000
00000000
00000000
11111111
11111111

00000000
00000000
00000000
00000000
00000000
00000000
11111111
11111111

00000011
00000011
00000011
00000011
00000011
00000011
11111111
11111111

C0
C0
C0
C0
C0
C0
FF
FF

00
00
00
00
00
00
FF
FF

03
03
03
01
03
03
FF
FF

C0
C0
C0
80
C0
C0
FF
FF

00
00
00
00
00
00
FF
FF

03
03
03
03
03
03
FF
FF

SATO M-8400RV

5

6

HEXADECIMAL FORMAT
1 2 3 4 5 6

2

9001041 Rev. D

Page C-5

Appendix C: Custom Characters and Graphics

4. Using the hexadecimal data, send the following code to print the graphic image as
designed.
AH0100V0100GH006006
FFFFFF
FFFFFF FFFFFF FFFFFF C00000
C00000
000003 C000FF FFFFF3 C00080
C00080
000013 C0009F FFFF13 C00080
C00080
000013 C0009F FFFF13 C00080
C00080
000013 C000FF FFFFF3 C00000
C00000
000003 C00000
000003
C00000
C00000
000003 C00000
000003
C00003
C00007
E00003 C0000F F00003
C0000F
C0000F
F00003 C0000F F00003
C00007
C00003
C00003 C00000
000003
C00000
C00000
000003 C00000
000003
C00001
C00003
C00003 C00003
C00003
C00003
C00003
C00003 C00003
C00003
C00003
C00003
C00003 C00003
C00003
C00003
C00003
C00003 C00001
800003
C00000
C00000
000003 FFFFFF FFFFFF FFFFFF
Q1Z

000003
000013
000013
000013
000003
000003
C00003
F00003
E00003
000003
800003
C00003
C00003
C00003
000003
FFFFFF

Note: Spaces shown in the hexidecimal listing above are for emphasis only. Spaces must
not be encoded within the graphic portion of the data stream to the printer. Also, CR and
LF characters to separate the lines must not be encoded in the data stream.
5. To send the data in binary format, the software must convert the data into binary
format before transmitting it to the printer. Using the BASIC programming
language for example, this is done by notation “CHR$ (&HC0)” which sends the
hexidecimal value of “C0” as binary data (11000000). The BASIC program listing
for sending this graphic to the printer (using the RS232 port) in binary format is:
CLS
OPEN “COM2:9600,N,8,1,CS,DS” FOR OUTPUT AS #1
E$ = CHR$(27)
PRINT #1,CHR$(2); E$; “A”; E$; “V0100"; E$; ”H0100"; E$; “GB006006";
PRINT #1,CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);
PRINT #1,CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);
PRINT #1,CHR$(&HFF);CHR$(&HFF);CHR$(&HC0);CHR$(&H00);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H03);CHR$(&HC0);
PRINT #1,CHR$(&H00);CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);CHR$(&HF3);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H80);CHR$(&H00);CHR$(&H00);
PRINT #1,CHR$(&H13);CHR$(&HC0);CHR$(&H00);CHR$(&H80);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H13);CHR$(&HC0);CHR$(&H00);CHR$(&H9F);
PRINT #1,CHR$(&HFF);CHR$(&HFF);CHR$(&H13);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H80);CHR$(&H00);CHR$(&H00);CHR$(&H13);CHR$(&HC0);
PRINT #1,CHR$(&H00);CHR$(&H80);CHR$(&H00);CHR$(&H00);CHR$(&H13);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H9F);CHR$(&HFF);CHR$(&HFF);
PRINT #1,CHR$(&H13);CHR$(&HC0);CHR$(&H00);CHR$(&H80);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H13);CHR$(&HC0);CHR$(&H00);CHR$(&H80);
PRINT #1,CHR$(&H00);CHR$(&H00);CHR$(&H13);CHR$(&HC0);CHR$(&H00);
PRI NT #1,CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);CHR$(&HF3);CHR$(&HC0);
PRINT #1,CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H00);
PRINT #1,CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H00);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H03);CHR$(&HC0);

Page C-6

9001041 Rev. D

SATO M-8400RV

Appendix C: Custom Characters and Graphics

PRINT #1,CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H07);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H0F);
PRINT #1,CHR$(&HF0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H0F);CHR$(&HF0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);
PRINT #1,CHR$(&H00);CHR$(&H0F);CHR$(&HF0);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H0F);CHR$(&HF0);CHR$(&H00);
PRINT #1,CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H07);CHR$(&HE0);
PRINT #1,CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H03);CHR$(&HC0);
PRINT #1,CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H00);
PRINT #1,CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H00);CHR$(&H00);
PRINT #1,CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H01);
PRINT #1,CHR$(&H80);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);
PRINT #1,CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);
PRINT #1,CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);
PRINT #1,CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);
PRINT #1,CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H03);CHR$(&HC0);CHR$(&H00);
PRINT #1,CHR$(&H01);CHR$(&H80);CHR$(&H00);CHR$(&H03);CHR$(&HC0);
PRI NT #1,CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H03);
PRINT #1,CHR$(&HC0);CHR$(&H00);CHR$(&H00);CHR$(&H00);CHR$(&H00);
PRINT #1,CHR$(&H03);CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);
PRINT #1,CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);
PRINT #1,CHR$(&HFF);CHR$(&HFF);CHR$(&HFF);
PRINT #1,E$; “Q1"; E$; ”Z"; CHR$(3)
CLOSE #1

The printer output for both the hexadecimal and binary format examples is:

SATO M-8400RV

9001041 Rev. D

Page C-7

Appendix C: Custom Characters and Graphics

PCX GRAPHICS EXAMPLE
A graphics file in a PCX format may also be transmitted to the printer. The file must
not be larger than 32K bytes (DOS file size reported in a DIR listing). For example,

the WIZ.PCX image shown below has a file size of 15076 bytes.
The uncompressed size (PCX is a compressed file) of the file must not be greater than
64K bytes. Generally this is not a problem unless the graphic image is surrounded by
large amount of white space which the PCX algorithm can compress very efficiently.
If this is the case, the file should be recaptured to eliminate the surrounding white
space as much as possible.
The following basic program will send and print this file:
OPEN “WIZ.PCX” FOR INPUT AS #2
DA$ = INPUT$(15706, #2)
C$ = CHR$(27)
WIDTH “LPT1:”, 255
LPRINT C$; “A”;
LPRINT C$; “V150"; C$; ”H100"; C$; “GP15706,”; DA$
LPRINT C$; “Q1"; C$; ”Z";
CLOSE #2

The printer output for this program is:

Page C-8

9001041 Rev. D

SATO M-8400RV

APPENDIX D.
OPTIONAL ACCESSORIES
INTRODUCTION
This section contains instructions for using the following M-8400RV optional features:
• Label Rewinder
• Label Cutter
• Label Dispenser
• PCMCIA Memory Cards
• Calendar

LABEL REWINDER
The rewinder is an external unit that allows for labels and tags to be rewound in rolls
up to 8.5 inches in diameter. It derives its power directly from the printer’s EXT
connector using a built-in cable. The rewinder provides the ability to rewind
tags/labels from the printer and subsequently be unwound for later use with
applicators.
Installation
1. Position the Rewinder at the front of the printer and align it with the label slot.
(The Rewind Wheel/Spindle should be positioned away from the printer.)
2. Connect the built-in cable from the Rewinder to the EXT connector at the rear of
the printer.
3. On the Rewinder, remove the metal clamp from the Rewind Spindle.
4. Feed the lead end of the label stock under the first spindle and onto the Rewind
Spindle. Feed the stock around the spindle once, then replace the metal clamp
over the label stock. Wind another revolution to ensure the labels are secure on
the spindle.
5. Select the REWIND option on the rewinder, then set the power switch to ON. (The
printer must be powered ON for the rewinder to function.)
Removing and Unwinding the Roll
As labels are printed, tension from the rewinder should keep the label stock taut as it
wraps itself on the spindle.
To remove the roll from the spindle, first set the power switch to OFF. Remove the
metal clamp, then remove the rewound roll of labels.

SATO M-8400RV

9001041 Rev. D

Page D-1

Appendix D: Optional Features

To unwind for using with an applicator, first set the power switch OFF. Attach the
lead edge of the labels from the rewind spindle to the applicator entry point. Select
the WIND option on the rewinder, and when ready to begin, set the power switch to
ON.

LABEL CUTTER
The label cutter consists of an internal mechanism that will cut labels or tags as they
exit from the printer. The cutter can be used to print labels of various lengths using
continuous form label/tag stock or to easily separate labels when there is no
perforation at the label gap.
Operator Setup
The following steps should be taken to set up the label cutter.
1. Install the label cutter, following the instructions provided with the unit.
2. Power the printer ON.
3. The printer must be configured to use the Label Cutter option. Switches DSW3-1
and DSW3-2 on the front panel are used to configure the printer. To enable the
cutter, DSW3-1 should be in the ON position and DSW3-2 should be in the
OFF position.
4. Open the Print Head Assembly and feed the edge of the labels/tags into the
cutter assembly and out between the label cutters.

NOTE: Although the cutting blade is fairly well protected, be careful as you feed
labels into the cutter area. You may want to have the printer powered OFF at this
point.
5. Close the Print Head Assembly and place the printer on-line.
6. The Label Cutter is ready for use.
7. Adjust the cut position using the backfeed adjustment procedures outlined in
Section 2, Installation and Configuration.
General Operation
The data stream to be sent to the printer may need to be altered to add the Cutter
Command. If this command is not used, the cutter will default to cut after every label
assuming it has been enabled in the printer configuration. For more details, see
Section 4, Command Codes. As the labels are printed, they will be cut based on the
the data supplied using the cutter command.

Page D-2

9001041 Rev. D

SATO M-8400RV

Appendix D: Optional Features

LABEL DISPENSE OPTION
The M-8400RV Label Dispense Option is an external mechanism that provides
the ability to print labels in the “demand” mode. It is attached to front of the printer.
When the label dispenser is installed and configured for operation, the printer
dispenses one label at a time, peeling the backing from the label, which allows for
immediate application to the product by the operator.
Operator Setup
The following steps should be taken to set up the Label Dispense Option.
1. Install the option using the instructions provided with the unit. The installation
time is approximately 30 minutes.
2. Power the printer ON.
3. The printer must be configured to used the label dispenser option. Switches
DSW3-1 and DSW3-2 on the front panel are used to configure the printer. To
enable the dispenser, both DSW3-1 and DSW3-2 should be in the ON position.
4. Remove enough labels from the backing paper to provide 12 inches of backing free
from labels.
5. Open the Print Head assembly and feed the backing paper through the print area
in the normal manner.
6. At the label exit area, feed the backing paper down and behind the Knurled
Roller, then back down and around the Backing Roller.
7. Feed the backing paper out the slot in the bottom rear of the printer and attach to
the Backing Rewind Spindle.

Label Dispenser Routing

SATO M-8400RV

9001041 Rev. D

Page D-3

Appendix D: Optional Features

8. Close the Print Head and place the printer on-line.
9. The Label Dispense Option is ready for use.
General Operation
Send your data stream in the normal manner to the printer. Labels should print one
at a time, even if your print quantity command requests more than one label. As the
labels are printed and presented for the operator to remove, the backing paper will be
rewound on the spindle. The next label will only print after removing the current
label from the label exit path.

Note: The label dispenser will function only if it has been enabled using the front
panel switches (DSW3-1 and DSW3-2 in the ON positions).
The Label Taken Sensor is adjusted at the factory for the optimal setting for most
label material. However, the use of labels with a substantially different opacity may
require that the threshold be adjusted.

Page D-4

9001041 Rev. D

SATO M-8400RV

Appendix D: Optional Features

PCMCIA MEMORY CARDS
Description
The Memory Card Option provides the connectors and interface board for two
PCMCIA memory cards slots. The two Memory Card slots, labeled 1 and 2, are on a
PC board mounted inside the printer. Access to these cards is gained by removing PC
board compartment cover. The printer memory can be expanded up to 4MB.
Type
Applicable Specifications
Size
Connector Pins
Battery
Write Protect
Low Battery Detect

SRAM
PCMCIA Version 2.1 (JEIDA Version 4.1)
128KB, 256KB, 512KB, 1MB or 2MB
68
Approximately two years (manufacturer dependent)
Yes
Yes

Installation
Instructions for installing the Memory Card Option are included with the installation
kit.
Error Handling
Memory Card error conditions are indicated to the operator using a combination of
the ERROR LED on the front panel, the LCD display (if available) and the audible
indicator.

ERROR DESCRIPTION
Low Battery - Low battery
condition is detected when printer
is powered on.

INDICATION
ERROR LED:
Audible Beep:
Display:

Blinking
1 long
Card Low Battery

REMEDY
Replace Memory Card battery.
Note that all data will be lost when
the battery is removed.

Depress LINE key to print Card
Status.
Card R/W Error
1. No card is inserted.
2. Card is write protected.
3. Invalid store/recall number.
4. Card has not been initialized.

ERROR LED:
Audible Beep:
Display:

Warning
1. Duplicate number.
2. Data not in print area.
3. Data overflows card memory.

Audible Beep:
Display:

SATO M-8400RV

On
1 long
Card R/W Error

1. Insert card into selected slot.
2. Remove write protect tab.
3. Correct program
4. Initialize card with BJF command

Printer must be powered off to
reset.
1 short
None

1. Correct program.
2. Correct program.
3. Use card with more capacity.

Printer will ignore invalid
commands.

9001041 Rev. D

Page D-5

Appendix D: Optional Features

ERROR DESCRIPTION
Low Battery - Low battery
condition is detected when printer
is powered on.

INDICATION
STATUS LED:
Audible Beep:
Display:

Red Blinking
1 long
Card Low Battery

REMEDY
Replace Memory Card battery.
Note that all data will be lost when
the battery is removed.

Depress LINE key to print Card
Status.

Page D-6

Card R/W Error
1. No card is inserted.
2. Card is write protected.
3. Invalid store/recall number.
4. Card has not been initialized.

STATUS LED:
Audible Beep:
Display:

Warning
1. Duplicate number.
2. Data not in print area.
3. Data overflows card memory.

Audible Beep:
Display:

Red
1 long
Card R/W Error

1. Insert card into selected slot.
2. Remove write protect tab.
3. Correct program
4. Initialize card with BJF command

Printer must be powered off to
reset.
1 short
None

1. Correct program.
2. Correct program.
3. Use card with more capacity.

Printer will ignore invalid
commands.

9001041 Rev. D

SATO M-8400RV

Appendix D: Optional Features

CALENDAR
The Calendar Option allows the date and time to be maintained in the local
printer rather than using the system clock. It consists of a special clock chip that
replaces the EEPROM on the main pcb assembly. A qualified technician should
perform the upgrade as it requires modifications to the main PCB assembly. Please
call SATO Technical Support if you need to add this option to an existing printer in
the field.

SATO M-8400RV

9001041 Rev. D

Page D-7

Appendix D: Optional Features

This page left intentionally blank.

Page D-8

9001041 Rev. D

SATO M-8400RV

APPENDIX E.
CUSTOM PROTOCOL COMMAND CODES
DESCRIPTION
This section contains information on creating custom Protocol Command Codes for
operating the M-8400RV. The Protocol Command codes are used to tell the printer
that a specific type of information is being transmitted to the printer. As an example,
the Standard Protocol Command Code specifies the use of an character to tell
the printer that the following character(s) will represent a specific command.
Sometimes the host computer is unable to generate the character or it uses the
 character to control another function. In this case, an Alternate Protocol
Command Code set can be selected for use by placing DIP switch 2-7 in the ON
position. When the Alternate set is selected, the  character is not used and is
instead replaced with a “carrot” (^) character. A command stream would then start
with an “^A” instead of an “A”. These two sets of Protocol Command Codes
are adequate for the majority of all applications, but occasionally situations occur
where conflicts exist when using the Alternate set. In these cases, the user can define
and download a custom set of Protocol Command Codes that are stored in EEPROM
memory in the printer. After these are downloaded, they replace the Alternate
Command Code set when DIP switch DS2-7 is in the ON position. When DIP switch
DS2-7 is in the OFF position, the Standard Protocol Command Codes are used.

DOWNLOAD COMMAND STRUCTURE
The command for downloading a new set of Protocol Command Codes takes the form
of LD,a,b,c,d,e,f,g,h,i. The parameters specified for “a” through “i” can be
transmitted in either ASCII characters or hex notation, allowing a complete 128
character (except for the “,”) set to be used for selecting the custom code.

SATO M-8400RV

PARAMETER

STANDARD SETTING

ALTERNATE SETTING
(DEFAULT)

a

STX

{

b

ETX

}

c

ESC

^

d

ENQ

@

e

CAN

!

f

~

~

g

OFFLINE

]

h (Auto ONLINE)

No

0 = YES
1 = NO

i (Zero Slash)

No

0 = YES
1 = NO

9001041 Rev. D

Page E-1

Appendix E: Custom Protocol Command Codes

RESET
If the custom Protocol Command codes are incorrect or if the printer does not
respond to commands using the custom set, the Alternate Protocol Control Codes can
be restored by the following procedure:
1. Turn the printer off.
2. Place DIP switch DS2-7 in the ON position.
3. Turn power on while simultaneously pressing the FEED and LINE switches.
4. When the message “ALT PROTOCOL DEFAULT COMPLETED” appears on the
display turn the printer off.

ALT PROTOCOL
DEFAULT COMPLETE
For printers that do not have a display panel and the completion of the Protocol
Default is signified by a single “beep”. Once this beep is heard, then turn the
printer off.
5. When the printer is powered up again, the Alternate Protocol Command Code set
will be active. All previous custom settings will be lost.

DOWNLOAD PROCEDURE
The procedure for downloading a custom Protocol Command Code set is:
1. Reset the printer to the default settings using the Reset procedure.
2. Place DIP switch DS2-7 in the ON position.
3. Turn the POWER switch ON while simultaneously pressing the LINE switch. This
places the printer in the USER DOWNLOAD mode as signified by a “User
Download” displayed on the LCD panel.

USER DOWNLOAD
You will hear a single “beep” signifying the printer is in the User Download mode.
4. Set DIP switch DS2-7 in the position to accept the Protocol Control codes to be
used for downloading (i.e. DS2-7 = OFF for Standard codes and DS2-7 ON to use
the Alternate set).
5. Press the LINE key to place the printer in the On-Line mode. The printer is ready
to receive the download command data stream.

Page E-2

9001041 Rev. D

SATO M-8400RV

Appendix E: Custom Protocol Command Codes

6. After the command has been sent, the unit will beep and print a status label. If it
does not beep and print the label, the printer did not accept the data.
7. If the printer does not beep and print a setting label, turn the printer off, check your
download command stream for errors and start the download process over at
step 1.
8. If the custom codes are correct, press the FEED key to accept them and terminate
the download process. If they are incorrect, turn the unit off without pressing the
FEED key and begin the download process again at step 1.

STX=7B ETX=7D ESC=25
ENQ=23 CAN=28 NULL=2A
OFFLINE=7E
AUTO ONLINE
YES
ZERO SLASH
YES

Press the “FEED key to activate
the User Defaults or power the
printer off to ignore them

See Page 4-97, Custom Protocol Command Codes Download for sample command
stream.

SATO M-8400RV

9001041 Rev. D

Page E-3

Appendix E: Custom Protocol Command Codes

This page left intentionally blank.

Page E-4

9001041 Rev. D

SATO M-8400RV



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.4
Linearized                      : No
Create Date                     : 2000:07:20 13:29:47Z
Modify Date                     : 2004:10:05 09:53:48-04:00
Page Count                      : 242
Creation Date                   : 2000:07:20 13:29:47Z
Producer                        : Acrobat Distiller 3.01 for Windows
Author                          : Ernie
Mod Date                        : 2004:10:05 09:53:48-04:00
Metadata Date                   : 2004:10:05 09:53:48-04:00
Creator                         : Ernie
Title                           : COVER.CHP:Corel VENTURA
Page Mode                       : UseOutlines
EXIF Metadata provided by EXIF.tools

Navigation menu