GR-SAKURA
GR-KURUMI
GR-COTTON
GR-CITRUS
GR-PEACH
GR-KAEDE
GR-ADZUKI
GR-LYCHEE
GR-ROSE
GR-MANGO(*)
SNShield
Web Compiler
IDE for GR
TOPPERS関連
女子美コラボ
その他
※プロデューサミーティング中
作り方使い方資料
イベント関連
作品記事
体験記事
ライブラリ
ツール
その他・過去ファイル
最近、LinuxでDTRを落とさずに、GR-KURUMIやGR-COTTONと、シリアル通信したいという要望が、ちらほらきてるので、ソースコードは、MacOSX用で、ちょちょっと作ったもんですが、下記URLにて、githubに公開しました。もし、プロジェクトリポジトリが欲しい方おられれば、ライターの方も、追加します。なお、これらのツールは、まったくの個人の道楽で作っているものですというか、レベルとしては、卒研生の最初のお仕事でしょうね(懐昔)。
多分、Linuxでは、インクルードファイルのパスやファイル名が異なってるかもしれないです。Linux環境がないので、差分を、できれば、お教えください。
https://github.com/digiponta/TERM4GR-KURUMI
ちゃんとデバックもしてないですが、ご活用いただければ、幸いです。ライセンスは、BSD liteにしています。ライセンスは、ソース開示義務なし商用利用の許可で、もっと使いやすものありますかね。なお、既知のバグとしては、FTDIに残っているデータ?が消せてないので、それが、起動直後、表示されてしまうこと。本当の原因は特定で着ていません。
あと、ラズパイで、書き込みとprintfデバックできるとうれしい方おられれますかね?
> なお、既知のバグとしては、FTDIに残っているデータ?が消せてないので、> それが、起動直後、表示されてしまうこと。本当の原因は特定で着ていません。
自己レスですけど、タイミングの問題だったのか、sleep(1);を入れてたら、ゴミの表示が出なくなりました。
github.com/.../TERM4GR-KURUMI
こんにちは、
Linux で使うべく、VSW2GR-KURUMIの時と同様に
main.c の15行目 #include <sys/ioctl_compat.h>をコメントアウトして、
make とやったらコンパイルできました。
それから term4gr-kurumi を起動してみたのですが、うまく行かず、
下記の現象が発生して、原因を調べています。
(1) vsw2gr-kurumi の方が動かなくなってしまった。
(2) 今までできなかった minicom での"hello"表示が、
なぜかできるようになってしまった。
(3) ハード的に DTR を切断した状態にすると term4gr-kurumi でも
"hello" と表示される。
(4) PCの電源を落として再起動しても(1)(2)(3)が発生。
再起動後 term4gr-kurumi を一度も走らせなくてもこの状態が続く
上記(1)はちょっと困っちゃってます。
Win 版ではライターもモニターも正常に動いたので GR-KURUMI 自体の
問題では無さそうです。
PC を再起動しても戻らないという事はどこかに設定ファィルが残留して
いるかもしれません。
環境書くのを忘れてました。
Vine Linux 6.3
gcc version 4.4.5
ncurses version 5.6
です。
動作確認、有難うございます。POSIXのAPIを呼んでるだけなので、状態は保存されない仕様のはずです。不思議です。ただ、コントロールCでなく、killコマンドで強制終了するとと、画面表示は乱れたままになるかもしれません。
あと、確認ですが、USB-シリアル変換は、例えば、SparkfunのFTDIでしょうか? あと、不具合が生じたあと、いったん、USBケーブルをさしなおしてみてください。もしかすると、openしたプロセスが生き残っているのかもしれません。
あと、ioctl.hのパスの修正が再度必要になるかもしれないのですが、できれば、linuxの方は、raspbianのブランチでお試しください。現在、返事の内容から察すると、masterブランチを使用していると思いますが、Raspbian(BSD系Linux)では、APIの挙動の違いで起きる途中で止まるバグを修正しています。
git pull https://github.com/digiponta/TERM4GR-KURUMI.git raspbian
で落とせると思います。もしくは、プルダウンメニューで、ブランチを、raspbianを選んだあとダウンロードすることで得られます。
ーーーーーーー
話は、変わるのですが、書き込みツールの移植を進めていますが、Raspbianでは、そのまま動かないことが判明しています。オシロでTxとRXを見ていると、R-KURUMIからデータ応答があるのだけど、Raspbian側のreadシステムコールがマイナス1のエラーが返ってきている状態というとこまでは、確認。しかし、色々、差違があって、悩ましいですね。
こんばんは
raspbian の方は何も改変せず、make でビルドできましたが、
状況は変わりません。
USB-シリアル変換は SWITCHSCIENCE の FTDI で FT232RL を使用したものです。
別な FTDI(sparkfun) を買っておいたのを見つけ出し(買ってたことをすっかり忘れてた)
差し替えた所、vsw2gr-kurumi は動いてくれました。
(term4gr-kurumi の動作確認の方はちょっと躊躇しています^^;)
上記からするとFT232RLのドライバに設定用のファイルがあるか、それともFTDIのカードに
不揮発の設定が残っているかですかね。でも Win では動作してるとなると設定用ファィルが
あるんじゃないかと思っています。
FTDIのチップは専用のAPIで内部のEEPROMに「DTR信号の反転」等設定ができ、KURUMI Writer for Winではその機能が使用できますが、一旦設定すると元に戻さない限り前の設定が生きてるのでそれが効いてるんじゃないでしょうか?
レス、有難うございます。ライタ側との差異で、ターミナルの
39行目に、stat_orgを初期化する
ret = ioctl( pathCom, TIOCMGET, &stat_org );
が抜けているバグを見つけました。MacOSXでは、たぶん、ゼロが返ってきて、問題がなかったものと思われます。今日、帰宅後、動作確認しています。
私のところでは、SparkfunのFTDIを使用しています。
FTDIのEEPROMの設定変更で参考なりそうなページを見つけました。
rin3jp.blogspot.jp/.../ftdi-usb-serialcablekenwood-ts.html
とりあえず、raspbnianブランチですが、「ret = ioctl( pathCom, TIOCMGET, &stat_org );」の呼び忘れは、直して、pushしました。
プログラム的には、起動前の状態に戻すようにしています。
github.com/.../TERM4GR-KURUMI.git raspbian
お手数なのですが、SWITCHサイエンスのFTDIで、再度、お試しいただけるとうれしいです。
digiponta 様
raspbnian 版を落としなおして、ビルドしてみました。何の改変も無く、make が通りました。
そして、SWITCHサイエンスのFTDIで動作させたら、うまく動作し、"hello"の表示をさせることができるようになりました。
いろいろとどうもありがとうございました。
ちょっと説明不足でした。
raspbnian 版を動作させたのは Linux です。
gs様
お手数かけました。誠に有難うございました。
こちらの環境では、全く不具合を確認できなかったので、助かりました。
あと、Raspbianだと、改行に、空行が余計に入って表示されてしまう症状が、出てますが、同様の症状は、ありますでしょうか。
「改行に空行が余計に入る」の症状は無いですね。
gr_sketch.cpp の場合は下のように表示されます。
重ね重ね、有難うございました。
そうなると、Raspbianが特殊なのですね。