Skip to content

Instantly share code, notes, and snippets.

@jbosboom
Last active April 11, 2026 17:37
Show Gist options
  • Select an option

  • Save jbosboom/fc1ada514573d16343d313be9bf87dab to your computer and use it in GitHub Desktop.

Select an option

Save jbosboom/fc1ada514573d16343d313be9bf87dab to your computer and use it in GitHub Desktop.
Magic barcodes from the manual for PecuMecu TM-10C Handheld 1D&2D Barcode Scanner (ASIN B0FP4Z5LGB)

Like most barcode scanners, the PecuMecu TM-10C scanner is configurable by scanning magic barcodes. A manual and quick-reference card are included with the scanner, but seemingly not posted online. Below is a table containing the data and an image of all barcodes in the manual. The data of all barcodes starts with a 0x80 byte, followed by the string "WSM", followed by 8 ASCII digits, followed by a period character. The images in this table were generated with qrencode. They are not identical to the barcodes in the manual, but they represent the same data.

Action Data Barcode
Restore factory settings <U+80>WSM00020001. restore-factory-settings
USB keyboard mode
(USB descriptors from lsusb)
(USB HID report descriptor)
<U+80>WSM01000001. keyboard
USB CDC ACM (serial/COM) mode
(USB descriptors from lsusb)
<U+80>WSM01000002. serial
Enable sound <U+80>WSM04000001. enable-sound
Disable sound <U+80>WSM04000000. disable-sound
Manual/trigger scanning mode <U+80>WSM02000000. manual-scanning
Continuous/auto-sense scanning mode <U+80>WSM02000002. continuous-scanning
Inductive scanning mode <U+80>WSM02000003. inductive-scanning
Terminate scan data with CR <U+80>WSM05040001. terminate-cr
Terminate scan data with Tab <U+80>WSM05040002. terminate-tab
Terminate scan data with CRLF <U+80>WSM05040003. terminate-crlf
Don't terminate scan data <U+80>WSM05040000. terminate-none
English (U.S.) keyboard mode [1] <U+80>WSM04060000. english
Italian keyboard mode [1] <U+80>WSM04060005. italian
French keyboard mode [1] <U+80>WSM04060002. french
German keyboard mode [1] <U+80>WSM04060003. german
Recognize all symbologies [2] <U+80>WSM07000000. symbologies-all
Recognize default symbologies [3] <U+80>WSM07000002. symbologies-default

[1]: The keyboard language mode changes the simulated keypresses sent when scanning in keyboard mode. The scanner's USB descriptors (including the HID report descriptor) do not vary with keyboard language mode. The keyboard language mode has no effect in CDC ACM (serial/COM) mode.

[2]: The manual warns that enabling all symbologies results in slower scanning.

[3]: The manual does not define the default set of symbologies, but I have successfully scanned the following symbologies with the default setting: Code 11, Code 32, Code 39, Code 93, Code 128, Codabar, EAN-2, EAN-5, EAN-8, EAN-13, GS1-128, JAN, UPC-A, UPC-E, DataMatrix, PDF417, Micro PDF417, QR, Micro QR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment