みつきんのメモ

組み込みエンジニアです。Interface誌で「Yocto Projectではじめる 組み込みLinux開発入門」連載中

2016-01-01から1年間の記事一覧

raspberrypi3 meta-raspberrypiでuartコンソール

2017/01/18修正 ラズベリーパイ3にシリアルコンソールでログインしたい。 少し古い情報だと、ラズベリーパイ3はオンボードのBluetoothの影響で、すこし複雑な設定を行う必要があるとなっているが、最近のラズベリーパイ3向けのカーネルでは、config.txtにena…

pandocでplantumlを使う

pandocでドキュメントを書いているときにUMLで図を差し込みたいことがある。 UMLを描くためにはいろいろとツールがあるが、テキストから図を生成できるPlantUMLが便利。 PlantUML自体は以前取り上げたことがあるので、導入方法はこちらで。 pandocではフィル…

CMakeLists.txt 覚書

2020年に書き直したものはこちら プロジェクト名の変数化 プロジェクト名を変数化しておくといろいろと便利。set(変数名 値)で変数を定義できる。 cmake_minimum_required(VERSION 2.8) set(PROJ_NAME hello) add_executable(${PROJ_NAME} ${PROJECT_SOURCE_…

meta-raspberrypi + morty + RPi3のcore-image-satoでエラー

2016/11/17 追記 直したって連絡もらいました!んで、直ってました。Thx!! meta-raspberrypiとmortyでrpi-basic-imageが動いたので、 調子にってcore-image-satoも試してみる。 bitbake core-image-sato WARNING: Host distribution "Ubuntu-16.10" has not …

yocto raspberrypi3でmorty

ちょっと時間が経ってしまったが、yocto 2.2(morty)がリリースされたので、raspberrypi3で動かしてみる。 ベース環境の取得 $ git clone git://git.yoctoproject.org/poky.git -b morty $ cd poky $ git clone git://git.yoctoproject.org/meta-raspberrypi …

yocto meta-raspberrypiでVC4 graphics driverを試す

このように、RaspbianではVC4のgalliumドライバが使用できていたのだが、 最近、meta-raspberrypiでもこの対応が入ったので試してみる。 local.confにMACHINE_FEATURES += "vc4graphics"の行を追加することで、galliumドライバが有効になり、X11環境からOpen…

日本語対応のditaaをpandocで使用する

PlantUMLなどでditaaを使用してみたが、ditaaは便利そうなのに日本語が非対応で残念。 しかし、日本語に対応したditaaも存在する。 これをpandocのフィルタと組み合わせて、pandocのマークダウンから直接、日本語ditaaを使用してみる。 作業ディレクトリ jar…

raspberrypi3 yoctoでSSD1306 OLEDディスプレイを動かす

アマゾンで安価に入手できるOLEDディスプレイを購入した。 I2Cで、VCC、GND、SCL、SDAの4本のみの結線で使用できる。 制御用のICはSSD1306とのこと。 このデバイスはArduinoなどの電子工作用となっているが、意外とラズベリーパイでの動作報告が見当たらな…

raspberrypi3 yoctoでkernel4.8を試す

インターフェース11月号の記事で、linuxカーネルのバージョン4.8からラズベリーパイ3の64ビットが対応されるという情報があった。 筆者が紹介したカーネルは、Electron752さんが4.5および4.6のカーネルに64ビット対応したものだったので、今回はもともと64ビ…

インターフェース 2016年11月号 特集記事の中の「マニアの挑戦!ラズパイ3×64ビットLinux初体験」とmeta-rpi3-aarch64についてのフォロー

今回、ありがたいことに、この記事を書かせていただきました。 しかし、ちょっと手違いとか不運なことが重なってしまったので、すこしフォローをしたいと思います。主には次の2点。 P19の図3について P29〜P31で解説しているmeta-rpi3-aarch64の内容につい…

raspberrypi3 yocto PiTFT3.5を赤く染める(SDKの作成)

先日の記事の最後で、「前回の記事で作成したfirst_window.cのコンパイル結果を実行すると、PiTFT35が赤く染まる」と書いたが、具体的な手順について解説する。 まずはじめに環境を整える必要がある。 PiTFT35の手順でmeta-pitft35-rpiのビルド環境を作成 rp…

raspberrypi3 yoctoでfbcp

PiTFTなどSPI接続のLCDではGPUを使用した描画処理は行えない。 そのためOpenGLESなどのアプリケーションはPiTFTでは使用できない。 しかし、fbcpを使用するとこの問題が解決できる。 fbcpは「Framebuffer Copy」のことで、GPUに描画されているデータをSPI側…

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…