遠藤ヒズミの blog

息を吐くが如く更新が最終目標。技術からガジェット、ニチアサなどジャンルは様々

【EX-LDC161DBM】 モバイルディスプレイ ファーストインプレション!

挨拶

はじめましての方ははじめまして
ご存知の方はそうだよヒズミさんだよ。

ファーストインプレションって、日本語が訳だと「第一印象」って意味だそうです。
横文字は人の目を引き、なんかすごそうな印象を与えますが、なんとなくで使うと意志疎通を妨げになります。
日本語での意味を理解して使っていきたいですね。

今回は、I-O DATAのモバイルディスプレイ EX-LDC161DBMを使ってみた感想、つまりレビューを書いていきます。

内容物

f:id:endo_hizumi:20210220155136j:plain

  • キャリングケース
  • Type-Cケーブル
  • Type-CのACアダプター
  • HDMI - Mini HDMIケーブル

f:id:endo_hizumi:20210220155253j:plain

そして、15.6インチのモバイルディスプレイです。

これ一つ買うだけで、必要なものは揃います。
そこらへんに転がってるHDMIケーブルを持ってきたり、追加で買う必要がありません。

キャリングケースが着いてるので、移動中にディスプレイを割ると言うことも無さそうです。(まぁ、今のご時世、あまり外には出ないのですが。)

f:id:endo_hizumi:20210221001546j:plain

外観

まず、正面。
開ける前に、15インチって、ノートパソコンだと大きい部類に入るのでこれも大きいのかなと思いました。
しかし、あまり大きさを感じないですね。ベゼルが薄いせいでしょうか。

f:id:endo_hizumi:20210221001254j:plain

12.9インチiPad Proを上に置くとその大きさを感じますが。

f:id:endo_hizumi:20210221001622j:plain

本体も仕様だと730gで軽い。
実際、持っても重さを感じません。
リュックにいれてもあまり気にならなそうです。

ベゼルは今時でとても薄い。僕の好みです。 (4.8mmかな?)

f:id:endo_hizumi:20210221192119p:plain

(ベゼルが厚いと、そのクソデカベゼルの分、 相対的にディスプレイが小さく見えてくるし、要らんやろと、無駄だろ。チープベゼルはレトロガジェットだから味が出るのだ)
ベゼルは、樹脂製でさわった感じはザラザラした感じで少し厚みがあります。 うっかり前に倒しても、この厚みでダメージからディスプレイを守ってくれそうな印象があります。

f:id:endo_hizumi:20210221191734p:plain

前面にステレオスピーカーが搭載されてて、音楽再生も可能です。

f:id:endo_hizumi:20210221194353p:plain

音質は聞けるだけマシレベルですが、ディスプレイにスピーカーがあるだけで、価値があるのです。
モバイルディスプレイなのにスピーカー接続必要だとそれは大きなマイナスポイントですね。
持ち運ぶ荷物は少ない方が嬉しいです。

側面

側面をみた瞬間、感じるのは、その薄さ。
ノギスで測ると、7.2mmくらいですね。 f:id:endo_hizumi:20210221200442p:plain

近くにあった同じく薄いiPad Proと比べると、ディスプレイ部は、iPad Proと同じくらいですね。
薄いとクールな印象で良いですね。

f:id:endo_hizumi:20210221001754j:plain

(左がiPad Pro 12.9インチです。)

左側面に接続端子があります。 用意されている端子は、USB Type-C × 2・Mini-HDMI・3.5mmのイヤホンジャックです。

f:id:endo_hizumi:20210221001808j:plain

Type-Cはどっちにさしても映像と音声の入力、給電が可能です。ただ、二つ差しても片方しか表示されません。
片方に電源をさして、もう片方で映像を入力をするという感じに使えますね。

背面

背面はアルミですかね。 ひんやりと冷たいので少なくとも樹脂やプラスチックでないかなと思う。 中央には、自立させるためのスタンドがついてます。

f:id:endo_hizumi:20210221001958j:plain

こう備え付けのスタンドあると荷物が減っていいですね。 このスタンドは、10度から62度まで好きな角度で調整が可能です。

f:id:endo_hizumi:20210221002333j:plain f:id:endo_hizumi:20210221002429j:plain

62度までやると、「おぉい!EX-LDC161DBMくぅん!君は液タブにでもなるつもりかい?」と思うくらい角度つきますね。 f:id:endo_hizumi:20210221003020j:plain

残念ながらタッチパネルではないので、スタイラスで絵を描くことはできません。
PowerPoint資料など、営業職の人がお客さんに見せるときに使うんでしょうか。知らんけど。
ちなみに、底面には滑り止めが着いており、どの角度でも安定してます。

そして、左下にあるのが操作スティックです。 電源ボタンをかねていて、長押しすると電源のオンオフを切り替えることができます。
360度グリグリとジョイスティックを回すことができます。
f:id:endo_hizumi:20210221180742j:plain 画面出力中に、ジョイスティックをどこでいいので倒すと設定画面が出てきます。 ここで、バックライトの明るさ(照度)・音声ボリューム・入力切り替えの設定の変更ができます。

上下にジョイスティックを動かしカーソル移動させ、右に動かすことで決定・設定の適用をすることができます。 ちょっとクセがありますが、メニューも説明がついてるので、迷わずに操作できます。

f:id:endo_hizumi:20210221185451j:plain

実際につないでみた

画質は問題無いレベルです。
凄いキレイ!と言うわけではありませんが、特に粗いわけでもなく、日常的に使う分には困らないです。
FullHDなので、(1980 × 1080)表示範囲も広いです。
ADS液晶という聞き慣れない名前ですが、IPS液晶同様に横から覗いても、色味が変わったりしないので、マシンの横に置いてもおkです。

MacBook Pro

ちょっとびっくり、Night Shiftに対応していた。
画質はRetina程ではありませんが、十分にキレイです。
(そもそも、比較対象がおかしい)

Xperia 1 II

結論から言うと、動画めっちゃ見やすい。 しかし、バッテリーをすごい食う。 消費が充電量を上回るので、5,6時間の長時間配信の視聴は無理ぺこ。

6,7インチのスマホを15インチにつなぐと動画がすごい見やすい。
スマホUIなので、VTuberのゲーム配信とかコメントを横に表示しながら見ることができるのが地味に良い視聴体験。

f:id:endo_hizumi:20210221011317j:plain

Android 10から試験的にデスクトップモードが実装されているので、スマホと別のアプリを使うことが可能です。
大画面にキーボードとマウスを繋いで、パソコンのように文章作成や資料作成・動画視聴が可能。とても良い。

f:id:endo_hizumi:20210221222742j:plain

しかし、Xperiaだけだと、配給電流が不足してて、ACアダプターでEX-LDC161DBMに、電力供給してやる必要があります。

f:id:endo_hizumi:20210221010851j:plain

iPad Pro 12.9インチ

MacBook Pro同様に、USB Type-cケーブル1本でつなぐことができます。 しかし、iPad Proの時点でデカいのに15インチにつなぐ理由ある?? ミラーリングだし。 あまり利点を感じませんでした。

f:id:endo_hizumi:20210221010943j:plain

Nintendo Switch

スマブラ楽しい
ドック経由で、HDMIで接続し電力をACアダプターから供給すれば、行けます。

f:id:endo_hizumi:20210221011004j:plain

しかし、付属品のHDMIケーブルを使うと、Switchドックが閉まらないので、別途ケーブルを購入しましょう

f:id:endo_hizumi:20210221003948j:plain

まとめ

  • USB接続とmini-HDMI接続に対応した薄型15.6インチのモバイルディスプレイ
  • キャリングケースが付属しているので、持ち運びに不安がない
  • 無段階での角度調節が可能
  • ADS液晶で横からのぞいても鮮明に映る

モバイルディスプレイに興味あるけど、知らないメーカーで失敗したくない人は、EX-LDC161DBMどうでしょうか。 軽くて取り回しもいい。画質も十分。メーカーの保証も3年もあるので万一の時も安心です。 すごく良い!!と言うわけではありませんが、逆に使いづらいポイントもなく、今のところ不満はありません。 Type-Cで接続できれば、一本で済むのでコンパクトに済みます。 消費電力もモバイルバッテリーで賄える程度なので、電源の確保に困りません。 (言っていて、不満より評価ポイントが多い) モバイルディスプレイに興味があるけど、知らないメーカーで失敗したくない人は、買って損はないと思います。

キレない関数(サブルーチン)の作り方~バッチファイル編~

はじめましての方は、初めまして
ご存知の方は、そうだよヒズミさんだよ

今回は、みんな大好きバッチファイルの話だよ。
バッチファイルは、IFやFORといった制御構文を持ち、変数による値の保持ができます。
そのため、ただ、コマンドを羅列するだけではなく、ある程度のスクリプトを書くことができます。
ただし、やや癖があるので、ほかの言語と同じ感覚でうっかりサクッと手を出すと、簡単にハマります。
ストレスで毛根がマッハで抜けます。
そうならないための記事の序章がこちら

endohizumi.hatenablog.com

バッチファイルの関数について

概要みたいなもん

バッチファイルは、前述の通り、IFやFORの制御構文の他に、関数のようなものを宣言することができます。 スクリプトの中で、再利用する処理をまとめることができます。 実際は、ジャンプ先の目印をつけるだけのラベルというのですが、ここでは、便宜上、関数と呼称します。

宣言の仕方

:sayHello
echo Hello, world
exit /b

コロン(:)の後に、名前を記述して改行することで、宣言したことになります。 bashスクリプトを書いたことある人は、以下の様に、functionの接頭辞をつけたと思いますが、 前述の通り、ジャンプする行の目印をつけているだけなので、名前だけで十分です。
呼び出し元に戻るには、exit /bを使います。
/bはオプションなので、/b無しのexitと記述しても構文どおりでエラーは起きません。
その代わり、コマンドプロンプト自体が終了します。

function hogehoge(){
 echo hogehoge
}

呼び出し方

宣言した関数の呼び出し方は、以下のように、callの引数に関数名を指定すると、呼び出すことができます。

call :sayHello
exit /b

:sayHello
echo Hello, world
exit /b

関数に対して、引数を渡す場合は、CLIアプリケーションに引数を渡すように関数名の後ろに半角スペースをつけるだけです。

call :say HelloTaro
exit /b

:say
echo %1
exit /b

gotoとの違い

似たようなコマンドに、指定の箇所に飛ぶ gotoというものがあります。
どちらも指定ラベルにジャンプするコマンドですが 関数として、指定ラベル先にジャンプするcallと違い、gotoは指定ラベル先にジャンプした後、呼び出し元に戻ることはありません。
関数として呼んだわけではないので、引数を指定しても渡されることもありません。

goto :say HelloTaro
echo hogehoge
exit /b

:say
echo %1
exit /b

実行結果
f:id:endo_hizumi:20191026170956p:plain

戻り値

実際のところ、関数ではないので、戻り値も何もありませんが・・・
call で呼び出した場合、exit /b の後に終了時の状態を数値で返すことができます。
CLIアプリケーションを使ったことある人は、0とか1とかコマンド実行後に返されると思います。
それを自分で決めることができます。バッチファイルの外に出すなら、連携のことも考えて、0か1を返すのが無難ですが、バッチファイルの中ならマイルールで返しても、大丈夫です。
関数が返した数値は、ERRORLEVEL変数で、参照できます。

@echo off

CALL :say helloTaro
echo %ERRORLEVEL%
exit /b

:say
echo %1
exit /b 5

実行結果
f:id:endo_hizumi:20191026172151p:plain

関数内でローカル変数を宣言する

関数内に限った話ではないのですが。 バッチファイルは、基本的に宣言した変数はグローバルです。 しかし、setlocalコマンドを使うと、それ以降の行はendlocalコマンドを使うまでローカル変数扱いになります。

@echo off

setlocal
set hoge=fugafuga
rem fugafugaが表示される。
echo %hoge%
endlocal
rem 外なので、表示されない
echo %hoge%

f:id:endo_hizumi:20191026174949p:plain

注意

他の言語と違い、あくまでもジャンプ先の目印をつけただけなので、工夫しないと関数の中の処理も行ってしまうので、注意してください。

rem こう書くと、echo hogehogeを実行する前に、終了する。

:sayHello
echo Hello, world
rem ここで、処理が終わる
exit /b

echo hogehoge
rem こう書くと、echo hogehogeとecho Hello,worldを実行する

echo hogehoge

rem 処理は終了していないので、これ以降の処理が実行される。
:sayHello
echo Hello, world
exit /b
rem こう書くと、echo hogehogeだけを実行する

echo hogehoge
exit /b

:sayHello
echo Hello, world
exit /b

参考

バッチファイルの変数について

はじめましてのかたは、はじめまして。ご存知の方は、そうだよヒズミさんだよ。

今回は、Windowsユーザーならおなじみ?
バッチファイルについて。
アプリの起動ファイルになってたり、定型作業の自動化によく使われるバッチファイルなんですが、 IFとかFORの構文が用意されています。コマンドを羅列するだけものじゃないんですね。
コマンドの結果を受け取る時に、FORは必要になるので、多少なれておく必要はあると思います。
しかし、まず最初に押さえておくべきは、変数の扱いかと思います。
他の言語と違って、癖があるのでその辺を書いていきます。

お品書き

  • 変数への代入
  • 変数の値の操作
  • 遅延環境変数展開

最初に言っておく!

最初に言っておく!
バッチファイルを書くくらいなら、PowerShellスクリプト書いた方が数倍楽です。
あっちも癖があって、けつまづくこともあるけど。

変数への代入

SET hoge = hoge
echo %hoge%

ほかの言語では、イコール(=)前後のスペースは有無は関係ないことが多いですね。
しかし、バッチファイルというかコマンドプロンプトの場合は、入れちゃダメっす。
そのスペースも、変数の名前になってしまいます。
つまり、echo %hoge %とすると、値が表示されます。(hogeの後ろに半角スペースが一個入ってます)
ちなみに、変数の値も、”hoge”ではなくて" hoge"と、先頭に半角スペースが入ります。 結果、hoge変数に"hoge"の値を代入したければ、下のように記述します。

REM つまり、こうすれば、おk
SET hoge=hoge
echo %hoge%

変数の値の操作

バッチファイルの変数は、基本、文字列です。 文字列の連結だけなら、変数を参照して連結したい文字を後ろにくっつけると、後ろに 文字列を連結できる。

SET char=hoge
REM 
echo %char%fuga

変数に入れたものが数字でそれを四則演算したい場合は、SETコマンドの/aを指定する。 指定せずに、他の言語のように演算記号をつけていても、文字列の連結にしかならないので、注意する。

@echo off
set num=1+1
set /a num2=1+1
echo %num%
echo %num2%

遅延環境変数展開

変数に代入できた。 そして、加算できた?
基本的には、これでおk でも、一番、ハマりやすいのが、IFやFORの中で変数を使った時です。 例えば、下のバッチスクリプトとかそうのケースです。

@echo off
set /a count=0
for /l %%i in (0,1,10) do (
    set /a count %count%+1
    echo %count%
)
 

よくあるインクリメント(1を加算する)の文ですね。 ほかの言語だと、ループするごとに、変数countの値が一つずつ増えていくと思います。 実際に、実行してみた結果がこちら

C:\Users\endoh\Dropbox\blog\cmd>noIncrement.bat
0
0
0
0
0
0
0
0
0
0
0

 

え い え ん の ゼ ロ !
なぜ、こんなことになっているのか。
それは、「FOR文は、実行時に一行になる」・「実行前に、変数を展開する」というコマンドプロンプトの挙動のせいです。
@echo onに、書き換えて、実際に流れをみてみます。

C:\Users\endoh\Dropbox\blog\cmd>noIncrement.bat

C:\Users\endoh\Dropbox\blog\cmd>set /a count=0

C:\Users\endoh\Dropbox\blog\cmd>for /L %i in (0 1 10) do (
set /a 0+1
 echo 0
)

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

C:\Users\endoh\Dropbox\blog\cmd>(
set /a 0+1
 echo 0
)
0

FOR文の実行前に、COUNT変数の値が展開されてしまうので、 ただ、ひたすら、0+1 の加算とecho 0が繰り返されるだけの悲しい結果に。
結果も格納されないので、countの値は0のままです。 期待通りにインクリメントしてもらうには、「遅延環境変数展開」というものを使います。

やり方は、 setlocalの、パラメータにenabledelayedexpansionを指定します。

@setlocal enabledelayedexpansion
@echo off
set count=0
for /l %%i in (0,1,10) do (
    set /a count=%count%+1
    echo %count%
)

参考文献

finderで隠しファイルを表示する。

f:id:endo_hizumi:20190719165138p:plain
初めての方は、はじめまして。
ご存知の方は、そうだよ、ヒズミさんだよ。

Finderで.gitフォルダを開きたくて、隠しフォルダの表示方法を調べたけど
その表示方法が、特殊だったので、メモる。
f:id:endo_hizumi:20190719164936p:plain

みんな大好きターミナル.appを開いて、以下のコマンドを入力

Finderのウインドウが全部閉じるので、注意!

defaults write com.apple.finder AppleShowAllFiles TRUE
killall Finder

コマンド入力後に、Finderを開くと、.gitフォルダが表示されてるね(ニッコリ f:id:endo_hizumi:20190719164929p:plain

参考文献

Finderでファイルパスをコピーする。

f:id:endo_hizumi:20190718114121p:plain

初めましての方は、はじめまして
ご存知の方は、そうだよ、ヒズミさんだよ。

記事を書くリンクをクリックしたら、この挨拶が入ってると、楽なんだけど、
これを書くことで、記事を書くスイッチが入るというか、この挨拶をかけるが山。 転職先で、Macを支給されて、操作の違いに多少困惑しつつも、業務を行なっています。

今回ですが、WIndows 10のエクスプローラーだと、パスをコピーというボタンがついてて、簡単にファイルの絶対パスをコピーできます。
Windows10のファイル・フォルダーパスをかんたんにコピーする | PCの鎖
(余談ですが、Windows10では、環境変数のPATHを編集しやすく改良されてあったり、細かいところが便利になってて、好きなんですよね。)
MacのFinderで、同じようなことできないのかなと、思って軽くググったら、見つけたのでメモがわりに。

この方法は、2つあって

  • 一つ目が、Finderのメニューから"パスバーを表示"でクリック f:id:endo_hizumi:20190718113755p:plain
    コピーしたいファイルをクリックして、パスバーに表示されたファイル名を右クリックで、"{ファイル名}のパスをコピーする"という項目があるので、クリックします。 f:id:endo_hizumi:20190718114121p:plain

  • 二つ目が、右クリックした後に、optionキーを押す。

それって、ありなんだ・・・

右クリックした後に、optionキーを押すと、メニューの一部が変わります。
[ファイルをコピー]が、[ファイルのパスをコピー]に変わります。 マジかよ。WIndowsユーザーは、そんな挙動見たことないっすよ・・・。
(Optionキー押した状態でスクリーショットって、どうやって撮れるの・・・)

参考文献

4月の振り返り

はじめましての方ははじめまして、
ご存知の方はそうだよヒズミさんだよ

今回は、4月の振り返りです。

目標の達成状況を見ていこう。

  • 隔週で、技術記事書く
  • その内容でLTする
  • 貯金額15万目指す

隔週で、技術記事書く 【達成?】

環境構築とVPNサーバーのメンテナンス(?)の話だしね。技術記事よね?
隔週ではないので、両手上げて、達成とは言い難い。
5月は月でなんかい更新するという目標にしたほうが良さそう

その内容でLTする。【失敗】

仕事が忙しすぎて and 場所が遠いので、スライド作るどころ
そもそも行く時間もMPもなかったので、達成できず...
今月も忙しいし、今月のLTは難しそう。

貯金額15万目指す。【失敗】

いけると思って、たてたけどの予想以上に使ってしまったので、15万は無理でした...

まとめ

4月から、常駐先が変わって、それになれるのに、いっぱいいっぱい。そして、片道1時間半かかるので、残業すると、家には寝に帰るだけ。
3月のノリで建てたのが失敗だった。
現状を加味して、無理のない5月の目標を立てたいと思います。

SoftEther VPN Serverのパスワードをリセットする。

はじめましてのかたは、はじめまして。ご存知の方は、そうだよヒズミさんだよ。 今回は忘れてしまったSoftEther VPN Serverの管理パスワードのリセット方法だよ。 f:id:endo_hizumi:20190429113421p:plain

前置き

自宅のマシンへリモートデスクトップでアクセスするのにVPNを張っているんだけど。
外出先にいるとき、今使っているマシンで自宅のマシンに入ろうと思ったら、ユーザーを作り忘れていたので、スマートフォンから自宅マシンに入ってユーザーを作ろうとしたら、管理者パスワードを忘れて、管理コンソールからサーバーに入れない・・・(´・ω・`)
思い当たるパスワードを入れたけど、ここの管理者パスワードだけパスワード体系を別にしてたみたいで、覚えていない。
仕方ないので、変更しようと思ったので、その方法を、メモ代わりに書いておきます。 パスやコマンドは、自分の環境を張っていくので、各人の環境に合わせて、読み替えていってください。

作業内容

  1. まず、VPN Serverを停止しておく。
    SSHか直接ログインして、VPNサーバーを停止させます。
    起動中は、コンフィグファイルを監視しているのか。
    パスワードを削除しても、復活するので、パスワードの再設定ができません。
    sudo systemctl stop vpnserver
  2. vpnserverがインストールされているディレクトリに移動して、
    vpn_server.configをテキストエディタで開いて、Server Configのbyte HashedPasswordの行を削除します。
    f:id:endo_hizumi:20190429120035p:plain

  3. VPN Serverを起動させる。
    sudo systemctl start vpnserver

  4. vpncmdを起動して、1を選択して、必要な項目を埋めていく
    f:id:endo_hizumi:20190429122324p:plain Hostname of IP Address of Destination: 起動したマネージャと別のマシンでVPN Serverが動いてる場合、マシンのIPアドレスを指定します。
    空の場合は、localhostが指定されます。
    Specify Virtual Hub Name: 対象のサーバーに設定されている仮想ハブの名称を指定します。
    空の場合は、初期値のDEFAULTが指定されます。

  5. パスワードを設定する
    無事にパスワードが削除されていると、VPN Serverのコンソールが表示されると思います。
    そこで、以下のコマンドを実行します。
    VPN Server> ServerPasswordSet
    実行するとパスワードを聞かれると思うので、覚えていられるパスワードに変更します。
    The command completed successfully.と表示されたら、変更完了です。

f:id:endo_hizumi:20190429121524p:plain
最終的に、たぶんこんな感じになると思う。

参考URL