场景如下:我使用 python 框架编写了一个 guiKivy http://kivy.org,我想在树莓派上运行它这个触摸屏 https://learn.adafruit.com/adafruit-pitft-28-inch-resistive-touchscreen-display-raspberry-pi。我已经安装得很好,并且TSLIB_FBDEVICE=/dev/fb1 TSLIB_TSDEVICE=/dev/input/touchscreen FRAMEBUFFER=/dev/fb1 nohup startx &
使 xwindow 桌面 GUI 运行良好。不过,我一直无法让我的 kivy gui 工作。我能够让测试 tkinter 应用程序正常工作,通过
设置DISPLAY
环境变量。
我尝试将以下内容放在我的 kivy 应用程序的顶部,但无济于事:
os.environ['SDL_VIDEODRIVER'] = 'fbcon'
os.environ['SDL_FBDEV'] = '/dev/fb1'
os.environ['SDL_MOUSEDRV'] = 'TSLIB'
os.environ['SDL_MOUSEDEV'] = '/dev/input/touchscreen'
当我运行我的应用程序时,这是调试输出:
[INFO ] [Logger ] Record log in /home/pi/.kivy/logs/kivy_14-04-21_10.txt
[INFO ] Kivy v1.8.1-dev
[INFO ] [Python ] v2.7.3 (default, Mar 18 2014, 05:13:23)
[GCC 4.6.3]
[INFO ] [Factory ] 157 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_pygame, img_gif (img_pil ignored)
[INFO ] [Text ] Provider: pygame
[INFO ] [Loader ] using a thread pool of 2 workers
[INFO ] [Window ] Provider: egl_rpi
[INFO ] [GL ] OpenGL version <OpenGL ES 2.0>
[INFO ] [GL ] OpenGL vendor <Broadcom>
[INFO ] [GL ] OpenGL renderer <VideoCore IV HW>
[INFO ] [GL ] OpenGL parsed version: 2, 0
[INFO ] [GL ] Shading version <OpenGL ES GLSL ES 1.00>
[INFO ] [GL ] Texture max size <2048>
[INFO ] [GL ] Texture max units <8>
[INFO ] [Shader ] fragment shader: <Compiled>
[INFO ] [Shader ] vertex shader: <Compiled>
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [GL ] NPOT texture support is available
[INFO ] [OSC ] using <multiprocessing> for socket
[INFO ] [ProbeSysfs ] device match: /dev/input/event0
[INFO ] [HIDInput ] Read event from </dev/input/event0>
[INFO ] [Base ] Start application main loop
[INFO ] [HIDMotionEvent] using <stmpe-ts>
我对帧缓冲区等了解不多(任何事情);我希望有人能指出我正确的方向。看来我提到的上述环境变量对于显示 pygame 应用程序很有用,并且 kivy 是基于 pygame 构建的。
一些链接:
-
This http://www.karoltomala.com/blog/?p=679这是我现在正在尝试的事情,以防 DISPLAY 和 FBDEV 都需要设置。我还将检查是否实际安装了 directfb 或 fbcon。
- 相关的 kivy 谷歌群组issue https://groups.google.com/forum/#!searchin/kivy-users/touchscreen%2420raspberry/kivy-users/lGIvr0uR5Bo/byYWJq00qfcJ
-
A fork https://groups.google.com/forum/#!searchin/kivy-users/touchscreen%2420rpi/kivy-users/MCsoacaPfiY/uC6QcjvNge4J我可以尝试
比去年四月晚得多的时候,我很难直接找到任何关于此的信息。
任何帮助将不胜感激。提前致谢!