Hi, we have a problem running the Linux Intel Compute Stick headless - which hangs on boot with no HDMI monitor connected.
We have tried:
GRUB_CMDLINE_LINUX_DEFAULT = "quiet"
then based on other comments tried
with no success.
Does anyone have any suggestions on how we start the compute stick "headless"?
Thanks for your help, Cheers Michael.
For use in embedded applications, on STCK1A8LFC the BIOS has been designed so that after passing the POST, the operating system loader is invoked even if the following devices are not present:
• Video Display.
In this particular case, I suggest editing your GRUB Menu Configuration File '/etc/default/grub'
Change 'GRUB_CMDLINE_LINUX_DEFAULT=' to 'GRUB_CMDLINE_LINUX_DEFAULT="quiet text"
Note: change any timeouts to zero.
Finally, run the command 'update-grub2' as Root (# ). If you want to start your default GUI, run 'service lightdm start' as Root(# ).
You may get additional relevant information here: http://askubuntu.com/questions/74551/lightdm-not-starting-on-boot startup - Lightdm not starting on boot - Ask Ubuntu *
Please let us know if this resolves the issue.
*Other names and brands may be claimed as the property of others.
My team is also hitting the same issue with no resolution in the past few days. We have attempted following instructions from the following posts without success:
Although we are successful in getting the Compute Stick to boot without the GUI by following those instruction (and also logging in automatically by adding "-f YOUR_USERNAME" to the /etc/init/tty1.conf line as such: exec /sbin/getty -f YOUR_USERNAME -8 38400 tty1), we have had no success in booting without an HDMI monitor connected.
As long as the monitor is connected, even if the monitor is powered down, the Compute Stick boots and automatically connects to wifi, and we are able to log in via ssh and accomplish the tasks we need to accomplish. However, without a monitor connected, it refuses to boot.
We have tried this running on installations from the following standard ubuntu images: 14.04.3LTS, 14.10, and 15.04. Right now we are running Ian Morrison's (linixium from above links) 14.04.3 "Official unofficial" ISO image with all packages updated and upgraded and attempting next with his 14.10 image. (Many thanks to him for the working wifi driver patch!)
Any help on getting the Compute Stick to boot without being connected to a monitor on any version of Ubuntu would be most welcome! Thanks.
EDIT: I just found this post and am not sure how I missed it earlier, /thread/77784?wapkw=compute stick headless https://communities.intel.com/thread/77784?wapkw=compute+stick+headless. I added "GRUB_RECORDFAIL_TIMEOUT=$GRUB_TIMEOUT" to my grub file as all other values/settings were already the same. This had no impact on the system behavior; it still boots fine as long as it is connected to a monitor (powered or unpowered), but it does not boot if no monitor is attached...
The search continues.
I've written a script to allow you to boot headless without anything connected to the HDMI. This works on my Windows ICS device running my Ubuntu 14.04.3 LTS ISO installed to eMMC. As an aside, my 14.04.3 LTS ISO is my latest version that supports wifi, bt and audio and which can be updated and upgraded with 'apt-get'. My 14.10 ISO is EOL and should not be used as it was an earlier development and is not supported.
To boot headless download my patch from https://drive.google.com/file/d/0B99O3A0dDe67TGZjQWtZTVRMNDA/view?usp=sharing linuxium-headless-patch.sh - Google Drive and make the script executable by entering 'sudo chmod 700 linuxium-headless-patch.sh' and then run the script by entering 'sudo ./linuxium-headless-patch.sh'.
Basically the script will take how you are currently booted and create a new GRUB configuration file to boot equivalently without graphics that then allows you to boot both with and without a monitor/display device connected to the HDMI port of the ICS.
With a monitor connected pressing Ctrl-Alt-F1 will provide a text-based login screen. Booting without a monitor obviously requires remote access to have been previously set up so as a minimum I suggest installing ssh (enter 'sudo apt-get -y ssh openssh-server' and access remotely with 'ssh '). If you accidentally lock yourself out modifying GRUB during subsequent editing/experimenting then use my ISO on a USB to regain control.
I am working with the previous poster, mcsauder, so his post summarizes where I am with the Compute Stick. First of all, thank you for all of your posts...they've gotten us a long way.
To put it quickly: as we are using the ICS for an embedded linux solution, we need the ICS to power up without ever connecting anything to the hdmi port. I re-installed the OS using your 14.04 ISO image, then ran the patch in your most recent post on this thread. The compute stick now reboots into a command line login screen when connected to a monitor. From here, I can successfully ssh into it from a separate machine. However, if I power up with the ICS disconnected from the hdmi, it never seems to reach a point where it connects to the network. I've tried this with wifi, and with it plugged in to ethernet via a USB dongle.
I then tried running a sudo update-grub2, thinking that the grub settings had changed, so maybe that was necessary...but then it just loads the GUI automatically, and attempting to re-run your sh script doesn't seem to do anything. I have to remove the /boot/grub/grub.cfg.orig to get the script to run again. Then it exibits the same behavior...booting into command line while a display is connected, and hanging when no display is connected.
To be clear, without any modifications to your linux ISO image, we are able to boot up while connected to HDMI, then disconnect the ICS from HDMI and continue to access it via ssh. However, for our application, it is necessary that we never connect it to a display.
Thanks....and thanks again for your contribution so far.
PS: if it helps...we have updated the BIOS on the ICS to the latest version.
No we were not. We applied the patch that linuxium posted, and saw similar behavior to before. We can boot the ICS while it is plugged into a monitor (even an unpowered monitor). The ICS shows up on the network, and we can SSH into it. Then we can remove it from the monitor and it continues to operate. However, if we power up without an HDMI connection, the blue light comes on, but it does not seem to complete the boot. The USB peripherals do not completely power up, and the ICS does not appear on the network. We cannot, then, SSH into it.
Though I have not tested it myself, we have been told that the desired behavior is possible with a Windows OS, which suggests it is not purely a hardware issue, and that there should be a software or OS solution. We have been unable to find it, though. Any suggestions on how to get the ICS to boot with no HDMI connection would be appreciated.
In this particular case you may tryhttp://packages.ubuntu.com/trusty/utils/dconf-editor dconf editor and Install the https://launchpad.net/ubuntu/trusty/+package/dconf-tools dconf-tools using the Intel® Compute Stick attached to a monitor and then code:
gsettings set org.gnome.Vino remote-access enabled true
This should allow your Intel® Compute stick to "think" it is attached to a monitor.
Then all you need to do is turn off the device and try booting again witn no monitor/TV attached.
Please try this and let me know if issue persists.
Thanks for the suggestion. Unfortunately, I gave this a try, and it doesn't seem to have changed anything. I've opened the /var/log/syslog, and it doesn't even save an entry for the no-monitor boot attempt. I take this to mean that the OS is never getting control...perhaps there is some hardware limitation prohibiting this use case?
How have you configured your network connection? Given you are booting in 'text' mode make sure your network is configured in '/etc/network/interfaces' or look at configuring 'network-manager' to start automatically.
Thanks for all the help!
We have tried multiple approaches to getting the network connection running. We have configured /etc/network/interfaces manually by entering our ssid and key. We had mixed results with this approach, so we reinstalled the OS from scratch, and tried the next method. The method that seems to have worked the best is to boot up with a monitor, and choose the network using the GUI. We went into the network-manager and checked the settings settings to ensure that the network was set to connect automatically. Now, when we boot up with a monitor attached (even powered off), it connects to the network automatically. However, it needs to have the display connected.
Our newest development is that we got on Amazon and grabbed one of these http://www.amazon.com/CompuLab-fit-Headless-Display-Emulator/dp/B00FLZXGJ6 http://www.amazon.com/CompuLab-fit-Headless-Display-Emulator/dp/B00FLZXGJ6
This HDMI dummy plug tricks the device into thinking there is a monitor attached. This allows us to boot up the ICS successfully. We'd like to avoid this if possible, but this is a workable solution for the short term.
I am unsure what you mean by 'mixed results' when configuring '/etc/network/interfaces' manually? Quite simply you need to get your network working without running the desktop. The simplest way is to configure it using '/etc/network/interfaces'. Start by booting Ubuntu normally with a desktop and delete all the networking configurations you have made under network-manager with the GUI and get networking using '/etc/network/interfaces' working. Then when networking works automatically, run my script 'linuxium-headless-patch.sh' to boot in 'text' mode and you'll see that you can just power-on the ICS without anything else attached to it and you'll be able to access it remotely using 'ssh' etc.
We are currently investigating this particular situation and will keep this community thread updated.
The current solution you posted http://www.amazon.com/CompuLab-fit-Headless-Display-Emulator/dp/B00FLZXGJ6 Amazon.com: CompuLab Display Emulator (fit-Headless): Computers & Accessories works, however, we are working on a solution for this issue.
Please confirm if you were able to follow linuxium recommendations.
Hi Linuxium and Cesar,
Thanks again for all of your advice on what to try next, we really appreciate it as we would very much like to get the ICS to boot headless.
By "mixed results", Matt and I have both experienced that from a fresh installation of your ISO image, and connecting to the auto-discovered wireless network during installation and running your patch script, frequently when the systems is rebooted (with a monitor connected) often the GUI will start again automatically on it's own if the system is shutdown and restarted. Although it will sometimes (not always) show as connected to the network and indeed appears from the router side that it is and with an assigned IP address from the router, it will often not have an assigned IP address present when from the terminal we run ifconfig.
When it does get an IP address, we can see it on the network and ssh into it all from remote without any user interaction on the ICS directly. (This is always with a monitor connected, because it never shows on the network when a monitor is not connected.)
We have seen lack of IP address assignment the most frequently when we use the native onboard wifi, and we also observe frequent lost connectivity after 5-10 minutes as well even though signal strength is good. Lately we have been using an Edimax wifi dongle (which also utilizes a Realtek wifi chip) with better results, and have also used a usb to ethernet adapter which typically gives us the most reliable network connection results.
When booted without a monitor attached, however, the ICS never causes the edimax wifi dongle LED status indicator lights to illuminate nor does the usb to ethernet activity indicator LED. This seems to indicate to us that the ICS never attempts to bring these devices to life, (perhaps as though their drivers are never initiated by the OS and they are never recognized as hardware devices). Additionally, the /var/log/syslog is always populated with entries from each boot attempt when a monitor is attached, (even when the monitor is not powered or even plugged into power), but an any attempt to boot without an HDMI device attached the logs show nothing. In fact, no files in the /var/log/ directory seem to be written to or altered on boot attempts when no HDMI device is attached.
Back to your comments, by default, the /etc/network/interfaces file contains three lines:
# The loopback network interface
iface lo inet loopback
We have had the best results and the fewest number of failed automatic connections at boot if we comment out "auto lo", but I don't have any explanation as to why this seems to help. We have also tried adding wlan details and boot attempts with a monitor remain mostly successful, however, again, nothing happens when a monitor is not present:
iface wlan0 inet dhcp
Occasionally, leaving this last block of text in the /etc/network/interfaces file has resulted in some kind of lockup that seems to attempt to stick in a reconnect loop that only rarely succeeds, so this seems like a dead end. We have also blindly attempted removing network manager and reinstalling via apt-get, which has typically resulted in a system that fails to recognize any network connections and requires another reinstall of the OS to remedy.
From the activity lights on the usb devices, I really don't think that network connectivity is the reason it seems to be failing. We see an occasional error message on boot up when an HDMI monitor is attached and powered up that states "ERROR: Failed to detect HDMI monitor" (which, being printed to the HDMI monitor is humorous, ), and from the timing of the USB devices LED indicators, it seems like the boot hang is occurring prior to when this message prints when a monitor is attached. (Mind you, that single variable also pollutes the experiment, because it always boots and usually connects to the network automatically anytime there is a monitor attached.)
All of this is to say that at present, the best success we seem to have with the system is with a Stock installation of Ubuntu 15.04 using the Edimax Wifi dongle and running with the network connection settings that are established during installation of the OS then not messing with anything after that point.
We are forced to always boot with either a monitor or the dummy HDMI plug linked in Matt's earlier email as we have had no single instance of successful boot without the HDMI device that leaves a trace in any of the system logs we have looked at and therefore no breadcrumbs of what might be failing.
Hopefully this helps fill out the picture a bit more, right now I am reinstalling your 14.04.3 image for about the 6th time just to try once more and hammer down as many variables as I can from a fresh start. The likely outcome of this will be another reinstall of 15.04 later tonight to get us right back to the work-around we have been getting by on this week.
Any new advice you could offer is most welcome! Thank you once more for all of your help!
Hi Linuxium and Cesar,
I have reconfirmed once more; a fresh install of your 14.04.3 image, Ian, (allowing updates to be downloaded along with the OS over the native wifi), allows it to boot successfully and connect to the network automatically without any user interaction as long as a monitor is attached at bootup. (The monitor can be disconnected at any point after boot completes and the system remains connected to the network just fine.)
Repeating the exercise ten times without a monitor attached reveals nothing attempting to connect the network via the wireless router logs at any point. The ISO image and patch script function flawlessly as long as a monitor is attached, but the system fails to complete booting at a 100% rate if no HDMI monitor is attached.
I will probably go back to 15.04 now as we have had the best success with it to date.
Any advice is most welcome! Thanks again for all of your help.
The times I've seen the "ERROR: Failed to detect HDMI monitor", that message appears to be output by the OS. However, I have no idea if it is even getting that far without an HDMI monitor attached. Is it possible to get into contact with anyone who worked on the BIOS (American Megatrends?) for the ICS to determine if the BIOS is preventing the OS from being loaded if no monitor is present?
Since you have chosen not to believe me there seems little point in trying to provide further guidance or assistance. However you should be made aware that regenerating the GRUB configuration file, either manually or as part of a system operation, will result in the need to re-run my 'headless' script otherwise the desktop will automatically start on reboot. Additionally your configuration attempts in '/etc/network/interfaces' look woefully inadequate and are the root cause of your failure to achieve your desired goal.
I appreciate your response even if it was meant to sting. I've never minded admitting I'm the dumb one in the room, because accepting that you don't understand something is usually the only way to learn... you know, a 'full cup' kind of thing.
Because you have answered the question, I'm sure the original individual posting the thread will respond shortly with "Solved". Until that point, all of the people like me who have been posting questions about headless booting since July must all be in the know and I am the only one still struggling. No need to post further since you have already answered it, even if your answer and all of your previous posts don't seem to quite work on my ICS.
Thanks again for all of the work you have put into getting Ubuntu on the Compute Stick, it is a great little computer and you've done great things to help all of us use it. I hope you have a great weekend!
(P.S. We just met an individual who got a pre-release version of the ASUS VivoStick who stated that not only does it boot headless with Ubuntu without any monkeying around, the two USB ports are also very handy. He also has had no luck in getting the ICS to boot headless with Ubuntu like myself, and has had great frustration in trying to get it to do so, but he had glowing reviews of the VivoStick. Although it is just slightly bigger, I can hardly wait for it to be released. For those of you out there in the world like me who are still having troubles, perhaps simply throwing another $130 at the problem in the form of an ASUS VivoStick solution might make the problem go away. Cheers! )
Please disregard my question about contacting the BIOS engineers to ensure that the BIOS isn't disallowing the OS to proceed. I purchased another Windows compute stick, booted it then installed updates, and upon the first reboot there is absolutely no issue whatsoever booting without being connected to an HDMI device automatically connecting to the network and remotely logging in.
I have tried 3 BIOS versions on the Ubuntu compute stick, 18, 28, and 30 without any differnce. Additionally, if the Windows ICS is booted without a monitor, then a monitor is attached, it discovers the monitor just as a user would expect and the display initiates properly, unlike the Ubuntu installations of 14.04, 14.10, and 15.04. So, the issue seems to be OS related, and I have still not been able to resolve it.
Thanks once more for your help in understanding the issue. Please let me know if you (or anyone else) is successful by any means in booting an Ubuntu ICS without any HDMI device attached during the boot process, (other than Ian Morrison who seems to be the only one with the secret sauce so far).