Microsoft Surface Pro 4
-
@fry_p Thanks heaps for testing the binaries so far! What does USB error mean? PXE boots fine or not?
From your tests it looks like the code change on EFI timer (git 757ab9) broke things. Is anyone else able to verify this (and test the SVN binaries too) before I get in contact with the iPXE devs? @Avaryan @Scott-Adams? You just need to test
04_ipxe.efi
and05_ipxe.efi
! Plus testing the binaries in thesvn
subfolder would be highly appreciated as well. Find it all here. -
I love how I started this topic and have made 0 contributions, lol.
Apparently the Surface 4 is in “high demand”; which is why it’s taking so long to come in. Eventually I’ll get my hands on one.
-
@Sebastian-Roth I should have just put “OK” instead. With just the Surface Pro Ethernet adapter, I always get a USB error past the pxe boot, when it is preparing to image. I can use a powered USB hub to get it to work in those situations. You can change those to avoid confusion, but they pxe booted fine up until the commit you specified. If I can get my hands on another in the near future, I’ll get those svn versions as well.
@Avaryan , you can see that my Surfaces keep getting deployed to users before I can finish testing! They are certainly in high demand around where I work. You are right about that
-
Was informed that the Surface devices came in today. May have one next week.
-
Right after verifying the tests on 04/05_ipxe (see below) you can also try the debug enabled iPXE binary (
DEBUG=efi_timer
) to see where it hangs/loops. Find00_efi_timer_ipxe.efi
in the same google drive folder as mentioned below. -
Finally got a Surface Pro 4 to work with.
I’m not even sure where to start with this thing, lol. The USB NIC is from Dell.
I’ve disabled Secure Boot and Trusted Platform Module and left PXE Network as the only boot option. Doesn’t seem to do anything.
Where do I go from here?
-
@avaryan From what I understand, it will only pxe boot from a microsoft dongle.
From the Website
https://docs.microsoft.com/en-us/surface/ethernet-adapters-and-surface-device-deployment“Third-party Ethernet adapters are also supported for network deployment, although they do not support PXE boot. To use a third-party Ethernet adapter, you must load the drivers into the deployment boot image and you must launch that boot image from a separate storage device, such as a USB stick”
-
Does FOG support UEFI?
-
@avaryan yes, fog supports uefi. You need to tell your dhcp server to send the name ipxe.efi to the target computer instead of undionly.kpxe.
-
@george1421 Do you think this would enable FOG to work with the Surface? And through the 3rd party dongle?
-
@george1421 @Avaryan If I am not mistaken, you should try the ipxe7156.efi until we have this figured out right? Newer ones don’t work with the surface.
EDIT: If you have a mixed environment, I’d recommend looking at this page UEFI and BIOS Co-Existence in FOG
-
@fry_p Wouldn’t the 3rd party dongle still effect this?
-
@avaryan I have never tried anything but the Microsoft Dongle. It may certainly be worth a try.
-
@fry_p said in Microsoft Surface Pro 4:
you should try the ipxe7156.efi until we have this figured out right
You are 100% correct that specific ipxe kernel version works with the surface pros. I forgot all about that.
-
@avaryan said in Microsoft Surface Pro 4:
Wouldn’t the 3rd party dongle still effect this?
The problem with 3rd party dognles is that they HAVE to be supported by the uefi roms on the target computer. While this next statement is not 100% correct, it pretty close. The uefi firmware is a bit more like a linux OS than bios interface. It is written in mostly C and requires kernel level drivers to interface with hardware. The hardware you want to plug in must be supported by the uefi firmware or be extended by onboard uefi firmware on the attached device.
-
I’ve renamed and replaced the ipxe.efi file with the 7156 file. Didn’t allow me to PXE boot.
I’ve had the option on the DHCP server changed from undionly.kpxe to ipxe.eft.No luck yet.
edit: Saw this for the USB NIC that I was given to use:
http://support.displaylink.com/knowledgebase/articles/913197-using-displaylink-ethernet-for-network-pxe-bootedit2: Netbooted another laptop while UEFI settings still in place. Got some message about NBP being too big. Never saw that before.
Apparently this is because the device was configured to legacy boot. Can’t seem to switch it back to UEFI.edit3: Switched non-Surface laptop back to UEFI. Was able to boot to FOG menu. This at least should confirm that UEFI is setup correctly in my test environment.
-
Anyone have a supported Microsoft dongle they want to lend me?
-
@avaryan yes with the microsoft usb nic that was available with the surce 3 pro:
But their dock is also working:
But i won’t work with the Surface Book with FOG for me, i actually have one Probook around and cannot get it work:
https://forums.fogproject.org/topic/10375/surface-book-won-t-boot-the-kernelRegards X23
-
Wow, this got a lot of attention after being totally silent for a week.
I think I need to mention that this is actually not about surface devices I reckon. In the last days I kept thinking about this issue and found that the problem is actually the USB NICs, not the device itself. While the host might still be part of the equation I am pretty sure that what we see (PXE boot issue on surface - and other devices - that is solved using ipxe7156.efi) is primarily caused by the USB NIC adapter - possibly in combination with the surface UEFI firmware. As far as I have seen this is always an issue with Realtek RTL8153 USB NICs.
@Avaryan Most people are able to PXE boot their surface devices using the
ipxe7156.efi
binary and we are in the process of figuring out why this particular build is working but not the current ones.So again I am reaching out to all the people. @sarge_212 , @jhuesser, @Psycholiquid, @fry_p, @Scott-Adams, @xerxes2985, @dylan123, @ecicerkofski, @Arsenal101. If you have such a Realtek RTL8153 based USB NIC could you please try PXE booting (possibly in combination with a surface device but the issue might even occur with any other UEFI PC/laptop!) using the different binaries I provide here. You just need to test 04_ipxe.efi and 05_ipxe.efi! Plus testing the binaries in the svn subfolder would be highly appreciated as well. Post your results here. Might as well try
00_efi_timer_ipxe.efi
which is a debug enabled binary. I’d really love to see the output when booting this too. Come on people please help us finding what’s causing this and get it fixed eventually. -
@sebastian-roth I’d love to do more tests, but unfortunately I don’t have an available surface. My apologies. If I get one I’ll let you know.