Jump to content

le51

Members
  • Posts

    31
  • Joined

  • Last visited

Posts posted by le51

  1. Excellent news here: I've finally found my ili9488 display and, even better, I've got it to work with https://github.com/KungfuPancake/v0_ips_touch_display/blob/main/panel-mipi-dbi-spi.txt

    I had to remove

    command 0x21

    which is specific for IPS displays (mine is TN) to get a correct color rendering.

     

    But unfortunately all my attempts with the ili9486 display ends up with a blank screen (driver is registered, Xorg session start, but nothing on screen. I don't know how to debug further 😪 ...)

     

    I'm doing all of this with a Raspberry Pi4b 6.12.18-v8+. I will try to test later on a Radxa 5b

  2. This is from panel-mipi-dbi-spi.txt

     

    command 0xE0 0x00 0x03 0x09 0x08 0x16 0x0A 0x3F 0x78 0x4C 0x09 0x0A 0x08 0x16 0x1A 0x0F
    command 0xE1 0x00 0x16 0x19 0x03 0x0F 0x05 0x32 0x45 0x46 0x04 0x0E 0x0D 0x35 0x37 0x0F

     

    This is from LCDWIKI_SPI.cpp for ili9488:

    0xE0, 15, 0x00, 0x07, 0x10, 0x09, 0x17, 0x0B, 0x41, 0x89, 0x4B, 0x0A, 0x0C, 0x0E, 0x18, 0x1B, 0x0F,
    
    0xE1, 15, 0x00, 0x17, 0x1A, 0x04, 0x0E, 0x06, 0x2F, 0x45, 0x43, 0x02, 0x0A, 0x09, 0x32, 0x36, 0x0F,

     

    They are other commands that differs slightly. 

     

    I've found other sources for the init sequence which seems all to be close to panel-mipi-dbi-spi.txt :

     

    * Juj fbcp lib: https://github.com/juj/fbcp-ili9341/blob/master/ili9488.cpp#L28

    * Bodmer eTFT_SPI lib for microcontrollers : https://github.com/Bodmer/TFT_eSPI/blob/master/TFT_Drivers/ILI9488_Init.h#L11

    * Jarret Bucket Adafruit GLX lib : https://github.com/jaretburkett/ILI9488/blob/master/ILI9488.cpp#L378

    * this one is for STM32 : https://github.com/RobertoBenjami/stm32_graphics_display_drivers/blob/master/Drivers/lcd/ili9488/ili9488.c#L219


    In the same manner, we can found init sequences for other chips in these libraries, eg ili9486.

     

    There's already a driver in the kernel source : https://web.git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/drivers/gpu/drm/tiny/ili9486.c?h=linux-6.12.y but it is specific to Waveshare 35a or PiScreen displays (these with 4 kind of shift register ICs onboard).

     

    So for now, while waiting for a new ili9488 display arrives home, I'm digging further around the right init sequence for ili9486.

  3. So I've looked into my drawers and, unfortunately, I can't get my hands on the ili9488 display I own. I will order a new one.

    But I've got another display of the same type (with the red PCB and 14 pins and resistive touch) with ili9486 driver IC.

     

    In LCDWIKI_SPI.cpp, there's an init sequence for that chip, but I'm really confused.

     

    On 12/13/2024 at 6:11 AM, robertoj said:

    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

     

    Means that you have use this file: https://github.com/KungfuPancake/v0_ips_touch_display/blob/main/panel-mipi-dbi-spi.txt ?

     

    It's really different from what is in LCDWIKI_SPI.cpp around line 1697 (for ili9488)

  4. Hi there,

     

    just to clarify; all of you having wlan0 up and running, are you using an USB adapter or the RVdock built in wifi chip

     

    I'min the same situation as noticed here:

     

     

    I'm using 23_09_sid_edge_6.6.0, and gotsame problem with current 6.1

     

     

    -------------EDIT----------------

     

    Got it working finally.

     

    For any unknow reason, the arbiam setup script at first boot didn't finished totaly.

    I have burned a new SD card with 23_09_sid_edge_6.6.0

    and everything (at least Wifi) is fine.

     

    Thank you @balbes150 great job

  5. Hey Klaus,

     

    I own an IQaudio Dac Pro and I want it to run on Rock5b.

    I'm a bit busy these days for investigating right now, but here are some points:

     

    • IQaudio boards have an ASoc driver like:

    https://github.com/raspberrypi/linux/blob/rpi-5.15.y/sound/soc/bcm/iqaudio-dac.c

    or

    https://github.com/raspberrypi/linux/blob/rpi-5.15.y/sound/soc/bcm/iqaudio-codec.c

     

    Maybe they need some tweaks

    • You have to write and compile a device tree overlay like this one

    https://github.com/raspberrypi/linux/blob/rpi-5.15.y/arch/arm/boot/dts/overlays/iqaudio-dacplus-overlay.dts

     

    • I've seen on radxa repository that there is already a dts file for an Audioinjector board:

    https://github.com/radxa/overlays/blob/main/arch/arm64/boot/dts/rockchip/overlays/audioinjector-isolated-soundcard.dts

    but this shouldn't be for the rock5b, as GPIO pinout (https://wiki.radxa.com/Rock5/hardware/5b/gpio) list I2S2 and I2C7 as the right data lanes name.

     

    • Be sure that I2C7 and I2S2 are in "okay" status (haven't checked) in the device tree

    Hope this helps, and keep us in touch 😉

     

    Good luck

  6. I agree with Guidol's point of view.

     

    But, so far

    • if you already have a tinkerboard lying on your desk
    • if you know how to use etcher (or any other tool for creating a bootable disk)

    Then by following instructions given above and these on how to compile armbian you should be able to get your DAC up and running under armbian. And, maybe you will just have to adapt the "compatibility" line in the dts file ...

    I would be glad to help you further, but without having the tinkerboard, and without having this dac it's hard to do more ...

  7. do you have any board in mind. Armbian runs on a wide variety of hardware. See here:

    https://www.armbian.com/download/?device_support=Supported

    and here for the boards in testing stage:

    https://www.armbian.com/download/?device_support=Suitable+for+testing+(WIP)

    They are boards that haven't got any i2s interface.

     

    Have a look at this thread for some guidance:

    You will have to compile driver pcm179x-i2c or pcm179x-spi depending on the hardware control protocol used by your device, I'm quiet sure that it isn't enabled by default in armbian.

     

    The device tree overlay for rpi-dac is quiet simple and should easily adaptable:

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

    // Definitions for RPi DAC
    /dts-v1/;
    /plugin/;
    
    / {
    	compatible = "brcm,bcm2835";
    
    	fragment@0 {
    		target = <&i2s>;
    		__overlay__ {
    			status = "okay";
    		};
    	};
    
    	fragment@1 {
    		target-path = "/";
    		__overlay__ {
    			pcm1794a-codec {
    				#sound-dai-cells = <0>;
    				compatible = "ti,pcm1794a";
    				status = "okay";
    			};
    		};
    	};
    
    	fragment@2 {
    		target = <&sound>;
    		__overlay__ {
    			compatible = "rpi,rpi-dac";
    			i2s-controller = <&i2s>;
    			status = "okay";
    		};
    	};
    };

     

     

    Again, post mentioned above will give most of what you are looking for.

    Good luck

  8. Well, I own a nanopi m4v2 + nVme hat and ssd, but for an unknown reason, the board doesn't start anymore. I suspect that some component has been toasted elsewhere ...

    So sad ...

    Quote

    Some boards need the sd card with the bootloader

    First, I've got to say that I'm far from being a guru in all these uboot, bootloader stuff.  But that is the case for the m4v2 + nvme ssd => you need sd card for booting the board and then access root filesystem on the ssd. By swapping the sd card I had the ability to install and choose to use legacy or mainline on two separate partitions.

    => so while booting the board with a fresh armbian sd card, you can backup a ssd partition or even the whole drive with dd. But I don't know if it is feasible on the emmc drive.

     

    Btw, there is a "recovery" button on the board, what is that use for, it's a mystery

  9. Hi Werner, hi Myy

     

    I like big challenge :D

    I went through all the building process (without having initialized any FLAGS as said above) on the nanoPi itself.

    But I don't realize how it can impact on software performance, or compilation speed or ....

     

    I will run the process again with

    13 minutes ago, Myy said:

    -march=, -mcpu= and -mtune= to native

     

    Thank you

  10. Hi,

     

    I'm trying to build a zynthian synthesizer on a nanoPi m4v2. The principle is to start from a minimal buster image and run a bunch of compilation scripts (see here on github) to create all the needed software. But all that stuff is for Raspberry Pi.

    In an initialization script (see here on github) they define compilation flags like this:
     

    if [ "$ZYNTHIAN_FORCE_RBPI_VERSION" ]; then
        hw_architecture="armv7l"
        rbpi_version=$ZYNTHIAN_FORCE_RBPI_VERSION
    else
        hw_architecture=`uname -m 2>/dev/null`
        if [ -e "/sys/firmware/devicetree/base/model" ]; then
            rbpi_version=`tr -d '\0' < /sys/firmware/devicetree/base/model`
        else
            rbpi_version=""
        fi
    fi
    
    if [ "$hw_architecture" = "armv7l" ]; then
        # default is: RPi3
        CPU="-mcpu=cortex-a53 -mtune=cortex-a53"
        FPU="-mfpu=neon-fp-armv8 -mneon-for-64bits"
        if [[ "$rbpi_version" =~ [2] ]]; then
            CPU="-mcpu=cortex-a7 -mtune=cortex-a7"
            FPU="-mfpu=neon-vfpv4"
        fi
        #CPU="${CPU} -Ofast" #Breaks mod-ttymidi build
        FPU="${FPU} -mfloat-abi=hard -mlittle-endian -munaligned-access -mvectorize-with-neon-quad -ftree-vectorize"
        CFLAGS_UNSAFE="-funsafe-loop-optimizations -funsafe-math-optimizations -ffast-math"
    fi
    export MACHINE_HW_NAME=$hw_architecture
    export RBPI_VERSION=$rbpi_version
    export CFLAGS="${CPU} ${FPU}"
    export CXXFLAGS=${CFLAGS}
    export CFLAGS_UNSAFE=""
    export RASPI=true

    I'm totally confused with aarch64, arm64, armv7, armv8 ...

    Can someone help me to set the right options here.

     

    What I've done so far, was to remove all these FLAGS initialization (because of errors), but this is for sure not the best way to optimize that :wacko:

     

    Thank you for your input!

  11. That board has a 12.288 MHz crystal. You'll have to adjust the clock settings accordingly in the dts file.  The sample rate will be 44100 hz.

     

    Btw, did you notice that mikroe's proto board only has got one microphone input ?

  12. Hi there,

     

    This topic interest me a lot. I'm using arm sbc for sound & music applications where low latency is important.

    sfx2000's post reminds me other discussions on other forums (mostly computer "assisted" music oriented) where some thoughts/experiences are related to poor application performance regarding the low positive impact of a RT kernel.

    From my own experience (x86, arm SBC's and RPI), RT kernel or not, good or bad audio interface in USB or I2S, depending on the load (cpu, memory, audio stream), I always have crack, glitches and xruns.

     

    Without RT patch, what I get:

    - With a H5 board with 2Gb memory (NanoPiK1plus) I can't go under 20ms of jack audio server latency without having a to unstable config but, as is, it is still "playable".

    - With a NanoPiM4 and a HD USB audio interface, I have 5ms of latency, a lot of power for apps and a NvMe interface for a fast drive. That's great :)

     

    So, I really ask myself for going further in kernel "hacking" with the RT patch.

     

     

×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines