1. Introduction
This manual provides comprehensive instructions for the YHDAA M800D Mini CMOS Barcode Scanner Module. This compact and versatile module is designed for integration into various systems, offering efficient 1D and 2D barcode scanning capabilities. It supports multiple interfaces including TTL, RS232, USB, and Micro USB, making it suitable for a wide range of applications such as kiosks, medical equipment, and vending machines.

Figure 1: YHDAA M800D Mini CMOS Barcode Scanner Module with development board.
2. Key Features
- Compact size for easy embedding and fixed installations.
- Supports both manual and auto-sensing scanning modes.
- Multiple interface options: RS232, USB, TTL, and Micro USB.
- Plug and Play functionality, requiring no driver installation for most systems.
- High scanning and decoding ability, capable of reading incomplete and fuzzy codes.
- Reads 1D and 2D barcodes from printed labels or digital screens (e.g., smartphones).
- Suitable for integration into kiosks, flow lines, medical equipment, parcel lockers, supermarket lockers, ticket machines, logistics systems, hospitals, and vending machines.
3. Package Contents
The standard package includes:
- YHDAA M800D Mini CMOS Barcode Scanner Module
- Connecting cable (type depends on selected interface: USB-A to USB-A for USB, USB-A to Micro-USB for Micro USB, TTL 4-pin to TTL 4-pin for TTL, USB-A to RS232 with power supply cable for RS232)
- User Manual (this document)

Figure 2: Example package contents for the scanner module.
4. Specifications
| Attribute | Value |
|---|---|
| Product Type | Bar Code Scanner |
| Model Number | QR Code Scanner (M800D) |
| Brand Name | YHDAA |
| Imaging Sensor | CMOS |
| Optical Source | 620nm Visible red light diode |
| Trigger Mode | Continuous, Auto-Induction |
| Indication | Buzzer & LED |
| Resolution Ratio | 300,000 pixels |
| Interface | RS232, USB, TTL, Micro USB |
| Resolution | 4mil |
| Scan Speed | 500 scans/second |
| Max. Power | 1060mW |
| Working Voltage | 3.3V |
| Current | Max.: 212mA, Working: 156mA~212mA, Stand-by: 156mA |
| Storage Temperature | -40°C ~ 60°C |
| Working Temperature | -20°C ~ 50°C |
| Relative Humidity | 5 ~ 95% |
| Weight (scanner without cable and development board) | 3g |
| Weight (scanner with cable and development board) | 11g |
| Dimensions (scanner without cable and development board) | 21*15*10 mm |
| Dimensions (scanner with cable and development board) | 44*33*11 mm |
| Drop Test | 1.5m fall to concrete |
| Certification | CE, FCC, RoHS, IP54 |
Table 1: Product Specifications.

Figure 3: Technical Parameters.
5. Setup Instructions
The YHDAA M800D module is designed for easy integration. Follow these steps for initial setup:
- Choose the correct interface cable:
- USB Interface: Use a USB-A to USB-A cable.
- Micro USB Interface: Use a USB-A to Micro-USB cable.
- TTL Interface: Use a TTL 4-pin to TTL 4-pin cable.
- RS232 Interface: Use a USB-A to RS232 cable. Note that the RS232 cable also includes a power supply cable (USB-A).
- Connect the module: Connect the appropriate cable to the scanner module and your host device (e.g., Raspberry Pi, PC, Kiosk).
- Power On: Once connected, the module is typically plug-and-play and driver-free for compatible operating systems (Linux, iOS, Android, Windows XP/Vista/7/8/10, Windows Server 2003/2008/2010).

Figure 4: Supported multiple interfaces.
5.1 PIN Signal Definition (for advanced integration)
For custom integrations using the TTL or RS232 interfaces, understanding the PIN definitions is crucial:

Figure 5: Signal definition of PINs.
| PIN | OUT/IN | Definition | Explanation |
|---|---|---|---|
| PIN 1 | - | NC | Leave it or connect it to a low voltage. Do not connect to a high voltage. |
| PIN 2 | PPWER | VCC | Input 3.3V, lower than 3.1V engine reset. |
| PIN 3 | GROUND | GND | - |
| PIN 4 | IN | RXD | Serial port receiver signal. |
| PIN 5 | OUT | TXD | Serial port transmitter signal. |
| PIN 6 | IN | D- | USB port D- signal. |
| PIN 7 | IN | D+ | USB port D+ signal. |
| PIN 8 | - | POWERDOWN | Indicating the engine in the power saving mode. |
| PIN 9 | OUT | BEEP | Passive buzzer output signal, idle low level. |
| PIN 10 | OUT | LED | Decoding success prompt light, idle low level. |
| PIN 11 | IN | WAKE | Weak pull-up, low-level wake-up engine. |
| PIN 12 | IN | TRIG | Weak pull-up, low-level trigger engine decoding. |
Table 2: PIN Signal Definitions.
6. Operating Instructions
The M800D module offers flexible scanning modes:
- Automatic Sensing Mode: In this mode, the scanner automatically detects a barcode or QR code placed within its scanning range and initiates decoding. This is ideal for hands-free operation in kiosks or automated systems.
- Manual Trigger Mode: If your setup includes a trigger button (e.g., connected to PIN 12), you can initiate scanning manually by pressing the button.
Upon successful decoding, the module will typically emit a beep sound (if a buzzer is connected to PIN 9) and/or illuminate an LED (if connected to PIN 10) to indicate a successful scan. The decoded data will be transmitted to the connected host device via the selected interface.
The scanner is capable of reading both 1D and 2D barcodes, whether they are printed on paper, film, or displayed on digital screens like smartphones.

Figure 6: 1D and 2D Barcode Scanning Capability.

Figure 7: System Compatibility.
6.1 Decoding Capabilities
The module supports a wide range of barcode symbologies:
- 1D Barcodes: UPC/EAN (with complementary), Code128, Code39, Code 39 Full ASCII, Codabar, Industrial / Interleaved 2 of 5, Code93, UCC/EAN-128, Code11, ISBN, ISSN, China Post, GS1 Databar, etc.
- 2D Barcodes: PDF417, QR Code, Aztec, DataMatrix, Maxicode, Micro PDF417, etc.
The scanner is designed to handle various code conditions, including fuzzy, incomplete, damaged, wrinkled, reflective, dirty, and color barcodes.

Figure 8: Easy to solve all kinds of complicated codes.
6.2 Demonstration Video
Watch this video for a demonstration of the scanner module in action, showing its plug-and-play functionality and scanning performance:
Video 1: YHDAA M800D Barcode Scanner Module Demonstration.
7. Maintenance
- Cleaning: Gently wipe the scanning window with a soft, lint-free cloth. Avoid abrasive materials or harsh chemicals that could scratch the lens.
- Environmental Conditions: Operate and store the module within the specified temperature and humidity ranges to ensure optimal performance and longevity.
- Physical Protection: While durable (1.5m drop test to concrete), avoid unnecessary physical shocks or impacts to the module.
8. Troubleshooting
- Scanner not responding:
- Ensure the module is correctly connected to the host device via the appropriate cable.
- Verify the host device is powered on and the interface is active.
- Check if the module's LED indicator (if connected) is showing any activity.
- Barcode not scanning:
- Ensure the barcode is clean, clear, and within the module's scanning range and focal distance.
- Try adjusting the angle or distance of the barcode relative to the scanner.
- Confirm the barcode symbology is supported by the module (refer to Decoding Capabilities).
- If in manual trigger mode, ensure the trigger is activated correctly.
- Incorrect data output:
- Verify the host device's input settings are configured correctly for the scanner's output (e.g., keyboard emulation for USB).
- Ensure the correct interface type (USB, RS232, TTL) is selected and configured on both the module and the host.
9. User Tips
- Keyboard Emulation: When using the USB interface, the scanner often functions as a keyboard, directly inputting scanned data into any active text field. This is a convenient "plug n play" feature.
- Screen Scanning: The module is highly effective at recognizing QR codes and other barcodes displayed on smartphone screens, making it versatile for modern applications.
- Custom Integration: For advanced users, the TTL and RS232 interfaces provide flexibility for custom projects, such as with Raspberry Pi, allowing for precise control over the scanning process.
10. Warranty and Support
For warranty information, technical support, or service inquiries, please contact your vendor or the manufacturer directly. Keep your purchase receipt for warranty claims.