むとう@おうちです。
ごぶさたしてます。 久しぶりに夏休みというものを味わって、はじけてました(^-^;) # http://qml.610t.org/FreeBSD/SummerVacation2008.html OSC2008 Nagoyaで、Gainerの中の人のお話を聴く機会がありまして、横川さん のSqueak+Gainerも紹介されていました。 私、ハードウエアが付録につくと、ついつい雑誌を買ってしまう人なのですが、 その中にDesign Wave Magazine 2008/05のCortex-M3(ARM)基板というのも入っ ていました。これには、Gainerのサブセットも実装されており、3軸の加速度 センサーもあるので、Squeak+Gainerと一緒に使うと、リアルハンドルとか作 れて、結構面白いです。 # が、残念ながらFreeBSDでは、使えない… で、本題ですが、FreeBSDとかでも使いたいので、SparkFunのGainer基板を購 入して、Squeak+GainerをMacやFreeBSDで試していました。 で、2つほど疑問点が出てきましたので、識者の方教えてください。 1. Squeak+Gainer側の話 Squeak+Gainer(14)のGNSerialClient class >> findClientでは、シリアルを3 番目からなめているように見えます。 これは、Windowsでは、0-2はレガシーのシリアルがいることが多いからですか ね? この感じだと、Unix系だと/dev/ttyS3とかからなめられてしまいませんかね? 2. SqueakのSerialPluginの実装の話 手元の3.9-7のVMのソースでは、 - Squeak-3.9-7/platforms/unix/plugins/SerialPlugin/sqUnixSerial.c の最初の方で、 {{{ 21 /*** Module variables ***/ 22 23 /* portNum 0=/dev/ttyS0, etc. */ 24 /* include 1 byte for NUL at end */ 25 #define PORT_NAME_SIZE 11 26 static const char serialPortBaseName[] = "/dev/ttyS0"; 27 }}} と、シリアルデバイスは/dev/ttyS[0-9]とかを仮定しているように見えます。 これが、USBの場合、/dev/ttyU[0-9]などになる実装も多いようですし、Macな どでは/dev/cu.usbserial-xxxxxxとかだったります。 これって、どないしたもんでしょうか? MacのVMって、この辺どうなってるんでしょうか? Gainerだけだと、シリアルプロキシーとか使えばいいのかもしれませんが… では、情報いただければ幸いです。 -- 武藤 武士@「あおによし」自宅より E-mail:[hidden email] URL:http://qml.610T.org/ ・水面の泡のように、フラフラ揺れたり、沈んだり浮かんだり ・自転車操業中 http://qml.610T.org/cycling/ |
横川です。
Squeak+Gainerに興味を持っていただきありがとうございます。 二つとも同時に反応する人が少ないようで、なかなか「遊んでみたよ」報告が聞 けないので寂しく思っていました。 On Fri, 12 Sep 2008 16:53:31 +0900 Takeshi MUTOH <[hidden email]> wrote: > で、本題ですが、FreeBSDとかでも使いたいので、SparkFunのGainer基板を購 > 入して、Squeak+GainerをMacやFreeBSDで試していました。 > で、2つほど疑問点が出てきましたので、識者の方教えてください。 > > 1. Squeak+Gainer側の話 > Squeak+Gainer(14)のGNSerialClient class >> findClientでは、シリアルを3 > 番目からなめているように見えます。 > これは、Windowsでは、0-2はレガシーのシリアルがいることが多いからですか > ね? > > この感じだと、Unix系だと/dev/ttyS3とかからなめられてしまいませんかね? 手元のWindowsPCで「あ、動いた」レベルで放置状態です。 このへん詳しくないので情報(や実装)ほしいです。 シリアルポートの自動認識の常套手段ってあるのでしょうか? >詳しい人 Scratch Boardはどうしてるのかな? -- ! Koji Yokokawa <[hidden email]> http://www.yengawa.com/ ^self new! |
こんにちは、阿部です。
2008/09/13 22:11 Koji Yokokawa <[hidden email]>: > シリアルポートの自動認識の常套手段ってあるのでしょうか? >詳しい人 > Scratch Boardはどうしてるのかな? Scratchの最新版は1.3ですが、ソースが公開されているものは1.2.1です。 http://scratch.mit.edu/pages/source これを見ると、Windowsのことしか考えていないように見えるのですが、COM1-32までをスキャンするようになっています(SensorBoardMorph>>portNames)。 おもしろいのは、stepしながら、scanStateを変更していき(off, start, checkData, on)、それに応じて、実行されるメソッドも変えていっているところでしょうか(SensorBoardMorph >>scanForPort)。 そのため、デバッガでは追いかけられず、苦労したような記憶があります。 //abee -- 阿部 和広 EMAIL [hidden email] |
むとう@おうちです。
仕事その2が本日終了。 # 来年は未定(;-;)… なんか、すごい昔の話ですが… この話題の成果(?)は、C5での野良デモと か、Smalltalk勉強会での野良デモ未遂とかあるのですが、 K*BUGってところでお話ししてました(BSD寄りなので注意)。 - http://qml.610t.org/FreeBSD/Serial2008.html あとは、「WindowsVM、シリアルって、COM10より大き いと使えないことない?」ってのも調べてたりしてました。 - http://qml.610t.org/squeak/ On 2008/09/13, at 22:54, Kazuhiro ABE wrote: >> シリアルポートの自動認識の常套手段ってあるのでしょう >> か? >詳しい人 >> Scratch Boardはどうしてるのかな? > Scratchの最新版は1.3ですが、ソースが公開されているものは > 1.2.1です。 > http://scratch.mit.edu/pages/source すいません、まだソース見てません。今はもう1.3.1のソース 公開してるのですね。 しかし、ここ見るとScratchPlugin関連のソースもあるのですね。 これは、FreeBSDでも嬉しいなぁ。 > これを見ると、Windowsのことしか考えていないように見え > るのですが、COM1-32までをスキャンするようになっています > (SensorBoardMorph>>portNames)。 そもそも、COM10より大きいので使えてる人います? ではでは。 -- 武藤 武士@「あおによし」自宅より E-mail:[hidden email] URL:http://qml.610T.org/ ・にんじんだもの、赤くもなればあまくもなる ・健康でいられるのが一番だなぁ… |
こんにちは、阿部です。
2009/03/13 16:09 Takeshi MUTOH <[hidden email]>: > すいません、まだソース見てません。今はもう1.3.1のソース公開してるのですね。 はい。 > しかし、ここ見るとScratchPlugin関連のソースもあるのですね。 私のSD 3月号の記事では「ない」と書いてしまいましたが、おっしゃるとおり、「ある」の間違いです。すみません。 http://d.hatena.ne.jp/abee2/20090210/1234263060 > そもそも、COM10より大きいので使えてる人います? 私もダメです。 どうやらこれはWin32の仕様というかバグというかでMicrosoftが回避方法を公開していますが、今のところsqWin32SerialPort.cは対応していないようです。 http://support.microsoft.com/default.aspx?scid=kb;ja;JP115831 //abee -- 阿部 和広 EMAIL [hidden email] |
むとう@おうちです。
On 2009/03/13, at 17:04, Kazuhiro ABE wrote: >> しかし、ここ見るとScratchPlugin関連のソースもあるの >> ですね。 > 私のSD 3月号の記事では「ない」と書いてしまいました > が、おっしゃるとおり、「ある」の間違いです。すみません。 > http://d.hatena.ne.jp/abee2/20090210/1234263060 あ、この記事もまだ読んでないです(_o_) >> そもそも、COM10より大きいので使えてる人います? > 私もダメです。 > どうやらこれはWin32の仕様というかバグというかでMicrosoft > が回避方法を公開していますが、今のところ > sqWin32SerialPort.cは対応していないようです。 > http://support.microsoft.com/default.aspx?scid=kb;ja;JP115831 私もそう思っています。 - http://qml.610t.org/squeak/mutoh_20090207.html ちょっと、WindowsVMの開発環境を作る元気がなくて、検証ま ではしてないんですが… あと、書き忘れてましたが、Linuxの方は他の方も以下のよう な修正を出されてます。 - http://bugs.squeak.org/view.php?id=7266 けど、これしてしまうと、イメージ側でunixかどうかみて コード書かないとダメなので、いかがなもんかいなと個人的には 思ってます。 # まあ、僕のプラグイン直接書き換えるってのよりは100倍ま しだとは思いますが;-p 僕の考えている落としどころとしては、VMのコマンドライン オプションにdevice prefixを指定できるようにするってのな んですが、皆さんはどう思われます? では。 -- 武藤 武士@「あおによし」自宅より E-mail:[hidden email] URL:http://qml.610T.org/ ・にんげんは一度に一つしかでけへんいうとるやろ ・健康でいられるのが一番だなぁ… |
Free forum by Nabble | Edit this page |