@lonerider - in my post above I mentioned that this driver would not work for me in Raspbian installed by PINN.
You should do a normal Raspbian install through Etcher or win32diskimager and try again.
Code: Select all
# This is a minimal sample config file, which can be copied to
# /etc/X11/xorg.conf in order to make the Xorg server pick up
# and load xf86-video-fbturbo driver installed in the system.
# When troubleshooting, check /var/log/Xorg.0.log for the debugging
# output and error messages.
#
# Run "man fbturbo" to get additional information about the extra
# configuration options for tuning the driver.
#Section "Device"
# Identifier "Allwinner A10/A13 FBDEV"
# Driver "fbturbo"
# Option "fbdev" "/dev/fb1"
# Option "SwapbuffersWait" "true"
#EndSection
Section "Device"
Identifier "fbturbo0"
Driver "fbturbo"
Option "fbdev" "/dev/fb0"
Option "SwapbuffersWait" "true"
Option "debug" "true"
EndSection
Section "Device"
Identifier "fbturbo1"
Driver "fbturbo"
Option "fbdev" "/dev/fb1"
Option "SwapbuffersWait" "true"
Option "debug" "true"
EndSection
Section "Device"
Identifier "fbdev0"
Driver "fbdev"
Option "fbdev" "/dev/fb0"
EndSection
Section "Device"
Identifier "fbdev1"
Driver "fbdev"
Option "fbdev" "/dev/fb1"
EndSection
Section "Monitor"
Identifier "Monitor0"
EndSection
Section "Monitor"
Identifier "Monitor1"
EndSection
Section "Screen"
Identifier "ScreenTurbo0"
Monitor "Monitor0"
Device "fbturbo0"
Subsection "Display"
EndSubSection
EndSection
Section "Screen"
Identifier "ScreenTurbo1"
Monitor "Monitor1"
Device "fbturbo1"
Subsection "Display"
EndSubSection
EndSection
Section "Screen"
Identifier "ScreenDev0"
Monitor "Monitor0"
Device "fbdev0"
Subsection "Display"
EndSubSection
EndSection
Section "Screen"
Identifier "ScreenDev1"
Monitor "Monitor1"
Device "fbdev1"
Subsection "Display"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "MultiheadTurbo"
Screen 1 "ScreenTurbo0"
Screen 0 "ScreenTurbo1" rightof "ScreenTurbo0"
EndSection
Section "ServerLayout"
Identifier "Singlehead0"
Screen 0 "ScreenTurbo0"
EndSection
Section "ServerLayout"
Identifier "Singlehead1"
Screen 0 "ScreenTurbo1"
EndSection
Section "ServerLayout"
Identifier "MultiheadSlow"
Screen 0 "ScreenDev0"
Screen 1 "ScreenDev1" rightof "ScreenDev0"
EndSection
Section "ServerLayout"
Identifier "SingleheadSlow0"
Screen 0 "ScreenDev0"
EndSection
Section "ServerLayout"
Identifier "SingleheadSlow1"
Screen 0 "ScreenDev1"
EndSection
Section "ServerFlags"
Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
Option "DefaultServerLayout" "Singlehead0"
EndSection
Just been trying something similar. Approximately I did something like this....Start a new login (ctrl-alt Fn), change the console (conf2b n 1) to appear on LCD. Go back to original console, startx using the Xorg.conf from pervious post. Appears on HDMI. fb1 stays with whatever I had running on it (top)- doesn't get blanked. You should be able to switch between consoles using the ctrl-alt Fn keypress. Quite funky.epg wrote: ↑Tue Jul 24, 2018 7:30 amHi Jamesh![]()
First of all, a BIG thank you for your efforts in the multiple Rpi framebuffer patch.
My setup:
Hardware: Rapberry pi 3 model B+ (latest Rpi), 7" official touchscreen, HDMI Samsung fullHD tv.
Software: latest Raspbian with framebuffer kernel & firmware.
I did some quick tests and I'm able to run Netsurf (a framebuffer browser) in /dev/fb1 while having an active console in /dev/fb0.
To achieve this goal, I had to recompile Netsurf from source (because the default framebuffer /dev/fb0 is hardcoded in the src) and launch nsfb from a console (I'm not starting X automatically) or via ssh.
Now the problems:
1) if I try to strart X from the fb0, then X runs fine in fb0 but destroy (blank screen) the Netsurf browser in fb1!! I suspect that X initialize fb0 and fb1, so fb1 goes blank;
2) booting directly with X (default Raspbian), if I try to launch on fb1 Netsurf via xterm nothing happens: again, X seems to tie fb0 and fb1..
Anyway, I've found the multiple framebuffer patch very useful: it permits to have a "control display" to show control information (i.e. via fb web browser) on a specific fb while another program runs on the other fb![]()
Epg.

https://github.com/raspberrypi/userland ... ypes.h#L60jamesh wrote: ↑Thu Jul 26, 2018 1:55 pmJust been trying something similar. Approximately I did something like this....Start a new login (ctrl-alt Fn), change the console (conf2b n 1) to appear on LCD. Go back to original console, startx using the Xorg.conf from pervious post. Appears on HDMI. fb1 stays with whatever I had running on it (top)- doesn't get blanked. You should be able to switch between consoles using the ctrl-alt Fn keypress. Quite funky.
Also been testing the different in the display settings in omxplayer. Table as follows, so there is clearly a slight difference between current software and the mutiFB stuff which people using dispmanx or devices that use display numbers directly may encounter. I'll see what I can do to fix that.
Display Num/Current/MultiFB
0 LCD LCD
1 LCD LCD
2 LCD HDMI <<< the difference
3 LCD LCD
4 LCD LCD
5 HDMI HDMI
6 HDMI HDMI
7 LCD LCD
Code: Select all
#define DISPMANX_ID_MAIN_LCD 0
#define DISPMANX_ID_AUX_LCD 1
#define DISPMANX_ID_HDMI 2
#define DISPMANX_ID_SDTV 3Correct - the current firmware munges the display number, depending on what is plugged in I believe. I think to ensure that everything works by default on the LCD rather than the HDMI. Not great for consistency when you move to multi framebuffers.6by9 wrote: ↑Thu Jul 26, 2018 2:25 pmhttps://github.com/raspberrypi/userland ... ypes.h#L60jamesh wrote: ↑Thu Jul 26, 2018 1:55 pmJust been trying something similar. Approximately I did something like this....Start a new login (ctrl-alt Fn), change the console (conf2b n 1) to appear on LCD. Go back to original console, startx using the Xorg.conf from pervious post. Appears on HDMI. fb1 stays with whatever I had running on it (top)- doesn't get blanked. You should be able to switch between consoles using the ctrl-alt Fn keypress. Quite funky.
Also been testing the different in the display settings in omxplayer. Table as follows, so there is clearly a slight difference between current software and the mutiFB stuff which people using dispmanx or devices that use display numbers directly may encounter. I'll see what I can do to fix that.
Display Num/Current/MultiFB
0 LCD LCD
1 LCD LCD
2 LCD HDMI <<< the difference
3 LCD LCD
4 LCD LCD
5 HDMI HDMI
6 HDMI HDMI
7 LCD LCDSo isn't using the HDMI correct for mode 2, and actually you're fixing a bug in the current firmware?Code: Select all
#define DISPMANX_ID_MAIN_LCD 0 #define DISPMANX_ID_AUX_LCD 1 #define DISPMANX_ID_HDMI 2 #define DISPMANX_ID_SDTV 3
Or am I on totally the wrong ste of defines?
Yes, but you will have to find the correct X configuration.AiRSpectruM wrote: ↑Fri Jul 27, 2018 7:22 pmEDIT: Is it possible to boot the desktop to both screens?
Is this when logged in remotely (using SSH) or maybe using virtual terminals as with 'screen' or tmux)?
That's not the issue.
GUI consoles are also pseudo tty...fbi also needs access to the linux console (i.e. /dev/ttyN) for sane console switch handling. That is obviously no problem for console logins, but any kind of a pseudo tty (xterm, ssh, screen, ...) will not work.
Sorry, no idea. But there must be a GUI application that can do that...
DirksS is correct, and I pressume you are running the desktop? This means FBI cannot task switch the screens corectly, so I think you can use the -vt option, which might need sudo as well.DirkS wrote: ↑Sat Jul 28, 2018 7:31 pmThat's not the issue.
from 'man fbi'GUI consoles are also pseudo tty...fbi also needs access to the linux console (i.e. /dev/ttyN) for sane console switch handling. That is obviously no problem for console logins, but any kind of a pseudo tty (xterm, ssh, screen, ...) will not work.
Switching to a terminal with <ctrl+alt+F1> may work, but I'm no sure
You can check the device with 'tty' command
Ah Ha. Got it.jamesh wrote: ↑Mon Jul 30, 2018 11:00 amThink I have figured out one problem with multi X screen - now get an X display on both devices (HDMI/DSI). Bug in my Linux framebuffer changes to support multiple bcm devices. Will post a new zImage in the near future.
However, although X does appear on the two devices, it's not particular useful - most stuff just happens on the main display, you cannot move windows from one to the other etc. Not sure what that is, so if anyone has any clues. My suspicion is the the devies are different resolutions and that may be causing confusion. Any X experts out there with ideas?
Code: Select all
# This is a minimal sample config file, which can be copied to
# /etc/X11/xorg.conf in order to make the Xorg server pick up
# and load xf86-video-fbturbo driver installed in the system.
# When troubleshooting, check /var/log/Xorg.0.log for the debugging
# output and error messages.
#
# Run "man fbturbo" to get additional information about the extra
# configuration options for tuning the driver.
#Section "Device"
# Identifier "Allwinner A10/A13 FBDEV"
# Driver "fbturbo"
# Option "fbdev" "/dev/fb1"
# Option "SwapbuffersWait" "true"
#EndSection
Section "Device"
Identifier "fbturbo0"
Driver "fbturbo"
Option "fbdev" "/dev/fb0"
Option "SwapbuffersWait" "true"
Option "debug" "true"
EndSection
Section "Device"
Identifier "fbturbo1"
Driver "fbturbo"
Option "fbdev" "/dev/fb1"
Option "SwapbuffersWait" "true"
Option "debug" "true"
EndSection
Section "Device"
Identifier "fbdev0"
Driver "fbdev"
Option "fbdev" "/dev/fb0"
EndSection
Section "Device"
Identifier "fbdev1"
Driver "fbdev"
Option "fbdev" "/dev/fb1"
EndSection
Section "Monitor"
Identifier "Monitor0"
Option "Primary" "False"
EndSection
Section "Monitor"
Identifier "Monitor1"
Option "RightOf" "Monitor0"
Option "Primary" "False"
EndSection
Section "Screen"
Identifier "ScreenTurbo0"
Monitor "Monitor0"
Device "fbturbo0"
Subsection "Display"
EndSubSection
EndSection
Section "Screen"
Identifier "ScreenTurbo1"
Monitor "Monitor1"
Device "fbturbo1"
Subsection "Display"
EndSubSection
EndSection
Section "Screen"
Identifier "ScreenDev0"
Monitor "Monitor0"
Device "fbdev0"
Subsection "Display"
EndSubSection
EndSection
Section "Screen"
Identifier "ScreenDev1"
Monitor "Monitor1"
Device "fbdev1"
Subsection "Display"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "Multihead"
Screen 0 "ScreenTurbo0"
Screen 1 "ScreenTurbo1" rightof "ScreenTurbo0"
Option "Xinerama" "true"
EndSection
Section "ServerLayout"
Identifier "Singlehead0"
Screen 0 "ScreenTurbo0"
EndSection
Section "ServerLayout"
Identifier "Singlehead1"
Screen 0 "ScreenTurbo1"
EndSection
Section "ServerFlags"
Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
Option "DefaultServerLayout" "Singlehead0"
EndSection
Hi Jamesh,jamesh wrote: ↑Mon Jul 30, 2018 1:58 pmOK, here is a link to a new kernel image, goes in boot folder as usual
https://drive.google.com/open?id=1f-f5c ... cOI4FbGgxL