2018年8月31日金曜日

Rasp Pi Zero WH:samba を立てる

 RTKLIB 周りのソースに手を入れる必要が出てきた。たくさんのソースを vi でメンテできるほどのスキルが無いので、samba を立てて Windows のエディターを使うことにした。

 まずは samba のインストール
$ sudo apt-get update
$ sudo apt-get upgrade    <- これはおまけ 
$ sudo apt-get install samba

 続いて /etc/samba/smb.conf の最後に以下を追加

[pi]
    comment = Raspberry Pi
    path = /home/pi
    guest ok = yes
    read only = no
    public = yes
    browsable = yes
    force user = pi
最後に samba を起動
$ sudo service smbd restart
$ sudo service nmbd restart

元ネタはこちら

Rasp Pi Zero WH:WiFi に固定 IP を割り当て

 WiFi につながったのだが、IP アドレスがルータから DHCP で振られていると、ssh でログインするたびに IP アドレスを確認しなくてはならないので固定 IP を割り当てることに。

/etc/dhcpcd.conf の最後に以下を追加
interface wlan0
static ip_address=192.168.10.101/24
static routers=192.168.10.254
static domain_name_servers=192.168.10.254
その後以下を実行して有効に
sudo service dhcpcd reload

元ネタはこちら

2018年8月23日木曜日

AliExpress に注文したら、一週間で届いた

 AliExpress で GPS のアンテナを二つ注文した

 こちらの店これこれ。配送は China Post Registered Air Mail で $8 。注文したのが 8/14、届いたのが 8/21。一週間かからなかった。


2018年8月22日水曜日

Rasp Pi Zero WH:WiFi につなぐ

 Raspberry Pi Zero WH を WiFi 経由でネットワークにつなぐ方法。
$ vim pass.txt
(wifiのパスワードを記載)

$ sudo sh -c 'wpa_passphrase "wifiのアクセスポイント名" < pass.txt >> /etc/wpa_supplicant/wpa_supplicant.conf'

$ sudo wpa_cli reconfigure
この後、
$ sudo raspi-config
 で設定画面を開いて、[2 Network Options] を選択、その後[N2 Wi-fi]を選択。そこで国を選ぶ。その先には進まず、終了。

 いろいろやってるうちに気が付いたらつながっていたので、raspi-config は実行しなくてよいかも。

 元ネタはこちら




Rasp Pi Zero WH:bluetooth 経由でスマホを使ってテザリング

 Raspberry Pi Zero WH を bluetooth 経由でスマホで接続、テザリングしてインターネットにつないだ。

やったこと:

1.OS のアップデート
$ sudo apt-get update
$ sudo apt-get upgrade
この時点のバージョンは
pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.14.62+ #1134 Tue Aug 14 16:58:07 BST 2018 armv6l GNU/Linux

2.スマホとペアリング
$ sudo bluetoothctl
[bluetooth]# scan on
...
Device FF:FF:XX:XX:XX:XX (スマホの型番)
...
[bluetooth]# pair FF:FF:XX:XX:XX:XX
[bluetooth]# exit
 ※元ネタはこちら 、他のサイトでは 'sudo' が無くて動かなかった


3.bluetooth の PAN プロファイルをインストール
$ wget https://raw.githubusercontent.com/mk-fg/fgtk/master/bt-pan

$ chmod 755 bt-pan
$ sudo ./bt-pan client XX:XX:XX:XX:XX:XX

※dbusがないとエラーが出た場合は下記を別途インストール
$ sudo apt-get install python-dbus
 ※元ネタはこちら

----
 結果的にはこれで動いたが、最初、スマホがきちんとネットにつながっていなかったために、一苦労した。

2018年8月20日月曜日

Rasp Pi Zero のセットアップで嵌った

 Raspberry Pi Zero WH を購入。まずは、Windows PC と USB ケーブルでつないで ssh 接続しようとしたら3時間以上かかってしまった。

 原因はどうやら、Windows PC に2015年にインストールした Bonjour らしい。

----
 基本的にはこちらのサイトの手順+こちらのサイトを見てポートの穴あけ。

 やったのだが、さっぱり動かない。RaspPi Zero をイーサネットポートとして認識しているのだが ssh でつなごうとすると「gethostbyname() で raspberrypi.local がみつからない」と出てくる。固定 IP を割り振ったら、ping は返ってくるのだが ssh ではタイムアウト。
 直近の OSイメージを使っていたのだが、念のために記事にあるバージョンのイメージを使ってやってもだめ。

 Bonjour を再インストールしようと Windows 設定画面の[アプリと機能]を開くと [Bonjour] と [Bonjour 印刷サービス] と Bonjour が二つある。そして Bonjour の方の日付が 2015年。そういえば昔、入れた覚えが...。

 とりあえず両方アンインストールして、公式サイトから Bonjour をインストールしなおし。これで無事動いた。
 ちなみに、今確認したところ [Bonjour] と [Bonjour 印刷サービス]は両方あった。[Bonjour]の日付はもちろん今日。

 最新の OS イメージを使っても動くことが確認できた。

----
 最近、こういう予想外のところで嵌ることが少なかったのだが、まぁ、こういことは当然あるさ(笑


2018年8月17日金曜日

CSG Shop に注文したら

 GPS 系のアイテムの多い CSG Shop に注文してみた。

 07/23 の夕方に Web から注文して届いたのは 8/14、ちょうど3週間。

 発送確認のメールは 7/30 00:18(JST)。

 'Carrier' は 'Signed EU post with tracking number 100-500gr' はだったけど、tracking number などの連絡は一切なく。送料は $7.00。

2018年8月15日水曜日

2018年8月14日火曜日

u-blox の M8x +u-Center で BeiDou, QZSS を表示させる方法

 C94-M8P を u-Center に接続すると、default setting では BeiDou, QZSS が表示されない。これを表示されるようにする方法。

2018年8月10日金曜日

Linux:firewall に穴を開ける方法

さくらのクラウドで str2str を動かす際に必要。

確認環境:
 さくらのクラウド上の CentOS Linux release 7.5.1804 (Core) 2018/08/09 作成

firewall-cmd --permanent --add-port=21/tcp
firewall-cmd --reload
 元ネタはこちらの下の方


2018年8月8日水曜日

RTK-GPS:u-blox 6 で raw データを出力させる方法2

 u-blox 6 を u-Center から直接操作して raw データを出力できるようになったのが前回までのあらすじ。

 今回は RTKLIB につないだ u-blox 6 に raw データを出力させ RTK を使うお話。

 OpenStreetMap Wiki の情報
!HEX b5 62 09 01 10 00 c8 16 00 00 00 00 00 00 97 69 21 00 00 00 02 10 2b 22
!HEX b5 62 09 01 10 00 0c 19 00 00 00 00 00 00 83 69 21 00 00 00 02 11 5f f0
のような書式があり、どこで使うのかといろいろ調た。u-Center の [Tools]->[GNSS Configuration]->[GNSS > File] で出力される設定ファイルの内容や、RTKLIB ver.2.4.2 Manual pp.10 の内容から、RTKNAVI の [Input Stream]-> [Cmd] で使える書式と判明。上記2行は「使えるようにする」設定で、データを USB から出力するにはさらに以下の2行が必要。(このあたりも参考にした)
!UBX CFG-MSG 2 16 0 0 0 1 0 0
!UBX CFG-MSG 2 17 0 0 0 1 0 0
  結局下の図のように設定することで、無事 u-blox 6 のモジュールが RTKLIB で特別な操作なしに使えるようになり、同様の設定で RtkGps+ でも使えた。



 スーパーの駐車場で u-blox 6 + RtkGps+ + 善意の基準局(5km 程離れている) で試したところ、Float解までは得られて、緯度経度ともに小数点以下5桁までは安定して表示された。5分ほどでは Fix 解は得られなかったが、このあたりが限界か、調整すれば何とかなるのかはこれからの課題。

2018年8月7日火曜日

RTK-GPS:RtkGps+ で u-blox M8P の RAW データを使う

 RtkGps+ が C94-M8P の RAW データを認識しない件、RTKLIB のバージョンが古いことが原因とあたりを付けた。

 RtkGps+ は github にコードが公開されているので、自分でなんとかしようとしたのだが、異様に手間がかかった。
 まずは Android Studio でビルドできるようにと頑張った。なにせ compileSdkVersion 17, minSdkVersion 14, targetSdkVersion 17、おまけに NDK も使ってる。RTK と直接関係ない機能をあっちこっち潰し、ビルド環境を Windwos から Mac に変え、ビルドができるようになるまで一週間以上かかった。
 ただ、そこからは古い RTKLIB と新しい RTKLIB のソースを見比べながら、割とあっさり C94-M8P の RAW データが使えるようになった。使えるようになったといっても、それっぽく表示がそれっぽくなっただけで、まだ RTK が FIX したわけではないのだが。

 次は戸外で FIX することの確認だ。

p.s.
 いまこのブログを書くために元の github を確認したら、ここ一週間で新しいコミットがいくつも入ってる。 近々新バージョンがリリースされるのだろうか?無駄なことしたかもしれない orz

 まぁ、いろいろと Android の勉強にはなったし、当面の目標は達成されたし、いいことにしよう...