2024/03/25(月)RICOH GRリモコン

grctl.png

RICOH GR遠隔リモコン
//連射可能にした版
//ボタン割り込みの使用をやめ、ループ内でGPIO0の状態をチェックしている

#include
#include // HTTPClient

//■初期設定
#define SLEEP_TIME 120000 //ms
#define SHOOT_INTERVAL 300 //ms

#define SHOOT_URL "http://192.168.0.1/v1/camera/shoot"
#define HTTP_POST "af=camera"
#define SSID "myssid"
#define WIFI_PASS "password"



//■メイン処理
int sleep_count = SLEEP_TIME; //time to deep sleep (ms)

//WiFiClient client;

//■セットアップ
void setup() {

Serial.begin(115200);
Serial.println("Wifi start");

//wifi_set_sleep_type(MODEM_SLEEP_T);
//wifi_set_sleep_type(LIGHT_SLEEP_T); //★スリープして復帰しなくなるのでNG

wifi_connect();

//接続完了
sleep_count = SLEEP_TIME;

//改行して繋がったことをシリアルで伝える。
Serial.println("");
Serial.println("WiFi connected");

//WiFiの状態を表示
WiFi.printDiag(Serial);
Serial.print("IP address: ");
Serial.println(WiFi.localIP());

}

//■ループ
void loop() {

//Wifi切断時
if (WiFi.status() != WL_CONNECTED) {
Serial.println("Not connected!");
ESP.restart(); //再起動して再接続実施

//Wifi接続時
} else {

//ボタン押下時
if(digitalRead(0) == LOW){
sleep_count = SLEEP_TIME;
Serial.println("shoot!");
shoot();
delay(SHOOT_INTERVAL); //連射間隔

//未操作時
}else{
delay(100);
sleep_count -=100;

}
}

//長時間操作無し時スリープ
if(sleep_count <= 0){
Serial.println("Go to deep sleep");
ESP.deepSleep(0);
}

//Serial.println("*");
}



//■以下関数
void wifi_connect(){
//noInterrupts();

WiFi.mode(WIFI_STA); //WiFiクライアントモード設定
WiFi.printDiag(Serial); //WiFiを繋ぐ前に、WiFi状態をシリアルに出力
WiFi.begin(SSID, WIFI_PASS);
// WiFi.config(ip, gateway, subnet);

//接続が確立するまで、・・・を表示
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
sleep_count -= 1000;

Serial.print(".");
//WiFi.printDiag(Serial);

if(sleep_count <= 0){
Serial.println("Go to deep sleep");
delay(1000);
ESP.deepSleep(0);
}
}

//interrupts();
}


void shoot(){
//noInterrupts();

HTTPClient http;
http.begin(SHOOT_URL);
http.addHeader("Content-Type", "application/x-www-form-urlencoded");
int httpCode = http.POST(HTTP_POST); //Send the request

String payload = http.getString(); //Get the response payload
Serial.println(httpCode); //Print HTTP return code
Serial.println(payload); //Print request response payload

http.end(); //Close connection
//interrupts();
}

2022/05/13(金)DSM 7.1 photoインストールできない問題解決策

Try:

Login with SSH, then "sudo -i" to get root access

Make a backup with:
"mv /volume1/@database/pgsql /volume1/@database/pgsql-bk"

Then create the folder:
"mkdir /volume1/@database/pgsql"

Change the rights:
"chown postgres.postgres /volume1/@database/pgsql"

Then you can start the pgsql:
"systemctl start pgsql-adapter.service"

And check if it ok:
"systemctl status pgsql-adapter.service"

2018/02/04(日)windows10/androidでのVPN接続(PPTP)

概要
windows10の標準機能でVPNサーバを動作させ、androidからVPN接続する。

windows10準備

・コントロール パネル\ネットワークとインターネット\ネットワーク接続を開く
・ALTを押してメニューを表示 > ファイル > 新しい着信接続
・許可したいユーザーを選択(このユーザー名とパスワードでアクセスすることとなる)
・インターネット経由もON(用途に応じて)
・TCP/IP v4をチェック
・【重要】TCP/IP v4のプロパティで、DHCPではなくIPアドレスを指定。
 ローカルのネットワークアドレス範囲内を指定すれば良い。例:192.168.10.101

android
・無線とネットワークの「もっと見る」>VPN
・VPNのタイプは「PPTP」
・Windowsのユーザー名とパスワードを指定すればOK

ルーター
・1723/TCP(PPTP)をWindows10へ通す
→これは外部からルーターを介してWin10 VPN PCへアクセスするのに必要
・VPN PPTPパススルー機能をON

その他チェック事項
今回私の環境では問題なかったが、以下のwindowsサービスが動作しているかを確認。
・IPSec Policy Agent
・IKE and AuthIP IPSec Keying Module

備考
DHCPを使って自動的にIPアドレスを割り当てる、を有効にしていた際は、
接続を試みても、「切断されました」と表示されうまくいかなかった。
ルータでDHCP機能が動いていたがそれではだめのよう。

2017/05/30(火)ASUS Zenfone3 ZE520KLのRoot化

手順

以下の流れで説明

  1. adbドライバのインストール
  2. Unlock Boot Loaderする
  3. TWRPとRootをインストールする

簡単な説明

  1. PCとスマホで通信するために必要
  2. スマホは、ブートローダー起動→Android起動という流れになっている。デフォルトのブートローダーを別のもの(TWRP)に書き換えるための前作業
  3. ファームウェアをTWRPへ書き換え。これでルート化するための下地を作り、最後にRoot化する。

ダウンロード for Unlock

以下からダウンロード可能

All in one Zip (Unlock App + Driver + ADB+Fastboot + TWRP + SuperSU.zip)

ダウンロード

adbドライバのインストール

ダウンロードしたzipを解凍し、adb-setup-1.4.3.exe を実行インストールし終わったらコマンドプロンプトにてadbを実行し、何か表示されればOK

Part1 Unlock Bootlader

  1. Zip ダウンロードし解凍
  2. ボリューム・アップと電源ボタンを5秒程押下し、Fastbootモードで起動 Fastbootモードでの起動画面

    fb.jpg

  3. PCとUSB接続し、解凍したフォルダを開き、1.Unlock_ze520kl.bat を実行 ※1

※1 0.Install_Driver.bat があるが、Win7環境では以下のエラーが出て実行できなかった「選択されたINFファイルでは、このインストールの方法はサポートされていません。」

PART 2 ( Install TWRP recovery and Root)

ダウンロード

必要なファイルは全て以下からダウンロード可能。アカウント登録の必要あり。

  • dot.supersu
  • TWRP images (Part 1のフォルダにTWRPは含まれているが、最新版をダウンロードした)

ダウンロード 今回は「twrp-3.1.0-0-Z017D-20170312.img」を使用

手順

  1. 再度BootLoaderモードで起動
  2. PCとUSB接続
  3. コマンドプロンプトからTWRPイメージをインストール

adb push dot.supersu /data/.supersu

D:\temp\RootZenfone3-master\fastboot flash recovery twrp-3.1.0-0-Z017-20170321-N.img

TWRPインストール失敗例 FAILEDが出て、TWRPがインストールされていない。ネットでいろいろ情報集めると、他のUSBケーブルを抜く、再起動する、などすると良いらしい。自分の場合は、別PC(Win10)で実行したらうまくいった。ネット情報ではWin10より、Win7の方がうまくいくらしい。

D:\temp\RootZenfone3-master\fastboot flash recovery twrp-3.1.0-0-Z017-20170321-N.img

target reported max download size of 536870912 bytes sending 'recovery' (21080 KB)... OKAY [ 0.562s] writing 'recovery'... FAILED (status read failed (Too many links)) finished. total time: 0.705s

D:\temp\RootZenfone3-master>

成功すると電源が落ちる。

D:\temp\RootZenfone3-master\fastboot flash recovery twrp-3.1.0-0-Z017-20170321-N.img

target reported max download size of 536870912 bytes sending 'recovery' (21080 KB)... OKAY [ 0.563s] writing 'recovery'... OKAY [ 0.138s] finished. total time: 0.703s

  1. 電源ボタンとボリュームダウンボタンを長押ししてリカバリーモードで起動 「keep system read only」 を選択 画面から以下をたどる Advanced > ADB SideLoad

以下のコマンドでSuperSUをインストールする

adb sideload SuperSU.zip

完了したら再起動。SuperSUがインストールされているので実行。必要に応じてバイナリの更新が促される。バイナリが更新できない場合は「dot.supersu」のインストールに失敗している。

  • ADBの接続を確認する場合以下のコマンドを実行

D:\temp\RootZenfone3-master>adb devices List of devices attached GCAZCY05Z948BV9 recovery

  • ブートローダーとの接続確認時は以下を実行し、接続デバイスが表示されれば接続OK

fastboot.exe devices

過去/最新Androidバージョンに書き換えたい場合

以下のリンクよりAndroidファームをダウンロード(サイズ1.5GB程あります) ダウンロード Android6.01最終版の場合、UL-ASUS_Z017D_1-WW-13.20.10.152-user.zip をダウンロード。

以下よりファームのverと同じ、以下ファイルをダウンロード。

  • boot.img
  • recovery.img

ダウンロード Android 6.01の場合は、Z017D_WW_13.20.10.152 をダウンロード

Fastbootモードで起動し、PCより、以下の通り2ファイルをインストール

fastboot flash recovery recovery.img

fastboot flash boot boot.img

リカバリーモードで起動し、uSDのファームを書き込む。

Apply update from micriSD card を選択し、先程のファイル UL-ASUS_Z017D_1-WW-13.20.10.152-user.zip を選択。 10分ほど待ってインストール完了。

done.jpg

参考元

Asus Zenfone 3 Android 7.0 Nougat Root Method Explained

2017/05/14(日)Amazon Fireのandroid化(カスタムROM:CM12インストール)

  • 今更だが、AmazonFireにカスタムROMのCM12(Cyanogen Mod 12)をインストールし、Amazon FireをAndroid化した。

  • Amazon FireへのGoogle Playインストールではできなかったことが出来るようになった。(英会話ソフトのNative Campアプリがインストール出来なかったのが出来るようになった。)

  • プライムビデオなどはAmazonアプリインストールすれば引き続き見れます。

手順

  1. SuperSU、CM12、GoogleAppsをダウンロード
  2. FlashFireをGooglePlayよりインストール
  3. FlashFireから上記ファイルをインストールして完了

ダウンロード

RootJunkyより以下をダウンロード。

  • cm-12.1-20151211-UNOFFICIAL-ford.zip
  • open_gapps-arm-5.1-pico-20151120.zip

BETA-SuperSU-v2.52.zipをこちらからダウンロード。

  • BETA-SuperSU-v2.52.zip

最後にFlashFireもGooglePlayからダウンロード。これはRootJunkyにもあるが、RootJunkyからダウンロードしたapkは正常に起動しなかった。

  • FlashFire

SDカードへコピー

ダウンロードしたファイルをSDカードにコピーし、Fireタブレットに挿入。 FlashFireから読めるようにしておく。

FlashFire実行

こちらを参考にした。

注意点として、FlashFireにて、実行ボタンFlashを押す前に、「Wipe」処理をフラッシュへのインストールの前、つまり上から4段目に移動してから実行する事。これをやらないと、以下のエラーが発生した。

Can't install this package on top of incompatible data. Please try another package or run a factory reset.

適当メモ

実行後、起動画面でopengappsをインストールしている際(アスキーアートの途中みたいな時所で)に5分近く同じ画面で待たされたが、その後自動再起動した。

更に、再起動後の起動画面「fire」が表示されているときも10分近く待たされた。

※注 以下は上で記載の手順で実行すれば無関係です

CM12をインストールしただけではRoot化されていないため、Root権限を要するアプリが使えない。「設定」 より、システム>タブレット情報>ビルド番号を連打これで上の階層に「開発者向けオプション」が現れる。開発者向けオプションより、「ルートアクセス」でアプリとADBを設定すれば、Rootを要するアプリ使用時にもRoot権限取得についてのダイアログが現れるようになる。(一度再起動しないと反映されなかった)

最終的にSuperSUにしたい場合flashfireインストール時にsupersuも併せてインストールするのが楽。CM12の設定からRootとって、supersuをダウンロードしてもsupersuのバイナリ更新ができない。

OK キャンセル 確認 その他