guysoft / FullPageOS

A raspberrypi distro to display a full page browser on boot
GNU General Public License v3.0
3.91k stars 244 forks source link

Black screen with only cursor #40

Closed DPH closed 7 years ago

DPH commented 8 years ago

Great project.

I just can't make it start - using wired ethernet Pi, using everything as supplied (latest build) just get black screen with cursor on it. Can SSH in so network working.

Not sure what else to try - any help welcome. Cheers David

dhhdev commented 8 years ago

Did you build FullPageOS yourself, or did you use the provided image by the mirror? Also providing some more info about your Raspberry Pi might be helpful I reckon. (Version of Raspberry Pi etc.)

DPH commented 8 years ago

Thanks - used the mirror image2016-05-27..., and tried the nightly - which appears to be the same. Using Raspberry Pi Model B using wired LAN.

Regards David

dhhdev commented 8 years ago

That's weird. By using a wired connection, no setup should be needed. It should simply start the first time, expand the SD card, reboot - and then show you the welcome screen. (At least it did this for me, both on old Raspberry Pi 1 and 2.)

Did you change any files on the SD card before trying it out? (txt files, etc.)

tailorvj commented 8 years ago

As far as I know, 0.60 RC1 runs on Raspberry Pi 2 and above because it uses Jessie, which is designed for ARM 7 CPU

DPH commented 8 years ago

Not changed any files. As it is an ARM6 (pi 1 model B) does that mean Jessie won't run properly?

Would it work with the Pi 3 (Arm 8 processor?)

dhhdev commented 8 years ago

Well, I did build FullPageOS myself and could get it to run fine. (Build on a more or less clean install of the latest Raspian Jessie Lite.) I've Model B Revision 2.0. I'll test some more later today.

DPH commented 8 years ago

Thanks, is it my Pi is too old (in which case I will get a Pi3) or is it the mirror image doesn't work but a build does? Cheers David

tailorvj commented 8 years ago

The mirror image is certainly built for ARM7 and there is no chance it would run on ARM6 processors as far as I know. Building the current version for ARM6 could possibly work. I guess @guysoft could provide further instructions and insights on that

dhhdev commented 8 years ago

Yes and no. Depending on the hardware you build things, stuff might change. For example, think that if you build something for an Intel CPU, it would work in another way on an AMD. Stuff changes. I've just build a standard FullPageOS using my Raspberry Pi Model B Revision 2. (ARM6.)

If it works as intended, I wouldn't mind uploading it somewhere for you. (EDIT: Providing a Dropbox Link or similar for now.)

tailorvj commented 8 years ago

@dhhdev That sounds great. Please keep us updated

DPH commented 8 years ago

@dhhdev Would be great to share it if it works ok for you. Cheers David

mcfrojd commented 8 years ago

I have had the same problem today, my pi 3 at home works fine, but my pi 2 a work becomes black with cursor. Using the latest nightly. When i go to the 192.168.1.xxx/FullPageDashboard/ from another computer, the default tab wount work, if i add google.com to a tab, it works, but trying to add a "thedash" https link dont work. (google.com only works on the computer with 192.168.1.xxx/FullPageDashboard/ in the browser, not the screen with my pi.)

dhhdev commented 8 years ago

The chromium-browser seems to be at fault here, after debugging for a long time I came to that conclusion. Apparently newer versions of chromium-browser can't be build without SSE2 support, which ARM6 doesn't have.

Changing the browser to Midori got me a working FullPageOS on my Raspberry Pi Model B Revision 2.

guysoft commented 8 years ago

Thanks Daniel for digging that info!

dhhdev commented 8 years ago

@guysoft You're welcome. I'm actually going to make a Midori version (ARM6) myself in the upcoming days. And of course, sharing the code. Stay tuned.

DPH commented 8 years ago

@dhhdev thanks Daniel. How can I change the browser?

Cheers David

dhhdev commented 8 years ago

@DPH If you're not into Linux. This might be hard to explain. (I don't know how your level is.)

But to put it simply, I did three things:

1.) I uninstalled Chromium with the apt-get purge-command.

pi@fullpageos:~ $ sudo apt-get purge chromium-browser

2.) I installed the Midori browser.

pi@fullpageos:~ $ sudo apt-get purge midori

3.) I changed the ~/scripts/run_onepageos file.

pi@fullpageos:~ $ vim ~/scripts/run_onepageos
#!/bin/bash
xset s off         # don't activate screensaver
xset -dpms         # disable DPMS (Energy Star) features.
xset s noblank     # don't blank the video device

matchbox-window-manager &
x11vnc -many -rfbauth /home/pi/.vnc/passwd &
while true
do
    if [ $(curl -sL -w "%{http_code}\\n" "http://localhost/FullPageDashboard" -o /dev/null) == "200" ]; then
      (sleep 15 ; /home/pi/scripts/fullscreen) &
      xdotool mousemove 9000 9000
      midori -e Fullscreen -a $(head -n 1 /boot/fullpageos.txt)
    fi
    sleep 1
done

This is not cleaned up by far... there are many more things I could have done. But to test if it even would work, if it was just the browser. That's the steps I took.

I plan to make a Midori browser version of FullPageOS for people running ARM6. (I run ARM7 at work. But at home I use my old Raspberry Pi.) So why not give back to an awesome project. ๐Ÿ‘ I hope this helped, until I get an actual FullPageOS image out for ARM6.

guysoft commented 8 years ago

It might be worth writing this down as a variant. I can add a variable that would make chromium install optional. And then you can set it not to install it in your variant and install midori. Modified scripts could also be shipped in the variant.

dhhdev commented 8 years ago

@guysoft That was the plan. To simply make it a variant. I'll have a crack at it later today, right after I get some sleep. ๐Ÿ‘

mcfrojd commented 8 years ago

With this "midori" switch i was able to get my https://thedash adress to work if started from fullpageos.txt The fullpagedashboard seems to have a problem showing https:// links thou.

And it would be nice to be able to remove the "titlebar" from midori

dhhdev commented 8 years ago

@mcfrojd Regarding titlebars and stuff with Midori, it should hide. There's flags for this. Actually better than Chromium. Where you have to switch with a emulated key press in the code. (F11.)

midori -e Fullscreen -a https://my.awesome.webpage.com

mcfrojd commented 8 years ago

Well i run midori as your example midori -e Fullscreen -a $(head -n 1 /boot/fullpageos.txt) But i still get a small titlebar (or maybe its a small tabb bar?). https://www.dropbox.com/s/5m5y51rsmp3j5vl/Sk%C3%A4rmklipp%20Grantek%202016-06-16%2012.38.52.png?dl=0

mcfrojd commented 8 years ago

when i run "midori โ€“help-execute" in putty i only get a "Midori - Cannot open display:" message so i can't list all flags

guysoft commented 8 years ago

Run DISPLAY=:0 midori -help-execute

It would redirect midori to the X server if there is a graphical interface

dhhdev commented 8 years ago

@mcfrojd I might have changed some other files too, and just simply forgot it - since I was a bit busy with two images at the same time and some work related stuff. I apologize. But remember, this is only a temporary solution to get things working on Raspberry Pi's before version 2. (The ones running with ARM6 processors.)

Inside the ~/.scripts/fullscreen and ~/.scripts/refresh files, try and change this line:

`WID=$(xdotool search --onlyvisible --class chromium|head -1)``

To this:

WID=$(xdotool search --onlyvisible --class midori|head -1)

Or simply run this to change the files, with the pi user:

sed -i.bak s/chromium/midori/g ~/.scripts/fullscreen && sed -i.bak s/chromium/midori/g ~/.scripts/refresh

mcfrojd commented 8 years ago

@dhhdev I did the changes (the manual way.) But the small titlebar (or what it is, is still there).

Tried to comment out "matchbox-window-manager &" in the run_onepageos file (was not sure if i had added that one my self or not. Doing that removed the "titlebar" but the screen is no longer fullscreen then. https://www.dropbox.com/s/dx9r99v6rbixnp9/fullpageos_not%20fullscreen.png?dl=0

dhhdev commented 8 years ago

@mcfrojd That's odd. It should work. Actually even without the two files there. I'm working on a variant for older Raspberry Pi's. (ARM6, or just for people who want to save some resources in general.) At the moment. Which will be using the Midori browser. So I can clean it up. For now, there is one thing you can test.

In your VNC viewer, try and hit F11. If it works, I know what the culprit is.

Look in ~/scripts/fullscreen and ~/scripts/refresh again.

Remove this line: xdotool key F11

dhhdev commented 8 years ago

@mcfrojd About the https://thedash error. Since it's not a real domain, and I suspect an website on another server on your local network. You'll need to add the following line to the /etc/hostsfile:

x.x.x.x thedash

The IP part (x.x.x.x) should be changed, if it's running on another computer/server on your local network to the local IP address of that network.

You can find your local ip address by executing the ip addr | grep inet-command on the server that is running the webpage you are trying to display. For example, the output could be:

... inet 192.168.87.50/24 brd 192.168.87.255 scope global wlan0 ...

So my IP address would be: 192.168.87.50

^ This is my local network IP address of my Wireless Conection on my Raspberry Pi.

mcfrojd commented 8 years ago

@dhhdev It was the F11 that made the titlebar show.

About the "thedash" link its offcource a real link like @tailorvj :s link https://www.thedash.com/dashboard/BJ8GUOaN/fullscreen I just did not want to share the link to my workplace dashboard. The real "thedash" link works fine if i enter it in fullpageos.txt, but not if i add it to the fullpagedashboard (Going to the local ip/fullpagedashboard from another pc and adding it to a new tab) Maybe its the https (and not http) thats making the problem there?

dhhdev commented 8 years ago

@mcfrojd Argh, I see. I wasn't familiar with the thedash service. Well, there could be a few different reasons for why it won't show properly. And to my knowledge, FullPageDashboard is going under heavy development. To get something new and better, but don't quote me just yet.

I'll test some with the thedash service. To see if I can make some sort of solution, while I'm at the other stuff. At least something temporarily.

If you would make another issue for that. (thedash not working.) It would be easier to keep track of this issue alone. It might also affect other services/sites.

DPH commented 8 years ago

Thank you, works great.

sweenig commented 8 years ago

I've tried both this image (http://docstech.net/FullPageOS/2016-07-20_2016-05-27-fullpageos-jessie-lite-0.7.0.zip) and this image (http://docstech.net/FullPageOS/nightly/2016-05-27_2016-05-10-fullpageos-jessie-lite-0.6.0.zip) but i can't seem to get either to work with my Raspberry Pi Model B+. I assume it's because both these images are built for ARMv7 and the Raspberry Pi Model B+ runs ARMv6. Has anyone built an image? Or can some one write simpler instructions (for those of us who do not compile from source very often) so that it can work on ARMv6? Am I just using the wrong image?

guysoft commented 8 years ago

@sweenig Pi1 B+ is unsupported, please see the feature list, #12 and #43

guysoft commented 7 years ago

Closing if anyone doesn't have anything to add

guysoft commented 7 years ago

Fixed, it works now, its slow as hell and takes 5-10 minutes to boot. Might work as a digital picture frame.