Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Orange Pi Zero 3 ili9486 TFT LCD (WaveShare 35a)

Featured Replies

Help! I used your overlay, but nothing works for me. Orange pi zero 3 (Armbian Linux 6.12.35-current-sunxi64)
overlay:

/dts-v1/;
/plugin/;
/ {
    compatible = "allwinner,sun50i-h616";
    fragment@0 {
        target = <&spi1>;
        __overlay__ {
            status = "okay";
        cs-gpios = <&pio 7 5 0>,<&pio 2 15 0>; /*PH5=CS0 for lcd, PC15=CS1 for touch*/
            display: display@0 {
                compatible = "ilitek,ili9341";
                reg = <0>;
                pinctrl-names = "default";
                spi-max-frequency = <20000000>;
                rotate = <270>;
                bgr = <0>;
                fps = <30>;
                buswidth = <8>;
                regwidth = <16>;
                height = <480>;
                width = <320>;
                reset-gpios = <&pio 2 14 1>; /* PC14 */
                dc-gpios = <&pio 2 6 0>; /* PC6 */
                debug = <3>;
                init = <0x10000b0 0x00 // Interface Mode Control
                        0x1000011  // Sleep Out
                        0x20000ff  // Delay (255ms)
                        0x10000C0 0x0D 0x0D  // Power Control 1
                        0x10000C1 0x43  // Power Control 2
                        0x10000C5 0x00 0x48 0x80  // VCOM Control 1
                        0x10000C7 0x00  // VCOM Control 2
                        0x1000036 0x28  // Memory Access Control (Rotacao)
                        0x100003A 0x55  // Pixel Format Set (16bit)
                        0x10000B1 0xB0 0x11  // Frame Rate Control
                        0x10000F0 0x01 // Enable Extended Comand Set
                        0x10000F6 0x00 0x01 0x32 // SPI ilInterface Control
                        0x1000026 0x01 // Gamma Set
                        0x10000E0 0x0F 0x31 0x2B 0x0C 0x0E 0x08 0x4E 0xF1 0x37 0x07 0x10 0x03 0x0E 0x09 0x00  // Positive Gamma Correction
                        0x10000E1 0x00 0x0E 0x14 0x03 0x11 0x07 0x31 0xC1 0x48 0x08 0x0F 0x0C 0x31 0x36 0x0F  // Negative Gamma Correction
                        0x10000B6 0x02 0x02 0x3B  // Display Function Control
                        0x1000011  // Sleep Out
                        0x20000ff  // Delay (255ms)
                        0x1000029>; // Display ON
            };

            ads7846: ads7846@1 {
                compatible = "ti,ads7846";
                reg = <1>;
                pinctrl-names = "default";
                spi-max-frequency = <1000000>;
                interrupt-parent = <&pio>;
                interrupts = <2 10 2>; /* PC10 - IRQ */
                pendown-gpio = <&pio 2 10 1>; /* PC10 */
                
                /* OPTIONS */
                ti,x-min = /bits/ 16 <0>;
                ti,y-min = /bits/ 16 <0>;
        ti,x-max = /bits/ 16 <0xFFF>;
        ti,y-max = /bits/ 16 <0xFFF>;
                ti,pressure-min = /bits/ 16 <0>;
                ti,pressure-max = /bits/ 16 <0xFFF>;
                ti,x-plate-ohms = /bits/ 16 <400>;
                ti,swap-xy = <1>;
        };
        };
    };
};

Here's what I got in the console:

root@orangepizero3:~# dmesg | grep -i "spi\|ili9486\|fb_"
[    1.496981] sun6i-spi 5010000.spi: Error applying setting, reverse things back
[    1.497500] sun6i-spi 5011000.spi: cannot register SPI host
[    1.504082] sun6i-spi 5010000.spi: Error applying setting, reverse things back
[    1.504504] sun6i-spi 5011000.spi: cannot register SPI host
[    1.512160] spi-nor spi0.0: supply vdd not found, using dummy regulator
[    6.677433] fb_ili9341: module is from the staging directory, the quality is unknown, you have been warned.
[    6.677997] fb_ili9341 spi1.0: fbtft_property_value: width = 320
[    6.678010] fb_ili9341 spi1.0: fbtft_property_value: height = 480
[    6.678018] fb_ili9341 spi1.0: fbtft_property_value: regwidth = 16
[    6.678025] fb_ili9341 spi1.0: fbtft_property_value: buswidth = 8
[    6.678033] fb_ili9341 spi1.0: fbtft_property_value: debug = 3
[    6.678041] fb_ili9341 spi1.0: fbtft_property_value: rotate = 270
[    6.678049] fb_ili9341 spi1.0: fbtft_property_value: fps = 30
[    6.678234] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'reset' GPIO
[    6.678260] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'dc' GPIO
[    6.678279] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'rd' GPIO
[    6.678294] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'wr' GPIO
[    6.678310] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'cs' GPIO
[    6.678325] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'latch' GPIO
[    6.678340] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678354] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678369] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678383] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678398] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678412] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678426] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678441] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678456] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678470] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678485] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678499] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678514] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678528] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678543] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678557] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678572] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678587] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678604] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678621] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678638] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678655] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678672] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678689] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678706] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678723] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678740] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678757] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678774] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678791] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678808] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678825] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678842] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678859] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678876] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678893] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678910] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678927] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678944] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.678961] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.678978] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.678995] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.679012] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.679029] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.679046] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.679063] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'db' GPIO
[    6.679080] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'led' GPIO
[    6.679098] fb_ili9341 spi1.0: fbtft_request_one_gpio: 'aux' GPIO
[    6.701957] ads7846 spi1.1: supply vcc not found, using dummy regulator
[    6.703555] ads7846 spi1.1: touchscreen, irq 77
[    6.704030] input: ADS7846 Touchscreen as /devices/platform/soc/5011000.spi/spi_master/spi1/spi1.1/input/input0
[    6.801201] fb_ili9341 spi1.0: init: write_register:
[    6.801229] fb_ili9341 spi1.0: buf[0] = B0
[    6.801238] fb_ili9341 spi1.0: buf[1] = 00
[    6.801397] fb_ili9341 spi1.0: init: write_register:
[    6.801406] fb_ili9341 spi1.0: buf[0] = 11
[    6.801441] fb_ili9341 spi1.0: init: msleep(255)
[    7.073196] fb_ili9341 spi1.0: init: write_register:
[    7.073241] fb_ili9341 spi1.0: buf[0] = C0
[    7.073265] fb_ili9341 spi1.0: buf[1] = 0D
[    7.073284] fb_ili9341 spi1.0: buf[2] = 0D
[    7.073489] fb_ili9341 spi1.0: init: write_register:
[    7.073510] fb_ili9341 spi1.0: buf[0] = C1
[    7.073530] fb_ili9341 spi1.0: buf[1] = 43
[    7.073701] fb_ili9341 spi1.0: init: write_register:
[    7.073721] fb_ili9341 spi1.0: buf[0] = C5
[    7.073743] fb_ili9341 spi1.0: buf[1] = 00
[    7.073762] fb_ili9341 spi1.0: buf[2] = 48
[    7.073781] fb_ili9341 spi1.0: buf[3] = 80
[    7.073952] fb_ili9341 spi1.0: init: write_register:
[    7.073973] fb_ili9341 spi1.0: buf[0] = C7
[    7.073994] fb_ili9341 spi1.0: buf[1] = 00
[    7.074163] fb_ili9341 spi1.0: init: write_register:
[    7.074183] fb_ili9341 spi1.0: buf[0] = 36
[    7.074203] fb_ili9341 spi1.0: buf[1] = 28
[    7.074372] fb_ili9341 spi1.0: init: write_register:
[    7.074392] fb_ili9341 spi1.0: buf[0] = 3A
[    7.074414] fb_ili9341 spi1.0: buf[1] = 55
[    7.074581] fb_ili9341 spi1.0: init: write_register:
[    7.074601] fb_ili9341 spi1.0: buf[0] = B1
[    7.074622] fb_ili9341 spi1.0: buf[1] = B0
[    7.074641] fb_ili9341 spi1.0: buf[2] = 11
[    7.074809] fb_ili9341 spi1.0: init: write_register:
[    7.074829] fb_ili9341 spi1.0: buf[0] = F0
[    7.074850] fb_ili9341 spi1.0: buf[1] = 01
[    7.075018] fb_ili9341 spi1.0: init: write_register:
[    7.075038] fb_ili9341 spi1.0: buf[0] = F6
[    7.075058] fb_ili9341 spi1.0: buf[1] = 00
[    7.075077] fb_ili9341 spi1.0: buf[2] = 01
[    7.075096] fb_ili9341 spi1.0: buf[3] = 32
[    7.075264] fb_ili9341 spi1.0: init: write_register:
[    7.075285] fb_ili9341 spi1.0: buf[0] = 26
[    7.075306] fb_ili9341 spi1.0: buf[1] = 01
[    7.075474] fb_ili9341 spi1.0: init: write_register:
[    7.075494] fb_ili9341 spi1.0: buf[0] = E0
[    7.075515] fb_ili9341 spi1.0: buf[1] = 0F
[    7.075534] fb_ili9341 spi1.0: buf[2] = 31
[    7.075553] fb_ili9341 spi1.0: buf[3] = 2B
[    7.075571] fb_ili9341 spi1.0: buf[4] = 0C
[    7.075590] fb_ili9341 spi1.0: buf[5] = 0E
[    7.075609] fb_ili9341 spi1.0: buf[6] = 08
[    7.075628] fb_ili9341 spi1.0: buf[7] = 4E
[    7.075647] fb_ili9341 spi1.0: buf[8] = F1
[    7.075665] fb_ili9341 spi1.0: buf[9] = 37
[    7.075684] fb_ili9341 spi1.0: buf[10] = 07
[    7.075703] fb_ili9341 spi1.0: buf[11] = 10
[    7.075722] fb_ili9341 spi1.0: buf[12] = 03
[    7.075742] fb_ili9341 spi1.0: buf[13] = 0E
[    7.075761] fb_ili9341 spi1.0: buf[14] = 09
[    7.075780] fb_ili9341 spi1.0: buf[15] = 00
[    7.075954] fb_ili9341 spi1.0: init: write_register:
[    7.075974] fb_ili9341 spi1.0: buf[0] = E1
[    7.075995] fb_ili9341 spi1.0: buf[1] = 00
[    7.076014] fb_ili9341 spi1.0: buf[2] = 0E
[    7.076034] fb_ili9341 spi1.0: buf[3] = 14
[    7.076053] fb_ili9341 spi1.0: buf[4] = 03
[    7.076071] fb_ili9341 spi1.0: buf[5] = 11
[    7.076090] fb_ili9341 spi1.0: buf[6] = 07
[    7.076109] fb_ili9341 spi1.0: buf[7] = 31
[    7.076128] fb_ili9341 spi1.0: buf[8] = C1
[    7.076147] fb_ili9341 spi1.0: buf[9] = 48
[    7.076165] fb_ili9341 spi1.0: buf[10] = 08
[    7.076184] fb_ili9341 spi1.0: buf[11] = 0F
[    7.076203] fb_ili9341 spi1.0: buf[12] = 0C
[    7.076222] fb_ili9341 spi1.0: buf[13] = 31
[    7.076241] fb_ili9341 spi1.0: buf[14] = 36
[    7.076260] fb_ili9341 spi1.0: buf[15] = 0F
[    7.076432] fb_ili9341 spi1.0: init: write_register:
[    7.076452] fb_ili9341 spi1.0: buf[0] = B6
[    7.076473] fb_ili9341 spi1.0: buf[1] = 02
[    7.076493] fb_ili9341 spi1.0: buf[2] = 02
[    7.076511] fb_ili9341 spi1.0: buf[3] = 3B
[    7.076679] fb_ili9341 spi1.0: init: write_register:
[    7.076699] fb_ili9341 spi1.0: buf[0] = 11
[    7.076797] fb_ili9341 spi1.0: init: msleep(255)
[    7.361180] fb_ili9341 spi1.0: init: write_register:
[    7.361202] fb_ili9341 spi1.0: buf[0] = 29
[    7.490659] fb_ili9341 spi1.0: Display update: 2321 kB/s, fps=0
[    7.491267] graphics fb0: fb_ili9341 frame buffer, 480x320, 300 KiB video memory, 16 KiB buffer memory, fps=31, spi1.0 at 20 MHz

I'm connecting exactly according to this picture:image.png.0f283cffe241f910847eb5e7be07daa2.png

Edited by goodfvh _YT_

Find a DTS that uses compatible="waveshare,rpi-lcd-35" and try again

 

(I don't use that LCD, so I am not sure... but I know it is special because it contains a SPI-to-parallel chip)

Start with this DTS and change the GPIO for your OPIZ3

https://github.com/raspberrypi/linux/blob/rpi-6.12.y/arch/arm/boot/dts/overlays/piscreen-overlay.dts

 

Or start with your DTS and change the "compatible" line to "compatible=waveshare,rpi-lcd-35" and copy the other parameters of piscreen-overlay.dts if needed

 

Let us know if it works

Edited by robertoj

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.