Everything posted by robertoj
-
Connecting banana pi m2 zero with ili9341 display over spi on latest armbian image
Try all combinations of (I have no idea why these things sometimes work): * Only define the PH26,PH27 in pins = "PC0", "PC1", "PC2", "PC23", "PH26", "PH27"; * only cs-gpios = <0>; //use default CS instead of cs-gpios = <&pio 2 23 0>; /* PC23 for CS */ Make sure that there are no erorrs in: dmesg|grep spi dmesg|grep mipi Usually these are good signs: lsmod|grep ili shows a loaded kernel module ls /dev/fb* shows a created video device
- Repository for v4l2request hardware video decoding (rockchip, allwinner)
-
Connecting banana pi m2 zero with ili9341 display over spi on latest armbian image
Change: reset-gpios = <&pio 7 27 1>; /* GPIO 24 */ to: reset-gpios = <&pio 7 27 0>; /* GPIO 24 */ Change the SPI speed to 24MHz Format your DTS so we can read it easily. Correct the comments with GPIO nnn because they are confusing. Show a wiring schematic between the BPI M2 Berry and your LCD Use the "Spoiler" (eye) button, so that your long texts don't take so much space.
-
Install Armbian on a unsupported board that is Running Tina... have full dts
- Driving the ili9488 LCD (4.0 inch cheap chinese clone)
Is anyone getting a jumpy cursor, and garbled image around the areas of window refresh? (only at times of touching the screen) I suspect it is caused by sharing the SPI bus with the ads7846 (XPT2040)... anyone knows? I don't have this issue when I use the USB mouse. I also experience the LCD going 3/4 black and frozen, when there are no input events. It restores to normal when I touch the screen or move the mouse (with a white washout/flash in the LCD). My app is continuosly painting pixels, and it happens after a few minutes of no input events. I already have: xset s off & xset s noblank xset s -dpms But it seems that I don't have "xset" installed in my debian bookworm. Fixed with apt install x11-xserver-utils- Orange Pi Zero 3
- Testing Linux 6.12 in Orange PI Zero 3 (H618)
Thank you KungfuPancake!! I tested the command byte sequence, Linux 6.11.9 and my DTS. My LCD is now working I posted the solution in the appropriate thread: https://forum.armbian.com/topic/47971-driving-the-ili9488-lcd-40-inch-cheap-chinese-clone/#findComment-208446 Going: if you make changes for Opiz3, I will continue testing them- Driving the ili9488 LCD (4.0 inch cheap chinese clone)
THANKS TO USER KungFuPancake, who showed me his github repo, where he indicates to use the latest Armbian-edge, and provides the a command byte sequence for the ili9488 https://github.com/KungfuPancake/v0_ips_touch_display?tab=readme-ov-file If you see inverted colors, edit the panel-mipi-dbi-spi.txt and comment the line #command 0x21 before using the mipi-dbi-cmd If you have the cheap chinese clone LCD (see first post), use this DTS (change the gpio codes as needed):- Testing Linux 6.12 in Orange PI Zero 3 (H618)
Thank you The panel-mipi-dbi-spi driver, with the improvement it got in Linux 6.11, would be able to drive the ili9488 with the standard mipi protocol. It just needs to have the correct init byte commands. See: https://forum.armbian.com/topic/47971-driving-the-ili9488-lcd-40-inch-cheap-chinese-clone/#findComment-208043- Testing Linux 6.12 in Orange PI Zero 3 (H618)
When I activated all the H6, H616, H618 patches, I get 3 patching errors: The 1st patch arm64-dts-H616-Add-overlays-that-are-also-compatible-with-orang is failing because I don't have these lines in the arch/arm64/boot/dts/allwinner/overlay/Makefile sun50i-h616-spi-spidev.dtbo sun50i-h616-spidev0_0.dtbo sun50i-h616-spidev1_0.dtbo Which patch file would insert those lines? Or should I edit the patch file to match the existing Makefile?- Testing Linux 6.12 in Orange PI Zero 3 (H618)
- Testing Linux 6.12 in Orange PI Zero 3 (H618)
- Testing Linux 6.12 in Orange PI Zero 3 (H618)
I suddenly have a need to test Linux 6.11 or greater, because there's a needed improvement in the panel-mipi-dbi-spi driver (thread keyword ili9488) User "The Going" has kindly advised me to try his Armbian branch with Linux 6.12, so I am here sharing results as I test it with my Orange Pi Zero 3. Initial instructions: https://forum.armbian.com/topic/35635-armbian-242-is-broken-on-orange-pi-pc2/#findComment-207980 At first try, I decided to NOT follow this step: armbian/build> egrep '^-' patch/kernel/archive/sunxi-6.12/series.conf (finds all the excluded patches) Well, I continued. Choosing Linux Edge, shallow option, Bookworm minimal, there were zero problems: no patching errors and no compilation errors. At the end of the 4 hour compilation, I tested the resulting image in my Orange Pi Zero 3... and it booted fine. Not working at this moment: wifi (#iw dev returns nothing) spi1 (failed on fdt_overlay_apply(): FDT_ERR_NOTFOUND when I use a dts overlay that works in Linux 6.7) usb (lsusb only shows the 2 root hubs, but not my usb devices) when I decompile sun50i-h618-orangepi-zero3.dtb there is no references to spi1 or hdmi (maybe more) Working: serial console ethernet other things not tested Next, I am going execute armbian/build> egrep '^-' patch/kernel/archive/sunxi-6.12/series.conf and find specific patches that maybe will improve my hardware situation. Result of that egrep search command, with patches I will try first, one by one, in bold- How to use XPT2046 touch controller 3.5inch RPi Display 480x320 pixels
- Orange Pi Zero 3
- ILI9488 touchscreen 14pin model with Orange pi 5
I am currently in the middle of getting ili9488 working. check this thread https://forum.armbian.com/topic/47971-driving-the-ili9488-lcd-40-inch-cheap-chinese-clone/ and if possible, collaborate with the experiments I am trying The ili9341 is already solved: search "orange pi zero 3 ili9341" ... I used the driver with DRM, which has more efficient GPU and video acceleration- OrangePi 3 LTS ili9488
- Driving the ili9488 LCD (4.0 inch cheap chinese clone)
My efforts to use the panel-mipi-dbi-spi driver: DTS Init sequence panel-mipi-dbi-spi.txt compile and install this init command byte sequence (I don't know how to use an arbitrary bin file in the DTS😞 ./mipi-dbi-cmd panel-mipi-dbi.bin panel-mipi-dbi-spi.txt sudo cp panel-mipi-dbi.bin /lib/firmware/ Make sure that the DTS was given to the kernel: look for "Applying user provided DT overlay mipi-ili9488-ads7846.dtbo" without errors before starting kernel Make sure that the panel-mipi-dbi.bin was read by the driver: dmesg|grep mipi , look for no errors like "No config file found for compatible 'ili9488-init,panel-mipi-dbi-spi' (error=-2)" Successfully loaded driver should look lije this: roberto@orangepizero3:~$ dmesg|grep mipi [ 5.690191] panel-mipi-dbi-spi spi1.0: supply power not found, using dummy regulator [ 5.690338] panel-mipi-dbi-spi spi1.0: supply io not found, using dummy regulator [ 5.713936] [drm] Initialized panel-mipi-dbi 1.0.0 20220103 for spi1.0 on minor 2 [ 6.205598] panel-mipi-dbi-spi spi1.0: [drm] fb0: panel-mipi-dbid frame buffer device The panel-mipi-dbi-spi driver in Linux 6.7.12.has the parameters described in: https://elixir.bootlin.com/linux/v6.7.12/source/Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml Upgrading to Linux 6.11+ has more parameters, like BGR666 color format https://elixir.bootlin.com/linux/v6.12.4/source/Documentation/devicetree/bindings/display/panel/panel-mipi-dbi-spi.yaml The panel-mipi-dbi-spi wiki: https://github.com/notro/panel-mipi-dbi/wiki This is what I get so far I think I need to upgrade to Linux 6.12 and experiment with other "Memory Access Control 0x36" bit values in panel-mipi-dbi-spi.txt- Armbian 24.2 is broken on Orange PI PC2
- Driving the ili9488 LCD (4.0 inch cheap chinese clone)
Posting the FBTFT DTS only... while I am having trouble merging it with ads7846: Ok, now I was able to merge the ads7946 function: WARNING: when the touchscreen is touched, a horizontal band (about 8mm) gets color-inverted around the cursor. Lowering the SPI speed does not help it ^ Does anybody have any idea why this is happening? It is bugging me horribly and the color-inversion is lasting until a whole screen refresh and it could stand garbled while doing nothing in lightdm+openbox... is this coming from the touch chip interrupts, or from the cursor animation? Would it go away with the panel-mipi-dbi-spi driver? Next step is to use the panel-mipi-dpi-spi driver as shown here: https://github.com/notro/panel-mipi-dbi/wiki , https://forums.raspberrypi.com/viewtopic.php?t=358240&hilit=Ili9341#p2165638and https://blog.csdn.net/CNflysky/article/details/125171176- Armbian 24.2 is broken on Orange PI PC2
- Driving the ili9488 LCD (4.0 inch cheap chinese clone)
Changin the parameter Interface Pixel Format (3Ah) to 0x55 (DPI=DBI=55=16 bits/pixel FIXED THE COLORS Insert this after 0x20000ff (I still have no idea what it is for) 0x100003a 0x55 //pixel format. DBI=DPI=16bits per pixel (from ili9341 init) Now, the problem is that the desktop image is reversed left to right... I changed the memory access control to vertical refreshed order direction=1 0x1000036 0x28 //memory access control (was 0x08 in arduino code) No effect, still reversed left to right (or up down if I rotated 180) Is there any difference if this parameter is written twice in the original ili9341 init byte sequence? Ok, it was register B6h Display function control. The bit SS shift direction control was set to 1 in the arduino INO, but it needs to be 0 Change 0x10000B6 0x02 0x22 //display function control 0x10000B6 0x02 0x02 //display function control (2nd param SS shift direction was 0x22 from arduino code) Also, change the rotate DTS parameter from 270 to 90 and the spi speed to 60 MHz Display works correctly in FBTFT mode... but not DRM yet, and not merged with the ADS7846 function (touch screen)- Driving the ili9488 LCD (4.0 inch cheap chinese clone)
If you want to help, the datasheet PDF is in the lcdwiki download link in the previous post I converted the arduino byte sequence into this: The 4.0 inch ILI9488 starts up with RGB noise (non moving) in the left 3/4 of the screen, and a blurry, noisy image in the right 1/4 of the screen. There's a TFTLCD_DELAY8, 120, which I don't know how to insert in the DTS, and the original ili9341-fb.dts has a 0x20000ff, which I don't know whether I need it in the ili9488 init string I inserted the: 0x10000b0 0x00 //interface mode control 0x1000011 //sleep out 0x20000ff //no idea At the beginning, and there is no effect I have no idea about the parameters buswidth, bgr, regwidth... what do they mean? When I added regwidth=<16> (as shown in https://forum.armbian.com/topic/16536-35-screen-ili9486xpt2046-with-kernel-5914-sunxi/) I have a white-grayish screen When I change it to regwidth=<24> I get the same RGB noise as without this parameter When I swap the numbers in height and width like this: height = <320>; width = <640>; I get the RGB noise in the left 3/4 of the screen, but the noisy desktop image (partial) in the top right corner of the LCD I HAD A BIG TYPO: not 640, should be 480 height = <480>; width = <320>; Now, all the screen is mostly black, showing garbled text lines, then a garbled desktop on the top 2/3 of the screen Changing the buswidth to 18 had no effect... I changed the regwidth=16 (made it worse) and txbuflen=32768 (no effect), as seen in https://4pda-to.translate.goog/forum/index.php?showtopic=1041048&st=40&_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=en&_x_tr_pto=wapp Using the ili9486 driver as suggested here: https://github.com/notro/fbtft/issues/582 gave me a white screen- Driving the ili9488 LCD (4.0 inch cheap chinese clone)
Hello, I have a new LCD which I believe is an ili4988 (although the vendor says ili9486 and st7796) https://www.aliexpress.us/item/3256803856059047.html I have read somewhere, that I can use an ili9341 spi driver, only by changing the resolution and changing the initialization script. I looked in the waveshare website and github, they don't have anything for the ili9488 Then, I found some arduino code in http://www.lcdwiki.com/3.5inch_SPI_Module_ILI9488_SKU%3AMSP3520 (look for the "3.5 inch SPI Module Package(ILI9488)" link, then find the LCDWIKI_SPI.cpp The initialization sequence is in line 1697: I am currently trying to convert it to a DTS-format init string, so that it fits my ili9341-fb.dts, which I made earlier this year: I am unsure how to start the init line, can someone help me? Then, when I have that init string confirmed, I can use: https://github.com/notro/panel-mipi-dbi/wiki https://blog.csdn.net/CNflysky/article/details/125171176 To switch to the mipi-dbi driver, which would get me DRM (instead of FB)- Orange Pi Zero 3 ili9486 TFT LCD
- Driving the ili9488 LCD (4.0 inch cheap chinese clone)