Jump to content

robertoj

Members
  • Posts

    403
  • Joined

  • Last visited

Everything posted by robertoj

  1. When I start from scratch with TheGoing repo, linux 6.13.7, I apply my DTS, copy my firmware, and I get this DT (snipped in the area that counts) And the LCD works. And when I start from scratch from the Armbian repo, linux 6.13.11, I apply my DTS, copy my firmware, and get this Device Tree: But the GPIO pins PC7 and PC14 appear unclaimed (as seen in previous post), and the LCD remains white. The linux build configs are practically the same (side in 6.13.11 has the error in SPI configuration) I found that the TheGoing repo has a two less patches applied... the zero 2w seems more relevant IMPORTANT: I just added "-" before "patches.armbian/arm64-dts-sun50i-h618-orangepi-zero2w-Add-missing-nodes.patch" in the: build/patch/kernel/archive/sunxi-6.13/series.conf file, and I finally have the ili9488 LCD working with my ili9488-ads7846 DTS My SBC is the OrangePiZero 3, and I select that specific SBC in the menuconfigs after starting "./compile.sh"
  2. Help! My DTS, which used to work with 6.13 and 6.12 from the unofficial repo's from NickA and Going... are not working in the official armbian linux 6.13 This is an issue of not owning the DC and RESET pins, as seen in PC7 and PC14 need to show this: pin 71 (PC7): GPIO 300b000.pinctrl:71 pin 78 (PC14): GPIO 300b000.pinctrl:78 dmesg shows this error: $ dmesg|grep spi [ 1.911366] sun6i-spi 5010000.spi: Error applying setting, reverse things back [ 1.911650] sun6i-spi 5011000.spi: Error applying setting, reverse things back [ 1.917726] sun6i-spi 5010000.spi: Error applying setting, reverse things back [ 1.918005] sun6i-spi 5011000.spi: Error applying setting, reverse things back ... The DTS I used is: I think anyone with Linux 6.13 (armbian official) can try this DTS without an LCD connected to the orange pi zero 3... at this time, I only need that the PC7 and PC14 are owned by the SPI driver.
  3. I confirm I got my Orange Pi Zero 3 playing hardware decoded videos: * armbian official, built with the EDGE kernel 6.13.11, xfce environment * followed all the instructions in the first post of this thread * connected to a 1080p LCD monitor with HDMI * MPV plays a 1080p video with frame "tearing" with a window 800 pixels height. CPU usage 25% in all 4 cores * 720p video can be resized to almost full screen, but then it suffers tearing when resized larger. 10% to 15% CPU usage. * with all videos, when I try to play full screen, MPV plays the video every other frame, and shows a static frame (the frame that was showing when I double-clicked for full screen) UPDATE: without X11, to play videos on tty1, with an ili9488 LCD * check what drm connections are available: * find your connected DRM device, and run mpv from SSH $mpv --vo=drm --gpu-context=drm --drm-connector=SPI-1 myvideo.mp4 (+) Video --vid=1 (*) (h264 1920x1080 60.000fps) [vo/drm] VT_GETMODE failed: Inappropriate ioctl for device [vo/drm] Failed to set up VT switcher. Terminal switching will be unavailable. VO: [drm] 1920x1080 yuv420p {plays video in tty1 } A 360p video uses 15% in all cpus. 720p video->25% in all cpus. 1080p video->100% in all cpus It might be related to the fact that the SPI port is not hardware accelerated for video, like HDMI... but I will keep trying to get results similar to 720p... like scaling and changing framerate from the mpv command Press ctrl-c and mpv will exit
  4. I tested NickA's armbian build, so I could get the cedrus+v4l2 improvements that would allow me to get h264 acceleration... but in my ili9488 I got these playback errors and 100% CPU usage with a 720p video in a 480x320 screen I will try with an HDMI LCD now: (typed command from an SSH session) The HDMI LCD just turns black. But I think this may be because I am using openbox... I think everyone else is using xfce UPDATE: I installed the xfce environment, selected it, and I still get a black LCD screen... I will try with the armbian official... does it now offer linux 6.13 with the edge kernel option?
  5. The DTS I posted before works for up to Linux 6.11 If anybody wants to use ili9488 in Linux 6.13, this is the modified DTS to use: Notice the new lines commented with "new for linux 6.13" Remenber that the firmware file must be named panel-mipi-dbi-spi.bin and copied to /lib/firmware I will test this with Linux 6.12 shortly... update: it works with linux 6.12.20 (The Going's repo) and 6.12.11 (NickA's repo, self built, not downloaded image) For reference, I discuss the process of finding this solution here: https://forum.armbian.com/topic/50418-dont-use-kernel-61216-on-sunxi64/page/2/#findComment-215554 Update: this DTS works for Linux 6.12 and 6.13... but make sure to add "-" before "patches.armbian/arm64-dts-sun50i-h618-orangepi-zero2w-Add-missing-nodes.patch" in the build/patch/kernel/archive/sunxi-6.13/series.conf file then build your OS with ./compile.sh
  6. Thank you for the suggestion At first it didn't work... then I tried: fragment@0 { target = <&spi1>; __overlay__ { status = "okay"; #address-cells = <1>; #size-cells = <0>; pinctrl-names = "default"; pinctrl-0 = <&spi1_pins>; cs-gpios = <&pio 7 9 0>,<&pio 2 15 0>; // PH9=CS0 for lcd, PC15=CS1 for touch ... Because I use non default CS pins The ili9488 LCD is now working in linux 6.13 ... the touch screen is also working with the evtest command I will post the whole DTS in my ili9488 thread
  7. Thank you. I will try it When I helped someone with an orange pi zero 2w (same h618) there were some slight differences to access the spi… I wonder if i need the same changes for my opiz3 Update: the line compatible="armbian,spi-dev"; didnt work... *The PH6,7,8 still show as unclaimed *the /dev/input/event0 was not created by ads7846 *the /dev/fb0 was not created These device files were created with my original DTS... but it appears the drivers think they have an SPI port for themselves, but not really. UPDATE: here's a difference I saw in the DTS when using Linux 6.11 (spi working) vs Linux 6.12 (spi not working) 6.11: 6.12: I see there's a difference in phandles... but maybe it is meant to be that way... since I see differences in spi0, which works UPDATE: I tried with linux 6.13.7... it still didn't work. UPDATE: when comparing the Device Trees, focusing in the SPI branch: 6.11 (working): 6.12 (not working) Notice that in 6.12, the properties pinctrl-names and pinctrl-0 do not exist, but I used the same ili9488-ads7846.dts in both if them... Does anybody know what may be happening? Or what's needed to add what is missing? I added pinctrl-names = "default"; and pinctrl-0 = <0x20>; and I see these properties in my resulting device tree... but I still dont see PH6,7,8 owned, still unclaimed
  8. Hello Have you tried using the SPI pins under Linux 6.12? Update: Opiz3 SPI pins work with Linux 6.12 and 6.13... but I needed 2 extra lines in the DTS. See: https://forum.armbian.com/topic/47971-driving-the-ili9488-lcd-40-inch-cheap-chinese-clone/#findComment-216779
  9. I keep trying to make my ili9488 SPI LCD with Linux 6.12, from the image in NickA's github... with no success so far Now I have a strong feeling that it is the gpiochip configuration, since I make this test in Linux 6.11 which works with my LCD With Linux 6.11, the device is gpiochip0 With Linux 6.12, the device is gpiochip1 With Linux 6.11, the GPIO lines for reset and command, and the SPI pins, are shown as connected to a function: But with Linux 6.12 (from NickA's github): I had a pending task to check that all the patches for SPI are included in my build... so I check the source code: armbian-nickA-20250306/build/patch/kernel/archive/sunxi-6.12/series.conf And I see that very few patches that are excluded... none of them relate to SPI... I don't know how to make the SPI work in Linux 6.12 as well as it does in Linux 6.12 Am i doing this right? UPDATE: I tried the same DTS, as shown in https://forum.armbian.com/topic/47971-driving-the-ili9488-lcd-40-inch-cheap-chinese-clone/#findComment-208446 with TheGoing build system in his github https://github.com/The-going/armbian-build/tree/main-sunxi-6.12 ... and I still see the SPI pins PH6,7,8 as unclaimed Is anyone able to use the H618 SPI pins in Linux 6.12.x? UPDATE: in this thread, people discuss the gpiochip0 vs gpiochip1 as a sign that the driver is not "occupying" the GPIO, and a DTS change may be needed https://forum.armbian.com/topic/49331-nanopi-neo2-v11-how-to-control-otg-port-power-with-gpio-354/#findComment-210992
  10. Can you tell us what you did? diff old.dts new.dts
  11. It is too bad that the cursor is shaking even if the driver panel-mipi-dbi is not used.... Now I have a feeling that using a separate software SPI for touch would be the best solution.
  12. Thank you... that is what I need: a 480x320 LCD that works with a driver other than panel-mipi-dbi Do you keep having problems with cursor shakiness? Any screen redraw "garble"?
  13. Going, I see that you worked on some SPI patches previously ... have you tested SPI in opiz3, under Linux 6.12? I found that the raspberry pi people are using panel-mipi-dbi-spi successfully under 6.12 https://forums.raspberrypi.com/viewtopic.php?p=2290196&hilit=panel+mipi+dbi+spi+6.12#p2290196
  14. Process of using a kernel config from a file Copy the config file from /boot folder to build/userpatches Then rename: $ mv config-6.11.9-edge-sunxi64 linux-sunxi64-edge.config cd .. ./compile.sh I get this compilation error: It seems that a wifi driver is in 2 folders... I will see which kernel driver I should remove ...first trying removing mfd/ac200 I don't know if has improved anythig... but I see these new build errors:
  15. Yes. I will try again when I get back home, along with re-including some armbian patches related to SPI Own reference:
  16. Is anybody having success with ilitek LCD display, or SPI in general? I am trying 6.12 with my orange pi zero 3, but the LCD just remains white. When I switch back to my microSD with Linux 6.11, it works with no problem (ili9488+ads7846)
  17. Can somebody with an orangepi zero 3 try my dts? It seems that either the patches in NickA's codebase make it incompatible, or linux 6.12 changed the DTS. https://forum.armbian.com/topic/47971-driving-the-ili9488-lcd-40-inch-cheap-chinese-clone/#findComment-208446 ili9488-ads7846.dts: I am able to do #armbian-add-overlay ili9488-ads7846.dts normally with armbian official and linux 6.11 But with this github's armbian build, I get in uboot: Applying user provided DT overlay ili9488-ads7846.dtbo failed on fdt_overlay_apply(): FDT_ERR_NOTFOUND base fdt does not have a /__symbols__ node make sure you've compiled with -@ Error applying DT overlays, restoring original DT Hmm, I found that my armbian build didn't create a /boot/dtb/allwinner/overlay/ folder I copied the "overlay" folder, from my working armbian microsd, with linux 6.11, to this linux 6.12 microsd... I still get the same error: can't use my dtbo (I needed to make my own build, because I need to activate panel-drm-dbi.ko)
  18. i dont know if this is new, but i see a ili9486 driver in the kernel config, which is unselected by default. Warning.... I just looked at some of the code in the linux mailing list discussion, and it looks like it is made specifically for 2 raspberry LCD hats * PISCREEN 3.5" 320x480 TFT (Ozzmaker 3.5") * RPILCD 3.5" 320x480 TFT (Waveshare 3.5") Which have a SPI->parallel chip on the circuitboard https://patchwork.kernel.org/project/dri-devel/patch/eb5672abbdb89d7018793c76d7193bfb78a2ea88.1580059987.git.kamlesh.gurudasani@gmail.com/ WDR_s: are you still having good experience with the ili9341 driver for the ili9486 LCD?
  19. Thank you for sharing an image for opiz3 I also downloaded and built the code from your github (branch 202503060) as zip file, so I can start with a minimal image, and work the way up... since I always want a fast booting GUI with openbox... and eventually labwc
  20. No. The driver for h264 encoding does not exist
  21. This is the closest I can find https://forum.armbian.com/topic/26551-video-encoder-using-mainline-kernel/ https://gregdavill.com/posts/allwinner-s3-videoencoders/ https://linux-sunxi.org/Cedrus
  22. Have you ever seen the OPIZ2w (or OPIZ3) doing HW video encoding in another Linux? Where did you find this cedrus driver? What does the website claim it can do? Where did your OS image come from? What DTS modifications did you mean? Why not just a DTS overlay?
  23. When the driver is configured correctly for the orange pi zero 3, everything will look correct from inside the operating system and the SPI port will be clocking out bits. But the LCD is a one-way communication device. The orange pi zero 3 will never know something has failed The ILI9486 LCD's default byte ordering, color format, etc, may be different from the ILI9488. You should find one example of ILI9486 running in raspberry pi, arduino, etc and find the initial byte command sequence. See how it differs from the KungFuPancake's txt file. Make changes to the txt file one by one line, toward being closer to the ili9486 byte sequence you find elsewhere. If you are starting with a DTS that uses the "ilitek,ilixxxx" driver, and change it to "mipi-dbi-spi", remember to change the RESET pin definition (see my other ILI9431 thread for explanation)
  24. Those LCD parameters where you found differences are: PGAMCTRL (Positive Gamma Control) (E0h) NGAMCTRL (Negative Gamma Control) (E1h) (See the ILI9488 PDF I posted) I don't know what they do exactly, but I guess they control pixel voltage, given a R, G or B digital value. I think that you can worry about it, after everything else works.
  25. Thanks! Try playing a 1080p H264 video. With hardware acceleration, the CPU should be at 25% or less (check cpu % in htop)
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines