Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ATOMDisplay_DisplayModule_M5Stack_UG_2023_Tokyo...

 ATOMDisplay_DisplayModule_M5Stack_UG_2023_Tokyo.pdf

M5Stack Japan Spring Tour 2023 TokyoのLTでの発表内容です。
ATOM Display/Display Moduleの紹介をしています。

Kenta IDA

May 04, 2023
Tweet

More Decks by Kenta IDA

Other Decks in Technology

Transcript

  1. 自己紹介
 • 井田 健太 (Kenta IDA) • My current job: Writing

    ESP32 firmware of smart home products ◦ My previous job: Designing logic for Xilinx FPGAs. • My hobby: Writing ESP32 firmware in Rust, etc… • twitter: @ciniml
  2. ATOM Display Lite / Display Module
 • Extension module to

    output HDMI video signal from M5Stack cores. ◦ ATOM Display Lite: from M5ATOM series (ATOM Lite, Matrix, S3, S3 Lite) ◦ Display Module: Core, Core2, (maybe CoreS3) • You can show screen outputs from your software to larger display easily. • You can also output sounds from the display (Display Module only) https://www.switch-science.com/products/8779 https://www.switch-science.com/products/7592 ATOM Lite, Matrix, S3, S3 Lite Core, Core2, (CoreS3?) HDMI Cable
  3. Structure of ATOM Display / Display Module system
 • M5Unified/M5GFX

    sends display command and audio data. • FPGA processes the display command and update the output. • FPGA outputs video signal to the HDMI transmitter. ◦ Audio data is passed through to the HDMI transmitter. • HDMI transmitter outputs HDMI signal to the display. M5Stack MCU module (ATOM series, Core series) M5Unified M5GFX ATOM Display / Display Module User Software FPGA HDMI Transmitter Display Command Audio (Display Module only)
  4. Why am I giving this presentation today?
 • Because all

    main developers of these modules are present here. ◦ M5Unified/M5GFX -> らびやんさん ◦ UI Flow support -> BoBoさん ◦ ATOM Display / Display Module hardware -> HanXiaoさん ◦ ATOM Display / Display Module FPGA -> me M5Stack MCU module (ATOM series, Core series) M5Unified M5GFX ATOM Display / Display Module User Software FPGA HDMI Transmitter @lovyan03 @ciniml @HanxiaoM UI Flow @its_hard_2_name
  5. Main feature of display modules
 • Output resolution: 1920x1080@24Hz max.

    ◦ Some displays does not support this video parameters. • Note that this does not mean you can update the display content at this refresh rate. ◦ Fill rate in the FPGA is limited due to its memory throughput. M5Stack MCU module (ATOM series, Core series) M5Unified M5GFX User Software ATOM Display / Display Module FPGA HDMI Transmitter Display Command SPI (80MHz)
  6. How to improve actual fill rate? (1/2)
 • Use magnification

    function of display modules. ◦ e.g. 4x magnification: draw 320x180 image -> shown as 1280x720 ◦ No extra cost for MCU module CPU. ▪ Display module automatically magnificates the image and output to the display. 320 180 1280 720
  7. How to improve actual fill rate? (2/2)
 • Use lower

    resolution and magnification. ◦ e.g. draw 320x240 image -> shown as 640x480 image. ◦ No extra cost for MCU module CPU. • Display module supports various resolutions. ◦ M5GFX automatically calculates appropriate video parameters. 320 240 640 480
  8. Audio output (Display Module only)
 • Output audio from the

    display • Audio data is output from MCU module as I2S stream. • FPGA just passthrough the I2S signal. M5Stack MCU module (ATOM series, Core series) M5Unified M5GFX ATOM Display / Display Module User Software FPGA HDMI Transmitter Audio via I2S passthrough
  9. Customization of display modules
 • You can change the FPGA

    logic by yourself! • Source code of the FPGA logic is available. ◦ https://github.com/ciniml/atom_display_fpga ◦ Written mainly in Chisel. • Development environment is available at no extra cost. ◦ You can download the EDA tool from GOWIN website. ◦ You need to submit an application to obtain a license.
  10. Example: Display latency checker
 • Measures latency of displays. ◦

    Output blinking video signal from ATOM Display. ◦ Measure actual display output by photo diode. ◦ Use customized version of the FPGA design.
  11. Conclusion
 • You can show images from your application to

    larger display by using ATOM Display / Display Module. • You can control these modules easily by using M5GFX / UIFlow. • Display Module also supports audio output. • Customization of display modules FPGA is possible. ◦ If you want to do it, I’ll give you a jig to support it.