跳到正文

正在自动登录…

← 返回项目列表

ngxson/esp32-usb-to-airprint

无线打印无线扫描

将仅支持USB的旧打印机转换为无线打印机和扫描仪,通过ESP32-S3开发板连接打印机并接入WiFi,支持从iPhone、iPad、Mac、Android和Linux设备打印,以及从浏览器或Mac应用扫描。

AI 中文解读 · 根据仓库描述与 README 生成 · 2026/10/27 05:41:31 · 查看原文

值得看C应用与服务
累计 Stars
62
当前热度
1 天内 · 小火
仓库创建时间
打开 GitHub ↗

选用指南

AI 根据 README 整理 · 2026/10/27 05:41:31

适用场景

适用于拥有兼容的Canon打印机(如MG2500系列)且希望实现无线打印和扫描的用户,尤其是使用iPhone、iPad、Mac或Android设备的场景。

查看 README 依据
- **Print** from iPhone, iPad and Mac (AirPrint), Android (Mopria) and Linux, with no drivers or apps. - **Scan** from any browser, from Image Capture and Preview on a Mac, or with the button on the board. - **A web app** on your phone or computer: print PDFs and pictures, scan, keep the files in the browser, and put pages together (rotate, crop, ID card copies) into a PDF. ![](./docs/IMG_3577.jpeg) | | | |---|---| | ![](./docs/screenshot-printer.png) | ![](./docs/screenshot-scanned.png) | | ![](./docs/screenshot-files.png) | ![](./docs/screenshot-process.png) | ## Supported printers
| Series | Models | Scan | |---|---|---| | 🟢 MG2500 | MG2550S | yes | | 🟡 MG2400 | MG2410 to MG2490 | yes | | 🟡 MG2500 | MG2510 to MG2590 (other than the MG2500S) | yes | | 🟡 P200 | P200 | no scanner | | 🟡 MG2900 | MG2910 to MG2990 | yes | | 🟡 MG3000 | MG3010 to MG3090 | yes | | 🟡 E470 | E470 to E478 | yes | | 🟡 E460 | E460 to E468 | yes | | 🟡 iP2800 | iP2810 to iP2899 | no scanner | | 🟡 E3100 | E3170 to E3195 | yes | | 🟡 TS3100 | TS3110 to TS3195 | yes | | 🟡 MP230 | MP230 to MP237 | yes | | 🟡 iP2700 | iP2700 to iP2788 | no scanner |
使用方式

通过PlatformIO构建和上传固件,配置.env文件中的WiFi和打印机名称,然后通过Web应用或设备按钮进行打印和扫描。

查看 README 依据
Optionally: a SSD1315 OLED screen and a 3D-printed case, see later in this tutorial ## Setup **Step 1: Hardware.** Plug the ESP32-S3 into your computer via the COM port on the ESP32 board (NOT the port labelled "USB") ![](./docs/IMG_3538.jpeg) **Step 2: Settings.** Build once (`pio run`): this creates `.env`. Edit it: ``` WIFI_SSID=your-network WIFI_PASSWORD=your-password PRINTER_NAME=Canon MG2500 (ESP32) HOSTNAME=canon-mg2500 MODE=debug ```
`MODE=debug` lets you update the board over WiFi later (see below); `MODE=normal` does without. `.env` is git-ignored, so your WiFi password stays local. **Step 3: Flash.** Connect the board's **COM** port to your computer and run `pio run -t upload`. PlatformIO finds the board's serial port; if several are connected, add `--upload-port /dev/cu.usbmodem…`. ## Using it Plug the printer to the port labelled "USB"
NOTE: You may also need to bridge the "USB-OTG" solder join on the board, so that it supplies 5V to the printer. While the printer doesn't actively use 5V, it sense the USB plug using this signal. - **The web app:** open `http://canon-mg2500.local/` (your `HOSTNAME`) on your phone or computer. - **The button on the board** (BOOT, or one on GPIO4): press to scan, press twice for a test page, hold 2 s to cancel. - **Print from a phone or a Mac:** on an iPhone, Share → Print and pick the printer. On a Mac, add it in System Settings → Printers & Scanners.
部署要求

需要一块带有两个USB-C接口的ESP32-S3开发板,并需要配置WiFi网络信息(SSID和密码)。

查看 README 依据
| 🟡 MP250, MP270, MP280 | MP250 to MP288 | yes | | 🟡 MP490, MP493, MP495 | MP490 to MP499 | yes | | 🟡 MX340, MX350 | MX340 to MX358 | yes (glass only) | | 🟡 MX360, MX410, MX420 | MX360 to MX428 | yes (glass only) | - 🟢 Validated on real printer - 🟡 Expected to work, not tested on real hardware yet. The firmware recognises the printer when it is plugged in. Other printers? Please open an issue or a PR. ## What you need Just one thing: An ESP32-S3 dev board with two USB-C ports: ![](./docs/amazon.png)
Optionally: a SSD1315 OLED screen and a 3D-printed case, see later in this tutorial ## Setup **Step 1: Hardware.** Plug the ESP32-S3 into your computer via the COM port on the ESP32 board (NOT the port labelled "USB") ![](./docs/IMG_3538.jpeg) **Step 2: Settings.** Build once (`pio run`): this creates `.env`. Edit it: ``` WIFI_SSID=your-network WIFI_PASSWORD=your-password PRINTER_NAME=Canon MG2500 (ESP32) HOSTNAME=canon-mg2500 MODE=debug ```
已知限制

目前仅支持列出的Canon打印机型号,部分型号尚未在真实硬件上验证,扫描功能可能仅支持玻璃扫描(如MX系列)。

查看 README 依据
| Series | Models | Scan | |---|---|---| | 🟢 MG2500 | MG2550S | yes | | 🟡 MG2400 | MG2410 to MG2490 | yes | | 🟡 MG2500 | MG2510 to MG2590 (other than the MG2500S) | yes | | 🟡 P200 | P200 | no scanner | | 🟡 MG2900 | MG2910 to MG2990 | yes | | 🟡 MG3000 | MG3010 to MG3090 | yes | | 🟡 E470 | E470 to E478 | yes | | 🟡 E460 | E460 to E468 | yes | | 🟡 iP2800 | iP2810 to iP2899 | no scanner | | 🟡 E3100 | E3170 to E3195 | yes | | 🟡 TS3100 | TS3110 to TS3195 | yes | | 🟡 MP230 | MP230 to MP237 | yes | | 🟡 iP2700 | iP2700 to iP2788 | no scanner |
| 🟡 MP250, MP270, MP280 | MP250 to MP288 | yes | | 🟡 MP490, MP493, MP495 | MP490 to MP499 | yes | | 🟡 MX340, MX350 | MX340 to MX358 | yes (glass only) | | 🟡 MX360, MX410, MX420 | MX360 to MX428 | yes (glass only) | - 🟢 Validated on real printer - 🟡 Expected to work, not tested on real hardware yet. The firmware recognises the printer when it is plugged in. Other printers? Please open an issue or a PR. ## What you need Just one thing: An ESP32-S3 dev board with two USB-C ports: ![](./docs/amazon.png)

README

正在加载 README…

收录信息

仓库创建时间
2026/10/27 00:18:54
首次达标收录
2026/10/27 05:36:39
统计更新时间
2026/10/27 07:36:10

按创建时长与累计 Stars 判断等级。首次达标收录后,即使未达当前门槛仍保留;累计 Stars 和仓库状态会定期更新。确认只有 README 及辅助文件的仓库会停止公开。

模型评估

值得看加权总分 3.8 / 5

新颖度
3.5
实用价值
4.0
成熟度
4.0
实质含量
3.8

由 Jev 模型根据仓库描述与 README 评估,2026/10/27 05:36:39 生成。评分仅供参考,不是代码、安全或许可证审查;热度等级另按创建时长与累计 Stars 计算。

仓库信息

最近推送
2026/10/27 04:49:54
许可证标识
MIT
Fork 数
1
当前状态
未归档

收录记录

按创建时长与累计 Stars 首次收录:小火
首次发现项目