macsbug

ESP32-2432S028

with 13 comments

ESP32-2432S028 motherboard            ORG 2022.08.17
.                          rev 1. 2022.09.13
.                          rev 2. 2022.09.22
.                          rev 3. 2024.01.20
.                          rev 4. 2024.02.04
                          rev 5. 2024.04.12
                          rev 6. 2024.04.24
2.8″ 240×320 SPI ILI9341V with Touch Panel XPT2046
価格:🟢 1480円 送料込 ($12.41)。輸送期間:8日。
超低価格で必要な物が1つの基板でできています。
販売店:Sunton Store (購入時 116 Order 投稿時 471 Order)
輸送期間;8日で Aliexpressの中では早い方でした。
サイズ:86x50mm。カードと同じサイズです。
追記:rev 4:2024.02.04
ESP32-2432S028R は 3つのバージョンがあります。(R=XPT2046 抵抗膜タッチセンス)
 1. ESP32-2432S028R v1 (ILI9341 SPI):初期。U4 ICの設計ミス。
 2. ESP32-2432S028R v2 (ILI9341 SPI):U4 IC Remove。External Pin Assign change.
 3. ESP32-2432S028R v3 (ST7789 SPI, MODE 3):A type with two USB ports.:YD2USB


.
構成:
1. ESP32 with TELEC(211-161007) : 内部 4MB(32Bit) Flash
2. 外部 4MB(32Mbit) Flash memory, winbond 25Q32JVSlQ
_  rev 1. : 2022.09.13:U3 4MB, U4 4MB。Parallel SPIになっています。
3. LCD ( ILI9341V ) with Touch ( U3 : XPT2046 抵抗膜方式)
4. Expanded IO x 2
_  P3 ( GND, GPIO_35, GPIO_22, GPIO_21)
_  CN1 ( GND, NC, GPIO_27, 3V3)
5. SD SLOT ( Micro SD )
6. RGB LED ( MHP5050RGBDT )
_  BLUE : GPIO_16, RED : GPIO_4, GREEN : GPIO_17
7. CDS ( GT36516 ) : GPIO_34
8. EXT Power Conn : P1 ( VIN, TX, RX, GND )
9. Audio OUT(Audio amp SC8002B) : P4 SPEAK(2=VO2,1=VO1)
10. P1:Power Supply Base Conector
11. 付属:Touch pen, 4pin External connector cable, USB Cable。
資料:
購売店にESP32-2432S028Rのdownload linkがあります。重要です。
- 2.8inch_ESP32-2432S028R 625MB のDLは 出来ないやPasword要求を聞きます。
- これはブラウザーやパソコンのOSによって異なる様です。
- 私の環境 MacBooK Pro Catalina 10.15.17, ブラウザー
- Firefox, Google Chome では 何事もなくDL出来ています。
– LVGLのデモがインストールされています。(販売店に動画あり)
– Display Libraryは LovyanGFX (ILI9341 SPI2_HOST)で動作しています。
– M5Stack(2.0inch)と同じ240×320で 2.8inchは とても見やすい大きさです。


.
開発環境 :
_ HARD : EESP32_2432S028
_  Display : 2.8″ 240×320 SPI ILI9341V LCD Touch XPT2046
_ Dev environment : Arduino IDE 1.8.19
_  Board Manager : arduino-esp32 2.0.3-RC1
_  Board : “ESP32 Dev Module”
_  Upload Speed : “460800” (Mac), “921600” (Win)
_  CPU Frequency : “240MHz (WiFi/BT)”
_  Flash Frequency : “80MHz”
_  Flash Mode : “QIO” or “DIO”
_  Flash Size : “4MB (32Mb)”
_  Partition Scheme : “Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)”
_  Core Degug Level : “Verbose”
_  PSRAM : “Disabled”
_  Arduino Runs On : “Core 1”
_  Events Run On : “Core 1”
_  Pord : “dev/cu.wchusbserial14240”
_ Library : LovyanGFX
_ memo :
_ CH340C の為 Upload Speed は Mac と Win では 異なります。
_ LovyanGFX Touch cfg.pin_int = 36; Touchが動作しない場合は -1 にします。
.


.
🔴 追記:SPI接続 設計ミス:2022.09.22
ESP32-2432S028 , ESP32-3248S035 の U4 外部 Flash memory 4MB について。
U2 ESP32-WROOM-32 は 4MB Flash 内蔵です。そして外部Memoryとして
U4 4MB Flash Memory 8Pin W25Q32JV があります。
FLASHは SPI接続で VCC以外のPinは全て(CS,DI, DO, WP,CLK, HOLD,GND)共通。
マルチサブモードやマルチスレーブにはなっていません。
よって U4のCS並列接続は設計ミスと判断しています。
不具合事例:Arduino IDEでUP LOAD(書き込み)時にエラーが発生し書き込み不可。
      Flashの破損。他、不可解な現象が発生します。
現象:UP LOAD不可。🔴 Flashが壊れます。
原因:U2内部FlashとU4外部FlashのCS,DI,DO共通によりFlashが重複。
対策:🟢 U4 Flash を取り除きます。 詳細は 解説の 16 をお読みください。
  


  
Down Load:DL後 pdf(_.pdf)を削除しzipを解凍します。
ESP32-2432S028R v1,v2 用
🟢 Down Load : Tetris_ESP32_2432S028.zip
🟢 Down Load : uncannyEyes_ESP32_2432S028.zip
🟢 Down Load : Raytrace_ESP32_2432S028.zip
🟢 Down Load : Maze_generator_ESP32_2432S028.zip
🟢 Down Load : Life_Game_ESP32_2432S028.zip
🟢 Down Load : 3D_Cube_ESP32_2432S028.zip
🟢 Down Load : Test_PDQ_ESP32_2432S028.zip
🟢 Down Load : LVGL802_demo_ESP32_2432S028.zip
🟢 Down Load : MovingCircles_ESP32_2432S028.zip
- MovingCircles : obj_count 200 =22 FPS, 100=22 FPS, 50=22 FPS
memo : Flash Mode : “DIO”
 
rev 6. 2024.04.24
 🔴 最新版の ESP32-2432S028R v3 は ST’7789 Driver を使用しています。
 サンプルは Web Radio ESP32-2432S028-I2S を参照ください。
 
ケースは無印のメイクパレット S(111x71x15mm) 990円を使用しました。

  


  
部品レイアウト:配置、信号、ピンは色分けしてあります。
追記:rev 4:2024.02.04
この図面は 2022年8月初期のバージョンです。その後 U4の無いバージョン
2024年頃は 🔵 CN1(GND, NC, IO27,3.3V) が 🟣 (GND, IO22, IO27, 3V3) になりました。


以下のPDF図面は 拡大表示が可能と文字検索が可能です。
配線や設計、改造時に便利です。
🟢 ESP32_2432S028_PCB
  


  
GPIO Pin Assign:部品とGPIOの表です。
ESP32全てのGPIOを使用し GPIO_21*は 共有になっています。
Touch x,y の値は Calibration しなくとも以下の値で使用できます。

Cds R21
GPIO 34
Audio AMP U5
GPIO 26
LED1 GREEN RED BLUE
GPIO 16 4 17
U4 Flash HOLD WP CS CLK DO DI
GPIO SD2 SD3 CMD CLK SD0 SD1
GPIO 9 10 11 6 7 8
Touch x_min x_max y_min y_max
LGFX 300 3900 200 3700
Touch SPI INT(IRQ) SCLK MOSI MISO CS
GPIO 36 25 32 39 33
LCD SPI DC(RS) SCLK MOSI MISO CS RST LED
GPIO 2 14 13 12 15 EN(-1) 21*
SD DATA2 CLK
(CLX)
MOSI
(CMD)
MISO
(DAT0)
CS(CD) VSS VDD
GPIO 3V3 18 23 19 5 GND 3V3

.
Connector:

P3 GND IO35 IO22 IO21*
CN1 GND NC** IO27 3V3
P1 VIN TX RX GND
P4 VO1 VO2

追記:rev 4:2024.02.04
NC**:新しいバージョンは 🟣 IO22 になりました。
  


  
解説:
  
1. ESP32 : 内部 4MB(32Bit) Flash
 esptool.py flash_id の表示。
  

Detecting chip type... ESP32
Chip is ESP32-D0WD-V3 (revision 3)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 40:22:d8:57:f1:fc
Uploading stub...
Running stub...
Stub running...
Manufacturer: ef
Device: 4016
Detected flash size: 4MB

  
2. U4 External FLASH Memory 4MB(25Q32):
- rev 1. : 2022.09.13:ESP32 U3 は 4MB, U4 は 4MB です。
- 外部 4MB(32Mbit) Flash memory, winbond 25Q32JVSlQ
- 拡張用のFLASH 4MB です。CS=GPIO_11。
- 3V 32M-BIT SERIAL FLASH MEMORY WITH DUAL, QUAD SPI
- External Flash : Start Address 0x3F40_0000 End 0x3FF8_0000
- 4MB (4194303バイト):詳細:ESP32 Technical Reference Manual
_  参考:ESP-WROOM-32の外部フラッシュメモリにアクセスする
  
3. LCD Touch MISO:Arduino IDE の setup に必要な設定。
 Touch MISO に GPIO_39 を使用しています。
 GPIO_39 は  WiFI使用時に Pulseが発生します。(画像:左)
 対策:以下を記載するとPulseは無くなります。 (画像:右)
 原因:ESP32チップのバグです。
  

void setup() {
WiFi.begin();
WiFi.setSleep(false);

  

WiFi.begin() WiFi.setSleep(false)

  
4. INPUT ONLY GPIO:入力専用GPIOの把握。
 GPIO_36 (TP_IRQ), GPIO_39 (TP_OUT), GPIO_34 (cds),
 GPIO_35 (P3) は INPUT ONLYです。
 使用時や回路変更時に注意してください。

  
5. 共有(Commn) GPIO 21:使用時の注意。
 GPIO_21 は TFT_LED と P3 Extended IO21 と共有です。

  
6. 販売店 図面誤記:コネクター使用時の注意。
 P4 Connector PH_2.0_2P は誤記で 正しくは PH_1.25_2P です。

  
7. 電源:3.3Vは 2系統の電源になっています。
 USB 5VdcからD1 Diodeを経由し LDO AMS1117で3.3Vdcになります。
 D1 1N5819W Diode の出力は 4.6Vdc です。
  3.3V は 2つのLDOにより 3.3V-ESP と 3.3V-TFT が作られます。

.
8. P1 Power Supply Base Connector:使用時の注意。
 USB接続時 VIN には Q1 FET から 4.6V 出ています。
 Q1 FET Gate が GNDの為 Q1 は ON です。
 使用時に検討ください。
 Diode D1 1N5819W pdf:Vf = 0.32V(0,1A), Vf = 0.45V(1.0A), 5.0-0.45=4.6V

   
9. P4 SPEAK と Speaker:スピーカー接続方法。
 P4 コネクターへ 外部スピーカを接続できます。
 接続は 外部の抵抗値が 100Ω程度必要です。
 直接 4Ω や 8Ω 40,50mmの Speakerを接続しますと電流が流れすぎ
  3.3V電源が低下し ESP32が停止します。
 例;8Ω 2W 40mm Speaker に 100Ω を直列に接続します。(画像:左)
 ダイソー 330円スピーカを接続でき M5Stackより遥かに音は良いです。

 音質:音は歪み良くないです。とても使えません。
 音質の解説と改善方法:R7,R8,R9 を変更します。
 結果:R7=47KΩ, R8=22KΩ, R9=33K-47KΩ。
 参照:ESP32-2432S028 aka Cheap Yellow Display – fixing the audio issues
 rev 5 :追記 2024.04.12
 Audio AMP 音質改善方法:
  R7,R8,R9の値を変更します。
  The Audio AMP improvement article can be found below.
  ESP32-2432S028 aka Cheap Yellow Display – fixing the audio issues
  
10. PCBは カードサイズ:ケースの製作方法。
  カードサイズの為 市販のカードケースや名刺ケース、
  カードサイズの化粧ケースが使用可能です。
  加工は伴いますが 3Dプリンターは不要で 綺麗に仕上がります。

 
11. ESP32 EN 時定数:
 R1(10KΩ) と C4(0.1μ) で 時定数 τ(タウ) は 47μsec です。
 47μsecは ESP32 の起動には 仕様を満たした安全な値です。
 参考:
  ESP32 Dev Kitの あるverは 1nF+470Ω。 τ=0.22μsec で仕様外。
  設計者は Rの値を勘違いと想像します。不具合が多発しています。
  抵抗が低すぎます。Rは 10KΩ, Cは 10nF。τ=4.7μsec程度でしょう。
  起動しない為 τ を計算せず 大きな C を接続する方法は間違いです。
  M5Stackは 1nF+12KΩ, τ=0.564μsec で少なく不具合が起きやすい。

  
12. ESP32 Revision:Revision 3 です。
 Serial port /dev/cu.wchusbserial14240
 Detecting chip type… ESP32
 Chip is ESP32-D0WD-V3 (revision 3)
 Revision 1 は 不具合versionですので, 3 で良かったです。
  
13. 速度:
 同じLCD解像度の M5Stack と比較すると1.5倍速いです。
 高速化した M5Unified も従来のM5Stackよりも同等に速いです。
 LovyanGFXの SPI Clockは cfg.freq_write=40MHz です。
  それ以上の50MHzとかは 40MHzに丸められます。
 配線のレイアウトや部品配置が効いていると判断しています。
 Library LovyanGFXの効果は大きいです。
 更なる高速化:
  費用はかかるでしょうが LCDをParallel 16bit, MCUは ESP32 S3
  で最短配線と電源強化すると最高速が得られるでしょう。


  
14. R21:GT36516 Photoresistor:Cdsの動作範囲。
 以下の特性ですので 動作範囲を把握して使用します。
 R21 Cds は GPIO_34 (Input)へ接続されています。
 テスターで対GND電圧と抵抗値測定。
 暗くする :150mVdc , 抵抗値=25KΩ
 明るくする;部屋の蛍光灯:20mVdc , 抵抗値=5.5KΩ。窓の光:16mVdc
 プログラム:
 analogSetAttenuation(ADC_0db); // 0dB(1.0倍) 0~800mV
 pinMode(34, ANALOG);
 計測:Serial.printf(“%d[mV]\n”, analogReadMilliVolts(34) );
 計測結果;部屋を暗くする:230mVdc.。明るくする;75mVdc
 指で遮蔽した程度では 変化は少なく 明暗の差が必要です。

  
15. LCD Library:
 LovyanGFX を使用し 設定は以降に示します。
 LovyanGFXは 高速である事と FONTが多数用意されている事や
 漢字が容易に使用できます。
  
16. U4 SPI 接続:🔴 設計ミス。追記:rev 2. 2022.09.22
 U2 ESP32 内蔵 4MB Flash と U4 外部 Flash 4MB 8pin W25Q32JV の配線は
 VCC を除き全て(CS,DI, DO, WP,CLK, HOLD,GND)共通です。CSもです。
  判断の根拠は SPIの基本を学ぶ を参照ください。
  CSが並列なら DI,DO信号は直列接続にする必要があります。
  DI,DO信号が並列なら CS信号は 別にする必要があります。
  回路図 及び 実際の配線は 上記の「SPIの基本」になっていません。
  設計者情報:Aliexpress Message center でお聞きしました。
   並列と言っています。 何の為に 並列にしているか根拠が不明です。
   2回 お聞きしても問題ないとの返事で 根拠は述べていませんでした。
   さらに 設計者は並列の制御方法は知らないと述べていました。
 不具合:USB接続切れ発生。書き込み時にエラーメッセージ発生し書き込み不可。
 「 A fatal error occurred: Serial data stream stopped: Possible serial noise or corruption.」
 「 A fatal error occurred: MD5 of file does not match data in flash!』も発生。
 原因:ESP32 U2内臓FlashとU4 Flash CSの重複。U2 ESP32 内部4MB Flashの不良。
 処置:🟢 U4 Flash 4MBを散り外します。図面を参照ください。
    ハンダゴテで片側4つの端子に並列に熱を加えピンセツトで上に持ち上げます。
    片側が外れましたらもう片側の端子に熱を加え取り除きます。
    ハンダゴテがない場合 ニッパーやカッター等でピンを全て切り取り外します。
    🔴 GNDやVCCだけを外す様な 更なるな不具合を発生させる方法はしない事。
    🔴 ICの仕様にない接続をしないと言う事です。
    U4は 並列で何の役にも立っていませんので取り外し時に壊れても良いでしょう。
    実施後は アセトンやアルコールで基板をクリーニングします。
  この件は 私の判断ですので 各自で責任をお持ちください。
 処置:U4を取外しでもダメな場合は ESP32内蔵 4MB Flashを交換します。
    この場合 金属の蓋を開け 修理改造になりますので TELECは無くなります。
    ESP32を取り外すのは難しいですが ESP32-S3に交換する方法もあります。
  


PDF:画像が見えにくい場合は PDFを参照ください。S028_S035_SPI
  
🟠 2個並列のFlashに 書き込むと どうなるか?
 U2内部FlashとU4外部Flashが 正しく書き込まれている場合と
 書き込まれていない場合の4通りができます。
 U4外部Flashを外すと
 1. U2内部Flashが正しく書き込まれていると 以前のスケッチがそのまま動きます。
 2. U2内部Flashが正しく書き込まれていないと 動作せず表示しません。
🔵 これは この並列接続は 間違っている事を示しています。
  
 正しく書き込まれていないFlashを混ざて動かすと奇妙な現象が発生します。
 Arduino IDEで書き込み回数が(50〜200回とか)多くなると顕著に発生します。
 例として GPIO_27使用不可,タッチ操作不可,書き込み不安定,書き込不可,MD5エラー,
 U2内部Flash破損(esptoolでeraseしても不可)(最悪),等々が発生しました。
 esptool.py での Flashのerase の例は 以下です。

実施前 以下で確認。
esptool.py chip_id
esptool.py flash_id
erase 実施。
esptool.py erase_region 0xe000 0xffff
esptool.py erase_region 0x1000 0x5fff
esptool.py erase_region 0x10000 0x83fff
esptool.py erase_region 0x8000 0x8fff
実施後 以下で確認。
esptool.py chip_id
esptool.py flash_id

  
🟢 MD5エラーは 書き込み回数の多い M5Stackでも発生する事象です。
 対策は esptool.pyで Flashをeraseすると治ります。
 S028,S035の場合 取り外し後に U2内部Flashが正しく書き込まれていないと
 2,3回 MD5エラーで書き込みができなくなりますが その後は書き込みが
 出来る様になります。焦りと安堵を体験します。
 Espressif SystemsのSPI Flashを読むと 私には 極めて難しい事が書かれており
 奥義もある様で自分の判断が正しいのか疑問に包まれます。
  


  
LIbrary Lovyan GFX 使用により多くの事が容易にできます。
日本語Fontは 綺麗で簡単に使用できます。
 
Lovyan GFX 設定:
 Display:ILI9341 :SPI2 HOST:SPI2_HOST
 cfg.freq_write : Max 40MHz
 Touch:XPT2046:SPI3 HOST:VSPI_HOST
 Touch:cfg.pin_int = 36; Touchが動作しない場合は -1 にします。
  

//----------------------------------------------------------------------
// https://github.com/lovyan03/LovyanGFX/blob/master/examples/HowToUse/2_user_setting/2_user_setting.ino
class LGFX : public lgfx::LGFX_Device{
  lgfx::Panel_ILI9341 _panel_instance;
  lgfx::Bus_SPI       _bus_instance;
  lgfx::Light_PWM     _light_instance;
  lgfx::Touch_XPT2046 _touch_instance;
//----------------------------------------------------------------------  
public:LGFX(void){
  {                            // バス制御の設定を行います。
  auto cfg = _bus_instance.config();// バス設定用の構造体を取得します。
                               // SPIバスの設定
  cfg.spi_host   = SPI2_HOST;  // 使用するSPIを選択 (VSPI_HOST or HSPI_HOST)
  cfg.spi_mode   = 0;          // SPI通信モードを設定 (0 ~ 3)
  cfg.freq_write = 40000000;   // 送信時のSPIクロック(最大80MHz,80MHzを整数割値に丸め)
  cfg.freq_read  = 16000000;   // 受信時のSPIクロック
  cfg.spi_3wire  = false;      // 受信をMOSIピンで行う場合はtrueを設定
  cfg.use_lock   = true;       // トランザクションロックを使用する場合はtrueを設定
  cfg.dma_channel=  1;         // 使用DMAチャンネル設定(1or2,0=disable)(0=DMA不使用)
  cfg.pin_sclk   = 14;         // SPIのSCLKピン番号を設定 SCK
  cfg.pin_mosi   = 13;         // SPIのMOSIピン番号を設定 SDI
  cfg.pin_miso   = 12;         // SPIのMISOピン番号を設定 (-1 = disable) SDO
  cfg.pin_dc     =  2;         // SPIのD/C ピン番号を設定 (-1 = disable) RS
  // SDカードと共通のSPIバスを使う場合、MISOは省略せず必ず設定してください。
  _bus_instance.config(cfg);   // 設定値をバスに反映します。
  _panel_instance.setBus(&_bus_instance);// バスをパネルにセットします。
  }
  {                            // 表示パネル制御の設定を行います。
  auto cfg = _panel_instance.config();// 表示パネル設定用の構造体を取得します。
  cfg.pin_cs          =    15; // CS  が接続されているピン番号(-1 = disable)
  cfg.pin_rst         =    -1; // RST が接続されているピン番号(-1 = disable)
  cfg.pin_busy        =    -1; // BUSYが接続されているピン番号(-1 = disable)
  cfg.memory_width    =   240; // ドライバICがサポートしている最大の幅
  cfg.memory_height   =   320; // ドライバICがサポートしている最大の高さ
  cfg.panel_width     =   240; // 実際に表示可能な幅
  cfg.panel_height    =   320; // 実際に表示可能な高さ
  cfg.offset_x        =     0; // パネルのX方向オフセット量
  cfg.offset_y        =     0; // パネルのY方向オフセット量
  cfg.offset_rotation =     0; // 回転方向の値のオフセット 0~7 (4~7は上下反転)
  cfg.dummy_read_pixel=     8; // ピクセル読出し前のダミーリードのビット数
  cfg.dummy_read_bits =     1; // ピクセル外のデータ読出し前のダミーリードのビット数
  cfg.readable        =  true; // データ読出しが可能な場合 trueに設定
  cfg.invert          = false; // パネルの明暗が反転場合 trueに設定
  cfg.rgb_order       = false; // パネルの赤と青が入れ替わる場合 trueに設定 ok
  cfg.dlen_16bit      = false; // データ長16bit単位で送信するパネル trueに設定
  cfg.bus_shared      = false; // SDカードとバスを共有 trueに設定
  _panel_instance.config(cfg);
  }
  { // バックライト制御の設定を行います。(必要なければ削除)
  auto cfg = _light_instance.config();// バックライト設定用の構造体を取得します。
  cfg.pin_bl = 21;             // バックライトが接続されているピン番号 BL
  cfg.invert = false;          // バックライトの輝度を反転させる場合 true
  cfg.freq   = 44100;          // バックライトのPWM周波数
  cfg.pwm_channel = 7;         // 使用するPWMのチャンネル番号
  _light_instance.config(cfg);
  _panel_instance.setLight(&_light_instance);//バックライトをパネルにセットします。
  }
  { // タッチスクリーン制御の設定を行います。(必要なければ削除)
  auto cfg = _touch_instance.config();
  cfg.x_min      = 300;    // タッチスクリーンから得られる最小のX値(生の値)
  cfg.x_max      = 3900;   // タッチスクリーンから得られる最大のX値(生の値)
  cfg.y_min      = 200;    // タッチスクリーンから得られる最小のY値(生の値)
  cfg.y_max      = 3700;   // タッチスクリーンから得られる最大のY値(生の値)
  cfg.pin_int    = -1;     // INTが接続されているピン番号, TP IRQ 36
  cfg.bus_shared = false;  // 画面と共通のバスを使用している場合 trueを設定
  cfg.offset_rotation = 6; // 表示とタッチの向きのが一致しない場合の調整 0~7の値で設定
  // SPI接続の場合
  cfg.spi_host = VSPI_HOST;// 使用するSPIを選択 (HSPI_HOST or VSPI_HOST)
  cfg.freq = 1000000;      // SPIクロックを設定
  cfg.pin_sclk = 25;       // SCLKが接続されているピン番号, TP CLK
  cfg.pin_mosi = 32;       // MOSIが接続されているピン番号, TP DIN
  cfg.pin_miso = 39;       // MISOが接続されているピン番号, TP DOUT
  cfg.pin_cs   = 33;       // CS  が接続されているピン番号, TP CS
  _touch_instance.config(cfg);
  _panel_instance.setTouch(&_touch_instance);  // タッチスクリーンをパネルにセットします。
  }
  setPanel(&_panel_instance);// 使用するパネルをセットします。
  }
};
LGFX tft; // 準備したクラスのインスタンスを作成します。
//=====================================================================
  

  


  
2.8寸TFT-ESP32模块免费送,大家一起来学习
上記は fmzhangpei241氏の bbs です。
この超低価格の基板の設計者は 隣国のfmzhangpei241氏です。
謝辞:fmzhangpei241氏に感謝いたします。
氏の 学ぶ為のサイトからの意気込みは驚くばかりです。
氏は 2022年7月11日 に以下の様に述べています。
「最近2.8インチのESP32モジュールを作りました。
10セットを無料で送る予定です。一緒に議論して学びましょう。
送料はあなたの負担です。
それを必要とするエンジニアにのみ与えられます。
現在、LVGL を実行するためのルーチンと arduino でのいくつかの例があります。」
  
fmzhangpei241氏のbbsページは 多くの事を学べます。
  
無料を依頼するわけにもいかず、
私は Aliexpress Sunton Store から 6台購入しました。
これから基板用のプログラムを作る予定です。
既に I2S DAC Boardを使用した Web Radio ESP32-2432S028-I2S を作成しています。
  


  
感想:
価格:この構成で 1480円 は 超低価格です。
 最初の購入は 3個で4440円。最近の購入は 3個で4695円で1個1565円です。
 1個1500円程度です。
 部品は 古く低価格のものが使用され価格は低価格に工夫されています。
 個別の部品を計算すると 作るより購入した方が安いです。
 M5Stack 1台分の価格 6125円で 4台も購入できます。
 低価格は壊れても良い面があり 気楽に電子工作ができます。
 
基板:インターフェースを追加すると良く出来ている事が解ります。
 GPIOやコネクター配線の変更が容易で 自由に改造できる仕組みになっています。
 例:8Ω2W 40mm Speaker。
 例:PCM5102A I2S DACでWEB RADIO。

追記:rev 4:2024.02.04
この図面は 2022年8月初期のバージョンです。その後 U4の無いバージョン
2024年頃は 🔵 CN1(GND, NC, IO27,3.3V) が 🟣 (GND, IO22, IO27, 3V3) になりました。

 BUSの共有が無く GPIOの数が少なくなっています。
 ESP32-3248S035 では LCDとTouchのBUSは共有になっています。

不具合経験:
 複数台購入の中で 1台 GPIO_27 の出力がでない基板がありました。
 基板分析や応用例の試作中に起り 原因追及に時間を要しました。
 購入時にLVGLのサンプルが動作し良品と判断できるのは良いですが
 他のGPIOが全て良いかの判断は難しいです。
 販売店にどう連絡したら良いか困っています。
 ESP32 を ESP32-S3 に交換したいのですが ESP32を取り外せず保留。
 
3.5″版の新商品:ブログ記載中に 3.5″版の新商品が出ました。
 3.5″ 320*480 SPI ESP32 with Touch です。
 ESP32-3248S035
 2022.08.16 現在。
 1832円:2.8″ ESP32-2432S028R:少しずつ高くなってきています。
 2278円:3.5″ ESP32-3248S035  :上記との差額は 1832円。
 
販売数予想:
 投稿時(2022.08.17)の購入者数は 471人。1人3台とすると 1413台と計算。
 1000台で総売上 148万円となります。
 2020.09.13 : 717 orders 達成。
  
2023.0427 : Tomonori Honda さんへ
Touch_ESP32_2432S032C.zip
DL後 pdf(_.pdf)を削除しzipを解凍します。
  
 
   


  
  
ESP32-2432S028 , ESP32 , 4MB , 16 MB , ILI9341 , XPT2046 ,

Written by macsbug

8月 17, 2022 @ 2:32 pm

カテゴリー: ESP32

13件のフィードバック

Subscribe to comments with RSS.

  1. >尚 空のFlashにFWを書き込む方法は 解っていません。
    ARDUINO IDE(EspTool)でブートローダを書き込んではだめなんですか
    その後、EspSketch Data UpLoadでファイルを書き込んでおく

    Fumio Komiya

    8月 31, 2022 at 5:08 pm

    • 連絡をありがとうございます。
      マックですので WindowsのEspSketch Data UpLoad は 使用できません。

      使用環境:
      MacBook Pro 2019 macOS Catarina
      準備にPIPのversion UPやPysonのversion確認, esptoolのInstall,version確認等をしました。
      マックでは Terminalを使用。
      esptoolの動作確認:
      esptool.py chip_id でボードの内容が読めて ESP32 tip のversionは 3 を表示。

      esptool の命令:
      読み込み:esptool.py read_flash 0x0000 0x2000 ~/Desktop/data.bin
      書き込み:esptool.py write_flash 0x0000 ~/Desktop/data.bin
      これは 以前とは少し違いますが この書き方で良い様です。
      以前の記事:NES GAME with M5STACK

      NES GAME with M5STACK



      購入したボードから全てを読み込む:
       esptool.py read_flash 0x0000 0x400000 ~/Desktop/data.bin
      そして全てを空のボードに書き込む:
      esptool.py write_flash 0x0000 ~/Desktop/data.bin
      これで動作して表示しましたが 直ぐ画面が黒くなりました。
      これ以降も読み書きのエラーなく出来ているようですが
      いろいろ試しても画面は黒のままです。

      Espressif からの以下のデーターを書き込んでも画面は黒のまま。
      boot_app0.bin
      bootloader_qio_80m.bin

      いろいろやってみると mac address は どうするのだろうかとか基本的な疑問が起きる。
      販売しているチップは 一つ一つ違うのですよね。
      既にご存知の方はいるかと思っていますが、、
      と言う事で時間を要するので保留。
      Aliexpresで購入した 16MBは5個で500円。
      どうしてもなら 秋月にある 16MBのESP32のFLASHを交換する。
      販売する側は FLASHが外付けなので 単体で書き込んでいるはず。
      つまり 書き込む方法はあると言う事。
      解説してる記事が見つからない。

      このボード用のアプリを作るのが優先事項で、上記の件は後でも良い。
      このボードの開発者へのお礼としてアプリを増やしたい。
      さらに ボードの速度向上の為に LovyanGFXの存在を開発者に知ってもらいたい。
      一応 開発者のBBSには BLOGの記事を紹介しておきました。
      他のテーマも準備中、実施中で時間を要するものは後回しと言う事になっています。

      macsbug

      8月 31, 2022 at 8:10 pm

      • お忙しいところ返信ありがとうございました

        Fumio Komiya

        8月 31, 2022 at 8:51 pm

      • その後 動作せせる方法が解りましたのでブログを更新致しました。
        詳細は ブログを参照願います。

        U3 ESP32 は 内蔵 4MBです。
        U4 4MB Flashの理解不足でした。
        U4 4MB Flashは 拡張用です。Parallel SPI接続で CSは GPIO-15です。
        この機能を使用した例は まだ ありません。
        esptool.py でU4 4MBを読んだり書き込んだりしていたことは間違いでした。

        macsbug

        9月 8, 2022 at 10:49 am

    • はい、その方法で良いです。

      macsbug

      10月 15, 2023 at 3:03 pm

    • Thank you for visiting our site.
      For Mac, after downloading, delete the pdf(_.pdf) and unzip the zip.
       If you can’t download in your browser
       Then save with the following selections:
       Browser > File > Save Page As…

      For Windows, there is an explanation below.

      macsbug

      3月 7, 2024 at 6:48 am

  2. Downloading with wget.exe works.

    c:tmp>wget https://macsbug.files.wordpress.com/2022/08/touch_esp32_2432s032c.zip_.pdf–2024-03-08 10:11:46– https://macsbug.files.wordpress.com/2022/08/touch_esp32_2432s032c.zip_.pdfResolving macsbug.files.wordpress.com (macsbug.files.wordpress.com)… 192.0.72.20, 192.0.72.21Connecting to macsbug.files.wordpress.com (macsbug.files.wordpress.com)|192.0.72.20|:443… connected.HTTP request sent, awaiting response… 200 OKLength: 5546 (5.4K) [application/pdf]Saving to: ‘touch_esp32_2432s032c.zip_.pdf’

    touch_esp32_2432s032c.zip_.pd 100%[=================================================>] 5.42K –.-KB/s in 0.05s

    2024-03-08 10:11:46 (101 KB/s) – ‘touch_esp32_2432s032c.zip_.pdf’ saved [5546/5546]

    SauleVire.LT

    3月 8, 2024 at 5:20 pm

    • I’m glad I was able to download the pdf. Thank you for your report.

      macsbug

      3月 8, 2024 at 5:54 pm

  3. Hi When compiling i get this error

    xtensa-esp32-elf-g++: error: unrecognized command line option ‘-std=gnu++2b’; did you mean ‘-std=gnu++2a’?exit status 1Error compiling for board ESP32 Dev Module.

    Any ideas?

    telloglouike

    4月 18, 2024 at 6:41 am

  4. Software does not work on latest boards, screen is like a mirror image text is reversed and random pixels on about one quarter of screen. My CYD board is from Aliexpress, and has 2 USB ports – USB-C and Micro-USB. I guess the hardware is a bit different. Screen works well using “TFT_eSPI” library and the “ILI9341_2_DRIVER” configuration option with other sketches.

    Is there any way to fix up the screen in your web radio with configuration options?

    JT_NZ

    4月 23, 2024 at 4:39 pm

    • Can’t judge due to lack of information.
      I only have the early boards, not the latest ones.

      1. Is it ESP32-2432S028R?

      2. Is it ESP32-2432S028C?

      3. Please tell me the URL of the store that sells the latest boards. Is it below?
      https://ja.aliexpress.com/item/1005004502250619.html

      4. Where is “ILI9341_2_DRIVER”?

      5. Where can I find the documentation for the board I purchased? Is it below?
      http://pan.jczn1688.com/directlink/1/ESP32%20module/2.8inch_ESP32-2432S028R.rar

      6. Do the materials and your BOARD match?

      7. Where in the document is “ILI9341_2_DRIVER” written?

      8. The LCD Driver that can be used with LovyanGFX is written below.
      Which LCD Driver is used in the following?
      Displays
      GC9107 (M5AtomS3),,,
      ILI9341, ST7735, ST7796,,,M5Stack AtomDisplay
      https://github.com/lovyan03/LovyanGFX

      macsbug

      4月 23, 2024 at 5:54 pm

    • ESP32-2432S028R has three versions. (R=XPT2046 resistive touch sense) 

      1. ESP32-2432S028R v1 (ILI9341 SPI): Initial. U4 IC design mistake. 

      2. ESP32-2432S028R v2 (ILI9341 SPI): U4 IC Remove. External Pin Assign change. 

      3. ESP32-2432S028R v3 (ST7789 SPI, MODE 3): A type with two USB ports.: YD2USB

      The latest board’s LCD driver is ST7789.

      This is different from previous LCD Drivers.

      ST7789 version has been added to Web Radio ESP32-2432S028-I2S.

      The following three items have been added to the BLOG as ESP32-2432S028R v3 (CYD2USB).

      ESP32-2432S028R v3: WebRadio_ESP32_2432S028R_v3.zip

      ESP32-2432S028R v3: WebRadio_2432S028R_v3_Casset.zip

      ESP32-2432S028R v3: WebRadio_2432S028R_v3_OpenTape.zip

      macsbug

      4月 24, 2024 at 10:26 pm


コメントを残す