繁体   English   中英

7“LCD显示器无法与Android Things配合使用

[英]7" LCD Display not working with Android Things

这是我的Android Things问题

这次我想通过HDMI和USB将7“显示器连接到我的Raspberry Pi 3(与Android Things 0.5.1一起运行)
这里显示的链接: 7“HDMI LCD(C)

我也按照手册上的说明将行添加到config.txt ,该文件位于我的SD卡的根目录中

max_usb_current=1
hdmi_group=2
hdmi_mode=1
hdmi_mode=87
hdmi_cvt 1024 600 60 6 0 0 0
hdmi_drive=1

然后我插上显示器。 绝对是! 但显示屏只显示黑屏。

我的config.txt

我附上了我的完整config.txt ,也许我错过了一些东西。 再说一遍:我只添加了上面显示的行

kernel=u-boot-dtok.bin
framebuffer_depth=16

# Prevent the firmware from loading HAT overlays now that we handle pin muxing.
# ourselves. See:
# https://www.raspberrypi.org/documentation/configuration/device-tree.md#part3.4
dtoverlay=

dtparam=i2c_arm=on
dtparam=spi=on
dtparam=audio=on

# pwm and I2S are mutually-exclusive since they share hardware clocks.
dtoverlay=pwm-2chan-with-clk,pin=18,func=2,pin2=13,func2=4
dtoverlay=generic-i2s

start_x=1

# Tell U-boot to always use the "serial0" interface for the console, which is
# set to whichever uart (uart0 or uart1) is set to the header pins. This doesn't
# interfere with the uart selected for Bluetooth.
dtoverlay=chosen-serial0

# Enable skip-init on the UART interfaces, so U-Boot doesn't attempt to
# re-initialize them.
dtoverlay=rpi-uart-skip-init

# Add pin devices to the system for use by the runtime pin configuration driver.
dtoverlay=runtimepinconfig
dtoverlay=uart1
dtoverlay=bcm2710-rpi-3-b-spi0-pin-reorder

# Tell the I2S driver to use the cprman clock.
dtoverlay=bcm2710-rpi-3-b-i2s-use-cprman

# Uncomment to disable serial port on headers, use GPIO14 and GPIO15
# as gpios and to allow the core_freq to change at runtime.
enable_uart=1
core_freq=400

# Enable hardware graphics acceleration.
dtoverlay=vc4-kms-v3d,cma-256
mask_gpu_interrupt0=0x400
avoid_warnings=2

# Support official RPi display.
dtoverlay=i2c-rtc,ds3231
dtoverlay=rpi-ft5406
hdmi_force_hotplug=1
hdmi_drive=2

# Support custom Waveshare 7inch display
max_usb_current=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt 1024 600 60 6 0 0 0
hdmi_drive=1

我也查了一些这样的其他问题一个
但我没有看到更多的信息:(

一个小小的更新

我也联系了制造商的支持。 我很快就会收到更多信息,我会在这里添加

另一个更新

我刚收到制造商支持的电子邮件:

是的,它可以。 但是,在测试期间。 只有1米长的HDMI线缆,LCD可以显示新版本的Android东西。 我们找不到原因。

我只是看了一下logcat。 据我所知,系统尝试连接TouchScreen,但没有驱动程序。

这些线条看起来也很有趣,但我真的不明白这个问题:(

09-19 17:18:00.630 170-261/? E/hwc-gl-worker: Failed to make image from target buffer: EGL_BAD_PARAMETER
09-19 17:18:00.630 170-261/? E/hwc-gl-worker: Composite failed because of failed framebuffer
09-19 17:18:00.630 170-261/? E/hwc-drm-display-compositor: Failed to pre-composite layers
09-19 17:18:00.630 170-261/? E/hwc-drm-display-compositor: Failed to pre-composite for squash all composition -22
09-19 17:18:00.631 170-261/? E/hwc-platform-drm-generic: Failed to close gem handle 0 -1

这里是完整的logcat:

--------- beginning of system
09-19 17:17:56.447 311-430/system_process D/UsbHostManager: Added device UsbDevice[mName=/dev/bus/usb/001/004,mVendorId=3823,mProductId=5,mClass=0,mSubclass=0,mProtocol=0,mManufacturerName=WaveShare,mProductName=WaveShare Touchscreen,mVersion=2.0,mSerialNumber=2016-11-06,mConfigurations=[
                    UsbConfiguration[mId=1,mName=null,mAttributes=192,mMaxPower=250,mInterfaces=[
                    UsbInterface[mId=0,mAlternateSetting=0,mName=null,mClass=3,mSubclass=0,mProtocol=0,mEndpoints=[
                    UsbEndpoint[mAddress=129,mAttributes=3,mMaxPacketSize=64,mInterval=1]]]]
09-19 17:17:56.473 311-326/system_process I/ActivityManager: Start proc 1277:com.android.mtp/u0a7 for broadcast com.android.mtp/.UsbIntentReceiver
09-19 17:17:56.501 311-372/system_process E/EventHub: could not get driver version for /dev/input/mouse0, Not a typewriter
09-19 17:17:56.509 1277-1277/? W/zygote: Using default instruction set features for ARM CPU variant (generic) using conservative defaults
09-19 17:17:56.551 1277-1284/? I/zygote: Debugger is no longer active
09-19 17:17:56.644 311-372/system_process D/EventHub: No input device configuration file found for device 'WaveShare WaveShare Touchscreen'.
09-19 17:17:56.644 311-372/system_process I/EventHub: New device: id=1, fd=186, path='/dev/input/event0', name='WaveShare WaveShare Touchscreen', classes=0x80000014, configuration='', keyLayout='', keyCharacterMap='', builtinKeyboard=false, wakeMechanism=EPOLLWAKEUP, usingClockIoctl=true
09-19 17:17:56.645 311-372/system_process I/InputReader: Device reconfigured: id=1, name='WaveShare WaveShare Touchscreen', size 16x16, orientation 0, mode 1, display id 0
09-19 17:17:56.645 311-372/system_process I/InputReader: Device added: id=1, name='WaveShare WaveShare Touchscreen', sources=0x00001002
09-19 17:17:56.679 935-935/? I/Binder:311_6: type=1400 audit(0.0:76): avc: denied { ptrace } for scontext=u:r:system_server:s0 tcontext=u:r:priv_app:s0:c512,c768 tclass=process permissive=1
09-19 17:17:57.909 240-240/? I/drm-event-liste: type=1400 audit(0.0:77): avc: denied { read } for path="socket:[8839]" dev="sockfs" ino=8839 scontext=u:r:hal_graphics_composer_default:s0 tcontext=u:r:hal_graphics_composer_default:s0 tclass=netlink_kobject_uevent_socket permissive=1
09-19 17:17:59.010 311-381/system_process W/AlarmManager: Unrecognized alarm listener com.android.server.wifi.WifiConfigStore$1@f0356d5
09-19 17:17:59.028 311-381/system_process D/WifiConfigStore: Writing to stores completed in 18 ms.
09-19 17:18:00.630 170-261/? E/hwc-gl-worker: Failed to make image from target buffer: EGL_BAD_PARAMETER
09-19 17:18:00.630 170-261/? E/hwc-gl-worker: Composite failed because of failed framebuffer
09-19 17:18:00.630 170-261/? E/hwc-drm-display-compositor: Failed to pre-composite layers
09-19 17:18:00.630 170-261/? E/hwc-drm-display-compositor: Failed to pre-composite for squash all composition -22
09-19 17:18:00.631 170-261/? E/hwc-platform-drm-generic: Failed to close gem handle 0 -1
09-19 17:18:08.861 311-1055/system_process D/WificondControl: Scan result ready event
09-19 17:18:30.976 311-325/system_process E/memtrack: Couldn't load memtrack module
09-19 17:18:30.976 311-325/system_process W/android.os.Debug: failed to get memory consumption info: -1
09-19 17:18:31.081 311-325/system_process E/memtrack: Couldn't load memtrack module
09-19 17:18:31.082 311-325/system_process W/android.os.Debug: failed to get memory consumption info: -1
09-19 17:18:31.407 130-130/? W//system/bin/hwservicemanager: getTransportFromManifest: Cannot find entry android.hardware.drm@1.0::IDrmFactory in either framework or device manifest, using default transport.
09-19 17:18:31.409 178-245/? E/DrmHal: Failed to find any drm factories
09-19 17:18:31.413 950-1303/com.google.android.gms.unstable W/DG.WV: Widevine DRM not supported on this device
                             android.media.UnsupportedSchemeException: Failed to instantiate drm object.
                                 at android.media.MediaDrm.native_setup(Native Method)
                                 at android.media.MediaDrm.<init>(MediaDrm.java:216)
                                 at joi.run(:com.google.android.gms:9)
                                 at ius.run(:com.google.android.gms:24)
                                 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
                                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
                                 at izo.run(:com.google.android.gms:0)
                                 at java.lang.Thread.run(Thread.java:764)
09-19 17:18:31.707 311-1041/system_process D/WificondControl: Scan result ready event
09-19 17:18:32.104 950-1129/com.google.android.gms.unstable W/SystemServiceRegistry: No service published for: persistent_data_block
09-19 17:18:32.119 1129-1129/? I/Binder:950_3: type=1400 audit(0.0:78): avc: denied { read } for name="/" dev="tmpfs" ino=7244 scontext=u:r:priv_app:s0:c512,c768 tcontext=u:object_r:device:s0 tclass=dir permissive=1
09-19 17:18:32.129 1129-1129/? I/Binder:950_3: type=1400 audit(0.0:80): avc: denied { read } for name="interrupts" dev="proc" ino=4026532794 scontext=u:r:priv_app:s0:c512,c768 tcontext=u:object_r:proc_interrupts:s0 tclass=file permissive=1
09-19 17:18:32.144 950-1129/com.google.android.gms.unstable W/System: ClassLoader referenced unknown path: /data/user/0/com.google.android.gms/app_U1rfdkMe/Mr,09vcaQ,w
09-19 17:18:32.150 950-1129/com.google.android.gms.unstable W/System: ClassLoader referenced unknown path: /data/user/0/com.google.android.gms/app_U1rfdkMe/Mr,09vcaQ,w
09-19 17:18:34.049 783-1305/com.google.android.gms.persistent I/VacuumService: Vacuum at: now=1505841514048 tag=VacuumService
09-19 17:18:34.223 783-783/com.google.android.gms.persistent I/Auth: [ReflectiveChannelBinder] Successfully bound channel!
09-19 17:18:34.260 130-130/? W//system/bin/hwservicemanager: getTransportFromManifest: Cannot find entry android.hardware.drm@1.0::IDrmFactory in either framework or device manifest, using default transport.
09-19 17:18:34.262 178-178/? E/DrmHal: Failed to find any drm factories
09-19 17:18:34.264 950-1308/com.google.android.gms.unstable W/DG.WV: Widevine DRM not supported on this device
                             android.media.UnsupportedSchemeException: Failed to instantiate drm object.
                                 at android.media.MediaDrm.native_setup(Native Method)
                                 at android.media.MediaDrm.<init>(MediaDrm.java:216)
                                 at joi.run(:com.google.android.gms:9)
                                 at ius.run(:com.google.android.gms:24)
                                 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
                                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
                                 at izo.run(:com.google.android.gms:0)
                                 at java.lang.Thread.run(Thread.java:764)
09-19 17:18:34.835 950-968/com.google.android.gms.unstable W/System: ClassLoader referenced unknown path: /data/user/0/com.google.android.gms/app_U1rfdkMe/Mr,09vcaQ,w
09-19 17:18:34.839 950-968/com.google.android.gms.unstable W/System: ClassLoader referenced unknown path: /data/user/0/com.google.android.gms/app_U1rfdkMe/Mr,09vcaQ,w
09-19 17:18:34.968 950-968/com.google.android.gms.unstable W/SystemServiceRegistry: No service published for: persistent_data_block
09-19 17:18:36.507 950-968/com.google.android.gms.unstable W/System: ClassLoader referenced unknown path: /data/user/0/com.google.android.gms/app_U1rfdkMe/Mr,09vcaQ,w
09-19 17:18:36.514 950-968/com.google.android.gms.unstable W/System: ClassLoader referenced unknown path: /data/user/0/com.google.android.gms/app_U1rfdkMe/Mr,09vcaQ,w
09-19 17:18:36.628 783-1042/com.google.android.gms.persistent W/Conscrypt: Could not set socket write timeout:
09-19 17:18:36.630 783-1042/com.google.android.gms.persistent W/Conscrypt:    java.lang.reflect.Method.invoke(Native Method)
09-19 17:18:36.630 783-1042/com.google.android.gms.persistent W/Conscrypt:    rkw.a(:com.google.android.gms:55)
09-19 17:18:36.752 783-1042/com.google.android.gms.persistent W/Conscrypt: Could not set socket write timeout:
09-19 17:18:36.753 783-1042/com.google.android.gms.persistent W/Conscrypt:    java.lang.reflect.Method.invoke(Native Method)
09-19 17:18:36.753 783-1042/com.google.android.gms.persistent W/Conscrypt:    rkw.a(:com.google.android.gms:55)
09-19 17:18:37.310 311-321/system_process I/zygote: Background concurrent copying GC freed 56654(2MB) AllocSpace objects, 4(80KB) LOS objects, 42% free, 4MB/8MB, paused 514us total 149.999ms
09-19 17:18:48.913 167-167/? D/WifiHAL: Start get packet fate command
09-19 17:18:48.913 167-167/? D/WifiHAL: createRequest Get Tx packet fate request
09-19 17:18:48.913 167-167/? E/WifiHAL: Failed to register get pkt fate response; result = -95
09-19 17:18:48.914 311-381/system_process E/WifiVendorHal: getTxPktFates(l.1941) failed {.code = ERROR_NOT_AVAILABLE, .description = }
09-19 17:18:48.915 167-167/? D/WifiHAL: Start get packet fate command
09-19 17:18:48.915 167-167/? D/WifiHAL: createRequest Get Rx packet fate request
09-19 17:18:48.915 167-167/? E/WifiHAL: Failed to register get pkt fate response; result = -95
09-19 17:18:48.916 311-381/system_process E/WifiVendorHal: getRxPktFates(l.1981) failed {.code = ERROR_NOT_AVAILABLE, .description = }
09-19 17:19:00.624 170-261/? E/hwc-gl-worker: Failed to make image from target buffer: EGL_BAD_PARAMETER
09-19 17:19:00.624 170-261/? E/hwc-gl-worker: Composite failed because of failed framebuffer
09-19 17:19:00.624 170-261/? E/hwc-drm-display-compositor: Failed to pre-composite layers
09-19 17:19:00.624 170-261/? E/hwc-drm-display-compositor: Failed to pre-composite for squash all composition -22
09-19 17:19:00.625 170-261/? E/hwc-platform-drm-generic: Failed to close gem handle 0 -1
09-19 17:19:10.975 311-325/system_process E/memtrack: Couldn't load memtrack module
09-19 17:19:10.975 311-325/system_process W/android.os.Debug: failed to get memory consumption info: -1
09-19 17:19:11.702 311-935/system_process D/WificondControl: Scan result ready event
09-19 17:19:16.084 311-325/system_process E/memtrack: Couldn't load memtrack module
09-19 17:19:16.084 311-325/system_process W/android.os.Debug: failed to get memory consumption info: -1
09-19 17:19:16.183 311-325/system_process E/memtrack: Couldn't load memtrack module
09-19 17:19:16.183 311-325/system_process W/android.os.Debug: failed to get memory consumption info: -1

更新 - 降级到Android Things 0.4.1

我使用Android Thing 0.4.1创建了一个新图像,并使用我的设备规格扩展了config.txt ,并且它正在工作......

但也许有人在这帮助我让显示器运行0.5.1? 这是我的“更新” config.txt

这个配置和我上面发布的配置有一些区别。 当然,对于AT 0.5.1,此配置不可运行

kernel=u-boot-dtok.bin
framebuffer_depth=16
dtparam=i2c_arm=on
dtparam=spi=on
dtparam=audio=on

# pwm and I2S are mutually-exclusive since they share hardware clocks.  To
# enable I2S comment out the pwm line and uncomment the generic-i2s line.
dtoverlay=pwm-2chan-with-clk,pin=18,func=2,pin2=13,func2=4
# dtoverlay=generic-i2s

start_x=1

# Tell U-boot to always use the "serial0" interface for the console, which is
# set to whichever uart (uart0 or uart1) is set to the header pins. This doesn't
# interfere with the uart selected for Bluetooth.
dtoverlay=chosen-serial0

# Enable skip-init on the UART interfaces, so U-Boot doesn't attempt to
# re-initialize them.
dtoverlay=rpi-uart-skip-init

# Uncomment to disable serial port on headers, use GPIO14 and GPIO15
# as gpios and to allow the core_freq to change at runtime.
enable_uart=1
core_freq=400

max_usb_current=1
hdmi_group=2
hdmi_mode=1
hdmi_mode=87
hdmi_cvt 1024 600 60 6 0 0 0
hdmi_drive=1

好吧,我想我有和你一样的套件,带有7英寸显示器Waveshare的RPi 3以及带有短而扁平的HDMI线缆。 我只是尝试用AT 0.5.1开始这个套件并且它工作正常(首先它显示了人工制品,线条并且似乎被破坏了,但几秒钟之后我可以看到Android Things开始屏幕)。 我按照Android Things网站上的说明进行安装。 如果您阅读0.5.1的发行说明 ,则有以下内容:

自动检测Raspberry Pi 3上的显示设置,无需编辑root config.txt文件。

但是我为你复制了我的( 自动生成的config.txt

kernel=u-boot-dtok.bin
framebuffer_depth=16

# Prevent the firmware from loading HAT overlays now that we handle pin muxing.
# ourselves. See:
# https://www.raspberrypi.org/documentation/configuration/device-tree.md#part3.4
dtoverlay=

dtparam=i2c_arm=on
dtparam=spi=on
dtparam=audio=on

# pwm and I2S are mutually-exclusive since they share hardware clocks.
dtoverlay=pwm-2chan-with-clk,pin=18,func=2,pin2=13,func2=4
dtoverlay=generic-i2s

start_x=1

# Tell U-boot to always use the "serial0" interface for the console, which is
# set to whichever uart (uart0 or uart1) is set to the header pins. This doesn't
# interfere with the uart selected for Bluetooth.
dtoverlay=chosen-serial0

# Enable skip-init on the UART interfaces, so U-Boot doesn't attempt to
# re-initialize them.
dtoverlay=rpi-uart-skip-init

# Add pin devices to the system for use by the runtime pin configuration driver.
dtoverlay=runtimepinconfig
dtoverlay=uart1
dtoverlay=bcm2710-rpi-3-b-spi0-pin-reorder

# Tell the I2S driver to use the cprman clock.
dtoverlay=bcm2710-rpi-3-b-i2s-use-cprman

# Uncomment to disable serial port on headers, use GPIO14 and GPIO15
# as gpios and to allow the core_freq to change at runtime.
enable_uart=1
core_freq=400

# Enable hardware graphics acceleration.
dtoverlay=vc4-kms-v3d,cma-256
mask_gpu_interrupt0=0x400
avoid_warnings=2

# Support official RPi display.
dtoverlay=i2c-rtc,ds3231
dtoverlay=rpi-ft5406
hdmi_force_hotplug=1
hdmi_drive=2

我希望它有所帮助。

有时我设法让显示器运行(使用新格式化的图像和我在上面发布的config.txt)......但是有时候显示器停止工作...然后我收到这个日志消息

1-01 00:00:18.553 311-334/? I/DisplayManagerService: Display device added: DisplayDeviceInfo{"Built-in Screen": uniqueId="local:0", 16 x 16, modeId 1, defaultModeId 1, supportedModes [{id=1, width=16, height=16, fps=1.0}], colorMode 0, supportedColorModes [0], HdrCapabilities android.view.Display$HdrCapabilities@1d6308, density 240, 96.0 x 96.0 dpi, appVsyncOff 1000000, presDeadline 1000000000, touch INTERNAL, rotation 0, type BUILT_IN, state UNKNOWN, FLAG_DEFAULT_DISPLAY, FLAG_ROTATES_WITH_CONTENT, FLAG_SECURE, FLAG_SUPPORTS_PROTECTED_BUFFERS}

然后没有其他显示器(如我的显示器或我的电视)也不再工作了。

如果检测到显示,我收到此消息:

01-01 00:00:18.591 310-332/? I/DisplayManagerService: Display device added: DisplayDeviceInfo{"Built-in Screen": uniqueId="local:0", 1024 x 600, modeId 1, defaultModeId 1, supportedModes [{id=1, width=1024, height=600, fps=43.0}], colorMode 0, supportedColorModes [0], HdrCapabilities android.view.Display$HdrCapabilities@1d6308, density 240, 173.397 x 152.4 dpi, appVsyncOff 1000000, presDeadline 23255814, touch INTERNAL, rotation 0, type BUILT_IN, state UNKNOWN, FLAG_DEFAULT_DISPLAY, FLAG_ROTATES_WITH_CONTENT, FLAG_SECURE, FLAG_SUPPORTS_PROTECTED_BUFFERS}

我认为这是Android Things中的一个错误,希望这将在下一个版本中修复!

如果我有任何更新,我会更新这篇文章。

这个问题应该在已经发布的 DP6( 问题 )中修复。 我没有测试过它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM