Skip to content

Instantly share code, notes, and snippets.

@johnko
Last active February 16, 2018 12:04
Show Gist options
  • Save johnko/5dcda2a24c51ae4729b1 to your computer and use it in GitHub Desktop.
Save johnko/5dcda2a24c51ae4729b1 to your computer and use it in GitHub Desktop.

Revisions

  1. johnko revised this gist Nov 28, 2015. 1 changed file with 9 additions and 3 deletions.
    12 changes: 9 additions & 3 deletions impressions.md
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,3 @@
    For $169.99, it's a pretty good device that runs a basic version of Windows 8.1.

    Unfortunately:

    - the internal disk was unaccessible to FreeBSD
    @@ -13,4 +11,12 @@ My use case for this device is digital signage or an SSH client dumb terminal, s

    Linuxium got Ubuntu 14.04.2 working, I've consolidated Ian Morrison's scripts here:

    https://github.com/johnko/ubuntu-14.04.2-desktop-amd64-intel-compute-stick
    https://github.com/johnko/ubuntu-14.04.2-desktop-amd64-intel-compute-stick

    ## Pro

    For $169.99, it's a pretty good device that runs a basic version of Windows 8.1.

    ## Con

    Can't use WiFi and Bluetooth at the same time or the WiFi will slow to a crawl. (Found out while using Ubuntu)
  2. johnko revised this gist Nov 28, 2015. 1 changed file with 7 additions and 1 deletion.
    8 changes: 7 additions & 1 deletion impressions.md
    Original file line number Diff line number Diff line change
    @@ -7,4 +7,10 @@ Unfortunately:

    Figuring these out is at this time is beyond my knowledge. (Could be missing drivers, protected storage, etc.)

    My use case for this device is digital signage or an SSH client dumb terminal, so we'll see what other OS I can load or if I have to stick with "Windows 8.1 with Bing"
    My use case for this device is digital signage or an SSH client dumb terminal, so we'll see what other OS I can load or if I have to stick with "Windows 8.1 with Bing"

    ## Update

    Linuxium got Ubuntu 14.04.2 working, I've consolidated Ian Morrison's scripts here:

    https://github.com/johnko/ubuntu-14.04.2-desktop-amd64-intel-compute-stick
  3. johnko revised this gist Nov 27, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion _notes.md
    Original file line number Diff line number Diff line change
    @@ -69,7 +69,7 @@ Set the varsize varialbe in `rc.conf` with:

    `sysrc varsize=300m`

    My USB wifi adapter used the realtek drivers which I had to read and accept by setting a variabl in `/boot/loader.conf`
    My USB wifi adapter used the realtek drivers which I had to read and accept by setting a variable in `/boot/loader.conf`

    Now `reboot`

  4. johnko revised this gist Nov 27, 2015. 1 changed file with 10 additions and 0 deletions.
    10 changes: 10 additions & 0 deletions impressions.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,10 @@
    For $169.99, it's a pretty good device that runs a basic version of Windows 8.1.

    Unfortunately:

    - the internal disk was unaccessible to FreeBSD
    - the internal wifi adapter wasn't detected by FreeBSD

    Figuring these out is at this time is beyond my knowledge. (Could be missing drivers, protected storage, etc.)

    My use case for this device is digital signage or an SSH client dumb terminal, so we'll see what other OS I can load or if I have to stick with "Windows 8.1 with Bing"
  5. johnko renamed this gist Nov 27, 2015. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  6. johnko revised this gist Nov 27, 2015. 1 changed file with 133 additions and 0 deletions.
    133 changes: 133 additions & 0 deletions dmesg.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,133 @@
    root@:~ # dmesg
    Copyright (c) 1992-2015 The FreeBSD Project.
    Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
    The Regents of the University of California. All rights reserved.
    FreeBSD is a registered trademark of The FreeBSD Foundation.
    FreeBSD 11.0-CURRENT #0 r291085: Thu Nov 19 21:48:13 UTC 2015
    [email protected]:/usr/obj/usr/src/sys/GENERIC amd64
    FreeBSD clang version 3.7.0 (tags/RELEASE_370/final 246257) 20150906
    WARNING: WITNESS option enabled, expect reduced performance.
    VT(efifb): resolution 1440x900
    CPU: Intel(R) Atom(TM) CPU Z3735F @ 1.33GHz (1333.37-MHz K8-class CPU)
    Origin="GenuineIntel" Id=0x30678 Family=0x6 Model=0x37 Stepping=8
    Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
    Features2=0x43d8e3bf<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,MOVBE,POPCNT,TSCDLT,AESNI,RDRAND>
    AMD Features=0x28100800<SYSCALL,NX,RDTSCP,LM>
    AMD Features2=0x101<LAHF,Prefetch>
    Structured Extended Features=0x2282<TSCADJ,SMEP,ERMS,NFPUSG>
    VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID
    TSC: P-state invariant, performance statistics
    real memory = 2147483648 (2048 MB)
    avail memory = 1945772032 (1855 MB)
    Event timer "LAPIC" quality 600
    ACPI APIC Table: <INTEL FCBYT10H>
    FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
    FreeBSD/SMP: 1 package(s) x 4 core(s)
    cpu0 (BSP): APIC ID: 0
    cpu1 (AP): APIC ID: 2
    cpu2 (AP): APIC ID: 4
    cpu3 (AP): APIC ID: 6
    random: unblocking device.
    ioapic0: Changing APIC ID to 8
    ioapic0 <Version 2.0> irqs 0-86 on motherboard
    random: entropy device external interface
    kbd0 at kbdmux0
    netmap: loaded module
    module_register_init: MOD_LOAD (vesa, 0xffffffff80edb540, 0) error 19
    random: registering fast source Intel Secure Key RNG
    random: fast provider: "Intel Secure Key RNG"
    cryptosoft0: <software crypto> on motherboard
    acpi0: <INTEL FCBYT10H> on motherboard
    acpi0: Power Button (fixed)
    unknown: I/O range not supported
    cpu0: <ACPI CPU> on acpi0
    cpu1: <ACPI CPU> on acpi0
    cpu2: <ACPI CPU> on acpi0
    cpu3: <ACPI CPU> on acpi0
    atrtc0: <AT realtime clock> port 0x70-0x77 on acpi0
    atrtc0: Warning: Couldn't map I/O.
    Event timer "RTC" frequency 32768 Hz quality 0
    hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff irq 8 on acpi0
    Timecounter "HPET" frequency 14318180 Hz quality 950
    Event timer "HPET" frequency 14318180 Hz quality 450
    Event timer "HPET1" frequency 14318180 Hz quality 440
    Event timer "HPET2" frequency 14318180 Hz quality 440
    attimer0: <AT timer> port 0x40-0x43,0x50-0x53 irq 0 on acpi0
    Timecounter "i8254" frequency 1193182 Hz quality 0
    Event timer "i8254" frequency 1193182 Hz quality 100
    Timecounter "ACPI-safe" frequency 3579545 Hz quality 850
    acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0
    pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
    pcib0: Length mismatch for 3 range: 108fffff vs 10900000
    pci0: <ACPI PCI bus> on pcib0
    vgapci0: <VGA-compatible display> port 0x1000-0x1007 mem 0x90000000-0x903fffff,0x80000000-0x8fffffff at device 2.0 on pci0
    vgapci0: Boot video device
    pci0: <encrypt/decrypt> at device 26.0 (no driver attached)
    ehci0: <Intel BayTrail USB 2.0 controller> mem 0x90811000-0x908113ff at device 29.0 on pci0
    usbus0: EHCI version 1.0
    usbus0 on ehci0
    isab0: <PCI-ISA bridge> at device 31.0 on pci0
    isa0: <ISA bus> on isab0
    acpi_tz0: <Thermal Zone> on acpi0
    ppc0: cannot reserve I/O port range
    uart0: <16550 or compatible> at port 0x3f8 irq 4 flags 0x10 on isa0
    est0: <Enhanced SpeedStep Frequency Control> on cpu0
    est1: <Enhanced SpeedStep Frequency Control> on cpu1
    est2: <Enhanced SpeedStep Frequency Control> on cpu2
    est3: <Enhanced SpeedStep Frequency Control> on cpu3
    usbus0: 480Mbps High Speed USB v2.0
    Timecounters tick every 1.000 msec
    IPsec: Initialized Security Association Processing.
    SMP: AP CPU #2 Launched!
    SMP: AP CPU #1 Launched!
    SMP: AP CPU #3 Launched!
    Timecounter "TSC" frequency 1333366608 Hz quality 1000
    WARNING: WITNESS option enabled, expect reduced performance.
    Trying to mount root from ufs:/dev/ufs/FreeBSD_Install [ro,noatime]...
    Root mount waiting for: usbus0
    ugen0.1: <Intel> at usbus0
    uhub0: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0
    Root mount waiting for: usbus0
    Root mount waiting for: usbus0
    Root mount waiting for: usbus0
    uhub0: 8 ports with 8 removable, self powered
    Root mount waiting for: usbus0
    ugen0.2: <vendor 0x8087> at usbus0
    uhub1: <vendor 0x8087 product 0x07e6, class 9/0, rev 2.00/0.15, addr 2> on usbus0
    uhub1: 4 ports with 4 removable, self powered
    Root mount waiting for: usbus0
    ugen0.3: <vendor 0x2109> at usbus0
    uhub2: <vendor 0x2109 USB2.0 Hub, class 9/0, rev 2.00/85.80, addr 3> on usbus0
    uhub2: 4 ports with 4 removable, self powered
    Root mount waiting for: usbus0
    Root mount waiting for: usbus0
    ugen0.4: <SanDisk> at usbus0
    umass0: <SanDisk Extreme, class 0/0, rev 2.10/0.10, addr 4> on usbus0
    umass0: SCSI over Bulk-Only; quirks = 0x0100
    umass0:0:0: Attached to scbus0
    da0 at umass-sim0 bus 0 scbus0 target 0 lun 0
    da0: <SanDisk Extreme 0001> Fixed Direct Access SPC-4 SCSI device
    da0: Serial Number AA010513132339535615
    da0: 40.000MB/s transfers
    da0: 30533MB (62533296 512 byte sectors)
    da0: quirks=0x2<NO_6_BYTE>
    GEOM: da0: the secondary GPT header is not in the last LBA.
    GEOM: diskid/DISK-AA010513132339535615: the secondary GPT header is not in the last LBA.
    ugen0.5: <Apple, Inc.> at usbus0
    uhub3: <Apple, Inc. Keyboard Hub, class 9/0, rev 2.00/96.15, addr 5> on usbus0
    Root mount waiting for: usbus0
    uhub3: 3 ports with 2 removable, bus powered
    ugen0.6: <Apple, Inc> at usbus0
    ukbd0: <Apple, Inc Apple Keyboard, class 0/0, rev 2.00/0.69, addr 6> on usbus0
    kbd1 at ukbd0
    Root mount waiting for: usbus0
    ugen0.7: <vendor 0x0b05> at usbus0
    mountroot: waiting for device /dev/ufs/FreeBSD_Install...
    GEOM: diskid/DISK-AA010513132339535615: the secondary GPT header is not in the last LBA.
    GEOM: diskid/DISK-AA010513132339535615: the secondary GPT header is not in the last LBA.
    uhid0: <Apple, Inc Apple Keyboard, class 0/0, rev 2.00/0.69, addr 6> on usbus0
    rsu0: <vendor 0x0b05 product 0x1786, class 0/0, rev 2.00/2.00, addr 7> on usbus0
    rsu0: MAC/BB RTL8712 cut 3 1T1R
    rsu0: rsu_attach: enabling 11n
    wlan0: Ethernet address: c8:60:00:5d:f8:00
    wlan0: link state changed to UP
  7. johnko revised this gist Nov 27, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion notes.md
    Original file line number Diff line number Diff line change
    @@ -106,7 +106,7 @@ Get an IP address from your router:

    ## We're going to temporarily link `/usr/local` to `/var/usrlocal` since we're only playing around

    __*DO NOT DO THIS ON A PRODUCTION SYSTEM*__
    % __DO NOT DO THIS ON A PRODUCTION SYSTEM__ %

    ```
    mount -o rw /
  8. johnko revised this gist Nov 27, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion notes.md
    Original file line number Diff line number Diff line change
    @@ -106,7 +106,7 @@ Get an IP address from your router:

    ## We're going to temporarily link `/usr/local` to `/var/usrlocal` since we're only playing around

    __DO NOT DO THIS ON A REAL SYSTEM__
    __*DO NOT DO THIS ON A PRODUCTION SYSTEM*__

    ```
    mount -o rw /
  9. johnko revised this gist Nov 27, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion notes.md
    Original file line number Diff line number Diff line change
    @@ -49,7 +49,7 @@ Login with `root` and no password.

    Check what network adapters you have with `ifconfig`.

    You'll notice there is only `lo0` and which ever USB nic/wifi adapter you plugged in.
    You'll notice there is only `lo0`.

    Check what disk you have with `gpart show`.

  10. johnko revised this gist Nov 27, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion notes.md
    Original file line number Diff line number Diff line change
    @@ -9,7 +9,7 @@ The product code I got is BOXSTCK1A32WFC.
    You'll also need:

    - a USB hub
    - a USB thumbdrive with FreeBSD 11.0-CURRENT (10.2-RELEASE UEFI memstick panics)
    - a USB thumbdrive with FreeBSD 11.0-CURRENT (10.2-RELEASE UEFI memstick crashes)
    - a USB keyboard & mouse
    - a USB nic/wifi adapter

  11. johnko revised this gist Nov 27, 2015. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions notes.md
    Original file line number Diff line number Diff line change
    @@ -39,10 +39,10 @@ __Save Changes and Exit__.

    ## Boot from USB thumbdrive (pressing F10).

    Select your USB thumbdrive

    ![image of Mr Bean tapping piano key](http://i.imgur.com/uzjIGfi.gif)

    Select your USB thumbdrive

    ## Select LiveCD

    Login with `root` and no password.
  12. johnko revised this gist Nov 27, 2015. 1 changed file with 134 additions and 1 deletion.
    135 changes: 134 additions & 1 deletion notes.md
    Original file line number Diff line number Diff line change
    @@ -1 +1,134 @@
    # Experiments with FreeBSD on Intel Compute Stick
    # Experiments with FreeBSD on Intel Compute Stick

    ## Ingredients

    Acquire an Intel Compute Stick with Atom CPU and 2GB of RAM, 32GB of storage.

    The product code I got is BOXSTCK1A32WFC.

    You'll also need:

    - a USB hub
    - a USB thumbdrive with FreeBSD 11.0-CURRENT (10.2-RELEASE UEFI memstick panics)
    - a USB keyboard & mouse
    - a USB nic/wifi adapter

    We won't be installing FreeBSD because the internal disk can't be detected but we can run the LiveCD image from the thumbdrive.

    Also the internal wifi adapater is not detected which is why I suggest a USB nic/wifi adapter.

    ## Test Device

    Boot into default OS and make sure everything works. In my case it was "Windows 8.1 with Bing".

    I sped through the default OS OOBE and just made sure everything worked fine to rule out faulty hardware.

    ## Create Medusa (Connect USB Peripherals)

    Since the Intel Compute Stick only has 1 USB port, connect the USB hub, and everything else to the hub.

    ## Boot into the BIOS (pressing F2)

    ![image of Mr Bean tapping piano key](http://i.imgur.com/uzjIGfi.gif)

    ## Change BIOS setting

    In the BIOS, under __Configuration__, change __Select Operating System__ from __Windows 32bit__ to __Ubuntu 64bit__.

    __Save Changes and Exit__.

    ## Boot from USB thumbdrive (pressing F10).

    Select your USB thumbdrive

    ![image of Mr Bean tapping piano key](http://i.imgur.com/uzjIGfi.gif)

    ## Select LiveCD

    Login with `root` and no password.

    Check what network adapters you have with `ifconfig`.

    You'll notice there is only `lo0` and which ever USB nic/wifi adapter you plugged in.

    Check what disk you have with `gpart show`.

    You'll notice there is only `da0` which is your USB thumbdrive.

    ## Let's increase the size of `/tmp` and `/var` so we can play with `pkg`

    Remount the `/` as read-write:

    `mount -o rw /`

    Set the tmpsize variable in `rc.conf` with:

    `sysrc tmpsize=300m`

    Set the varsize varialbe in `rc.conf` with:

    `sysrc varsize=300m`

    My USB wifi adapter used the realtek drivers which I had to read and accept by setting a variabl in `/boot/loader.conf`

    Now `reboot`

    ## Enable wifi from a USB adapter

    Where `rsu0` is your real wifi adapter name detected by FreeBSD:

    `ifconfig wlan0 create wlandev rsu0`

    Scan available wifi ssid networks with:

    `ifconfig wlan0 up scan`

    Create a file `/etc/wpa.conf` to save your wifi settings:

    ```
    network={
    ssid="$SSID"
    psk="$PASSWORD"
    }
    ```

    Tell your `wlan0` which ssid to connect to:

    `ifconfig wlan0 ssid $SSID`

    Use `wpa_supplicant` to negotiate the password:

    `wpa_supplicant -iwlan0 -c/etc/wpa.conf &`

    Get an IP address from your router:

    `dhclient wlan0`

    ## We're going to temporarily link `/usr/local` to `/var/usrlocal` since we're only playing around

    __DO NOT DO THIS ON A REAL SYSTEM__

    ```
    mount -o rw /
    mkdir /var/usrlocal
    rmdir /usr/local
    ln -s /var/usrlocal /usr/local
    ```

    ## Now let's use `pkg` to download and install some programs

    Bootstrap `pkg`:

    `env ASSUME_ALWAYS_YES=yes pkg bootstrap`

    Install `screenfetch`:

    `pkg install -y screenfetch`

    Mount the fdescfs needed by screenfetch:

    `mount -t fdescfs fdesc /dev/fd`

    Run it:

    `screenfetch`
  13. johnko created this gist Nov 27, 2015.
    1 change: 1 addition & 0 deletions notes.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1 @@
    # Experiments with FreeBSD on Intel Compute Stick