Как подключить и настроить принтер чеков Xprinter XP58 в 1С:Розница, если он печатает иероглифы?

Системный администратор 1С v8.3 (Управляемые формы) 1С:Розница Торговля и дистрибуция
← На главную

Часто при заказе бюджетных чековых принтеров, таких как Xprinter XP58 IIH или XP-80 из Китая, пользователи сталкиваются с типовой проблемой. При подключении устройства к компьютеру оно определяется корректно, тестовые страницы из Windows печатаются, однако при попытке распечатать чек из программы 1С:Розница вместо русского текста на ленте появляются китайские иероглифы. Изменение настроек кодировки строки или кодовой таблицы в самой 1С не дает результатов. Рассмотрим подробнее, почему это происходит, и разберем по шагам несколько рабочих способов решения этой задачи.

Почему принтер печатает иероглифы?

Проанализируем ситуацию: устройства, предназначенные для внутреннего китайского рынка, по умолчанию поставляются с активированным режимом печати китайских символов (Chinese character mode). В этом режиме аппаратная часть принтера перехватывает команды форматирования и игнорирует кириллическую кодировку, которую ему отправляет драйвер или система 1С.

Чтобы убедиться, что проблема именно в этом, выясним текущие настройки памяти самого устройства:

  1. Выключите питание принтера кнопкой на корпусе.
  2. Нажмите и удерживайте кнопку Feed (промотка бумаги).
  3. Не отпуская кнопку, включите питание принтера.
  4. Дождитесь, пока начнется печать, и отпустите кнопку.

Принтер распечатает сервисный чек (Self Test). Найдите в тексте строку Chinese character mode. Если напротив нее стоит значение YES, значит, принтер аппаратно настроен на иероглифы. Наша задача — перевести этот параметр в состояние NO.

Способ 1: Смена кодовой страницы через утилиту Printer Test

Разберем по шагам базовый метод переключения кодировки с помощью комплектной утилиты. Для этого нам понадобится программа Printer Test.exe, которая обычно идет на диске в комплекте с устройством, либо доступна для скачивания на официальном сайте Xprinter.

  1. Запустите утилиту Printer Test.
  2. Перейдите в расширенные настройки, нажав кнопку Advanced.
  3. Найдите поле ввода рядом с кнопкой SetCodePage.
  4. Введите в это поле цифровое значение кодовой страницы. Для кириллицы PC866 чаще всего используется код 17 (на некоторых версиях прошивок это может быть 23 или 9).
  5. Нажмите кнопку SetCodePage, чтобы записать настройку в память устройства.
  6. Откройте настройки подключаемого оборудования в программе 1С:Розница.
  7. В параметрах принтера чеков выберите кодовую таблицу: Page17 - PC866 (Cyrillic #2) и кодировку PC866.

После сохранения настроек распечатайте тестовый чек из 1С. Текст должен отображаться корректно.

Способ 2: Глубокая перепрошивка режима через HEX-команды

Если первый метод не помог, и из 1С всё еще печатаются иероглифы, применим более надежный способ. Мы отправим принтеру прямые шестнадцатеричные (HEX) команды, которые принудительно отключат китайский режим. Для этого понадобится сервисная программа Xprinter v3.0c.

Сделаем следующее:

  1. Скачайте, распакуйте и запустите утилиту Xprinter v3.0c.
  2. В поле выбора интерфейса установите USB.
  3. В выпадающем списке выберите вашу модель принтера (например, XP-58 или XP-80).
  4. Поставьте галочку в чекбоксе HEX — это позволит отправлять сырые машинные коды.
  5. В текстовое окно для ввода команд скопируйте и вставьте следующую строку: 1F 1B 1F FE 01
  6. Нажмите кнопку PRINT. Принтер не издаст никаких звуков и ничего не напечатает — это нормально, команда просто записалась в буфер.
  7. Очистите окно ввода и вставьте вторую команду: 1F 1B FE 11
  8. Снова нажмите кнопку PRINT.

После выполнения этих команд аппаратный режим иероглифов будет отключен. Перезагрузите принтер и выполните тестовую печать из 1С — кириллица должна работать идеально.

Конфликт драйверов и режимы работы

Посмотрим на дополнительные факторы, которые могут мешать корректной печати. Некоторые современные принтеры Xprinter являются гибридными, то есть могут работать как принтеры этикеток (Label mode) и как принтеры чеков (Receipt mode). Если устройство находится в режиме этикеток, при отправке кассового чека из 1С может произойти сбой разметки и кодировки. Переключение режимов обычно выполняется удержанием кнопки паузы или подачи бумаги при включении.

Также обратим внимание на драйверы Windows. Рекомендуемой и наиболее стабильной версией является пакет XPrinter Driver Setup V7.77. Важно: если вы несколько раз устанавливали разные драйверы (например, от XP-80C для принтера XP-58), в системе могут возникнуть дублирующие устройства с застрявшими очередями печати. Обязательно удалите все неиспользуемые копии принтеров через панель управления Устройства и принтеры.

Настройка принтера Xprinter в Alt Linux

Для пользователей систем на базе Linux (например, Alt Linux) процесс настройки отличается. Рассмотрим основные шаги:

  1. В Linux настройка чаще всего производится штатными средствами через веб-интерфейс CUPS (обычно доступен по адресу localhost:631) или системную утилиту system-config-printer.
  2. Устройство определяется по USB автоматически. Чтобы проверить связь, можно отправить текстовый тест напрямую в порт командой через терминал: echo "Тест" >> /dev/usb/lp0
  3. Главная сложность при работе с 1С на Linux заключается в том, что платформа часто требует подключения принтера чеков строго через COM-порт. Если принтер работает по USB, необходимо создать символические ссылки (symlink) с помощью правил udev, чтобы система видела устройство как виртуальный COM-порт, например ttyUSB0.
  4. При использовании официальных драйверов с сайта производителя установку нужно запускать от имени суперпользователя. Для скрипта установки следует выдать максимальные права командой: chmod 777 install.sh

Выполнив указанные шаги, вы сможете добиться стабильной работы чековых принтеров Xprinter с русским языком как в среде Windows, так и в Linux.

← На главную