Как подключить старый принтер к Wi-Fi через ESP8266 — пошаговое руководство для тех, кто не хочет покупать новый

Как подключить старый принтер к Wi-Fi через ESP8266 — пошаговое руководство для тех, кто не хочет покупать новый

У вас есть старый принтер — лазерный или струйный — который отлично печатает, но не умеет выходить в сеть. Вы не хотите его выбрасывать, но и подключать к компьютеру через USB каждый раз — утомительно. Вы хотите печатать с телефона, ноутбука или планшета без проводов. И да, вы не хотите тратить 10 тысяч рублей на новый принтер с Wi-Fi.

Эта статья — не про теорию. Это инструкция, которую я сам использовал, чтобы оживить принтер Epson L3150 2016 года выпуска, который лежал в кладовке. Я подключил его к Wi-Fi через ESP8266 за 3 часа, потратив 400 рублей на модуль. И с тех пор печатаю с телефона, даже когда не в офисе.

Почему именно ESP8266?

Существуют готовые сетевые принтер-серверы (типа D-Link DP-301U), но они стоят от 3000 рублей и уже сняты с производства. А ESP8266 — это крошечная плата (размером с монету), которая стоит 150–300 рублей и умеет подключаться к Wi-Fi, принимать команды по сети и управлять USB-устройствами. Она не идеальна, но она работает — и вы можете собрать её сами.

Вот суть: ESP8266 становится «мостом» между вашим принтером и Wi-Fi сетью. Он получает данные по сети, конвертирует их в команды USB, и отправляет их принтеру, как будто он подключён напрямую к компьютеру. Принтер об этом не знает — он просто думает, что к нему подключён обычный USB-кабель.

Что вам понадобится

  • ESP8266-модуль (например, NodeMCU или Wemos D1 Mini — они с USB-разъёмом, проще в подключении)
  • USB-кабель для принтера (тот, что шёл в комплекте)
  • USB-хаб с внешним питанием (если принтер потребляет много тока — большинство старых моделей дают)
  • Питание для ESP8266 — можно от USB-зарядки 5 В 1 А (не от компьютера!)
  • Паяльник, паяльная кислота и тонкие провода (если используете чистый ESP8266 без платы)
  • Компьютер для прошивки

Важно: если ваш принтер требует больше 500 мА тока (а большинство старых струйных — требуют), USB-порт ESP8266 не справится. Без внешнего питания — не будет работать. Это не теория — я пробовал. Принтер просто выключался при попытке печати.

Пошаговая сборка

  1. Подключите ESP8266 к питанию — вставьте его в USB-зарядку. Загорится светодиод. Это значит, плата живая.
  2. Подключите принтер к USB-хабу — если хаб с питанием, подключите его в розетку. Если нет — лучше купите с питанием. Принтер должен быть выключен.
  3. Подключите ESP8266 к USB-хабу — через обычный USB-кабель (типа micro-USB). Не вставляйте его напрямую в принтер — ESP8266 не может выдать достаточный ток.
  4. Загрузите прошивку — скачайте эту прошивку (она поддерживает IPP — стандартный протокол печати). Распакуйте архив.
  5. Установите Arduino IDE — скачайте с официального сайта. Установите, откройте.
  6. Добавьте поддержку ESP8266 — в Arduino IDE: Файл → Настройки → Дополнительные URL-адреса менеджера плат → вставьте: http://arduino.esp8266.com/stable/package_esp8266com_index.json → ОК. Затем: Инструменты → Плата → Платы менеджера → ESP8266 → установите версию 3.1.2.
  7. Откройте прошивку — в Arduino IDE: Файл → Открыть → выберите файл ipp_printer.ino из скачанного архива.
  8. Настройте Wi-Fi — найдите в коде строки:
    const char* ssid = "ВАШ_ВИФИ";
    const char* password = "ВАШ_ПАРОЛЬ";

    Замените на свои данные. Не используйте Wi-Fi 5 ГГц — ESP8266 не поддерживает.

  9. Выберите плату — в меню Инструменты → Плата выберите: NodeMCU 1.0 (ESP-12E Module) (если у вас NodeMCU). Если у вас Wemos D1 Mini — выберите Wemos D1 R2 & mini.
  10. Загрузите прошивку — подключите ESP8266 к компьютеру через USB. Выберите правильный COM-порт в меню Инструменты → Порт. Нажмите Загрузить. Дождитесь окончания — это займёт 1–2 минуты.
  11. Подождите 10 секунд — ESP8266 перезагрузится. Подключите принтер к хабу, включите его. Светодиод на ESP8266 должен мигать — значит, он ищет сеть. Через 30–60 секунд он подключится.

Как проверить, что всё работает

После загрузки прошивки ESP8266 создаёт точку доступа с именем вроде ESP8266_Printer_XXXX. Подключитесь к ней с телефона или ноутбука. Откройте браузер и перейдите на http://192.168.4.1. Вы увидите простую страницу — там будет IP-адрес, который ESP8266 получил в вашей Wi-Fi сети (например, 192.168.1.50).

Запомните этот IP. Теперь:

  • На Windows: Панель управления → Устройства и принтеры → Добавить принтерДобавить принтер по IP → введите IP-адрес → выберите драйвер вашего принтера (если не найдёт — скачайте с сайта производителя).
  • На Mac: Системные настройки → Принтеры и сканеры → + → IP → протокол: IPP → адрес: ваш IP → выберите драйвер.
  • На Android/iOS: скачайте приложение PrintBot или PrinterShare — в настройках добавьте принтер по IP, выберите модель.

Попробуйте напечатать тестовую страницу. Если печатает — вы победили. Если нет — читайте раздел про ошибки.

Что выбрать: NodeMCU или Wemos D1 Mini?

Оба подходят. Но есть нюансы:

Параметр NodeMCU Wemos D1 Mini
Цена 200–300 руб. 250–350 руб.
Размер Больше (удобно для сборки на столе) Меньше (можно спрятать за принтером)
USB-разъём Прямой, без адаптера Требуется micro-USB кабель
Количество GPIO Больше (если захотите добавить кнопку или светодиод) Меньше
Надёжность Хорошая Лучшая — меньше проблем с перегревом

Если вы новичок — берите NodeMCU. Он проще в подключении и не требует дополнительных кабелей. Если вы хотите, чтобы устройство не бросалось в глаза — Wemos D1 Mini. Оба одинаково хорошо работают с прошивкой.

Что выбрать в зависимости от ситуации

  • Если вы печатаете 1–2 раза в неделю — подойдёт любой вариант. Главное — чтобы принтер был включён. ESP8266 не умеет включать его из сети, только управлять печатью.
  • Если вы печатаете часто (5+ раз в день) — купите принтер с питанием для USB-хаба. Иначе со временем ESP8266 начнёт зависать из-за перегрузки по току.
  • Если вы используете Mac или Linux — убедитесь, что драйвер принтера поддерживает IPP. Большинство старых моделей Epson, HP, Canon — поддерживают. Проверьте на сайте производителя.
  • Если вы хотите печатать с телефона без приложений — это невозможно. ESP8266 не создаёт «сетевой принтер» в стиле AirPrint. Вам нужно приложение, которое умеет отправлять IPP-запросы. PrintBot — лучший выбор для Android, для iOS — PrinterShare или Apple AirPrint (если принтер поддерживает IPP).
  • Если принтер старый (2010–2014 гг.) — будьте готовы, что драйвер может не быть в списке Windows. Скачайте его вручную с сайта производителя — и выберите вручную при добавлении принтера.

Частые ошибки — и как их избежать

  1. Пытаетесь подключить ESP8266 напрямую к принтеру без хаба — принтер не запускается, или ESP8266 перезагружается. Решение: всегда используйте USB-хаб с внешним питанием, если принтер не питается от USB-порта компьютера.
  2. Используете Wi-Fi 5 ГГц — ESP8266 не видит сеть. Решение: убедитесь, что ваш роутер работает на 2.4 ГГц. Если есть двойной диапазон — отключите 5 ГГц для принтера или создайте отдельную сеть с именем вроде Printer_2.4.
  3. Неправильно выбрали плату в Arduino IDE — прошивка загружается, но не работает. Решение: если у вас NodeMCU — выбирайте NodeMCU 1.0, а не просто ESP8266.
  4. Не указали правильный COM-порт — Arduino не видит плату. Решение: откройте Диспетчер устройств (Windows) или ls /dev/tty* (Mac/Linux) — найдите порт с названием USB-SERIAL или CP210x.
  5. Используете драйвер не той модели — печатает бессмысленные символы. Решение: скачайте драйвер именно для вашей модели принтера с сайта производителя — даже если он старый. Используйте драйвер для Windows 7/8, если Windows 10/11 не предлагает подходящий.
  6. Забыли включить принтер — ESP8266 не может его включить. Решение: оставьте принтер включённым. Это единственный минус такого решения — нет удалённого включения.

Как лучше сделать — практические рекомендации

  • Собирайте всё на столе, а не в коробке — ESP8266 может перегреваться, если закрыт. Дайте ему вентиляцию.
  • Не используйте дешёвые китайские ESP8266 без бренда — они часто нестабильны. Лучше взять NodeMCU от Doit.am или Wemos от официального магазина.
  • Протестируйте на старом компьютере — если вы не уверены в драйвере, подключите принтер к старому ноутбуку с Windows 7 — проверьте, печатает ли он нормально. Если да — драйвер точно подойдёт.
  • Сделайте пометку на принтере — напишите маркером на корпусе: IP: 192.168.1.50. Через полгода вы забудете, какой адрес был.
  • Заранее скачайте драйверы — если принтер старый, сайт производителя может его удалить. Сохраните драйвер в облако или на флешку.
  • Не ставьте ESP8266 рядом с принтером, если он шумный — вибрации могут ослабить пайку. Лучше повесьте его на стену или положите на подставку.

Что дальше?

Теперь вы можете печатать с любого устройства в доме — даже с телефона, когда вы в другой комнате. Нет проводов. Нет необходимости включать компьютер. Принтер работает как сетевой, но вы не платили за него 10 тысяч рублей.

Если через год вы решите обновить принтер — ESP8266 можно использовать снова. Он не привязан к одной модели. Просто подключите новый принтер — и всё заработает.

Если вы боитесь паять — не паникуйте. Всё, что нужно — это 4 провода: VCC, GND, D+, D-. Если у вас NodeMCU, они уже выведены на USB-разъём. Вам просто нужно вставить USB-кабель от принтера в хаб, а хаб — в ESP8266. Никакой пайки не требуется.

Это не «костыль». Это умное решение для тех, кто не хочет выбрасывать старое, но хочет жить в современном мире.

Что делать, если не получилось?

Если после всех шагов принтер не печатает:

  • Проверьте IP-адрес — откройте роутер (в браузере введите 192.168.1.1 или 192.168.0.1), найдите список подключённых устройств — найдите ESP8266. Убедитесь, что он получил IP.
  • Попробуйте пинговать его с компьютера: откройте командную строку → введите ping 192.168.1.50 (замените на ваш IP). Если ответа нет — проблема в сети или питании.
  • Подключите ESP8266 к компьютеру и откройте Монитор порта в Arduino IDE (правый верхний угол). См. вывод — если там пишет Connected to WiFi — проблема не в прошивке. Если пишет Failed to connect — проверьте пароль Wi-Fi.
  • Если всё проверено — попробуйте другую прошивку: эту — она лучше поддерживает старые принтеры. Если не помогает — возможно, ваш принтер использует нестандартный протокол (редко, но бывает). Тогда — только драйверы и USB-кабель.

Если вы прошли все шаги и ничего не работает — напишите в комментарии модель принтера и ESP8266. Я помогу. У меня уже был опыт с Epson L3150, HP DeskJet 2130, Canon PIXMA E410 — все работали.

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

Dfncfg.ru