日々の戯言 Audio Computer

オーディオやパソコンなど

ASUS tinker boardへOpen GAppsをインストール

ASUS製シングルボードコンピュータtinker boardでAndroidを動かし
Open GAppsをインストールしたメモ

Screenshot_20180201-195203.jpg 

【用意するもの】
Linuxマシン(今回はVirtualMachine上のUbuntuを使った)
adbツール類(adb , lzip)

【全体の流れ】
Linux上でOpen GAppsを展開、再構成しadb pushする。
その後、パーミッションの設定と微調整で完了。

【インストール】
<ツールのインストール>
$sudo apt-get install -y android-tools-adb android-tools-fastboot git rsync lzip

<作業フォルダの作成>
$mkdir ~/tinker
$mkdir ~/tinker/gapps
$mkdir ~/tinker/gapps/pkg
$mkdir ~/tinker/gapps/tmp
$mkdir ~/tinker/gapps/sys

<Open GAppsの展開>
https://github.com/opengapps/arm/releases/からGAppsをダウンロード
今回は「open_gapps-arm-6.0-pico-20180131.zip」
作業フォルダへ展開する。

$unzip open_gapps-arm-6.0-pico-20180131.zip -d gapps/pkg
$find . -name "*.tar.[g|l|x]z" -exec tar -xf {} -C ~/tinker/gapps/tmp/ \;

<シェルスクリプト作成>
GAppsを再構築するため以下内容のスクリプトを作成する。
適当な名前で「tinker」フォルダへ保存。「gap.sh」

#!/bin/bash
for dir in gapps/tmp/*/
    do
      pkg=${dir%*/}
      dpi=$(ls -1 $pkg | head -1)

      echo "Preparing $pkg/$dpi"
      rsync -aq $pkg/$dpi/ gapps/sys/
    done

<シェルスクリプト実行>
chmodで権限を与えるか、sh gap.shで実行

<tinker boardへ転送>
以下、「tinker」フォルダで実行する。
同じDHCPサーバ内にtinker boardは接続し、IPアドレスを確認しておく。

$adb connect 192.168.1.23
$adb root
$adb connect 192.168.1.23
$adb remount
$adb push gapps/sys/. /system/.

<パッケージインストーラの削除>
$adb shell
#rm -rf /system/priv-app/PackageInstaller

実行したら「Ctrl+D」で抜ける。

<tinker board再起動>
$adb reboot

adb root shellに入る
$adb connect 192.168.1.23
$adb root
$adb connect 192.168.1.23
$adb shell

<パーミッションとセットアップウィザードの問題を修正>
#pm grant com.google.android.gms android.permission.ACCESS_COARSE_LOCATION
#pm grant com.google.android.gms android.permission.ACCESS_FINE_LOCATION
#pm grant com.google.android.setupwizard android.permission.READ_PHONE_STATE

<参考URL>
https://tinkerboarding.co.uk/forum/thread-553.html
スポンサーサイト
  1. 2018/02/01(木) 19:58:00|
  2. パソコン
  3. | トラックバック:0
  4. | コメント:1

AMD RADEON HD7970 & R9 280X (Tahiti) BIOS書き換え

現在Android-x86にて使用中のGIGABYTE製AMD RADEON HD7970ビデオカード
「GV-R797OC-3GD」の3Dカクツキを抑えるためBIOSを書き換えたメモ

【使用したツール】
GPU-Z -GPUの情報表示とBIOS抜き出しに使用-
VBE7 - vBIOS Editor for Radeon HD 7000 series cards
Stirling -バイナリエディタ-
ATIWinflash -BIOS書き換えツール-

【初めに】
HD7970カード上にはBIOS ROMが2つある。基板上のスイッチで切り替え可能。
今回は2番目のROMを書き換えるためスイッチを2に切り替えた。
DSC_07872.jpg 
※片方は万が一に備えたバックアップROMなので書き換えないこと!

【オリジナルBIOSの吸出し】
GPU-Zでボード上のBIOSの吸い出す。
「Save to file...」で任意の場所へ保存する。
gpu_info2.gif 

【VBE7での書き換え】
VBE7上では「Fan Profile」と「OverDrive & PowerTune」を書き換える。

「Fan Profile」は冷却強化のため各パラメータを-20℃へ変更
fan.png 

「OverDrive & PowerTune」はTDP250Wへ余裕をもって変更
tdp.png 

【バイナリエディタでの書き換え】
オリジナルBIOSはアイドル時、コアクロック:300MHz メモリークロック:150MHzとなっている。
VBE7ではアイドル時の設定は変更できないのでバイナリエディタで変更する。
bios.png 
binary.png 
変更内容は以下の通り
#1 Core Clock 300MHz ⇒ 850MHz  Memory Clock 150MHz ⇒ 1375MHz
#2 Core Clock 501MHz ⇒ 850MHz

#1 Core Clock
300MHz、0を二つ追加し「30000」16進数へ変換「75 30」
逆に並べ替えた値を検索「30 75」
変更値は850MHz、0を二つ追加し「85000」16進数へ変換「01 4C 08」
逆に並べ替えた値で書き換え「08 4C 01」

#1 Memory Clock
150MHz、0を二つ追加し「15000」16進数へ変換「3A 98」
逆に並べ替えた値に00を追加し検索「98 3A 00」
変更値は1375MHz、0を二つ追加し「137500」16進数へ変換「02 19 1C」
逆に並べ替えた値で書き換え「1C 19 02」

#2 Core Clock
501MHz、0を二つ追加し「50100」16進数へ変換「01 F5」
逆に並べ替えた値を検索「F5 01」
変更値は850MHz、0を二つ追加し「85000」16進数へ変換「01 4C 08」
逆に並べ替えた値で書き換え「08 4C 01」

書き換えるアドレスはここでは明記しない。

【チェックサム再計算】
バイナリエディタで書き換えただけではチェックサムが正しくないので再計算を行う。
VBE7で先ほど書き換えたROMを読み込み、値を確認し保存する。

#1、#2ともに変更されている。
clock.png 

【BIOSの書き換え】
ATIWinflashにて先ほどVBE7でチェックサムを再計算したROMを読み込み書き換える。
winflash.png 
【終わりに】
BIOS書き換え後は再起動すること。
GPU-Zで確認するとアイドル時でも850MHzのコアクロック、
1375MHzのメモリークロックとなっている。
gpu_info3.gif 

※コア電圧は変更していないため、何らかの不具合が発生する場合がある。

  1. 2018/01/04(木) 20:26:00|
  2. パソコン
  3. | トラックバック:0
  4. | コメント:0

Android x86 8.0 Oreoビルドメモ

Android x86 8.0 Oreoをソースからビルドした時のメモ


OpenGAppsを追加する手順を含め、備忘録として残しておく。
 android.png 
【ビルド環境】
仮想マシンへUbuntuをインストールしその環境でビルドした。

ubuntu-16.04.3-desktop-amd64

仮想マシンの設定はこちら
RAM 24GB
HDD 400GB

RAMは多めに設定しないとコケる。16GB以上推奨
HDDも多めに最低200GB

【環境設定】
初めにツール類をインストール

<JDKインストール>
$ sudo apt-get update
$ sudo apt-get install openjdk-8-jdk

<Repoインストール>
$ sudo apt-get install repo

<その他ツール>
$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev lib32z1 x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev g++-multilib tofrodos python-markdown libxml2-utils python-software-properties xsltproc libx11-dev:i386 liblz4-tool android-tools-adb android-tools-fastboot google-android-build-tools-installer bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev squashfs-tools pngcrush schedtool dpkg-dev make optipng maven python-mako python3-mako python python3 syslinux-utils lunzip

【ソースのダウンロード】
<名前とメールアドレスの設定>
$ git config --global user.name "Your Name"
$ git config --global user.email "you@example.com"

<作業フォルダの作成とソース取得>
$ mkdir oreo-x86
$ cd oreo-x86
$ repo init -u git://git.osdn.net/gitroot/android-x86/manifest -b oreo-x86

<OpenGAppsの設定>
{ANDROID_BUILD_TOP}/.repo/manifest.xmlの最後に以下内容を追加する。


<remote name="opengapps" fetch="https://github.com/opengapps/"  />

<project path="vendor/opengapps/build" name="aosp_build" revision="master" remote="opengapps" />
<project path="vendor/opengapps/sources/all" name="all" clone-depth="1" revision="master" remote="opengapps" />

<!-- arm64 depends on arm -->
<project path="vendor/opengapps/sources/arm" name="arm" clone-depth="1" revision="master" remote="opengapps" />
<project path="vendor/opengapps/sources/arm64" name="arm64" clone-depth="1" revision="master" remote="opengapps" />

<project path="vendor/opengapps/sources/x86" name="x86" clone-depth="1" revision="master" remote="opengapps" />
<project path="vendor/opengapps/sources/x86_64" name="x86_64" clone-depth="1" revision="master" remote="opengapps" />

追加したらソース取得、かなり時間掛かります。
$ repo sync --no-tags --no-clone-bundle

/oreo-x86/device/generic/common/device.mkの最初に以下内容を追加する。

GAPPS_VARIANT := pico
GAPPS_EXCLUDED_PACKAGES := PrebuiltGmsCoreInstantApps 
←ビルドエラーが出たため追加した。


/oreo-x86/device/generic/common/device.mkの最後に以下内容を追加する。
$(call inherit-product, vendor/opengapps/build/opengapps-packages.mk)


【Androidのビルド】
$ . build/envsetup.sh

$ lunch

You're building on Linux

Lunch menu... pick a combo:
     1. aosp_arm-eng
     2. aosp_arm64-eng
     3. aosp_mips-eng
     4. aosp_mips64-eng
     5. aosp_x86-eng
     6. aosp_x86_64-eng
     7. android_x86_64-eng
     8. android_x86_64-userdebug
     9. android_x86_64-user
     10. android_x86-eng
     11. android_x86-userdebug
     12. android_x86-user

Which would you like? [aosp_arm-eng] 

lunchのみ実行して一覧から選んだ。今回は8. android_x86_64-userdebug

$ m -j8 iso_img

うまくいけば、
{ANDROID_BUILD_TOP}/out/target/product/x86_64/android_x86_64.iso
に作成されます。

【動作確認】

Root取れてないけど、どうすれば良いのか。。。

<参考URL>
https://source.android.com/setup/initializing

http://www.android-x86.org/getsourcecode

https://github.com/opengapps/aosp_build


  1. 2017/12/08(金) 23:26:00|
  2. パソコン
  3. | トラックバック:0
  4. | コメント:0

6AQ5シングル真空管アンプキット TU-8150簡易測定

萌アンプに変身したTU-8150の電気特性の測定を行いました。

測定した項目はこちら。
・出力
・THD(全高調波歪)

オシロスコープやらオーディオアナザイラなどなくても簡易的に測定できますのでご紹介。

用意するもの。
・PC
・オーディオインターフェース
・デジタルテスタ
・ダミーロード冶具←自作

基本は市販のものですが、ダミーロード冶具は自作する必要があります。
回路図はこちら。
dummy.png
TU-8150のスピーカー出力へパラレルに抵抗、テスタ、可変抵抗を接続します。

抵抗はセメント抵抗の10Wくらいで良いと思います。
私は100W級アンプでも使えるように
ニクロム線を抵抗代わりに使っています。

テスターは小数点以下2桁くらい見れれば十分
安物でOK
正弦波1kHzまではそれなりに測れます。

可変抵抗は50kΩ位のBカーブ

実装はお好きにどうぞ、空中配線、ラグ版、ユニバーサル基板などなど

DSCF1157.jpg
オーディオインターフェースは私はUSB-DACを用意しました。
ライン入出力があればオンボードオーディオでもいけます。

efu様作成の「WaveGene」で任意の周波数を発生させます。
それをTU-8150へ入力します。
2017-08-29.png

そして同じくefu様作成の「WaveSpectra」で測定します。
可変抵抗を調整してクリップしないようにします。
2017-08-25 (12)

測定中

出力は以下の式で求められます。

P=E*E/R

DSCF1160.jpg

測定結果はこちら。
出力管は6V6GTを使用しています。
list.png

簡易的測定ですので参考までに。
  1. 2017/08/29(火) 01:04:40|
  2. オーディオ
  3. | トラックバック:0
  4. | コメント:0

6AQ5シングル真空管アンプキット TU-8150デコレーション

6V6GTシングル真空管アンプと化したTU-8150ですが、
前々からやってみたかった事がありましたので今回はその記事を。

まずはこちらをご覧ください。
かわいい系真空管アンプです。
※権利関係クリアしたイラストを使用しております。
DSCF1138_edit.jpg

こちらがTU-8150キットの標準完成状態です。
白系無地のシンプルなデザインです。
DSCF1070_edit.jpg
この状態でふと思ったわけです。デコレーションしたいと。

そしてこのTU-8150、筐体の寸法がA4サイズとほぼ同じ!
DSCF1122.jpg

ですので、早速ステッカー用紙を買ってきましたよ。
んで、普通紙にプリントして寸法合わせ。
DSCF1127.jpg

その後はステッカー用紙にプリントして貼り付けました。

【注意】
本当は全面貼りたかったのですが真空管の発熱を考慮して、
ある程度のエリアまでとしています。
真空管は言うなれば電球、その近くに紙ですとたぶん燃えます。
真似される方は十分ご注意を!

  1. 2017/08/25(金) 02:14:01|
  2. オーディオ
  3. | トラックバック:0
  4. | コメント:0
次のページ