レビューメディア「ジグソー」


Galileo開発ボード

Galileo開発ボード

周辺機器動作報告・相談所

個体差か!?相性か!?

認識が出来たSDカード、出来なかったカード。
公式サイトにはないけど、動作したシールド。
完全ではないけど、何となく動くシールド。

このパーツ動くの?このパーツ動いたよ!みんなで報告・相談!
  • 2014/02/28
  • 蒼-aoi-さん
    シールド基板相当を作られた方は、いらっしゃいますか?
    デジタルピンの7以下と8以上が分かれていますが、これってピッチが2.54になってなくないですか?...対岸はピッチが統一されているようですが。
    I2Cが使えないのは痛いですが、とりあえず、7以下と対岸すべてを使って、シールド相当を作ることにします。

    2014/04/05

  • はにゃさん
    秋月のLPS331AP を使った基板 AE-LPS331 ですが、素直にI2Cでつながりました。
    これでサポートできる大気圧センサが増えます。

    2014/04/06

  • つきさん
    XBeeで相談です。
    みなさん通信に成功されているようですが、私の場合うまくいきません。
    Galileoに載せるものをCoodinator APIにし、3つをrooter ATにしています。
    PCでX-CTUでコマンドを送るとrooterのポートを操作できています。
    ですので、GalileoとXBeeの通信をを疑っています。
    setup内
    Serial1.begin(9600);
    で初期化して、
    loop内でX-CTUで確認したのと同じ値のデータを送っています。
    Serial1.print(0x7E); // スタートビット
    Serial1.print(0x00); // 長さ上位
    Serial1.print(0x10); // 長さ下位
    Serial1.print(0x17); // リモートATコマンド
    Serial1.print(0x00); // フレームID
    // 64bitアドレス
    Serial1.print(0x00);
    Serial1.print(0x13);
    Serial1.print(0xA2);
    Serial1.print(0x00);
    Serial1.print(0x__); //64bitアドレス
    Serial1.print(0x__); //64bitアドレス
    Serial1.print(0x__); //64bitアドレス
    Serial1.print(0x__); //64bitアドレス
    // 16bitアドレス
    Serial1.print(0xFF); // 64bitで指定しているので不明(0xFFFE)でOK
    Serial1.print(0xFE);

    Serial1.print(0x02); // 即反映
    Serial1.print(0x44); // 'D'
    Serial1.print(0x30); // '0'
    Serial1.print(0x04); // L出力
    Serial1.print(0x9F); // チェックサム
    と送っています。

    2014/04/08

  • 蒼-aoi-さん
    つきさん>
    zigbeeには、興味があるのですが、なかなか触る機会がありません。
    本題ですが、Serial.printを使われてますが、writeだったかsendだったかだとどうでしょう?
    式の最中なのでしらべられませんが、取り急ぎ、気になったので、投稿します。

    2014/04/08

  • つきさん
    22: 蒼-aoi-さん
    ありがとうございます。
    それはまだ試してなかったかも。
    早く帰りたくなりました。

    2014/04/08

  • つきさん
    22: 蒼-aoi-さん
    おかげさまで進捗しました。

    write に書き換えの報告です。
    writeの引数はint型なのでキャストしないとコンパイルエラーになりました。
    上記プログラム部分は、以下のように修正しました。
    -----
    Serial1.write((byte)0x7E); // スタートビット
    Serial1.write((byte)0x00); // 長さ上位
    Serial1.write((byte)0x10); // 長さ下位
    Serial1.write((byte)0x17); // リモートATコマンド
    Serial1.write((byte)0x00); // フレームID
    // 64bitアドレス
    Serial1.write((byte)0x00);
    Serial1.write((byte)0x13);
    Serial1.write((byte)0xA2);
    Serial1.write((byte)0x00);
    Serial1.write((byte)0x__); // アドレスを入れてください
    Serial1.write((byte)0x__); // アドレスを入れてください
    Serial1.write((byte)0x__); // アドレスを入れてください
    Serial1.write((byte)0x__); // アドレスを入れてください
    // 16bitアドレス
    Serial1.write((byte)0xFF); // 64bitで指定しているので不明(0xFFFE)でOK
    Serial1.write((byte)0xFE);

    Serial1.write((byte)0x02); // 即反映
    Serial1.write((byte)0x44); // 'D'
    Serial1.write((byte)0x30); // '0'
    Serial1.write((byte)0x04); // L出力
    Serial1.write((byte)0x9F); // チェックサム
    -----


    ではジャンパはXBee側にしておく必要があります。

    2014/04/09

  • 蒼-aoi-さん
    つきさん>
    なにかしら期待する動きに近づいたということでしょうか?
    だとしたら、良かったです。

    ちらっとリファレンスをのぞいてみました。
    printは、ExcelでいうTEXT関数相当というイメージで、数値を文字列として送信する関数。
    writeは、バイナリ(生データ)の出力関数。
    といった感じでしょうか。

    2014/04/09

  • つきさん
    Galileo上のXBeeがコマンドを受け付けていない状況でした。
    コマンドは、PCのツールで動作することを確認していましたので、Galileo-XBee間に問題があると特定しました。

    お陰さまで、だいぶ目的にちかづきました。

    2014/04/09

  • つきさん
    XBeeのデジタルポート出力ができるようになりました。
    参考になるかわかりませんが、公開しました。


    未だマジックナンバーになっている部分が残っていますがご容赦ください。

    2014/04/12

  • いぐなっちさん
    >19 蒼-aoi- さん

    ずいぶん前の登校への返信ですいません。
    8~9のピンフレームは微妙に位置がずれてます。

    I2Cですが、アナログコネクタにも出てきています。
    SDAがA4、SCLがA5です。
    私の環境では、デジタル側SDA/SCLでも、アナログ側でも、ソースの修正無しに動作しています。

    2014/04/13


ZIGSOW にログイン

ZIGSOW会員登録(無料)はこちらから