Edited at

MacOSXでP/ECEにアプリ転送

More than 1 year has passed since last update.


前文

AQUAPLUSが一昔前に出していた携帯端末P/ECE、開発環境やデバイスドライバの対応がWindows(公式ではXP,2000,98)のみなのですが、筆者が最近MacBook Proばかり触っていてWindows起動するのが面倒なので、Mac向けの開発環境を用意しようという試み。

linuxでp/eace使うをもとにBSDベースのMacOSXでやるので、セットアップのコマンドは変わりますがLinuxでも動きます。

ちなみにWindows7,8,10対応は以下のいずれかの情報をご参照ください。


環境

MacBook Pro 2017 (MacOS High Sierra 10.13.2)

HyperDrive Hub for USB-C(USB-Aポート取り出し)


接続確認

まずはUSB接続して、認識されているか確認(USBハブの種類や接続ポートによって若干結果違うと思います)

$ system_profiler SPUSBDataType

(不要部分省略)
PIECE PME-001:

Product ID: 0x1000
Vendor ID: 0x0e19
Version: 1.00
Speed: Up to 12 Mb/sec
Manufacturer: OeRSTED, Inc.
Location ID: 0x14320000 / 19
Current Available (mA): 500
Current Required (mA): 100
Extra Operating Current (mA): 0

アプリケーション→ユーティリティ→システム情報を起動して、ハードウェア→USBでも見れます。


セットアップ

linuxでp/eace使うで公開されているLinux用isdそのままだといくらか不具合があったので、以下リポジトリで改修したものを使います(@autch さん @sawanaoyuki さんご協力ありがとうございます!)。クローンまたはダウンロードしてください。

https://github.com/zurachu/isd_for_linux

ビルドにはlibusb-1.0系が必要です。筆者はパッケージ管理が容易なようHomebrewでインストールしましたが、公式の.tar.bzかGitHubリポジトリを落としてきてビルドするなり、任意のやり方でどうぞ。


全コマンド

$ brew install libusb

$ git clone https://github.com/zurachu/isd_for_linux.git
$ cd isd_for_linux

# cmake でビルドする場合

$ brew install cmake
$ mkdir -p build && cd build
$ cmake ../
$ make

# autoconf でビルドする場合

$ brew install autoconf
$ autoreconf -i
$ ./configure
$ make


実行

$ ./isd -c

でエラー等出なければ接続成功。

あとはツールのusage見てください。


Linux向け補足

USBアクセスするには、スーパーユーザで実行するか、udevファイルを適用する必要があります。

https://github.com/zurachu/isd_for_linux/blob/master/90-piece-me.rules


できないこと


  • 本家isdの全機能を搭載している訳ではありませんし、コマンド体系も異なります。

  • ドライバを書いている訳ではないので、Wineを使ったところで、P/ECEと通信するWindows用ソフトをそのまま使うことはできません。同じようにlibusbを使う形で書き換えるか、いっそ通信ライブラリ(ism〜())をlibusb使って丸ごと移植して、それとリンクするかですね。


後書き

コンパイラやリソース変換ツールはWineで動かせるのではということで、また今度。


参考文献