GitLab on Docker の続き

少し前に GitLab を Docker で構築する記事を書いたのですが、既に現状のものと合っていないことがわかりました。
しかも、以前の手順のままでは動作する環境が限られてしまう感じでした。

なにが変わったか

SSL のために、 Let’s Encrypt を使用するようになったようです。
公開されるサービスで、そのサーバーが外と直接つながっているような場合には問題にならないでしょう。

しかし、Let’s Encrypt と通信できないような状況下では構築に失敗してしまいます。

新しい構築手順

以前の手順通りに、 docker-compose.yml を取得してきます。
そして、 SSL を使わないで構築するよう設定を書き換えます。
これには次のように編集します。

初期状態で SSH が有効だったので、 22番ポートのフォワーディングは変更しています。
見ての通り、 letsencrypt の設定を無効化としています。これにより、内部的に構築するようなものであっても docker-compose は成功すると思います。

自己証明書 SSL で使う

未検証ですが、let’s encrypt を無効化した状態で、手動で自己証明書を作成すればできそうな感じです。
hostname に設定した名前で、証明書のファイルを検索するような動きをみせていたので、 hoge.pem,crt,key などを /srv/gitlab/config/trusted-certs ディレクトリの中においたら認識してくれるのではと予想しています。


VMware Player の uEFI NTFS 対応

VMware Player は uEFI による起動に対応しています。
しかしながら読み込めるファイルシステムとして NTFS は標準対応していないようなので、これをなんとかしたいと思います。

uEFI の起動

VMware Player は BIOS による起動がデフォルトです(VMware Workstation 12 Player)。
これを uEFI での起動とさせるには、 仮想マシンの vmx ファイルに以下のように編集(追記)します。

この状態で、 FAT32 でフォーマットした USB メモリから Windows やら Linux やらを起動できると思います。

動機: NTFS への対応

最近、 Windows のインストールファイルが 4GB を超えつつあります。そうなると FAT32 では1ファイルの制限に引っかかってしまうので、 NTFS を使いたいところです。
幸いにして、自作PC 界隈の uEFI では NTFS が読めるものが多いようなので、 VMware Player でも使えるようになったらなぁというところでやってみます。

続きを読む


OLED の動作確認(ESP32)

HiLetGo の OLED を ESP32 (ESP-WROOM-32) で使おうと思ったときに、予期していた状態と異なったのでここにメモとして残しておきます。

ESP-WROOM-32 で Arduino フレームワークを使ってこのディスプレイを使おうとしたときに、以前の u8glib が使えなかったので別のライブラリを探すことにしました。 u8glib で GraphicsTest をコンパイルさせたところ、なぜかフラッシュの領域を超えるくらいの大きなものが出来てしまったようで。

続きを読む


ESP32 の I2C の罠

ESP-WROOM-32 を、 Arduino Core for the ESP32 で使用していたのですが、 I2C 関連で通信正常にできない問題に出遭いました。使用しているバージョンは 1.0.0 となっていました。
I2C については、こちらで語られているように問題があるようだったのですが、現時点のバージョンでは解消されているのかと考えています。

  • 参考:https://www.mgo-tec.com/blog-entry-problem-i2c-0628-arduino-esp32.html

遭遇した問題点

RTC のモジュールとして、 RX8900 を使おうとしたときに出遭いました。最初はラインをプルアップするのを忘れたので、そのせいで通信が正常に出来ないのだと考えていました。しかし、プルアップしてみても問題は解消せず、という状況でした。
問題といっているのは「デバイスからの値の取得が出来ない」といった状況が発生していました。しかし、 RTC の各レジスタに値はかけているようで、 RX8900 のデバイスは稼働しているようでした。この点から読み込みだけが失敗している状況と考えました。

このとき使用していたスケッチは、 RX8900 は秋月電子で購入した際に紹介されていた ino スケッチです。

解決方法

スケッチの中で、 Wire.endTransmission(false) としている点が、 ESP-WROOM-32 でまずいような感じでした。
後続にもコマンドがあるので I2C バスを解放せずという点はわかるのですが、これが駄目なようでした。この部分を endTransmission(true) でバス解放してあげることで、ひとまずはレジスタからの読み込みも成功するようになりました。

endTransmission(false) を使っているようなものでは、同じように問題に出遭うかもしれません。あるいはバージョンが上がったら、この問題も解消されるかもしれません。


ESP32でmp3単純再生

先日の WebRadio のプログラムを使って、 ESP-WROOM-32 で mp3 データが再生できることは確認しました。しかし単に mp3 だけを再生するにはどうしたらよいかが気になりました。今回はこれを確認したいと思って、色々と試してみることにしました。

WebRadio のほうは ISP-IDF の開発環境を必要としていたのですが、 Arduino の環境で出来たら手軽に使えるなと思うので、こちらで出来ないかから試してみました。結論としては、運良く Arduino のフレームワークで使えるものがあったのでこれを紹介します。

続きを読む


ESP-IDF で wav再生

ESP-IDF 環境で、 wav の再生をやってみました。
先日の WebRadio のもので I2S の配線済みだったので、wav の再生にも I2S へ書き込むようにしました。単なる wav の I2S 再生を ESP-IDF でやっているサンプルってあまりなさそうだったのは、簡単すぎて需要が無いのかも。

続きを読む


ESP-WROOM-32 のための VSCode 設定

ESP-WROOM-32 を Arduino として使っている際には、あまり意識していなかったのですが、 ESP-IDF 環境でプログラムを作成するとなるとちょっとつらくなってきたので環境を整えてみることにしました。

Visual Studio Code を用いて、コードの編集からコンパイル、転送までを集約したいと思います。

続きを読む


ESP32 で WebRadio

手元にあった ESP-WROOM-32 マイコンは mp3 を再生するパワーがあることがわかったので、手っ取り早く確認したかったので、WebRadio を再生するプログラムを動作させてみることにしました。

使用した開発ボードは、 ESP32-DevKitC というものですが、他のボードでも同様に動くと思います。スイッチサイエンスの ESPr Developer 32 も定番の開発ボードです。ESP32 マイコンがどのようなものかは、各所で説明されているのでここでは説明しません。

続きを読む


HiLetGo の OLED の動作確認 (続)

先日の HiLetGo の OLED パネルについて、少し間違った情報を書いてしまったようです。 u8glib 側のコードを編集する必要はありませんでした。

採用されているチップが実は SH1106 で SSD1306 ではなかった模様です。

接続

配線を次のようにします。

Adruinoピン OLEDピン
13 CLK
11 MOSI
10 CS
9 DC

OLED の RESET ピンは Vcc と接続しておきます。

GraphicsTest編集

有効にするのは、次の行でした。
(見ての通りリセットピンに対して制御がないので、前節の配線変更が必要になった感じです)。

参考

同じように OLED パネルを使っている事例を見つけたので、上記のような結論へたどり着くことが出来ました。こちらの方は 0.96 inch から 1.3 inch へ使用するパネルを変えた際にこの問題に遭遇したみたいです。


HiLetGo の OLED の動作確認

Amazon で HiLetGo の有機 EL パネルを買ってみました。割と情報が多く見つかるのが 0.96 インチのものですが、買ったのは 1.3 インチのものです。また接続形式は I2C ではなく、 SPI でした。
動作を Arduino UNO を用いて確認したのですが、ちょっとポイントがあったので備忘録と、誰かの役に立つかもと思って、記録&公開しておきます。

接続について

Arduino と OLED との接続は以下のようになります(電源接続を除く)。
Fritzing で配線図を書こうと思ったのですが、 HiLetGo OLED と合う物が見つからず…

Adruinoピン OLEDピン
13 CLK
11 MOSI
10 CS
9 DC
8 RES

続きを読む