Raspberry Pi – eInk Screen の PaPiRus を日本語対応させて遊ぶ

13043382_1262056263809211_5131613470112809408_n IoTとかよくわかりませんが、Raspberry Pi の追加モジュールで電子ペーパーの「PaPiRus」で遊んでいるのでメモ。

購入したもの

 

MODMYPI
http://www.modmypi.com/

Raspberry Pi 3 – Model B
£24.99 GBP

PaPiRus ePaper / eInk Screen HAT for Raspberry Pi – Large
£29.16 GBP

送料も合わせて日本円で10,301JPYでした。

 

OS(Raspbian)インストール

 

Noobs
https://www.raspberrypi.org/downloads/noobs/

今まで知らなかったんだけどNoobs使えば簡単にRaspbianとかがインストールできる。

Windows IoT入れてみたかったんだけどRaspberry Pi 3に対応したPreview版がどうにもダウンロードできず断念して普通にRaspbianインストール。

Noobs Lite使ってオンラインからRaspbianを入手するときは有線でのNW接続が必要。

 

Wifi接続

 

一旦HDMIでTVに挿してGUIでやるととっても簡単。Mac的に右上のアイコンからWifi接続可能

 

PaPiRus導入 – HW

 

なんとPaPiRusには説明書が当然ながら入っておらず、オンラインにもマニュアルがありません!でも下記を見れば完璧。

Getting PaPiRus to work (and then break it …)
Frederick Vandenbosch
http://frederickvandenbosch.be/?p=1483

要約すると下記手順

  • 金色の小さい棒x1をハンダでくっつける
  • 小さいスイッチx4をハンダでくっつける
  • eInk Screenと基盤を接続
  • プラスチックの支柱を四隅につけてプラスチックのネジでRaspberryとPaPiRusを合体
  • 両面テープみたいなやつでeInk Screenと基盤を固定

ハンダゴテとか持ってないのでハンダが必要なところはやらななかったのですがとりあえず表示させる分にはしなくて大丈夫です。この金の棒はなんの意味あるんだろう?

    両面テープみたいなやつもとりあえずめんどくさいのでセロハンテープでぴたっと。

PapiRus導入 – SW

 

基本上記ブログを見ればOK.要約すると下記手順

  • Webにあるインストールスクリプトを実行
  • raspi-configでSPIの有効化
  • papirus-頭文字のコマンドが使えるようになる
  • 「sudo papirus-set 2.7」という感じで画面サイズ指定
  • コマンドはどうやら全部Pythonなので複製してカスタマイズ簡単
    念のためインストールスクリプト転載

https://raw.githubusercontent.com/PiSupply/PaPiRus/master/install

#!/usr/bin/env bash

sudo apt-get install git -y
sudo apt-get install python-imaging -y

git clone https://github.com/PiSupply/PaPiRus.git
cd PaPiRus
sudo python setup.py install    # Install PaPirRus python library
papirus-setup    # Install drivers and setup epaper

 

Pythonの日本語対応について

 

Java脳の俺にはまだ理解できてないけど、下記を参考させてもらえばどうにかなりそう。

python2.xでの日本語(マルチバイト文字)問題を一掃する!(その1)http://www.exsoft.net/blog/entry/ec1edx

 

RSSのPythonモジュール

 

RSS読み込ますモジュールは下記インストールして利用。

feedparser 5.2.1

https://pypi.python.org/pypi/feedparser

 

コーディング

 

標準なのかとかあまり理解してないけどPython Imaging LibraryであるPILというライブラリ経由で1bitのbitmap作ってPapirusに送れば描画できる感じ。

なので日本語への対応はPaPiRusじゃなくPILに対して日本語を使えるようにすればOK。インストールすると入るpapirus-writeのコードを少しいじればOK。

適当に日本語フォント持ってきて下記コードでRSSをPaPirus上に表示可能。日本語対応のポイントは赤文字。

この場合.decode(‘utf-8’)みたいなのつけなくても大丈夫みたい。一応ソースコードのエンコード指定してるけど途中で日本語文字を直接入力してたからなので不要かも?

ソース:

#!/usr/bin/env python

# -*- coding:utf-8 -*-

import os

import sys

from papirus import Papirus

from PIL import Image

from PIL import ImageDraw

from PIL import ImageFont

import argparse

import feedparser

import datetime

user = os.getuid()

if user != 0:

    print "Please run script as root"

    sys.exit()

# Command line usage

# papirus-wite "RSS-URL"

WHITE = 1

BLACK = 0

def main():

    p = argparse.ArgumentParser()

    p.add_argument(‘url’, type=str)

    p.add_argument(‘–fsize’, ‘-s’,type=int , default=16)

    args = p.parse_args()

    papirus = Papirus()

    if args.url:

        print("Writing to Papirus…….")

        print("RSS URL:" + args.url)

        write_rss(papirus, args.url, args.fsize)

        print("Finished!")

def write_rss(papirus, url, size):

    image = Image.new(‘1’, papirus.size, WHITE)

    draw = ImageDraw.Draw(image)

    font = ImageFont.truetype(‘/home/pi/Osaka.ttf’, size, encoding=’unic’)

    feed = feedparser.parse(url)

    draw.text((0,0), feed.feed.title, font=font, fill=BLACK)

    curLine = 1

    for entry in feed.entries:

        title = entry.title

        draw.text((0, size*curLine), title, font=font, fill=BLACK)

        curLine += 1

    now = datetime.datetime.now().strftime("%Y/%m/%d %H:%M:%S")

    draw.text((0, size*curLine), now, font=font, fill=BLACK)

    papirus.display(image)

    papirus.update()

if __name__ == ‘__main__’:

    main()

 

 

実行:

 

sudo ./papirus-rss http://news.yahoo.co.jp/pickup/rss.xml

 

 

実行結果:

13043382_1262056263809211_5131613470112809408_n

cronにでも仕込めば定期更新。

広告
カテゴリー:Raspberry タグ: ,

Windows 8.1 – ファイルエクスプローラーでお気に入りを起動時に表示

image Windows 8.1のファイル エクスプローラーは起動すると「ライブラリ」がデフォルトで表示されますよね。でも私は「お気に入り」をデフォルトで表示して欲しいんですよね。そしてその方法はあったのですが結構ぴたり合う情報が見つけることができなかったので自分でメモ。

参考文書

http://michisugara.jp/archives/2013/win_explorer.html http://www.eightforums.com/tutorials/13591-clsid-key-guid-shortcuts-list-windows-8-a.html

「お気に入り」を起動時に表示する手順

デスクトップなどで右クリック-新規作成-ショートカット image   下記場所を入力。 C:\Windows\explorer.exe shell:::{323CA680-C24D-4099-B94D-446DD2D7249E} image   名前を設定。 image   例えばタスクバーに表示させる。 image   これでFavoritesに一発で飛ぶFile Explorerのリンクが出来ました。 image   欠点として、実行するとタスクバーに2つ表示されてしまいます。まぁそこまで不便じゃないからいいかな。 image

その他のフォルダに飛ばしたいとき

上記参考文書にも情報ありますが、下記のレジストリにあるCLSIDを検索して使えばその他特殊なフォルダへのショートカットが作れるらしいです。

  HKEY_CLASSES_ROOT\CLSID\

image

カテゴリー:Others タグ:

Buffalo VR-S1000 VPN to AWS

http://buffalo.jp/product/wired-lan/router/vr-s1000/

1

とてつもなくBlog久しぶりですが、ずっと前から知識を付けたかったVPNなのですが、Buffaloから3万くらいで変えるIPsec対応のVPNルータが出たので買って色々とりあえず成功したのでメモ。とっても知識不足なので間違いが多いと思います。

自宅とAmazon AWS EC2を同じLANで動かしているような状態にするのが主目的です。

 

Buffalo VR-S1000で出来る事

http://buffalo.jp/product/wired-lan/router/vr-s1000/#feature-1

要するに「IPsec VPN」と「L2TP over IPsec」ができる感じ。

資料や写真をスピーディに共有できる

「IPsec VPN」とは要するにいわゆるVPNですね。上記図だとVR-S1000が2台になってますが、私の場合はAWSと繋ぎたいので片方はAWSの「Virtual Private Gateway」ですね。

場所を選ばすにその場でアクセス可能

「L2TP over IPsec」というのは要するにiPhoneを自宅LANにつないじゃう感じですね。自宅が192.168.1.0/24だとして、iPhone側は192.168.2.0/24でDHCPしてくれてルーティングしてくれてって感じ。

Amazon Virtual Private Cloudで出来る事

http://aws.amazon.com/jp/documentation/vpc/

色々なことが出来て全部を理解できていないのですが、要するにEC2インスタンスを独自のサブネットで構成出来て、インターネット用のGWを設けたり設けなかったり、VPN用のGWを設けたり設けなかったなかったりという感じ。似たようなキーワードが多くてわかりづらいので羅列。3文字はAWS上でのIDのプレフィックス。

  • VPC – Amazon Virtual Private Cloud
    • Amazon EC2インスタンスを独自のサブネットで構成できる機能の全体総称。逆にVPCを使わない通常のEC2だと自分自身以外のアカウントのEC2インスタンスとも同じサブネットに入っちゃうらしいです。AZかRegionのレベルでだろうけど詳しくないです。
  • IGW – Internet Gateway
    • VPCとインターネットを繋ぐGW。逆にIGWを設定しなければインターネットとの接続を完全に遮断できる。
  • CGW – Customer Gateway
    • VPNするときの自宅側のGW。つまりVR-S1000の事。
  • VPG – Virtual Private Gateway
    • VPNするときのAWS側のGW。物理的には1VPGで2グローバルIPアドレスが割り当てられて、2本のVPNコネクションを作ろうとするみたいです。
  • VPN – VPN Connection
    • VPNするときCGWとVPGを設定して、最後にVPNを設定すればVPNの接続が確立します。
    • NW構成

      うちの場合はマンション全体でインターネットの面倒を見てくれいているので(グローバルIPのListenはもちろん出来ない)、マンションの回線を使ってVPNは試せないです。普通にプロバイダ契約している場合は可能です。私の場合はモバイルWifiルータ経由で試しに構築。

    image「WM-3600R」はクレードルが付いているので、WM-3600RとVR-S1000間を有線LANで繋げられるのです。要するに自宅から「10.0.0.167」でRDP接続したいのです。

    EC2

    上記のようにVPC内にそれなりに構築。IPアドレスは10.0.0.167に勝手になった。とりあえずSecurity Gatewayはゆるい設定に。上記例だとEIPとかIGWに割り当ててるけど要らないはず。

    image

 

VPC

VPCとしては「Route Tables」に一行加えて、VPN接続を設定しただけの感じ。これで正しいかよく分かりません。よく考えると「VPN Connection」でも同じの加えてるからどっちか不要そう。

image

image

image

image

image

image

image

image

image

image

image

 

WM-3400R

とにかく通信はすべてVR-S1000へ流す設定。

image

VR-S1000

VPN1本だけ設定。よくわからないけど「IKEポリシー」というのと「VPNポリシー」というのを作る必要がある。細かい設定内容はAWSの「VPN Connection」から「Download Configuration」してその内容を適当に採用。

image

image

image

 

PCからEC2へのRDP接続

上記設定が終われば、後は自宅PCからなぜか「10.0.0.167」というAWS内部IPアドレスで接続可能に。

image

 

image

カテゴリー:AWS タグ:

Developing for Android – エミュレータ高速化

clip_image002

Androidの開発に使うEmulator、やたら重い、遅いです。諦めていたのですが最近になって高速化できることを知ったので記述。

参考URL:

Android developers – Configuring Virtual Machine Acceleration

http://developer.android.com/guide/developing/devices/emulator.html#accel-vm

どうやらIntel-VTとかの仮想化技術を使って早くしてくれるみたいです。今のところ(2012/5/20)はAndroid 2.3.3 (API 10)でしか提供されていないようです。

Android SDKがRevision 17以上だったらEclipseからのインストール+1個だけインストーラ実行で簡単にインストールできるみたいなので一本道でご紹介。

clip_image006

Eclipseを起動、Android SDK Managerで上記の通り、下記3つをチェックしてインストール

・Android 2.3.3 (API 10)
__・SDK Platform
__・Intel Atom X86 System Image
・Extras
__・Intel Hardware Accelerated Execution Manager

clip_image008

おそらく通常下記フォルダにインストールされる「IntelHaxm.exe」(Intel Hardware Accelerated Execution Manager)を実行。次へ次へでインストール。

C:\Users\[User Name]\android-sdks\extras\intel\Hardware_Accelerated_Execution_Manager

必要に応じて下記コマンドでRunningになっているか確認。

sc query intelhaxm

clip_image009

Eclipse上のAndroid Virtual Device Managerで、上記のようにインストールした「Intel Atom x86 System Image (Intel Corporation) – API Level 10」を用いてエミュレータの作成。

あとはこのエミュレータを実行して使用する。通常のエミュレータと比べてだいぶ速い模様。起動も速いし各種動作も速い。

image

カテゴリー:Others

おすすめiPhoneアプリ – Perfect Word – 英単語勉強

http://itunes.apple.com/jp/app/perfect-word-1.5-ying-dan/id364352735

clip_image002

単語勉強ソフトを探してたんだけどいいのがなくて、やっとそれなりに納得出来るソフトに出会ったのでご紹介。とにかく電車でもイヤホン無しで使えて(=音声なくても勉強できて)、単語をタイプして覚えて、実績が溜まっていくソフトが欲しかったです。

こいつは800円と高いんですけど、下手な物買うよりこれがオススメ。

ちょっと勉強の流れが変わっています。まず「この単語知ってる?知らない?」というような○×をやって(Active Sampler)、その結果を元に15単語前後を勉強対象にして暗記を行なっていく(単語トレーナー、今日の単語)形です。

clip_image004

これがメニュー画面。

clip_image006

これがActive Samplerという画面。ここで×にしたのが要するに勉強対象となります。こいつで勉強対象を決めるので、必ずやる必要があります。レベルにあわせて適当に見繕ってくれる機能もあったら最高なんだけどなぁ。

clip_image008

これが単語トレーナーの1段目。こんな感じでズラズラ単語が出るのでまず見て覚えます。

clip_image010

単語トレーナーの2段目。勉強対象とそれ以外の単語を入り混ぜてズラズラ出て。勉強対象だったら○を押すというので刷り込みを行います。

clip_image012

これが単語トレーナーの3段目。音声を聞いて単語を書きます。ここ、音声なので電車とかだとヘッドフォンがないとできません。電車の場合は次の4段目(日本語から英語)だけをやれば十分なので、特に問題ないです。

clip_image014

これが単語トレーナーの4段目。日本語から英語にします。

こんな感じで4段階に分けて15単語前後を勉強することになるので、一回やれば結構頭に刷り込まれる気がして良い感じです。

clip_image016

これが今日の単語の画面です。Active Samplerで抽出した単語がズラズラ並んで、下のボタンを押せば単語トレーナーの4段目(日本語から英語)が早速勉強できます。電車とかイヤホンするのもめんどくさい時とかはActive Samplerやって、今日の単語から単語トレーナーの4段目やれば十分ですね。

clip_image018

すでに勉強した単語の一覧もこんな感じで出ます。右上の暗記した単語数を増やすことに燃えそうな気がする(笑)暗記した単語から単語トレーナーの4段目ができてもいいんですけどね~。

clip_image020

これが学習ヘルパーの画面。要するに勉強実績ですね。解釈できる単語といのは勉強した単語数じゃなくて、Active Samplerとかの結果この人が理解できるであろう単語数を出しているだけです。

ちなみに他に試したソフトは下記でした。

  • 英語力UP英単語8000 PRO
  • 英単完全攻略8000語 for GREE
  • 英単熟語50冊 全集 – SUPER英単語30000
  • 聞くPLAY英単語TOEIC目指せ800点(1000単語) – 例文まで聞いて覚える!
カテゴリー:iPhone Apps タグ: ,

プロジェクト管理 – BitNami Redmine stack for windows – installation screenshot

http://www.redmine.org/

clip_image001

プロジェクト管理ソフト、最近traclightningを使ってたんだけどredmineが便利そうで、でも構築がちょっとだけ癖ありだったので自分用メモ。

日本語サイト:

http://redmine.jp/

対象バージョン:

http://bitnami.org/ja/stack/redmine

bitnami-redmine-1.3.0-1-windows-installer.exe

今回の対象OS:

Windows Server 2008 R2 Datacenter SP1

※Amazon EC2 m1.large instance

SVN使うのでTortoiseSVN:

http://tortoisesvn.net/downloads.html

http://downloads.sourceforge.net/tortoisesvn/TortoiseSVN-1.7.3.22386-x64-svn-1.7.2.msi?download

TortoiseSVN-1.7.3.22386-x64-svn-1.7.2.msi

概要

  • ダウンロード・インストール
  • 日本語に向いたテーマ導入
  • サブバージョン設定
  • プロジェクト設定

ダウンロード・インストール

色々自分で個別にインストールするのめんどくさいので全入りのBitnami RedmineをWindowsにインストールします。

http://bitnami.org/ja/stack/redmine

clip_image003

インストールの言語選択。日本語も選べるんだけど一部文字がちゃんと表示されなくて不便なので英語推奨。

clip_image004

clip_image005

clip_image006

clip_image007

ここで入力するパスワードはredmineだけじゃなくてdbとかでも流用されます。

clip_image008

clip_image009

clip_image010

clip_image011

clip_image012

clip_image013

インストールにはそこそこ時間かかります。

clip_image014

日本語に向いたテーマ導入

日本語に向いた良い感じなテーマが書きで紹介されていて実際良い感じなんで導入。

Redmine.JP Blog -日本語環境で読みやすいRedmine用テーマ「farend basic」公開

http://blog.redmine.jp/articles/farend-basic-theme/

コマンドプロンプトで書きコマンドを打ち込めばインストール(テーマの追加)はできます。

cd “\Program Files\BitNami Redmine Stack\apps\redmine”

..\..\git\bin\git clone git://github.com/farend/redmine_theme_farend_basic.git public/themes/farend_basic

clip_image016

下記の操作で適用します。

http://localhost/redmine/

clip_image018

インストール時に設定したID(デフォルトはuser)とパスワードを使って管理者ログイン。

clip_image020

clip_image022

clip_image024

clip_image026分かりづらいけどフォントが変わっていつも通りな感じなフォントになる。 clip_image028

サブバージョン設定

サブバージョン自身はインストールされます。ただしRedmineのプロジェクトを作った時に自動でサブバージョンのレポジトリを用意してくれないみたいでした。(何か設定したらやってくれるのかな?)。なのでこのあと作成する「test」プロジェクト向けにサブバージョンのレポジトリを作ってみます。

詳細については下記readmeに書いてあります。

C:\Program Files\BitNami Redmine Stack\README.txt

ざっくり一本道で紹介します。

レポジトリの作成

mkdir c:\svn

“C:\Program Files\BitNami Redmine Stack\subversion\bin\svnadmin.exe” create c:\svn\test

clip_image030

設定の変更

C:\svn\test\conf\svnserve.conf

下記三箇所をコメントアウト

clip_image032

C:\svn\test\conf\passwd

とりあえず用意されているユーザをわかりやすくするためそのまま利用。コメントアウトする。

clip_image034

インポート

“C:\Program Files\BitNami Redmine Stack\subversion\bin\svn.exe” import c:\svn\test\ svn://localhost:3690/svn/test/ -m “first import”

Administratorのパスワードを聞かれるけど、多分Administratorというユーザはレポジトリにいないので、harryを使う。パスワードはこの場合harryssecret。

clip_image036

インポートの最後にE720033のエラーが出るけど、どうやら大丈夫みたい。

clip_image038

TortoiseSVNで見るとこんな感じにこれで使える。(readme.txtというファイルをとりあえず追加)

clip_image040

プロジェクト設定

Redmineのプロジェクト作って上記のサブバージョンレポジトリと連結させます。プロジェクト作成自身は直感系で出来るみたいなので詳細割愛。

clip_image042

clip_image044

clip_image046clip_image048

これでレポジトリの内容が見れるようになります。

clip_image050

カテゴリー:Others

Amazon EC2 – インスタンス起動スクリーンショット

http://aws.amazon.com/

clip_image001

AmazonEC2が便利でしょうがないので、こんな感じで簡単にWindows仮想マシンが起動できるんですよという感じのスクリーンショットご紹介。

AWSインスタンスの起動

clip_image003

Windows Server 2008 64bitでも選で、Continue。

clip_image005

T1.microだと安いけどクソ遅いんで変更するためEdit details

clip_image007

M1.largeを選んでsave details

clip_image009

起動

clip_image011

閉じる

clip_image013

インスタンス一覧画面に戻る。起動はm1.largeでも数分必要。Status Checksというところでおおよそ起動が完了したか分かる。下記画面はインストールしかけた直後でまだ起動完了していない。

ちなみにt1.microだと遅い時は数十分レベル起動に時間がかかる。(Windows Server 2008しかためしてないです)

clip_image015

Status Checks列が2/2 checks ~という表示になって数分経ったら起動完了(=リモートデスクトップで接続できる)。まずはランダムで設定されているAdministratorユーザのパスワード取得。

clip_image017clip_image019clip_image021

clip_image023

こんな感じでパスワード取得。Decrypted Passwordの文字列を確保しておく。

clip_image025

ホスト名を確認。色々確認方法あるけど例えばここからコピー。

clip_image027

あとは普通にRDP。

clip_image028

clip_image030

clip_image032

カテゴリー:Others タグ: