Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AliEx系ラベルプリンター Phomemo P12を叩いてみる
Search
soburi
May 11, 2023
Technology
0
97
AliEx系ラベルプリンター Phomemo P12を叩いてみる
soburi
May 11, 2023
Tweet
Share
More Decks by soburi
See All by soburi
KiCad 8.0 出ました。
tokitahiroshi
0
300
小江戸らぐ2024/2
tokitahiroshi
0
95
ZephyrRTOSで遊ぼう!
tokitahiroshi
0
340
KiCadのGitLabを見たりWeblateで翻訳してみたりしてみる
tokitahiroshi
0
330
Pico-SDK1.5.0, Zephyr v3.3.0 が出ました。
tokitahiroshi
0
340
F3rdXへの行き方
tokitahiroshi
0
630
WCH CH32V307VをZephyrで試す
tokitahiroshi
0
500
ZephyrRTOSのLongan Nanoへの移植
tokitahiroshi
0
770
zephyrにパッチ送ったら半年店晒しされた話
tokitahiroshi
0
81
Other Decks in Technology
See All in Technology
Perlで始めるeBPF: 自作Loaderの作り方 / Getting started with eBPF in Perl_How to create your own Loader
takehaya
1
1k
TypeScript x Raycast x AIで変える開発者体験
nagauta
1
310
テストコードの品質を客観的な数値で担保しよう〜Mutation Testのすすめ〜
ysknsid25
12
3.7k
普通の Web エンジニアのための様相論理入門 #yapcjapan / YAPC Hakodate 2024
ytaka23
7
1.6k
LINEヤフー新卒採用 コーディングテスト解説 実装問題編
lycorp_recruit_jp
1
13k
DenoでもViteしたい!インポートパスのエイリアスを指定してラクラクアプリ開発
bengo4com
2
2k
Databricks Appのご紹介
databricksjapan
0
400
電子辞書にステータスバーを実装する
puhitaku
0
120
塩野義製薬様のAWS統合管理戦略:Organizations設計と運用の具体例
tkikuchi
0
220
エムスリー全チーム紹介資料 / Introduction of M3 All Teams
m3_engineering
1
340
スタサプ ForSCHOOLアプリのシンプルな設計
recruitengineers
PRO
3
720
Semantic Kernel の Agent 機能試してみた!
okazuki
1
180
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
327
21k
Speed Design
sergeychernyshev
22
490
YesSQL, Process and Tooling at Scale
rocio
167
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
27
1.9k
BBQ
matthewcrist
85
9.2k
Documentation Writing (for coders)
carmenintech
65
4.4k
Git: the NoSQL Database
bkeepers
PRO
425
64k
No one is an island. Learnings from fostering a developers community.
thoeni
19
2.9k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
2
310
Product Roadmaps are Hard
iamctodd
PRO
48
10k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
23k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Transcript
ALIEX系ラベルプリンター PHOMEMO P12を叩いてみる 某F社 常田 裕士
自己紹介 • 常田 裕士 • F社の方から来ました。 • 昔ガラケー、今カーナビ • 最近はCQ出版さんところで色々書かせてもらってます
• KiCad7の記事(トランジスタ技術 2023年2月号) • PythonのC/C++拡張の話(インターフェース 2021年6月号)
PHOMEMO P12 • 要は「テプラ」みたいなやつ • 今Amazonで買うとAliExで買う よりも安い。 • 最近の家庭向けラベルプリン タらしくスマホアプリからBTで
つないで使う。 • テープはDYMOというアメリカ のメーカーの互換
怪レい日本語 • ベイク処理? • もしかして: ベーカリー • しょくひん • もしかしなくても:
食品 • 非言語なので問題なし?
やりたいこと • コマンドラインから簡単に印刷したい。 • Excelからコピペしたりする場合に便利。 • 可愛いスタンプは諦めるが、絵文字ぐらいは出したい。 • PC連携機能は国内メーカーだと、ビジネス向けの高級機には搭載されてい る。
• が、高い。
WIRESHARK • ネットワーク屋さんの友。 • 通信のデータを覗いて解析する。 • Androidを開発者モードにすると、 BTの機器と通信しているのが見える。
解析 • とりあえず白紙のデータを流す。 • 長い白紙のデータを流す。 • 0がいっぱい増えた! • キャプチャしたデータの0のところを1にして送ってみる。 •
黒くなった! • ゼロイチの繰り返しだと?
先頭にヘッダらしきもの があって、あとはゼロ
出力を1mにしたら ゼロがたくさん増えた!
わかったこと • 横96ドットのプリンタである。 • 端の8ドットぐらいは印刷に使えない。実効88ドット。 • モノクロの画像データ送ればそのまま出てくる。 • 単純に96ドット幅の絵を作れば何とでもなる。
ツールを作る • 解析結果から、フォントを並べて画像が作れればOKっぽい。 • Linux方面の人なので、とりあえずコマンドラインで使いたい。 • ちゃんと標準入出力でデータ処理できると嬉しい。 • インストールも楽にやりたい。 •
Pythonで作ってpypiに置いてpipでインストールできるようにしておく。
印刷ツール • 基本的に絵を96ドットでカットして、そのまま吐き出すだけ。 • 通信のお決まりの部分はWireSharkでキャプチャしたまま。 • →よくわからないけど動くからヨシ!
印刷データ作成プログラム • Pythonで作った。 • マルチプラットフォームで使える描画システムのCairoを使ってフォントを描 画する。 • 端の印刷不可領域を考慮してデータを出力する。 • 見切れるときがあるので、調整はできるようにしておく。
• pbmの形式で出力すると、コンソールで印刷イメージが見れて便利。
PBM • 文字通りの0と1でモノクロ データを表現する画像形 式。 • テキストなので、コンソー ルに間違って流してもBeep 音とか鳴らないし、コン ソールがぐちゃぐちゃにな
らない。
使い方 • pip3 install phomemo-p12-tools • phomemo_render_label “Hello World!” |
phomemo_print_p12 –port COM1
デモ
終