PXE support for image loading in Mass Production

New Member Posts: 4
I need to burn dozens of up-boards with the same image. What options do I have to do that at scale?

I am using clonezilla, but I still have to image them one-by-one. I saw that clonezilla has the option to burn multiple images by using network boot, but from what I see the upboard doesn't have network boot.

What are my options?

Thanks!

Welcome!

It looks like you're new here. Sign in or register to get started.

Comments

  • Guest Posts: 561 admin
    Hi,

    UP board supports PXE booting.
  • New Member Posts: 4

    Is PXE supported in the BIOS it comes from the factory, or do we need to flash a new BIOS?

    Thanks!

  • New Member Posts: 4

    I don't see an obvious way to enable network boot from the BIOS menu. My upboard's BIOS version is 2.17.1249

  • New Member Posts: 350 ✭✭✭
    edited March 2018

    Hi, please update your BIOS to Ver. UPC1BM0X, and you will find that PXE function in BIOS menu. UP Board UEFI Bios UPC1BM0X_EFI
    like below

  • New Member Posts: 1

    Hello,

    I recently upgraded the BIOS to a version that supports PXE booting. I am unable to see any PXE boot related traffic from my PXE boot server when running tcpdump. I have other devices that PXE boot from this server and I see PXE boot traffic when i run a tcpdump from the PXE server. Am I doing something wrong with the upboard which is why I'm not seeing any traffic from my PXE server?

    When running this command while manually or automatically PXE booting via IPv4 I don't see any output

    pxeserver@pxe0:~$ sudo tcpdump -i em0 udp port 69
    tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
    listening on em0, link-type EN10MB (Ethernet), capture size 262144 bytes

    ^C
    0 packets captured
    0 packets received by filter
    0 packets dropped by kernel

    When running this command from my PXE server while PXE booting a "working" embedded device i see the expected traffic:

    pxe0:/var/lib/tftpboot$ sudo tcpdump -i em0 udp port 69
    tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
    listening on em0, link-type EN10MB (Ethernet), capture size 262144 bytes
    16:21:45.804539 IP 172.16.100.174.3335 > 172.16.5.5.tftp: 39 RRQ "enabled" octet timeout 5 blksize 1468
    16:21:45.859371 IP 172.16.100.174.3380 > 172.16.5.5.tftp: 65 RRQ "pxelinux.cfg/01-12-ae-4e-22-13-42" octet timeout 5 blksize 1468
    16:21:45.903477 IP 172.16.100.174.3431 > 172.16.5.5.tftp: 53 RRQ "pxelinux.cfg/AC1064AE" octet timeout 5 blksize 1468
    16:21:45.947479 IP 172.16.100.174.3475 > 172.16.5.5.tftp: 52 RRQ "pxelinux.cfg/AC1064A" octet timeout 5 blksize 1468
    16:21:45.991499 IP 172.16.100.174.3519 > 172.16.5.5.tftp: 51 RRQ "pxelinux.cfg/AC1064" octet timeout 5 blksize 1468
    16:21:46.035459 IP 172.16.100.174.3563 > 172.16.5.5.tftp: 50 RRQ "pxelinux.cfg/AC106" octet timeout 5 blksize 1468
    16:21:46.079498 IP 172.16.100.174.3607 > 172.16.5.5.tftp: 49 RRQ "pxelinux.cfg/AC10" octet timeout 5 blksize 1468
    16:21:46.123454 IP 172.16.100.174.3651 > 172.16.5.5.tftp: 48 RRQ "pxelinux.cfg/AC1" octet timeout 5 blksize 1468
    16:21:46.166548 IP 172.16.100.174.3694 > 172.16.5.5.tftp: 47 RRQ "pxelinux.cfg/AC" octet timeout 5 blksize 1468
    16:21:46.210624 IP 172.16.100.174.3737 > 172.16.5.5.tftp: 46 RRQ "pxelinux.cfg/A" octet timeout 5 blksize 1468
    16:21:46.254483 IP 172.16.100.174.3784 > 172.16.5.5.tftp: 62 RRQ "pxelinux.cfg/default-arm-sunxi" octet timeout 5 blksize 1468
    16:21:46.298655 IP 172.16.100.174.3827 > 172.16.5.5.tftp: 56 RRQ "pxelinux.cfg/default-arm" octet timeout 5 blksize 1468
    16:21:46.342536 IP 172.16.100.174.3870 > 172.16.5.5.tftp: 52 RRQ "pxelinux.cfg/default" octet timeout 5 blksize 1468
    16:21:46.420188 IP 172.16.100.174.3922 > 172.16.5.5.tftp: 70 RRQ "pcd3n/rootfs.cpio.uboot" octet timeout 5 blksize 1468
    16:21:52.437714 IP 172.16.100.174.3821 > 172.16.5.5.tftp: 49 RRQ "pcd3n/uImage" octet timeout 5 blksize 1468
    16:21:53.230638 IP 172.16.100.174.1544 > 172.16.5.5.tftp: 70 RRQ "pcd3n/device.dtb" octet timeout 5 blksize 1468

    The device download the files and boots successfully... I can not get the Upboard to do the same.

    Please see below Upboard BIOS settings:

    Advanced BIOS Settings:

    Network Stack: Enabled
    Ipv4 PXE Support: Enabled
    PXE boot wait time: 1
    Media Detect count: 1

    Boot BIOS Settings:

    Quiet Boot: Disabled
    OS IMAGE ID: Windows

    Boot Option Priorities:

    Boot Option 1: [ UEFI: IP4 Realtek P...]
    Boot Option 2: [Debian]

  • Administrator, Moderator Posts: 157 admin

    Btw, I am in nearly the same boat. Except it's for my home on a dedicated IoT VLAN. We have about 12 to 15 various UP and RPi projects and boards I want to convert to PXE.

    I'm working on the router now (Arch Linux + Xen on UP Squared with 5 or so VMs + small Kubernetes node). Next steps will be the VLANs and then the Router/DHCP/PXE daemons in docker.

    But that's still a ways off.. so I am unable to test out the UP board PXE just yet. But soon! (My current router is dying, daily, requiring reboots)

    My plan is to run a full remote kernel over PXE with tftp, set to read-only on all my UP devices - to save the eMMC writes and ship all metrics and logs off to my home server. Then eMMC will only be fore pure storage on each device. So it is a bit different than your idea, but still the same with PXE booting some type a kernel.

    I'll keep you up to date as I progress, sooner than later now.

    Eric Duncan - UP Evangelist - My thoughts are of my own free will

    Answered? Please remember to mark the posted answered to highlight it for future visitors!

Welcome!

It looks like you're new here. Sign in or register to get started.
Privacy Policy