脳汁portal

アメリカ在住(だった)新米エンジニアがその日学んだIT知識を書き綴るブログ

RasbperryPi3 のACT LEDをheartbeatにしてGPIO出力する

ラズベリーパイ3は基板上に電源ランプのLED(赤)とSDアクセスランプ(緑)の2つがありますが、ACT LEDはGPIOを介して外部LEDに機能をわりあてることができます ACT LED(緑)を外部LEDにする まずはrc.localとかで使いたい github.com GPIOのmodeをout(出力…

ソフトウェアエンジニアがarduinoの割り込みタイマーライブラリを読んでみた

arduinoのタイマーを使って割り込み処理をするにはMsTimer2とflexitimer2があってそれらを読み込めば簡単に出来るのですが、中身を知らないのもあれだなーと思い今回ソースを呼んでUno用に簡略化してみた MsTime2: https://github.com/PaulStoffregen/MsTime…

HTC Viveでテレポート機能を実装する方法

VR

HTC Viveでコントローラーを利用したテレポートの方法です こんなのです ライブラリとしてgithubで公開されている以下のライブラリを利用させていただきます github.com 環境 HTC ViveをUnityで開発するにはSteamVR PluginというPluginを利用することになり…

arduinoを最小構成で自作する(atmega328/8MHz/3.3V/内部クロック)

arduinoはいまや様々な種類が出ていて、かつ安価に購入できるので、IoTなどの分野でも幅広く利用されています しかしarduinoを利用したシステムなどを量産する際に、更に小型化・省コストを狙う際にはarduinoのチップ(atmega328)を利用してarduino自体を自分…

Raspberry PiとArduinoをGPIOでシリアル接続する場合は電圧に注意(3.3V/5V)

Raspberry PiとArduinoをシリアル接続する際は単純につなぐとそれぞれ電圧が違うので壊れてしまう可能性がある(主にラズパイの方が) 入出力電圧 Raspberry PI 入力電圧 0~0.8V : LOW(OFF)として判断 0.8~1.3V : 不定(不安定でどっちになるかわからない) 1.…

Windows Subsystem for Linux(Bash on Windows)をインストールしてみた(英語OS)

2016年に発表されて2017年に正式リリースされ、最近Windows 10 Fall Creators Updateによって簡単にインストールができるようになったWindows Subsystem for Linuxをインストールしてみた ちなみに正式名称として「Windows Subsystem for Linux」になったら…

Unityで3D空間をコントローラーで移動させて、障害物に衝突したらちゃんと止まるようにする

コントローラーを使ってキャラクターを移動させて、障害物にぶつかったら止まるという基本の動作をUnityで実装する方法 つかったもの Unity version unity 5.6.4f1 ユニティちゃん なんでもいいんだけど、以前から使ってみたかったユニティちゃんを利用 ダウ…

Unityでシーン遷移するとライトが暗くなる問題

UnityでSceneManager.LoadScene ("scene名")でシーンを移動すると、移動先のシーンのライトが暗くなる問題が発生した。 問題のシーンを遷移せずに初期画面として実行すると正常にライトが表示されるにも関わらず、他のシーンから移動すると暗くなってしまう…

raspberryPi3にinfluxdb v1.3をインストールする

以前ラズベリーパイにv1.2のinfluxdbをインストールしましたが、今回はv1.3です portaltan.hatenablog.com Install InfluxDB # ライブラリ設定 $ curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add - OK $ source /etc/os-release $ t…

ラズベリーパイの音声をDAC(pcm5102a)でI2S出力する

普段音声出力はRaspberryPi3のオーディオジャック(アナログ出力)から行っていますが、DACを介すことでI2S出力(デジタル出力)に変更する方法です I2S I2Cじゃありません. Inter IC SoundでI2Sです 4本(または3本)の信号線でステレオ音声をシリアル伝送する規…

openssl.cnfは編集せずにオレオレ証明書をSAN対応させてchrome58へinstallする

前回自己証明書の作成方法を書いたんですが、IEとかはその証明書を使えば警告なしでアクセスできるようになるんですがChromeの場合は以下のような警告が出てしまいます これはChromeが今年の春らへんにリリースしたv58から証明書の中の項目のCN(Common Name…

自己証明書の作成方法

自己証明書(オレオレ証明書)の作成方法 基本的には 1. 秘密鍵の作成 2. 秘密鍵を使って証明書署名要求の作成 3. 秘密鍵と証明書署名要求を使って証明書の作成 という流れになる 1. 秘密鍵の作成 $ openssl genrsa -aes128 2048 > test.key genrsa: RSA鍵の作…

ThetaS vs. Gear360(2017)

VR

比較機種 ThetaS(RICHO) theta360.com Gear360(Samsung) www.galaxymobile.jp スペック比較 ThetaS Gear360 静止画解像度(最大) 5376×2688 5472 x 2736 静止画撮影モード オート撮影 シャッター優先 ISO優先 マニュアル撮影 オート撮影 オート撮影補助機能 …

ReactVR 環境設定

react VR facebook.github.io Preparation ### download node.js $ curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - $ sudo apt-get install -y nodejs ### download react vr $ npm install -g react-vr-cli /usr/bin/react-vr -> /usr/li…

WebVRのフレームワークで実写系360度コンテンツを表示する方法(Aframe / google vrview / react vr)

VR

Aframe aframe.io how to use <script src="https://aframe.io/releases/0.5.0/aframe.min.js"></script> <a-scene> <a-sky src="path/to/img"></a-sky> </a-scene> オプション 初期表示の位置変更 <a-sky src="path/to/img" rotation="0 180 0"></a-sky> google vrview 360° Media | Google VR | Google Developers preparation $ git cl…

画像を重ねる方法(positionとかtopとか)

html5で画像を重ねて表示する方法 毎回力技でやっているので備忘録として 使用するpropertyは主にpositionとz-indexと位置に関するtop/left/bottom/right 基点の指定(position) relative, absolute, static, fixedをとる 指定しない場合のデフォルトはstatic…

指定した名前のプロセスが何個立ち上がっているか調べる

コマンド ps aux | grep foobar | grep -v grep | wc -l ps auxで現在動いているプロセスを取得してきて foobarで希望のプロセス名でgrepして プロセスを探すプロセス(このコマンド)を検索結果から外して 何件ヒットするかをwc -lで返す

raspberryPi3のwifiを無効化する方法

raspberryPiをwifiを使わずにEthernetのみで運用する場合の方法 Wifi無効化 以下のコマンドを実行して、ラズパイを再起動すればwifiを無効化できます sudo iwconfig wlan0 txpower off Wifi有効化 再び有効化したいときは以下のコマンドを実行して再起動 sud…

American Airlinesマイレージの有効期限を延長する方法(寄付)

他のアライアンスに比べてAAのマイルの延長は少し大変だった ネットマイルを変換したりフライトに乗ったりすれば延長されるらしいが、今回は1000マイル寄付する形で延長する方法をメモとして残しておく マイルの寄付 1. 以下のサイトにいき、ログインする Do…

ubuntu16.04でapache2の.htaccessを有効化してip制限をする

.htaccessの有効化 sudo vi /etc/apache2/apache2.conf ### 以下の行がアンコメントアウトされていることを確認 AccessFileName .htaccess ### /var/wwwの設定を変更する <Directory /var/www/> Options Indexes FollowSymLinks #AllowOverride None AllowOverride All # Noneから</directory>…

Unityで前のシーンの情報を(無理やり)取得する

Unityは現在のシーン名は取得できるけど、一個前のシーン(つまりどのシーンから遷移してきたか)の取得がデフォルトでできない 色々試行錯誤していたのだけど、以下の方法に落ち着いた 1. データ格納用のクラスを作成 using UnityEngine; using System.Collec…

AWSのEC2のネットワークの速度を測定する

AWS

speed-cliを使ってAWSのインスタンスのネットワーク速度の測定をします AWS 今回は以下の環境のインスタンスを作成しました Tokyoリージョン t2.micro 測定方法 install speedtest-cli sudo apt-get install python-pip sudo pip install speedtest-cli sudo…

ubuntu16.04でApacheのDirectoryIndexを変更する

vi /etc/apache2/mods-available/dir.con ### 以下を修正してapacheをrestartすればよい <IfModule mod_dir.c> DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm </IfModule>

ubuntu16.04にapacheをinstallしてbasic認証をかける

1. install apache apt-get install apache2 アクセスできることを確認 2. basic auth touch /etc/apache2/sites-available/auth-basic.conf vi /etc/apache2/sites-available/auth-basic.conf ### 以下を入力して保存 <Directory /var/www/html> AuthType Basic AuthName "Basic Auth</directory>…

raspberryPIにmp3再生ソフトmpg321をinstallする

1. 出力先の変更 raspi-configから音声出力をAutoから3.5mmジャックに変更(一応) 2. スピーカーのテスト $ speaker-test -t sine -f 1000 3. mpg321のinstall ### library install $ sudo apt-get install mpg321 4. 確認 ### 普通に再生 $ mpg321 foobar.m…

raspberryPiのバックアップ

raspberryPiはSDカードのバックアップをとることで簡単にコピーすることができます。 必要なツール Win32Diskimager Win32 Disk Imager 日本語情報トップページ - OSDN 基本的にイメージとして書き出せればなんでもいいと思います 方法 読み込み(バックアッ…

openCVのGaussianBlurで画像をぼやけさせる

opencvで以下のmballの画像をぼやけさせます method cv2.GaussianBlur(img_src, average_square, sigma_x) img_srcは読んで字のとおり画像 average_squareは正方形を画素数で指定して、その正方形内の色をまとめて平均化してしまう だから(1,1)だとほとんど…

raspberryPiにinfluxdb1.2をinstallする

以前v1.0.2のinstall方法を書きましたが、今回は最新版のinfluxdb1.2をraspberryPiにインストールする方法です。 必要であれば前のパッケージは以下のコマンドで削除しておきましょう $ sudo dpkg --purge influxdb 手順 repositoryの設定 $ sudo apt-get up…

raspberryPiにgvmでGoをインストールする方法

gvmとはgo version managerで、文字通りgo のvesionマネジメントシステム GitHub - moovweb/gvm: Go Version Manager rvmに影響を受けているらしく、似たようなコマンドで使用することが出来る install library $ sudo apt-get install curl git mercurial m…

特定のファイルでだけvimでsyntax onが効かない場合

他のファイルはsyntax onが効くのに特定のファイルでsyntax onが反応しなくてカラー表示できない場合そのファイルのvimの設定ファイルを削除してリセットしてやるといい cd ~/.vim/view rm -i ~=+path+to+file= これで再度vimでファイルを開くと設定ファイル…