Estardyn 0.96 インチ IPS LCD TFT ディスプレイモジュール 160x80 HD 65K SPI インターフェイス ST7735S ― 2026/08/21
アリエクのEstarDyn Factory Storeで ”Estardyn 0.96 インチ IPS LCD TFT ディスプレイモジュール 160x80 HD 65K SPI インターフェイス ST7735S 3.3V Raspberry Pi DIY プロジェクト用”を買ってみました。カラーで¥300也。


Adafruit_ST7735.h を見ると 160x80ドットの初期化に、それっぽいのが2つあったので
INITR_MINI160x80_PLUGIN
INITR_MINI160x80
試してみると INITR_MINI160x80 これが良いようでした。INITR_MINI160x80_PLUGIN これは隅にスジが入ってずれて表示されました。
スケッチ
#include <Adafruit_GFX.h>
#include <Adafruit_ST7735.h>
#include <SPI.h>
//SPIピン定義
#define TFT_BLK 8 // BLK
#define TFT_CS 9 // CS
#define TFT_DC 10 // DC
#define TFT_RST 11 // Reset
#define TFT_MOSI 12 // SDA
#define TFT_SCK 13 // SCL
Adafruit_ST7735 tft = Adafruit_ST7735(&SPI, TFT_CS, TFT_DC, TFT_RST);
void setup(void)
{
pinMode(TFT_BLK, OUTPUT); //バックライトにGPIOを使用する
digitalWrite(TFT_BLK, HIGH); //バックライト オン
//SPIピン設定
SPI.begin(TFT_SCK, -1, TFT_MOSI, TFT_CS);
tft.initR(INITR_MINI160x80); //ST7735初期化
tft.fillScreen(ST77XX_BLACK); //背景の塗りつぶし
tft.setRotation(0); //画面回転
tft.setTextSize(2); //サイズ
tft.setCursor(0, 0); //カーソル位置
tft.setTextColor(ST77XX_RED); //赤
tft.printf("Red\n");
tft.setTextColor(ST77XX_GREEN); //緑
tft.printf("Green\n");
tft.setTextColor(ST77XX_BLUE); //青
tft.printf("Blue\n");
}
void loop()
{
}
スケッチの結果
赤の指定なのに青。青が赤になっています。
調べてみると同じようなディスプレモジュールでもいろいろあるようです。。。
RGB 16ビットのデータフォーマットにはRGB565とBGR565があるそうで、これを直せば良いみたいです。
ST7735Sの仕様書をみたら、RGB-BGR ORDERというものがあります。
このビットをBGRにすればよいと思うので、このレジスタを設定する箇所を探せば良さそうです。
このレジスタのアドレスと思われる ST77XX_MADCTL という定義があったので検索すると
Adafruit_ST7735.cpp のinitRとsetRotationで使われていました。
確認のためsetRotationのあとにMADCTLレジスタを書き換えてみました。
このレジスタを読み出せればRGBビットだけ1にすればよさそうなのですが、インターフェースに読み出しのピンがないようなので、
値を上書きすることにしました。ですので上位4ビットは画面の回転設定に影響するのでsetRotationの引数に合わせて値を決めました。
(どのビットを立てるかはAdafruit_ST7735.cppを参考)
変更箇所 setRotationの後
tft.setRotation(0); //画面回転
//RGB-BGR ORDER (setRotationがMADCTLを書き換えている)
uint8_t data = 0xC8; //0:0xC8 1:0xA8 2:0x08 3:0x68 画面の回転方向による
tft.sendCommand(ST77XX_MADCTL, &data, 1);
変更スケッチの結果
ちなみにsetRotaionが役に立っていないようですが、ほかの設定があるようで、レジスタの値を引数に合わせて設定しないとダメでした。
もうちょっと解析して、Adafruit_ST7735.cppを別の名前にしてローカルで作り直すか、setRotationをオーバーライドするかして、
かっこよくしたほうがよさそうです。
とりあえず楽そうだったので、setRotationをオーバーライド。
#include <Adafruit_GFX.h>
#include <Adafruit_ST7735.h>
#include <SPI.h>
//SPIピン定義
#define TFT_BLK 8 // BLK
#define TFT_CS 9 // CS
#define TFT_DC 10 // DC
#define TFT_RST 11 // Reset
#define TFT_MOSI 12 // SDA
#define TFT_SCK 13 // SCL
class MyST7735 : public Adafruit_ST7735 {
public:
using Adafruit_ST7735::Adafruit_ST7735; // コンストラクタを継承
// setRotation をオーバーライドして追加処理
void setRotation(uint8_t m) override {
Adafruit_ST7735::setRotation(m); //元の実装を呼び出す
//追加の処理 RGB->BGR
uint8_t data = 0xC8;
switch (m) {
case 0:
data = 0xC8;
break;
case 1:
data = 0xA8;
break;
case 2:
data = 0x08;
break;
case 3:
data = 0x68;
break;
}
sendCommand(ST77XX_MADCTL, &data, 1);
}
};
//Adafruit_ST7735 tft = Adafruit_ST7735(&SPI, TFT_CS, TFT_DC, TFT_RST);
MyST7735 tft = MyST7735(&SPI, TFT_CS, TFT_DC, TFT_RST);
void setup(void)
{
pinMode(TFT_BLK, OUTPUT); //バックライトにGPIOを使用する
digitalWrite(TFT_BLK, HIGH); //バックライト オン
//SPIピン設定
SPI.begin(TFT_SCK, -1, TFT_MOSI, TFT_CS);
tft.initR(INITR_MINI160x80); //ST7735初期化
tft.fillScreen(ST77XX_BLACK); //背景の塗りつぶし
tft.setRotation(0); //画面回転
tft.setTextSize(2); //サイズ
tft.setCursor(0, 0); //カーソル位置
tft.setTextColor(ST77XX_RED); //赤
tft.printf("Red\n");
tft.setTextColor(ST77XX_GREEN); //緑
tft.printf("Green\n");
tft.setTextColor(ST77XX_BLUE); //青
tft.printf("Blue\n");
}
void loop()
{
}
一応使えそうですが、ほかにも問題が起こるかもしれません。
R36S レトロゲーム機 ― 2025/12/13
Linux のゲームエミュレータが入ってて安いということで買ってみました。
Raspberry Pi3でもBatceraとかでできましたが、ちょっとパワー不足で、かといってRaspberry Pi5
とかは高いので中華レトロゲーム機に興味が出ました。
調べるとオリジナルではないものがあるとのことで、アリエクの BOYHOM Store で購入。¥4100
ここにオリジナルかクローンの見分け方があります。
https://handhelds.wiki/R36S_Clones#Avoid_buying_a_clone
箱からはなんか違うような。。。

一応ArkOSが搭載されていました。

裏面の"Consola Retro"がさらに怪しい

電池の蓋をあけて基板のバージョンを確認。V22で今のところ一番新しいものらしい
ここのサイトでパネルの確認をしたら、Panel4と出ました
https://aeolusux.github.io/ArkOS-R3XS/tools/dtbIdentify.htm
オリジナルらしい。
●SDカードの品質が悪いとのことで、すかさずイメージバックアップ&EASYROMSをバックアップ
怪しげなSDカードです

Fedora PCでイメージバックアップ
”ディスク”アプリでSDカードを選択

右にあるメニュー(・が三つの)”ディスクイメージを作成”を選択
適当に名前を付けて作成開始
xxx.imgファイルができます。
このイメージファイルを使って、新しい同容量のSDカードにイメージを書き込み
イメージファイルを右クリックして、イメージライターを選択
”なし”のところで新しいSDカードを選択→リストア開始
これで気兼ねなく遊べます。
●WIFIでアップデート
Raspberry Pi で使っていたWIFIドングルが使えないか試してみました。
だいぶ前に買ったGW-USNano2というものです。これをセリアで買ったUSB変換アダプターでつけてみたところ、問題なく接続できました。
ダイソーで売ってる変換アダプターや¥550のType-CのUSBハブでも使えました。
WIFIの設定はOPTIONのWIFIで。
UPDATEもここから
WIFIが使えるようになると WIFI:up になります。
以前、DSの脳トレを散々やってDS本体が壊れてしまって放置していたのですが、これでやってみたのですが、マウスで文字を書くのは至難の業です。
ダイソーのハブにWIFI、マウスを繋いで動作することは確認できました。USB DACも使えました。

●ARKOSを最初からインストール
ゲームを入れるSDカードとOSを入れるカードは分けたほうが良いと聞いたので、新しいSDカードにArkOSをインストール。
おすすめの microSD カード
https://handhelds.wiki/R36S_Compatibility_Lists
ですが、試しに¥550のダイソー32GBmicroSDで作成
ARKOSダウンロード
https://github.com/AeolusUX/ArkOS-R3XS?tab=readme-ov-file
imgファイルをFedora のディスクアプリでSDカードに書き込んで、R36Sに戻して起動
WindowsではRaspberry Pi imager を使ってみました
今回はRaspberryPiのイメージは作らないので "No Filterig" を選択して次に
"カスタムイメージを使う" を選択して書き込むimgファイルを選択して次に
書き込むSDカードを選択して次に、Writingに進むので書き込み
本体に戻して起動するとインストールされます。といってもSDカード内に展開されるので、SDカードを変えればいろいろ試せます。

OPTIONSでデバイスを選択
※V22ボードは以下からdtbファイルを入れ替えないとUSB OTGが動かない問題がありました。
以下の対処でWIFIなどの機器が動作するようになりました。
https://handhelds.wiki/R36S_Overview#R36S-V22_2024-12-18
dtb files
https://github.com/AeolusUX/R36S-DTB/tree/main/R36S/Panel%204%20-%20V22
別のSDカードにゲームを入れる
新しいSDカードをexFATでフォーマットして、EASYROMSフォルダの中身(元のゲームが入っているSDカードのフォルダ)をコピーします。
これをR36SのTF2-GAMEスロットに挿して、OPTIONS→ADVANCED→SWITCH TO MAIN SD FOR ROMSを選択して切り替え。
●portmaster install
https://portmaster.games/installation.html
Downloadから以下をゲット
Install.Full.PortMaster.sh
SDカードのtoolsフォルダにコピーする
ネットから必要ファイルがダウンロードされるので、WIFIドングルを繋ぐ
本体に戻してOPTIONS->Tools->INSTALL.FULL.PORTMASTER インストール
PORTMASTER起動 OPTIONS->Tools->PORTMASTER
Optionで日本語も選べます
●kodi install
この記事にKODIに関するものがあったので試してみました。
https://www.reddit.com/r/R36S/comments/1c1mzz4/kodi_on_r36s/?tl=ja
kodi-Installer.rar を取ってきて解凍。
中身の
kodi Installer.sh
kodi.tar.gz
2つのファイルをゲームを入れてあるSDカードにコピー。
コピー先フォルダ: ports
(この2つのファイルはインストール後に消える)
R36Sを起動してメニューのPORTからKODI Installを実行するとインストールが開始される。
結構時間がかかる。
再起動するとKODIの項目がメニューにできる。
KODIを起動するとスペイン語なので設定を変更。
まずスペイン語が分からないので、なんとか英語にする。
左の三つあるアイコンの真ん中が設定(画像はもうすでに英語になってます)
Interface選択
Interface Langage -> English
いきなり日本語にしない理由は以前Raspberry PiでKODIを使っていた時にフォントを”Arial”にしておかないと文字が豆腐になってなんだかわからなくなったので、念のためSkinからFontsをArial にします。
Interface Langageが英語のままでもフォントをArialにすると日本語が表示できます。

DACを繋げばより良い音で聴けます。メディアプレイヤーとしても使えるかも。。。






















最近のコメント