2020-01-20

enable adb over tcpip


# enable adb over tcpip
$ adb tcpip 5555
or
$ adb -d tcpip 5555

# adb connect over tcpip
$ adb connect 192.168.35.9
$ adb -l

2019-11-12

[Google Assistant] Install the SDK and Sample Code


reference
- https://developers.google.com/assistant/sdk/guides/service/python/embed/install-sample

$ sudo apt-get update
$ sudo apt-get install python3-dev python3-venv

$ python3 -m venv env
$ env/bin/python -m pip install --upgrade pip setuptools wheel
$ source env/bin/activate

(env) $ sudo apt-get install portaudio19-dev libffi-dev libssl-dev
(env) $ python -m pip install --upgrade google-assistant-sdk[samples]

(env) $ python -m pip install --upgrade google-auth-oauthlib[tool]
(env) $ google-oauthlib-tool --scope https://www.googleapis.com/auth/assistant-sdk-prototype --save --headless --client-secrets /path/to/client_secret_client-id.json


// voice input
(env) $ googlesamples-assistant-pushtotalk --project-id xxx --device-model-id yyy

// text input
(env) $ python -m googlesamples.assistant.grpc.textinput --device-id xxx --device-model-id yyy



2019-10-28

Abbreviation

DRC

  • Dynamic Range Control

DLKM

  • Dynamically loadable kernel module

KMI

  • Kernel Module Interface

GKI

  • Generic Kernel Image

LTS

  • Linux Long Term Supported (LTS) kernel

ACK

  • Android Common Kernel

OAuth

  • Open Authorization
  • pronounced "oh-auth"

gRPC

  • gRPC Remote Procedure Calls

SUPL

  • Secure User Plane Location

OMA

  • Open Mobile Alliance

pypi

  • python package installer

WRP

  • Watchpoint Register Pair

BRP

  • Breakpoint Register Pair

BVRs

  • Breakpoint Value Registers

IFTTT

  • If this, then that


PAI

  • play auto install

smali

  • The names "Smali" and "Baksmali" are the Icelandic equivalents of "assembler" and "disassembler" respectively.
  • Smali/Baksmali is an assembler/disassembler for the dex format used by dalvik, Android's Java VM implementation.


DFP

  • downstream facing port (USB)

UFP

  • upstream facing port (USB)

DRD

  • dual-role-data (USB)

DRP

  • dual-role-power (USB)

SPS

  • Sequence Parameter Set



PPS

  • Picture Parameter Set

ETA

  • Estimated Time of Arrival

SEP

  • Stream End Point
  • Bluetooth

AMP

  • Armada Media Pipeline
  • synaptics

IV

  • initial vector
  • crypto, DRM, clear key/IV

CPM

  • Clock/Power Management


install home-assistant on ubuntu

Ubuntu 18.04 및 Package 설치

  • ubuntu 18.04 설치
    • 설치 파일 다운로드
    • ubuntu 설치.
      • storage : 40 GB ( > 32 GB)
      • memory : 2 GB ( > 1 GB)
  • 필요 package
    • apparmor-utils
    • apt-transport-https
    • avahi-daemon
    • ca-certificates
    • curl
    • dbus
    • jq
    • socat
    • software-properties-common
    • network-manager
    • bash
    • docker-ce
  • package 설치
    • sudo apt-get install apparmor-utils apt-transport-https avahi-daemon ca-certificates curl dbus jq socat software-properties-common network-manager
    • bash
    • docker-ce
      • https://docs.docker.com/install/linux/docker-ce/ubuntu/
      • docker-ce에 필요한 package 설치
        • $ sudo apt-get update
          $ sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
      • docker apt-key 설치 및 확인
        • $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
          $ sudo apt-key fingerprint 0EBFCD88
      • docker 설치를 위한 apt-repository 추가
        • $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
      • docker-ce package 설치 및 확인
        • $ sudo apt-get update
          $ sudo apt-get install docker-ce docker-ce-cli containerd.io
          $ sudo docker run hello-world
      • docker group에 user 추가
        • $ sudo usermod -aG docker account_name
      • images, containers, volumes, or customized configuration files on
        • /var/lib/docker
  • Hass.io installation
    • prepare (install docker-ce with script)
    • * docker-ce를 설치했으면 다시 실행할 필요 없음.
      $ sudo -i
      $ apt-get install software-properties-common
      $ add-apt-repository universe
      $ apt-get update
      $ apt-get install apparmor-utils apt-transport-https avahi-daemon ca-certificates curl dbus jq network-manager socat
      $ curl -fsSL get.docker.com | sh
    • install
    • $ sudo -i
      $ curl -sL "https://raw.githubusercontent.com/home-assistant/hassio-installer/master/hassio_install.sh" | bash -s










2019-09-25

[android] security patch error

# android security patch 중 다음과 같은 에러 발생

---
FAILED: out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.abidiff
(prebuilts/clang-tools/linux-x86/bin/header-abi-diff -allow-unreferenced-changes -allow-unreferenced-elf-symbol-changes -lib liblog -arch arm -o out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.abidiff -new out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.lsdump -old out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so_ref.lsdump)|| (echo ' ---- Please update abi references by running platform/development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog ----' && exit 1)
******************************************************
error: VNDK library: liblog's ABI has INCOMPATIBLE CHANGES Please check compatiblity report at : out/soong/.intermediates/system/core/liblog/liblog/android_arm_armv7-a-neon_cortex-a7_core_shared/liblog.so.abidiff
******************************************************
 ---- Please update abi references by running platform/development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog ----
---

# 출력된 로그처럼 실행하면 또 에러 발생;;
$ development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog

# 모델명을 파라미터로 넣어주면 정상적으로 업데이트 됨.
$ development/vndk/tools/header-checker/utils/create_reference_dumps.py -l liblog -products my_product

- 참고로 모델명은 lunch 파라미터와 동일.
TARGET_PRODUCT=my_product


2019-07-12

set time on android console


### display date
# date
Tue Jul 13 19:25:15 GMT 1999

# date +'%D %T'
07/13/99 19:25:00


### set date
# date 07131924
Sat Jul 13 19:24:00 GMT 2019

# date 07131924.45
Sat Jul 13 19:24:45 GMT 2019

# date 071319241999.23
Tue Jul 13 19:24:23 GMT 1999


### help
# date --help
usage: date [-u] [-r FILE] [-d DATE] [+DISPLAY_FORMAT] [-D SET_FORMAT] [SET]

Set/get the current date/time. With no SET shows the current date.

Default SET format is "MMDDhhmm[[CC]YY][.ss]", that's (2 digits each)
month, day, hour (0-23), and minute. Optionally century, year, and second.
Also accepts "@UNIXTIME[.FRACTION]" as seconds since midnight Jan 1 1970.

-d      Show DATE instead of current time (convert date format)
-D      +FORMAT for SET or -d (instead of MMDDhhmm[[CC]YY][.ss])
-r      Use modification time of FILE instead of current date
-u      Use UTC instead of current timezone

+FORMAT specifies display format string using strftime(3) syntax:

%% literal %             %n newline              %t tab
%S seconds (00-60)       %M minute (00-59)       %m month (01-12)
%H hour (0-23)           %I hour (01-12)         %p AM/PM
%y short year (00-99)    %Y year                 %C century
%a short weekday name    %A weekday name         %u day of week (1-7, 1=mon)
%b short month name      %B month name           %Z timezone name
%j day of year (001-366) %d day of month (01-31) %e day of month ( 1-31)
%N nanosec (output only)

%U Week of year (0-53 start sunday)   %W Week of year (0-53 start monday)
%V Week of year (1-53 start monday, week < 4 days not part of this year)

%D = "%m/%d/%y"    %r = "%I : %M : %S %p"   %T = "%H:%M:%S"   %h = "%b"
%x locale date     %X locale time           %c locale date/time