PiをノートPC化するPi-Topにユーザーpiでログインしてみたはじめに(注)こちらのページは、2015年に発売されたpi-topの旧バージョンについての記事です。2017年に発売された新バージョンについての記事はこちらになります。OSと呼ばれるOSを用いており、ログイン時にPi-Topサイトのアカウントでログインしなければならないことが不満でした。その主な理由は下記の通りです。universeというものと連携させたいのでしょうが)ログイン時にインターネットに接続していなければならないことログイン時に相手側サーバーがダウンしていたらログインできないことインターネット接続にProxy接続は許されないことそのようなわけで、通常のRaspbianのようにユーザーpiでログインできるようにしてみます。OSを通常のRaspbianに近い外観で使用できるようにもしてみましょう。グラフィカルログイン方式、およびコンソールにログインしてstartxコマンドでXを起動する方式の両方でできました。手順LXterminalを起動し、.xinitrcを無効にします。.xinitrc.bakさらに、X起動時に自動でdashboardというアプリケーションが起動してしまうのを以下で抑制します。.config/lxsession/LXDE-pi/autostart.bak最後に、下記のコマンドでスプラッシュスクリーンを無効にしましょう。後で解説しますが、これは45秒間の動画を流しているだけです。/etc/rcS.d/K01nasplashscreenあとは再起動すれば、ユーザーpiのデスクトップで起動すると思います。バッテリー残量表示のアイコンがありませんが、以下のコマンドで残量が表示できるのでそれほど問題にはならないかなと思います。batteryコンソールログインが良いという方は次の作業も行なってください。OSを普通のRaspbian風に用いる方法も記していますので、必要に応じて最後までご覧ください。コンソールログインしたい場合コンソールにログインしたいという方は、下記に従います。ユーザーpiのパスワードを念のため確認しておきましょう。piというコマンドによりユーザーpiにログインしてみてください。パスワードは「raspberry」ではなく「pi-top」であると思います。そのことを確認できたら次に進みましょう。LXTerminalを起動して下記のコマンドを実行します。(default)」を選択して再起動しましょう。これでコンソールへログインする形式になります。display"というエラーがでますが、これは気にしないことにします。.bash_profile内に書かれたコマンドのせいだと思うのですが、これを消すと別のエラーが出るためです。あとは必要に応じてstartxコマンドでXを起動してください。何をしたのか?上の設定で何をしたのかですが、基本的には「ユーザーpiのログイン時にdashboardというアプリケーションが起動されるのを抑制した」だけです。OSでは45秒間の動画(/home/pi/.pi-top/media/splash.mp4)を流してそれを隠している、というわけです。45秒間待たされるというのはユーザーにとってはメリットは何もないわけで、ちょっとお粗末だなと思います。OSを通常のRaspbian風にする設定を列挙します。LXTerminalが最大化されて起動されるのを防ぐ.config/openbox/lxde-pi-rc.xmlをleafpadなどのテキストエディタで開き、下記の部分を見つけます。</application>この「yes」の部分を「no」に変更してからXを再起動すると、LXTerminalが最大化された状態で開くのを抑制することができます。leafpadも最大化されてい開くかもしれませんが、こちらは、一度小さくしてから終了するとそのサイズが保存されます。タスクバーのアイコンに文字を出すタスクバー上で右クリックして「タスクバー(ウインドウのリスト)Settings」→「アイコンのみ」のチェックを外すメニューボタンのアイコンをRaspbianのものにメニューボタン上で右クリックして「メニューSettings」→「アイコン」を/usr/share/raspberrypi-artwork/raspitr.pngに壁紙をRaspbianのものに壁紙上で右クリックして「デスクトップの設定」→「外観」で「壁紙のモード」を「原寸大のまま中央に配置する」に、「壁紙」を/usr/share/raspberrypi-artwork/raspberry-pi-logo-small.pngに、「背景色」を赤214、緑211、青222に。OSが通常のRaspbianにこの程度近づきました。Piではじめる機械学習」を執筆しました。PiをノートPC化するPi-Topで電子工作(LチカとI2C通信)してみたはじめに(注)こちらのページは、2015年に発売されたpi-topの旧バージョンについての記事です。2017年に発売された新バージョンについての記事はこちらになります。PiのGPIOが全てふさがれている、と述べました。Piの特徴の一つである電子工作との親和性の高さが失われてしまいます。内部の左側にあるHubという基板にはGPIOから引き出されたと思われるメスピンがあり、その仕様がわかれば電子工作ができると思われました。その仕様はいずれ公式に発表されるだろうと考えて放置していましたが、どうにも公開される雰囲気がないので、テスターを用いて自分でピン配置を調べ、実際に簡単な電子工作を行なってみました。下図は定番のLチカを行なっている様子です。※注:ここから先の情報を試す場合、操作を誤るとPi-Topが破壊される恐れがありますので、全て自己責任でお願いします。下図のようにfront/back/upper/lowerを定義します。したとき、Pi-TopのHub基板のピン配置は以下のようになっていました。Piと直結されています。3.3V/5V/16Vのピンは、Pi-Topの電源やバッテリー側から供給されています。どれくらいの電流を流すことができるかわかりませんので、あまり負荷をかけないほうがよいでしょう。PiのGPIOのピン配置と注意深く比較すると、全てのピンが引き出されていることがわかります。重複しているGNDは一つのみ引き出されています。注意点を以下に述べます。SPIに関わるピンは既にPi-Topに使われています。具体的には、.pi-top/sys/hub-controller.pyというPythonスクリプト内で、HUBとの通信(スクリーンの明るさ制御、シャットダウンボタンの命令受信)に使われています。Hub基板上のデバイスによってバッテリー状態の取得に使われています。具体的には、/usr/local/bin/batteryというシェルスクリプトがそれを実行します。I2Cは複数のデバイスを接続できるので、問題にはなりませんそのようなわけで、SPIとUARTのピンを使わなければ一般的な電子工作は行なえそうです。Lチカまずは定番のLチカから試してみます。冒頭のLチカの図を再掲します。上のピン配置でGPIO番号を持っているピンのうち、UART/SPI/I2Cに関わるピン以外の全てでLチカができることを確認しました。Piで学ぶ電子工作」の4章で紹介したものを流用しています。