raspberrypiでOpenGLESプログラミング

ラズベリーパイでOpenGLのプログラミングをはじめようと思ったが、ラズベリーパイではOpenGLESでプログラムする必要がある。 PCなどではOpenGLプログラミングというとglutやglfwなどが主流のようで、なかなかそのまま動くコードが見つからない。 また、OpenG…

raspberrypi3 yoctoでPiTFT35

以前PiTFT35をyoctoで動作させるためにmeta-pitft35-rpiを作成した^1が、 最近のmeta-raspberrypiでは動作しなくなっていた。 一度、リポジトリの方に問い合わせが来たが、その人がうちのパッチをまとめて(勝手に)meta-raspberrypiにPRを送っていた。 meta-r…

OpenCV3 ArUcoサンプルのビルド

OpenCV3ではopencv_contributeというリポジトリにOpenCVを使用して作成されたライブラリがモジュールとして収録されている。 この中にAR向けマーカー認識ライブラリのArUcoがある。 opencv_contrib/modules/arucoにはCMakeLists.txtが存在するが、これはArUc…

Ubuntuで最新のOpenCV3を使用する

Ubuntu14.04などでは、OpenCVが古いため、最新バージョンを使用するには自分でビルドする必要がある。 ビルド用のスクリプトを作成した。

DragonBoard 410cでYocto

DragonBoard 410cを借りることができた。 実はかなり前から借りていたのだが、個人的に忙しく触る時間が作れないでいた。 このボードは、RaspberryPi3よりも前に出回っていて、かつ、Cortext-A53をコアに搭載しており、WifiもBluetoothもオンボード。 借りた…

recipetoolの使い方(yoctoでmjpg-streamer)

raspberrypiにUVCカメラをつけて、HTTPでストリーミングを行いたいと考えた。 mjpg-streamerを使用することにしたが、 mjpg-streamerはレシピ化されていないため、レシピを自作する必要があった。^1 recipetoolの使用 レシピを作成する場合、ゼロから作成す…

raspberrypi2でMPDサーバ その2

raspberrypi2+DACでMPDサーバを作成する。 今回は作成済みレイヤの使用方法。 レイヤを作成する方法はこちら 機能(おさらい) windows10で共有しているフォルダから音楽ファイルを参照 MPDサーバで音楽ファイルを再生 SYSTEMDを使用 ネットワーク設定にはco…

raspberrypi2でMPDサーバ

raspberrypi2+DACでMPDサーバを作成する。 今回は作成済みレイヤの使用方法ではなく、レイヤを作成する方法をまとめてみる。 作成済みレイヤの使用方法はこちら 機能 windows10で共有しているフォルダから音楽ファイルを参照 MPDサーバで音楽ファイルを再生 …

Ubuntu 15.04でtextlint

Twitterでtextlintが良さげと流れてきたので、Ubuntu15.04に導入してみる。 npmでインストールするのだが、apt-getでインストールされるバージョンでは古く、多少手順が必要だったためメモっておく。 npmのインストール Ubuntuに最新のNode.jsを難なくインス…

pandocで相互参照

pandoc-crossrefを使用すればできるらしい。 cabalのインストール pandoc-crossrefはcabalでインストールできる。 Ubuntu 15.04では、下記のコマンドでcabalをインストールする。 $ sudo apt-get install cabal-install pandoc-crossrefのインストール 下記…

raspberrypi3 yocto 64bit kernel

raspberrypi3のCPUのコアはCortex-A53のため、64bitコードを動作させることができる。 しかし、オフィシャルでリリースしているカーネルは現状32bit版のみとなっている。 探してみたところ、すでにraspberrypi3のカーネルをaarch64で動くようにした猛者がい…

raspberrypi3 yocto2.1

やや時間が経ってしまったがyoctoの2.1がリリースされた。 コードネームは「Krogoth」 RPi3で動作を確認してみる。 作業ディレクトリ 今回は「~/work/yocto/rpi」で作業を行う。 また、ソースコードなどダウンロードしたデータを格納するディレクトリを「~/w…

westonでtouch calibration

RPi3にcocopar 5inch HDMIのLCDを接続してwestonを動かしてみたところ、 うまくタッチできないところがあったのでキャリブレーションを行った。 下記の要領で作業を行う。 タッチデバイスは「ADS7846 Touchscreen」と認識されている。 キャリブレーションはw…

raspbian以外のOSでcocopar 5inch HDMI LCDディスプレイを使用する

cocopar 5 インチIPSハイビジョンLCD ディスプレイを購入した。 HDMI接続のLCDディスプレイとSPI接続のタッチパネルの機能を持つ。 これも基本的にはRaspbianで使用する前提のもののようだが、pokyで動作させたのでメモ。 カーネルは4.1を使用した。 このデ…

pokyでWindowsの共有フォルダをマウントできない

pokyでWindowsの共有フォルダをマウントできないケースがあった。 同じフォルダをUbuntuマシンからmountすると成功するためWindows側の設定は問題なさそう。 例えば下記のような感じだ。 mount -t cifs -o username=mickey //192.168.21.XX/Music /mnt/music…

raspberrypi3のオンボードのbluetoothをRaspbian以外のOSで使用する方法

poky(yocto)などのRaspbian以外のOSでRPi3のオンボードのbluetoothを使用したいと思うケースは多いと思う。 しかし、現時点(20160329)でこれらのOSではおそらくbluetoothはそのままでは機能しない。 (少なくともmeta-raspberrypiの)カーネルからデバイスが見…

yocto master(20160323時点)でsystemd-networkdでエラー

先日、jethroでsystemd-networkdを有効化する方法を紹介したが、このままmasterに適用しても、systemd-networkdの起動に失敗する。 $ systemctl status systemd-networkd * systemd-networkd.service - Network Service Loaded: loaded (/lib/systemd/system…

raspberrypi3でyocto

技適取得済みのRPi3が入手できた。 箱に技適マークが確認できる。 基板はこんな感じ。 meta-raspberrypiもmasterであればRPi3に対応しているようなので動かしてみる。 作業ディレクトリの作成 作業ディレクトリは~/rpi3とする。 $ mkdir ~/rpi3 && cd ~/rpi3…

yocto(jethro)でsystemd-networkdを有効化する

systemdを組み込んだだけだと、ネットワークインターフェイスが有効化されない。 systemdにはネットワークインターフェイスの設定を行うsystemd-networkdが存在するが、 yoctoのsystemdのレシピではデフォルトでは組み込まれない。 connmanを追加する方法も…

connman バージョン1.30以前の落とし穴

システム起動時にNFSやCIFSでリモートのディレクトリをマウントしたい場合などは 確実にネットワークがオンラインになっている必要がある。 ネットワークがオンラインになる前にマウントを試みても失敗するためだ。 systemdでネットワークインターフェイスが…

connmanでスタティックIPアドレス

connmanは特に設定をしない場合dhcpで動的にIPアドレスを取得する。 静的にIPアドレスを割り振りたい場合について調査したのでメモ。 設定ファイル /var/lib/connman/wired.configを以下のような内容で作成しておくと、 有線接続の時に静的IPアドレスが設定…

connman

systemd環境でも動作するネットワークマネージャとしてconnmanというものがある。 使い方についてはこちらが詳しい。 インストールするにはlocal.confに下記を追加する。 IMAGE_INSTALL_append = " connman" bitbakeしてイメージを焼いたところ、boot時にネ…

yocto pulseaudio.socketをレシピからenableする

pulseaudioのUnitはUser Unitであるが、yoctoのUser Unitの取り扱いに問題がありboot時に正しく実行されない。 boot時にpulseaudio.socketが実行されるようにするための方法を調査したのでメモ。 systemdのenableの仕掛け まず、「systemctl enable」をした…

raspberrypi2 yocto systemdでpulseaudio

yoctoのpulseaudioをsystemdで動かしてみた。 今回はレシピを作成したりはしないので若干手順は端折っている。 pulseaudioのインストール pulseaudioを追加するためには、local.confに下記を追加する。 DISTRO_FEATURES_append = " pulseaudio pam" IMAGE_IN…

raspberrypi2 yoctoでsystemd

RPi2でpulseaudioを導入しようとしたところ、pulseaudioをサービスとして使用するには、systemdを利用するほうが従来のsysvinitよりも簡単に行えそうだということがわかった。 ただ単に、初期化スクリプトがsystemd用のもののみ用意されていたというだけの事…

UbuntuでpandocからPDFを出力する。

ubuntu14.04でpandocからPDFを出力する。 pandocの導入 markdownとpandocに関しては過去の記事に記載している。 Ubuntu 14.04にpandocを導入するには以下のコマンドを実行する。 $ sudo apt-get install pandoc Ubuntuのバージョンは14.10でも問題ない。 PDF…

PiTFT3.5でQML(Quick2)アプリケーションが実行できない理由

RPi2にPiTFT3.5を実装したyocto環境でQt5を組み込みQt Quick2のQMLアプリケーションを実行してみたところエラーがでて実行できなかった。 その原因を調査したのでメモ。 原因はOpenGL Qt Quick2はOpenGLに依存している Qt Quick2はOpenGLに依存しており、Ope…

PlantUMLをemacsから使用する(puml-mode)

以前からPlantUMLには興味が合ったが、emacsから便利に利用できそうなモードを見つけたので試してみる。 依存パッケージのインストール $ sudo apt-get install graphviz default-jre plantuml.jarのダウンロード puml-modeのデフォルトでは~/plantuml.jarに…

emacs-mozcを使用する

emacsでの日本語入力のデフォルトであるQuailは非常に使いづらいので、 Linux環境のインプットメソッドで入力するようにしていた。 今までは-nwで起動していたため気にならなかったが、それだとGUI環境でemacsを起動した際に、 入力中の文字が図のようになっ…

Ubuntu 15.10でbitbake qemu-nativeエラー

Ubuntu 15.10でcore-image-satoなどを作ろうとすると、qemu-nativeのdo_configureでエラーになる。 DEBUG: Executing python function sysroot_cleansstate DEBUG: Python function sysroot_cleansstate finished DEBUG: Executing shell function autotools…