From 96c30f236cd4b0ced10c886a3e0676a7551cdc2d Mon Sep 17 00:00:00 2001 From: Kevin Loo Keng Leong Date: Wed, 30 Apr 2025 14:10:44 +0800 Subject: [PATCH] Add DisplaySDJPG_ILI9341_TFT Example Guide - add sensor_replacement and yolov7_reparameterization in FAQ --- source/FAQ/index.rst | 6 +- source/FAQ/sensor_replacement.rst | 10 +++ source/FAQ/yolov7_reparameterization.rst | 11 +++ .../SPI/DisplaySDJPG_ILI9341_TFT/image02.png | Bin 0 -> 42329 bytes .../SPI/DisplaySDJPG_ILI9341_TFT/image03.png | Bin 0 -> 58374 bytes .../API_Documents/FileSystem/Class File.rst | 41 +++++++++- .../SPI/Display SD JPG ILI9341 TFT.rst | 74 ++++++++++++++++++ .../amb82-mini/Example_Guides/SPI/index.rst | 1 + 8 files changed, 140 insertions(+), 3 deletions(-) create mode 100644 source/FAQ/sensor_replacement.rst create mode 100644 source/FAQ/yolov7_reparameterization.rst create mode 100644 source/_static/amebapro2/Example_Guides/SPI/DisplaySDJPG_ILI9341_TFT/image02.png create mode 100644 source/_static/amebapro2/Example_Guides/SPI/DisplaySDJPG_ILI9341_TFT/image03.png create mode 100644 source/ameba_pro2/amb82-mini/Example_Guides/SPI/Display SD JPG ILI9341 TFT.rst diff --git a/source/FAQ/index.rst b/source/FAQ/index.rst index 6ba6973..db5670e 100644 --- a/source/FAQ/index.rst +++ b/source/FAQ/index.rst @@ -25,4 +25,8 @@ Ameba FAQ ameba-pro2_mipi_connection - gpio_pins_output_voltage \ No newline at end of file + gpio_pins_output_voltage + + yolov7_reparameterization + + sensor_replacement \ No newline at end of file diff --git a/source/FAQ/sensor_replacement.rst b/source/FAQ/sensor_replacement.rst new file mode 100644 index 0000000..1a610e2 --- /dev/null +++ b/source/FAQ/sensor_replacement.rst @@ -0,0 +1,10 @@ +.. tags:: sensor, camera, amb82-mini, replacement + +Is there a source for JXF-37 sensor replacement? +================================================ + +**Answer** + +Unfortunately, there is no source for replacement as the manufacturer for JXF-37 does not sell them individually. If possible, you may want to try with another sensor model instead, please refer to the list of supported sensors in `FreeRTOS SDK `_. + +When choosing your sensor, please note that AMB82 Mini is only compatible with MIPI type sensors. \ No newline at end of file diff --git a/source/FAQ/yolov7_reparameterization.rst b/source/FAQ/yolov7_reparameterization.rst new file mode 100644 index 0000000..d114292 --- /dev/null +++ b/source/FAQ/yolov7_reparameterization.rst @@ -0,0 +1,11 @@ +.. tags:: reparameterization, yolov7, amb82-mini + +How to do reparameterization for customized YOLOv7-tiny model? +============================================================== + +Reparameterization is used to reduce trainable BoF modules into deploy model for fast inference. For example merge BN to conv, merge YOLOR to conv, ..etc However, before reparameterization, the model has more parameters and computation cost.reparameterized model (cfg/deploy) used for deployment purpose + +**Answer** + +You may clone a copy of `YOLOv7 repo `_ into your local machine and perform reparameterization there. +Else, you may create a copy of this `Kaggle notebook `_, upload your best trained model pt file and perform reparameterization on Kaggle. After running all the lines correctly, you can download your reparameterized model ``best_reparam.pt`` and use it on Ameba. \ No newline at end of file diff --git a/source/_static/amebapro2/Example_Guides/SPI/DisplaySDJPG_ILI9341_TFT/image02.png b/source/_static/amebapro2/Example_Guides/SPI/DisplaySDJPG_ILI9341_TFT/image02.png new file mode 100644 index 0000000000000000000000000000000000000000..3b24667639b6287c2155c0d6b7a141e3d44e1e72 GIT binary patch literal 42329 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 R*sII{1fH&bF6*2UngH;N9aR7T literal 0 HcmV?d00001 diff --git a/source/_static/amebapro2/Example_Guides/SPI/DisplaySDJPG_ILI9341_TFT/image03.png b/source/_static/amebapro2/Example_Guides/SPI/DisplaySDJPG_ILI9341_TFT/image03.png new file mode 100644 index 0000000000000000000000000000000000000000..cdbfed04316da7b30df23a2759402fc7476d5b18 GIT binary patch literal 58374 zcmce;2UJsA_b-Yfq9URqA|Oqw6p<2&^rDo|gwTZuNDBmz-mwAFd+$QPgc52{s?vK8 z9U>sT_Zsp7o^!tQ|Lz-aygTlAZ;!#)JK1ZmJ?C7r{N|i11gfjblir}dK|nx2s;D5R zK|pXto`B$T?X}DJZ+fmT@ZnFF95v)+2nxF&F5y31v5;1gCLkydCpk4H!hgPQub}5h zKya(!{O?kW-Pbn+1hdJCa?&6-qgAY@JxJ?|&}p4os$-gm?}q5|=WFaTS8N8DrQW@M zXRmVQa^J0rYplu)FQu>DZU9`lc0J;j#iJ00&+nf~KY{r35>hi}U6Fpuf9ak)t3{{r z6gz*)Of_KE6Jh>Uvxzxt?@Xh6_{KZw_Yp9ktruU zHLm}3ot#yfmk)Z3GEn^S>2aB&yQ%4)FaNpw?~7%T0ZHtRq~x@{n7DZe{C!{`?vw}j z%SS@}|yrS*nW7f0)PT)8@4Q`UOTl{zi{U5XW<7XR??3%3boksSY z?A1@F<2rC>nD&9cDZ3aAPgV}UMVEq|9;Kr9Ssl&~@0LgtQ+B6j{SOBTPo1OTn9XTZ zU-#og&AOT9uVi94<&(K3w*F=gwSio-g|kdG--+bHPF2i_{4|d*xnAI2{fu>*f%$2& zax;aM_5F?q!M!S4Y&!)EJ!m5Zj!f=;urzljQinTJdAm4MEhdOPx>Cvecy_9$zdI?m zZ;0C_?d|qiQoq~{r7AAv_o-%9{iv=Y;^xp{HY?L|GdiA)y&`K(1%uFY3IE}PMztn7 zfYf^FD`DGv<}|PIB0(8c&2|-~>1wbJDdTQ~{=OMg*QNd2N6&yglq{18l`Z z9f+j3<@SE&!bXhTO7^mK_QoWT{%GVXG}5S99S#_>k5A>F^w@qS0rp~)fCuju^n>40 zf#bjZbb3To)-G(gAMUtNZARvN7d-4pbNJ?2dZ&N^zx$|Un&^T2z@9>MMLdajKT5^x z`nIm9_Y_!PWaG^?*X&x6HMwWt)3v|pzfPX>Rhf*9MbiDt+t#YO!`&0f)M^jsffftj z0d)CE2aT2v5`40LvK`(dc#6Vqr*DX1*Lm)$R%1k+L$(FH`LsD}v{}5>rdE(?(TaNX z;~Cs{J1oPwZJ#{u0aAfKtF}L)CLbi4F%`5@%O%(IutkFE)qmLhO*F=<%Zo%DHQ=

?pmDSoQRX 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 literal 0 HcmV?d00001 diff --git a/source/ameba_pro2/amb82-mini/API_Documents/FileSystem/Class File.rst b/source/ameba_pro2/amb82-mini/API_Documents/FileSystem/Class File.rst index 23878c6..c603b01 100644 --- a/source/ameba_pro2/amb82-mini/API_Documents/FileSystem/Class File.rst +++ b/source/ameba_pro2/amb82-mini/API_Documents/FileSystem/Class File.rst @@ -62,6 +62,8 @@ A class for data manipulation of files in a file system. +---------------------------+------------------------------------------+ | File::playmp3 | Execute convertMp3TArray. | +---------------------------+------------------------------------------+ +| File::readFile | Read data according to opened file size | ++---------------------------+------------------------------------------+ **File::File** -------------- @@ -84,7 +86,7 @@ Constructs a File object. ~~~~~~~~~~~~~~ filename: pointer to a char array containing the path of the file to open. -fileType: The macro of the file type defined in AmebaFatFSFile.h to support different opening steps for different types of file. +fileType: The macro of the file type defined in AmebaFatFSFile.h to support different opening methods for different types of file. **Returns** ~~~~~~~~~~~ @@ -118,6 +120,7 @@ Open a file from the file system. ~~~~~~~~~~~~~~ filename: pointer to a char array containing the path of the file to open. +fileType: The macro of the file type defined in AmebaFatFSFile.h to support different opening methods for different types of file. **Returns** ~~~~~~~~~~~ @@ -178,7 +181,7 @@ Write data to the currently open file. size_t write(uint8_t c); size_t write(const uint8_t* buf, size_t size); - size_t write(const char* str; + size_t write(const char* str); size_t write(const char* buf, size_t size); **Parameters** @@ -599,4 +602,38 @@ NA NA +.. note :: "AmebaFatFSFile.h" must be included to use the class function. + +**File::readFile** +------------------ + +**Description** +~~~~~~~~~~~~~~~ + +Read opened data file according to its file size, malloc is done within API, no pre-definition of fixed size buffer needed. + +**Syntax** +~~~~~~~~~~ + +.. code-block:: c++ + + bool readFile(unsigned char *file_data, uint32_t &file_size); + +**Parameters** +~~~~~~~~~~~~~~ + +file_data: buffer pointer for the file to be read + +file_size: the size of the file to be read + +**Returns** +~~~~~~~~~~~ + +True if the file data is read successfully, false if failed to read file data. + +**Example Code** +~~~~~~~~~~~~~~~~ + +NA + .. note :: "AmebaFatFSFile.h" must be included to use the class function. \ No newline at end of file diff --git a/source/ameba_pro2/amb82-mini/Example_Guides/SPI/Display SD JPG ILI9341 TFT.rst b/source/ameba_pro2/amb82-mini/Example_Guides/SPI/Display SD JPG ILI9341 TFT.rst new file mode 100644 index 0000000..bbd1f60 --- /dev/null +++ b/source/ameba_pro2/amb82-mini/Example_Guides/SPI/Display SD JPG ILI9341 TFT.rst @@ -0,0 +1,74 @@ +Display SD JPG ILI9341 TFT +========================== + +.. contents:: + :local: + :depth: 2 + +If you are not familiar with SPI, please read `Introduction to SPI `_ first. + +Materials +--------- + +- `AMB82-mini `_ x 1 + +- ILI9341 TFT LCD with SPI interface x 1 + +- microSD card x 1 + +Example +------- + +- QVGA 2.2″ TFT LCD + + - http://www.lcdwiki.com/2.2inch_SPI_Module_ILI9341_SKU:MSP2202 + +Common pins in ILI9341 TFT LCD with SPI interface: + +- MOSI: Standard SPI Pin + +- MISO: Standard SPI Pin + +- SLK: Standard SPI Pin + +- CS: Standard SPI Pin + +- RESET: Used to reboot LCD. + +- D/C: Data/Command. When it is at LOW, the signal transmitted are commands, otherwise the data transmitted are data. + +- LED (or BL): Adapt the screen backlight. Can be controlled by PWM or connected to VCC for 100% backlight. + +- VCC: Connected to 3V or 5V, depends on its spec. + +- GND: Connected to GND. + +**AMB82 MINI and QVGA TFT LCD Wiring Diagram:** + +|image01| + +Open the example, “File” -> “Examples” -> “AmebaSPI” -> “DisplaySDJPG_ILI9341_TFT” + +|image02| + +Modify the file name according to the image saved name. + +|image03| + +Compile and upload to Ameba, then press the reset button. + +Then, you can see the image displayed on the LCD screen. + +.. |image01| image:: ../../../../_static/amebapro2/Example_Guides/SPI/LCD_Screen_ILI9341_TFT/image01.png + :width: 1020 px + :height: 593 px + +.. |image02| image:: ../../../../_static/amebapro2/Example_Guides/SPI/DisplaySDJPG_ILI9341_TFT/image02.png + :width: 707 px + :height: 841 px + +.. |image03| image:: ../../../../_static/amebapro2/Example_Guides/SPI/DisplaySDJPG_ILI9341_TFT/image03.png + :width: 1095 px + :height: 702 px + :scale: 90% + diff --git a/source/ameba_pro2/amb82-mini/Example_Guides/SPI/index.rst b/source/ameba_pro2/amb82-mini/Example_Guides/SPI/index.rst index 0a751b6..c6334d5 100644 --- a/source/ameba_pro2/amb82-mini/Example_Guides/SPI/index.rst +++ b/source/ameba_pro2/amb82-mini/Example_Guides/SPI/index.rst @@ -4,5 +4,6 @@ SPI .. toctree:: :maxdepth: 1 + Display SD JPG ILI9341 TFT LCD Screen ILI9341 TFT \ No newline at end of file