- Как я сделал USB-МФУ беспроводным
- Задача
- Софт
- Железо
- Процесс
- Недостатки
- Планы на будущее
- Разработка и тестирование:
- Результат
- 5 способов сделать проводной принтер беспроводным
- 1. Купить беспроводной адаптер
- 2. Подключите принтер к роутеру через USB
- 3. Подключите принтер к роутеру через Ethernet
- 4. Настройте общий доступ к принтеру на компьютере
- 5. Купите принт-сервер USB-Ethernet
Как я сделал USB-МФУ беспроводным
Говорят, ребенку в школе понадобится цветной принтер и сканер. Да и самому хотелось уже на что-то поменять разваливающийся черно-белый лазерник 1996 года выпуска. Критериями выбора стали: цветность, лазерная технология (перерывы между печатью могут достигать месяцев), автоподатчик оригиналов для сканера и копира, автоматическая двусторонняя печать и Wi-Fi, чтобы поставить этот ящик в дальнем углу. По этим характеристикам подобралась какая-то громадина за 25+ килорублей, что показалось неразумным. И вдруг на работе выдали пару подарочных карт одного известного розового магазина, и пришло ощущение, что надо покупать. К сожалению, в его ассортименте было всего три лазерных МФУ с цветной печатью, ни один из которых не отвечал последним двум требованиям. Спустя два месяца аccортимент ничем не пополнился, а наоборот, сократился до двух позиций на всю Москву, и я решил взять то, что было в наличии и не на витрине.
Счастливчиком оказался HP Laserjet Pro 100 Color MFP M175a, без автоповорота страниц и с подключением только по USB. Кстати, он оказался не таким большим, как я ожидал, и не таким шумным, как пишут в отзывах.
Задача
Если автоматическую двустороннюю печать добавить к принтеру почти невозможно, то отвязать его от компьютера вполне реально.
Простой, но не подошедший мне способ — подключить его к роутеру, раздающему интернет в квартире и, возможно, имеющему порт USB. Этот способ подразумевает, что, во-первых, МФУ должен будет стоять в трехметровой дальности от роутера, во-вторых, роутер даст возможность только печати, а не сканирования тоже (на заводских прошивках).
Второй способ — купить некую коробочку за $35… … и надеяться, что она сможет делать то, что нужно, и вдруг будет совместима с Ubuntu на клиентской стороне. Представитель производителя охотно отвечает что-то невразумительное на замечательном китайском английском. Я надеяться на удачу не стал.
Третий способ, уже годный, позволяет использовать устройство, подключенное по USB к одному компьютеру, на другом компьютере так, как будто оно подключено ко второму, используя хоть локальную сеть, хоть интернет.
Софт
Реализаций существует несколько, но я сразу выбрал ту, что включена в ядро Linux, чтобы заранее избавить себя от каких-либо возможных лицензионных ограничений, платностей, невозможности что-то настроить и прочей зависимости. Называется usbip.
Железо
Можно было найти в шкафу старый D-Link, водрузить на него OpenWRT, но это было бы громоздко и с малой долей участия собственных рук, так что решено было поискать что-нибудь маленькое, всемогущее и недорогое.
Carambola
Размером со спичечный коробок, имеет на борту Wi-Fi, USB-host, 320 MHz MIPS-процессор, потребляет не более 1.5W, ОС OpenWRT, стоит 22 евро.
Raspberry Pi
размер 86х56, Wi-Fi придется докупать внешний и вставлять в USB, 700 MHz -процессор, много на плате того, что не будет использоваться, потребляет 3.5W минимум (700mA при 5V), ОС Linux на выбор, стоит 35 долларов США.
A13-OLinuXino-WIFI
размер 120х120, 1 GHz ARM-процессор, богатая периферия, ОС Linux, потребляет 4.2W (350mA при 12V), стоит 55 евро.
Cubieboard и его китайские аналоги
Похожи на предыдущий вариант.
ALIX от PC Engines
Мой давнишний фаворит, размер 100х160 или 152х152, 500 MHz i386-процессор, без встроенного Wi-Fi, ОС почти любая, потребляет 5W, стоит от 64 до 78 евро.
В результате по критериям размер-энергопотребление-стоимость с учетом достаточности функций был выбран первый вариант — Carambola.
Процесс
Поскольку подключить планировалось только USB и питание, необходимости в плате разработки и корпусе не было, заказал только сам модуль.
Консоль обнаруживается на TXD2-RXD2, 115000 8N1.
Для работы USB в режиме host на пин 21 надо подать 5V (сам модуль работает только на 3.3V), а пин 40 соединить с GND. Белый провод (D+) к пину 39, зеленый (D-) — к 38.
Производитель сообщил, что линии данных кабеля USB можно подключать к модулю напрямую, интернет подсказал, что в этом случае лучше не использовать hot plug, то есть подключать-отключать USB-устройства при обесточенном модуле. Мне это подходит — я собираюсь подключить МФУ раз и навсегда.
OpenWRT был предустановлен один из давнишних Bleeding Edge, я его сразу же обновил до стабильного 12.09 Attitude Adjustment через веб-интерфейс.
Затем в OpenWRT был установлен пакет usbip, который подтянул за собой необходимые модули ядра и утилиты. Осталось дописать пару строк в автозагрузку:
/usr/sbin/usbipd -D /usr/sbin/usbip bind --busid=1-1
На клиентской стороне Ubuntu 13.10. Модули ядра в системе присутствуют, для их автоматической загрузки необходимо их (usbip_core, vhci_hcd) добавить в /etc/modules
Userspace-утилиты, впрочем, отсутствуют. Не стоит ставить их из репозиториев, там версия 0.1.7-3, работать с версией 1.1.1 на OpenWRT не будет. Сделать можно следующим образом:
sudo apt-get install linux-sources tar -jxf /usr/src/linux-source-3.11.0/linux-source-3.11.0.tar.bz2 cd drivers/staging/usbip/userspace/ ./autogen.sh ./configure make sudo make install
sudo usbip attach --remote=192.168.2.16 --busid=1-1
Недостатки
Основной недостаток заключается в том, что соединение usbip-сервера и usbip-клиента — это соединение один-к-одному, то есть если один клиент подключил себе USB-устройство сервера, то другие уже не могут его себе подключить, пока оно не будет отключено первым. Для такого случая можно напрячься и написать страницу управления usbip в веб-интерфейсе OpenWRT, но мне это пока не грозит, МФУ будет использоваться только с одного рабочего места.
Еще недостатком может стать то, что, теоретически, скорость линка по Wi-Fi меньше, чем по USB-кабелю, но в моем частном случае данные при сканировании медленнее идут по кабелю, но это наверное мои локальные проблемы.
Планы на будущее
Сейчас питание модуля у меня осуществляется с помощью DC-преобразователя 12V в 5V и 3.3V:
Он громоздкий и сам занял бы отдельный спичечный коробок. Ему на смену едет из Китая DC-преобразователь 5V в 3.3V, вот такой:
Он совсем малыш и поместится в один спичечный коробок с Carambola (без пинов). Питаться все это станет от старенького телефонного зарядника.
Предел мечтаний — поместить этот коробок внутрь корпуса МФУ, вдруг там найдется местечко, да найти там внутри источник 5V, или по крайней мере еще место под преобразователь с AC 220V. Но на это я решусь только после окончания срока гарантийного ремонта.
Разработка и тестирование:
(Цвета проводков питания произвольны)
Результат
Через два дня после написания топика, быстро как никогда (за пару недель вместо обычных четырех-пяти) приехал из Китая преобразователь напряжения, теперь проект завершен:
Добавка в веб-интерфейс OpenWRT для освобождения USB-устройства: disik.ru/uploads/luci-usbip.tar.gz
5 способов сделать проводной принтер беспроводным
Еще несколько лет назад единственным способом распечатать изображение или текст был вывод информации с компьютера на проводной принтер. Но с распространением мобильных устройств все актуальнее становится беспроводной доступ к принтеру. Рассмотрим 5 способов, как его получить, если ваш принтер не имеет беспроводного интерфейса.
1. Купить беспроводной адаптер
Поищите беспроводной адаптер Wi-Fi (или хотя бы Bluetooth) под имеющуюся модель принтера. Возможно, официальный апгрейд предлагается производителем печатающего устройства. Если нет, посмотрите поддерживаемые модели у адаптеров сторонних разработчиков.
2. Подключите принтер к роутеру через USB
Посмотрите, есть ли у маршрутизатора разъем USB. Чем новее роутер, тем больше шансов, что его можно использовать в качестве USB-хоста. А это значит, что к маршрутизатору несложно подключить и принтер, и внешний накопитель, доступный всем устройствам домашней сети. Почитайте документацию к оборудованию — возможно, придется менять настройки роутера.
3. Подключите принтер к роутеру через Ethernet
Даже если принтер не поддерживает Wi-Fi, у него может быть предусмотрен разъем Ethernet. В этом случае печатающее устройство легко соединить с роутером сетевым кабелем. Скорее всего, придется настраивать принтер для работы в домашней сети — либо кнопками на самом устройстве, либо на компьютере.
Также можно купить адаптер Ethernet-WiFi и сделать принтер беспроводным. Правда, в этом случае его все равно придется подключать к компьютеру, чтобы убедиться в корректности сетевых настроек устройства
4. Настройте общий доступ к принтеру на компьютере
Общий доступ настраивается в MacOS, Linux/UNIX и Windows. В операционной системе Microsoft нужно:
- Кликнуть «Управление» в параметрах принтера.
- Зайти в «Свойства…».
- Перейти на вкладку «Доступ».
- Поставить галочки «Общий доступ…» и «Прорисовка заданий печати…».
Если к домашней сети подключены компьютеры с другими версиями Windows, рекомендуется установить дополнительные драйверы (нижняя секция вкладки «Доступ»). В этом случае не забудьте поставить галочки в чекбоксе «Прорисовка заданий печати» на клиентских машинах.
5. Купите принт-сервер USB-Ethernet
Если ни один способ не подошел, остается покупка специального принт-сервера — устройства, которое позволяет подключить принтер к локальной сети без лишних проблем. Перед покупкой убедитесь в наличии нужных разъемов подключения.
Данный материал является частной записью члена сообщества Club.CNews.
Редакция CNews не несет ответственности за его содержание.