TV Box H10 6K UltraHD (petrel_p1) LibreElec port

  • Hi everyone,

    I'm trying to improve a build for that generic TVBOX and I have success booting the Tanix-TX6 image (v9.95.4)! But somethings isn't working. So I want some help to make that things working if thats possible.

    Working

    HDMI Image
    HDMI Audio
    Ethernet
    All USBs
    IR (but needs to change the keymap)

    Not Working

    Bluetooth
    Wi-fi

    Not tested

    Optical Audio
    AV Output

    Images

    Report from AIDA64

    AIDA64 for Android v1.78 Report

    <<< System >>>

    Manufacturer: Allwinner

    Model: H10

    Brand: Allwinner

    Board: exdroid

    Device: petrel-p1

    Hardware: sun50iw6p1

    Platform: petrel

    Product: petrel_p1

    Total Memory: 6144 MB

    Available Memory: 1731 MB

    Internal Storage Total Space: 24.61 GB

    Internal Storage Free Space: 22.22 GB

    Bluetooth Version: 4+

    Device Features: android.hardware.audio.output

    android.hardware.bluetooth

    android.hardware.bluetooth_le

    android.hardware.camera

    android.hardware.camera.any

    android.hardware.camera.front

    android.hardware.ethernet

    android.hardware.faketouch

    android.hardware.location

    android.hardware.location.network

    android.hardware.ram.normal

    android.hardware.screen.landscape

    android.hardware.touchscreen

    android.hardware.touchscreen.multitouch

    android.hardware.usb.accessory

    android.hardware.usb.host

    android.hardware.wifi

    android.hardware.wifi.direct

    android.software.activities_on_secondary_displays

    android.software.app_widgets

    android.software.autofill

    android.software.backup

    android.software.cts

    android.software.input_methods

    android.software.live_tv

    android.software.picture_in_picture

    android.software.pppoe

    android.software.verified_boot

    android.software.voice_recognizers

    android.software.webview

    com.google.android.apps.dialer.SUPPORTED

    com.google.android.feature.EXCHANGE_6_2

    com.google.android.feature.GOOGLE_BUILD

    com.google.android.feature.GOOGLE_EXPERIENCE

    com.google.android.feature.PIXEL_2017_EXPERIENCE

    com.google.android.feature.PIXEL_2018_EXPERIENCE

    com.google.android.feature.PIXEL_EXPERIENCE

    com.google.android.feature.TURBO_PRELOAD

    com.google.android.feature.WELLBEING

    <<< CPU >>>

    SoC Model: Allwinner H6

    Core Architecture: 4x ARM Cortex-A53 @ 1488 MHz

    Manufacturing Process: 28 nm

    Instruction Set: 64-bit ARMv8-A (32-bit Mode)

    CPU Revision: r0p4

    CPU Cores: 4

    CPU Clock Range: 480 - 1488 MHz

    Core 1 Clock: 1488 MHz

    Core 2 Clock: 1488 MHz

    Core 3 Clock: 1488 MHz

    Core 4 Clock: 1488 MHz

    CPU Utilization: 3 %

    Supported ABIs: armeabi-v7a, armeabi

    Supported 32-bit ABIs: armeabi-v7a, armeabi

    AES: Supported

    NEON: Supported

    PMULL: Supported

    SHA1: Supported

    SHA2: Supported

    <<< Display >>>

    Screen Resolution: 1280 × 720

    Screen Size: 153 mm × 86 mm

    Screen Diagonal: 6.89 inchs

    Pixel Density: 213 dpi (mdpi)

    xdpi / ydpi: 213 / 213 dpi

    GPU Vendor: ARM

    GPU Renderer: Mali-T720

    GPU Cores: 2

    Refresh Rate: 60 Hz

    Default Orientation: Landscape

    OpenGL ES Version: 2.0

    GPU Version: OpenGL ES 3.1 v1.r18p0-01rel0.3b1d29024fe2115257d4019f9dcf554c

    OpenGL ES Extensions: GL_EXT_debug_marker

    GL_ARM_rgba8

    GL_ARM_mali_shader_binary

    GL_OES_depth24

    GL_OES_depth_texture

    GL_OES_depth_texture_cube_map

    GL_OES_packed_depth_stencil

    GL_OES_rgb8_rgba8

    GL_EXT_read_format_bgra

    GL_OES_compressed_paletted_texture

    GL_OES_compressed_ETC1_RGB8_texture

    GL_OES_standard_derivatives

    GL_OES_EGL_image

    GL_OES_EGL_image_external

    GL_OES_EGL_image_external_essl3

    GL_OES_EGL_sync

    GL_OES_texture_npot

    GL_OES_vertex_half_float

    GL_OES_required_internalformat

    GL_OES_vertex_array_object

    GL_OES_mapbuffer

    GL_EXT_texture_format_BGRA8888

    GL_EXT_texture_rg

    GL_EXT_texture_type_2_10_10_10_REV

    GL_OES_fbo_render_mipmap

    GL_OES_element_index_uint

    GL_EXT_shadow_samplers

    GL_OES_texture_compression_astc

    GL_KHR_texture_compression_astc_ldr

    GL_KHR_texture_compression_astc_hdr

    GL_KHR_texture_compression_astc_sliced_3d

    GL_KHR_debug

    GL_EXT_occlusion_query_boolean

    GL_EXT_disjoint_timer_query

    GL_EXT_blend_minmax

    GL_EXT_discard_framebuffer

    GL_OES_get_program_binary

    GL_OES_texture_3D

    GL_EXT_texture_storage

    GL_EXT_multisampled_render_to_texture

    GL_OES_surfaceless_context

    GL_OES_texture_stencil8

    GL_EXT_shader_pixel_local_storage

    GL_ARM_shader_framebuffer_fetch

    GL_ARM_shader_framebuffer_fetch_depth_stencil

    GL_ARM_mali_program_binary

    GL_EXT_sRGB

    GL_EXT_sRGB_write_control

    GL_EXT_texture_sRGB_decode

    GL_EXT_texture_sRGB_R8

    GL_EXT_texture_sRGB_RG8

    GL_KHR_blend_equation_advanced

    GL_KHR_blend_equation_advanced_coherent

    GL_OES_texture_storage_multisample_2d_array

    GL_OES_shader_image_atomic

    GL_EXT_robustness

    GL_EXT_texture_border_clamp

    GL_OES_texture_border_clamp

    GL_EXT_texture_cube_map_array

    GL_OES_texture_cube_map_array

    GL_OES_sample_variables

    GL_OES_sample_shading

    GL_OES_shader_multisample_interpolation

    GL_EXT_shader_io_blocks

    GL_OES_shader_io_blocks

    GL_EXT_gpu_shader5

    GL_OES_gpu_shader5

    GL_EXT_texture_buffer

    GL_OES_texture_buffer

    GL_EXT_copy_image

    <<< Network >>>

    << Telephony >>

    Phone Type: None

    << Wi-Fi >>

    State: Enabled

    SSID: <unknown ssid>

    BSSID: 02:00:00:00:00:00

    Hidden SSID: Yes

    IPv4 Address: 192.168.1.11

    IPv6 Address:

    Signal Strength: -48 dBm (Excellent)

    Link Speed: 40 Mbps

    Frequency: 5240 MHz

    Network ID: 1

    Gateway: 192.168.1.1

    Netmask: 255.255.255.0

    DNS1: 192.168.1.1

    DHCP Lease Duration: 24 hours

    5 GHz Band: Supported

    Wi-Fi Aware: Not Supported

    Wi-Fi Direct: Supported

    <<< Battery >>>

    Power Source: Battery

    Level: 0 %

    Status: Unknown

    Helth: Unknown

    Capacity (Reported by Android): 2850 mAh

    <<< Android >>>

    Android Version: 9 (Pie)

    API Level: 28

    Android Security Patch Level: 2019-02-05

    Rooted Device: Yes

    Android ID: 84e348adfc4d8cf7

    Build ID: petrel_p1-eng 9 PPR1.181005.003 20190711-082414 test-keys

    Codename: REL

    Fingerprint: Allwinner/venus_a1/venus-a1:9/PPR1.181005.003/20190711-082414:eng/test-keys

    ID: PPR1.181005.003

    Incremental: 20190711-082414

    Java Runtime Version: Android Runtime 0.9

    Java VM Version: ART 2.1.0

    Java VM Heap Size: 192 MB

    Kernel Architecture: armv8l

    Kernel Version: 4.9.118 (willi@mogul-tech) (gcc version 4.9.3 20150113 (prerelease) (Linaro GCC 4.9-2015.01-3) ) #69 SMP PREEMPT Thu Jul 11 08:23:11 UTC 2019

    Tags: test-keys

    Type: eng

    Google Play Services Version: 14.7.99 (100300-223214910)

    Huawei Mobile Services Version: < Not Present >

    OpenSSL Version: OpenSSL 1.1.0 (compatible; BoringSSL)

    ZLib Version: 1.2.11

    ICU CLDR Version: 32.0.1

    ICU Library Version: 60.2

    ICU Unicode Version: 10.0

    Android Language: Portuguese (Brazil)

    Configured Time Zone: China Standard Time (UTC+08:00)

    UpTime: 00:16:03

    <<< Devices >>>

    << USB Device - Linux 4.9.118 xhci-hcd xHCI Host Controller >>

    Manufacturer: Linux 4.9.118 xhci-hcd

    Product: xHCI Host Controller

    Serial: xhci-hcd.0.auto

    Device ID: 1D6B-0002

    Device Class: 09 / 00 (Hi-Speed Hub with single TT)

    Device Protocol: 01

    Revision: 0409

    Supported USB Version: 2.00

    Current Speed: 480 Mbps

    << USB Device - Linux 4.9.118 ehci_hcd SW USB2.0 'Enhanced' Host Controller (EHCI) Driver >>

    Manufacturer: Linux 4.9.118 ehci_hcd

    Product: SW USB2.0 'Enhanced' Host Controller (EHCI) Driver

    Serial: sunxi-ehci

    Device ID: 1D6B-0002

    Device Class: 09 / 00 (Full-Speed Hub)

    Device Protocol: 00

    Revision: 0409

    Supported USB Version: 2.00

    Current Speed: 480 Mbps

    << USB Device - Linux 4.9.118 xhci-hcd xHCI Host Controller >>

    Manufacturer: Linux 4.9.118 xhci-hcd

    Product: xHCI Host Controller

    Serial: xhci-hcd.0.auto

    Device ID: 1D6B-0003

    Device Class: 09 / 00 (Hub)

    Device Protocol: 03

    Revision: 0409

    Supported USB Version: 3.00

    Current Speed: 5000 Mbps

    << USB Device - Linux 4.9.118 ohci_hcd SW USB2.0 'Open' Host Controller (OHCI) Driver >>

    Manufacturer: Linux 4.9.118 ohci_hcd

    Product: SW USB2.0 'Open' Host Controller (OHCI) Driver

    Serial: sunxi-ohci

    Device ID: 1D6B-0001

    Device Class: 09 / 00 (Full-Speed Hub)

    Device Protocol: 00

    Revision: 0409

    Supported USB Version: 1.10

    Current Speed: 12 Mbps

    << USB Device - 2.4G Composite Devic >>

    Product: 2.4G Composite Devic

    Device ID: 2318-2808

    Device Class: 00 / 00

    Device Protocol: 00

    Revision: 0200

    Supported USB Version: 1.10

    Current Speed: 12 Mbps

    Maximum Power: 100 mA

    No cameras found. Camera permission needs to be granted.

    No OpenCL devices found.

    No CUDA devices found.

    No Vulkan devices found.

    No PCI devices found.

    <<< Thermal >>>

    cpu_thermal_zone: 64.0°C

    gpu_thermal_zone: 63.0°C

    <<< Sensors >>>

    No sensors found.

    <<< Codecs >>>

    OMX.google.aac.decoder: audio/mp4a-latm

    OMX.google.amrnb.decoder: audio/3gpp

    OMX.google.amrwb.decoder: audio/amr-wb

    OMX.google.flac.decoder: audio/flac

    OMX.google.g711.alaw.decoder: audio/g711-alaw

    OMX.google.g711.mlaw.decoder: audio/g711-mlaw

    OMX.google.mp3.decoder: audio/mpeg

    OMX.google.opus.decoder: audio/opus

    OMX.google.raw.decoder: audio/raw

    OMX.google.vorbis.decoder: audio/vorbis

    OMX.google.aac.encoder: audio/mp4a-latm

    OMX.google.amrnb.encoder: audio/3gpp

    OMX.google.amrwb.encoder: audio/amr-wb

    OMX.google.flac.encoder: audio/flac

    OMX.allwinner.video.decoder.avc: video/avc

    OMX.google.h264.decoder: video/avc

    OMX.allwinner.video.decoder.h263: video/3gpp

    OMX.google.h263.decoder: video/3gpp

    OMX.allwinner.video.decoder.hevc: video/hevc

    OMX.google.hevc.decoder: video/hevc

    OMX.allwinner.video.decoder.mpeg2: video/mpeg2

    OMX.allwinner.video.decoder.mpeg4: video/mp4v-es

    OMX.google.mpeg4.decoder: video/mp4v-es

    OMX.allwinner.video.decoder.vp8: video/x-vnd.on2.vp8

    OMX.google.vp8.decoder: video/x-vnd.on2.vp8

    OMX.allwinner.video.decoder.vp9: video/x-vnd.on2.vp9

    OMX.google.vp9.decoder: video/x-vnd.on2.vp9

    OMX.allwinner.video.encoder.avc: video/avc

    OMX.google.h264.encoder: video/avc

    OMX.google.h263.encoder: video/3gpp

    OMX.google.mpeg4.encoder: video/mp4v-es

    OMX.google.vp8.encoder: video/x-vnd.on2.vp8

    OMX.google.vp9.encoder: video/x-vnd.on2.vp9

    <<< Directories >>>

    Data: /data

    Root: /system

    Java Home: /system

    Download/Cache Content: /data/cache


    << Mount Points >>

    /: Device: /dev/root

    File System: ext4

    Read-Only

    /dev: Device: tmpfs

    File System: tmpfs

    Read-Write

    /dev/pts: Device: devpts

    File System: devpts

    Read-Write

    /dev/memcg: Device: none

    File System: cgroup

    Read-Write

    /dev/cpuctl: Device: none

    File System: cgroup

    Read-Write

    /dev/cg2_bpf: Device: cg2_bpf

    File System: cgroup2

    Read-Write

    /dev/usb-ffs/adb: Device: adb

    File System: functionfs

    Read-Write

    /proc: Device: proc

    File System: proc

    Read-Write

    /sys: Device: sysfs

    File System: sysfs

    Read-Write

    /sys/fs/selinux: Device: selinuxfs

    File System: selinuxfs

    Read-Write

    /sys/kernel/debug: Device: debugfs

    File System: debugfs

    Read-Write

    /sys/kernel/debug/tracing: Device: tracefs

    File System: tracefs

    Read-Write

    /sys/fs/bpf: Device: bpf

    File System: bpf

    Read-Write

    /sys/fs/pstore: Device: pstore

    File System: pstore

    Read-Write

    /mnt: Device: tmpfs

    File System: tmpfs

    Read-Write

    /mnt/runtime/default/emulated: Device: /data/media

    File System: sdcardfs

    Read-Write

    /mnt/runtime/read/emulated: Device: /data/media

    File System: sdcardfs

    Read-Write

    /mnt/runtime/write/emulated: Device: /data/media

    File System: sdcardfs

    Read-Write

    /vendor: Device: /dev/block/by-name/vendor

    File System: ext4

    Read-Only

    /acct: Device: none

    File System: cgroup

    Read-Write

    /config: Device: none

    File System: configfs

    Read-Write

    /data: Device: /dev/block/by-name/UDISK

    File System: f2fs

    Read-Write

    /cache: Device: /dev/block/by-name/cache

    File System: ext4

    Read-Write

    /Reserve0: Device: /dev/block/by-name/Reserve0

    File System: vfat

    Read-Write

    /storage: Device: tmpfs

    File System: tmpfs

    Read-Write

    /storage/emulated: Device: /data/media

    File System: sdcardfs

    Read-Write

    /storage/self: Device: tmpfs

    File System: tmpfs

    Read-Write

    <<< System Files >>>

    Buddy Info: /proc/buddyinfo

    Build Properties: /system/build.prop

    Character & Block Devices: /proc/devices

    Command Line: /proc/cmdline

    CPU Information: /proc/cpuinfo

    Default Properties: /default.prop

    Execution Domains: /proc/execdomains

    File Systems: /proc/filesystems

    Frame Buffer Devices: /proc/fb

    Hosts: /system/etc/hosts

    Interrupts: /proc/interrupts

    Input Devices: /proc/bus/input/devices

    I/O Ports: /proc/ioports

    Kernel Version: /proc/version

    Load Average: /proc/loadavg

    Locked Files: /proc/locks

    Memory Information: /proc/meminfo

    Memory Map: /proc/iomem

    Misc Drivers: /proc/misc

    Partitions: /proc/partitions

    Statistics: /proc/stat

    Swap Spaces: /proc/swaps

    <<< /proc/cpuinfo >>>

    processor : 0

    model name : ARMv8 Processor rev 4 (v8l)

    BogoMIPS : 48.00

    Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt lpae aes pmull sha1 sha2 crc32

    CPU implementer : 0x41

    CPU architecture: 8

    CPU variant : 0x0

    CPU part : 0xd03

    CPU revision : 4

    processor : 1

    model name : ARMv8 Processor rev 4 (v8l)

    BogoMIPS : 48.00

    Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt lpae aes pmull sha1 sha2 crc32

    CPU implementer : 0x41

    CPU architecture: 8

    CPU variant : 0x0

    CPU part : 0xd03

    CPU revision : 4


    <<< /proc/meminfo >>>

    MemTotal: 6291456 kB

    MemFree: 762912 kB

    MemAvailable: 1886620 kB

    Buffers: 11536 kB

    Cached: 1003708 kB

    SwapCached: 0 kB

    Active: 1116432 kB

    Inactive: 635872 kB

    Active(anon): 720356 kB

    Inactive(anon): 21452 kB

    Active(file): 396076 kB

    Inactive(file): 614420 kB

    Unevictable: 2484 kB

    Mlocked: 2484 kB

    SwapTotal: 262140 kB

    SwapFree: 262140 kB

    Dirty: 272 kB

    Writeback: 0 kB

    AnonPages: 739544 kB

    Mapped: 597760 kB

    Shmem: 2732 kB

    Slab: 238568 kB

    SReclaimable: 178152 kB

    SUnreclaim: 60416 kB

    KernelStack: 22656 kB

    PageTables: 31068 kB

    NFS_Unstable: 0 kB

    Bounce: 0 kB

    WritebackTmp: 0 kB

    CommitLimit: 1790360 kB

    Committed_AS: 27290432 kB

    VmallocTotal: 263061440 kB

    VmallocUsed: 0 kB

    VmallocChunk: 0 kB

    CmaTotal: 65536 kB

    CmaFree: 56564 kB

    Edited 3 times, last by Gabr137: Added IR to list of working things (June 5, 2021 at 6:26 PM).

    • Official Post

    What kind of Wifi+BT chip does it have? Can you check chip markings or alternatively provide dmesg output from Android?

    Regarding IR - I find it hard to believe that IR wouldn't work. Most probably it just uses remote with different keymap. You can run ir-keytable -t -p NEC,RC6 and press few keys on your remote. If key presses are decoded, you just need to change keymap.

  • What kind of Wifi+BT chip does it have? Can you check chip markings or alternatively provide dmesg output from Android?

    Regarding IR - I find it hard to believe that IR wouldn't work. Most probably it just uses remote with different keymap. You can run ir-keytable -t -p NEC,RC6 and press few keys on your remote. If key presses are decoded, you just need to change keymap.

    Thank you for your answer! I'll attach a file with the dmesg output because it's too long.

    The IR is working! I have output from the ir-keytable when pressing the controller buttons. So I'm going to try changing the keymaps. I find this tutorial. Is there some easy way to do that keymap change?

    • Official Post

    There are significant crypto changes in the kernel around Linux 4.10/4.11 which will require the driver to be substantially reworked. An attempt was made here GitHub - chewitt/ssv6051: ** NOT WORKING / DO NOT FORK! ** iComm / South Silicon Valley SSV6051 driver for LibreELEC but the conclusion of the dev who made the attempt (not me) was that the original driver is architecturally garbage and it would be quicker to rewrite from scratch (but it wasn't worth the effort).