Difference between revisions of "STAR64"

From PINE64
Jump to navigation Jump to search
 
(32 intermediate revisions by 14 users not shown)
Line 7: Line 7:
== Software releases ==
== Software releases ==


=== Quick Links to the Source of OS Images Build ===
The releases are still in '''alpha''' state and are only fit for testing purposes.  
 
 
OS images are still in '''alpha build''' which are only fit for board bring up and testing purposes.  
 
* [https://github.com/Icenowy/linux/tree/star64-5.15/ Icenowy's Star Linux kernel source tree]
 


* [https://github.com/Fishwaldo/meta-pine64 A Set of Images built with Yocto for commandline, weston and plasma - Where possible, GPU/VPU acceleration is enabled.]
* [https://forum.pine64.org/showthread.php?tid=18276 Armbian]
* [https://sr.ht/~fgaz/nixos-star64/ NixOS], based on the [https://github.com/NixOS/nixos-hardware/tree/master/pine64/star64 the nixos-hardware configuration]
* [https://www.hackster.io/lupyuen/rtos-on-a-risc-v-sbc-star64-jh7110-apache-nuttx-2a7429 Apache NuttX RTOS]


== SoC and Memory Specification ==
== SoC and Memory Specification ==
* Based on [https://www.starfivetech.com/en/site/soc StarFive JH7110]
* Based on [https://www.starfivetech.com/en/site/soc StarFive JH7110]
[[File:StarFive.jpg|right]]
[[File:StarFive.jpg|right]]
[[File:JH7110_Block_Diagram.jpg|600px]]
[[File:JH7110_Block_Diagram.png|800px]]
 


=== CPU Architecture ===
=== CPU Architecture ===
Line 34: Line 32:
* includes RV64IMAC S7 monitor core, 16 KB L1 I-Cache with ECC, 8 KB DTIM with ECC
* includes RV64IMAC S7 monitor core, 16 KB L1 I-Cache with ECC, 8 KB DTIM with ECC
* 32-bit RISC-V CPU core (E24) for real time control, support RV32IMFC RISC-V ISA
* 32-bit RISC-V CPU core (E24) for real time control, support RV32IMFC RISC-V ISA


=== GPU Architecture ===
=== GPU Architecture ===
Line 55: Line 52:
* Digital Video output up to 4K@30Hz
* Digital Video output up to 4K@30Hz
* 4K HDR @ 60fps
* 4K HDR @ 60fps
* H.264/AVC Base/Main/High/High10 profile @ level 5.1; up to 4Kx2K @ 60fps
* H.264/AVC Base/Main/High/High10 profile @ level 5.1; up to 4K×2K @ 60fps
* H.265/HEVC Main/Main10 profile @ level 5.1 High-tier; up to 4Kx2K @ 60fps
* H.265/HEVC Main/Main10 profile @ level 5.1 High-tier; up to 4K×2K @ 60fps


=== Audio ===
=== Audio ===
Line 66: Line 63:


=== Storage ===
=== Storage ===
* on-board SPI flash memory - bootable
* on-board 128Mbit (16MByte) XSPI NOR flash memory - bootable
* microSD - bootable, supports SDHC and SDXC and storage up to 256GB
* microSD - bootable, supports SDHC and SDXC and storage up to 256GB
* eMMC - bootable (optional eMMC Module)
* eMMC - bootable (optional eMMC Module)
* 1 USB3.0 Dedicated Host port
* 1× USB3.0 Dedicated Host port
* 3 USB2.0 Host port
* 3× USB2.0 Host port


=== Expansion Ports ===
=== Expansion Ports ===
* PCIe 2.0
* PCIe 2.0 ×1 lane
* 2x20 pins "Pi2" GPIO Header
* 2×20 pins "Pi2" GPIO Header
** The JH7110 SoC supports full multiplexing of its GPIO pins. This means any non-power/ground pin can be configured to any function outlined in Table 4-2 of the SoC datasheet.
* 4 lane MiPi DSI port for LCD panel
* 4 lane MiPi DSI port for LCD panel
* 4 lane MiPi CSI port for camera module
* 4 lane MiPi CSI port for camera module


== Board Information, Schematics and Certifications ==
== Board Information, Schematics and Certifications ==
* Model "A" Baseboard Dimensions: 133mm x 80mm x 19mm
Model "A" Baseboard Dimensions: 133mm×80mm×19mm
* Input Power: DC 12V @ 3A 5.5mmOD/2.1mmID center-positive Barrel DC Jack connector
 
* Schematic:
Input Power: DC 12V @ 3A 5.5mmOD/2.1mmID center-positive Barrel DC Jack connector
** [https://files.pine64.org/doc/star64/Star64_Schematic_V1.0_20220721.pdf STAR64 Schematic 20220721 v1.0 (Prototype Board)]
 
* Certifications:
Schematic:
** Disclaimer: Please note that PINE64 SBC is not a "final" product and in general certification is not necessary. However, PINE64 still submits the SBC for FCC, CE, and ROHS certifications and obtain the certificates to prove that the SBC board can pass the testing. Please note, a final commercial product needs to perform its own testing and obtain its own certificate.
* [https://files.pine64.org/doc/star64/Star64_Schematic_V1.1_20230504.pdf STAR64 Schematic 20230504 v1.1 (Production Released version)]
** Not yet available
* [https://files.pine64.org/doc/star64/Star64_Schematic_V1.0_20220721.pdf STAR64 Schematic 20220721 v1.0 (Prototype Board)]
 
Certifications:
* Disclaimer: Please note that PINE64 SBC is not a "final" product and in general certification is not necessary. However, PINE64 still submits the SBC for FCC, CE, and ROHS certifications and obtain the certificates to prove that the SBC board can pass the testing. Please note, a final commercial product needs to perform its own testing and obtain its own certificate.
* Not yet available


== Datasheets for Components and Peripherals ==
== Datasheets for Components and Peripherals ==
* Star64 JH7110 SoC information:
 
** [https://doc-en.rvspace.org/JH7110/PDF/JH7110_Product_Brief.pdf StarFive JH7110 SoC Product Brief]
Star64 JH7110 SoC information:
** [https://doc-en.rvspace.org/JH7110/PDF/JH7110_Datasheet.pdf StarFive JH7110 SoC Datasheet]
* [https://doc-en.rvspace.org/JH7110/PDF/JH7110_Product_Brief.pdf StarFive JH7110 SoC Product Brief]
* X-Power PMU information:
* [https://doc-en.rvspace.org/JH7110/PDF/JH7110_Datasheet.pdf StarFive JH7110 SoC Datasheet]
** [https://files.pine64.org/doc/datasheet/star64/AXP15060%20datasheet%20V0.1.pdf X-Power AXP15060 Datasheet V0.1]
* [https://doc-en.rvspace.org/JH7110/TRM/ StarFive JH7110 SoC Technical Reference Manual]
* LPDDR4 (200 Balls) SDRAM:
 
** [https://files.pine64.org/doc/datasheet/rockpro64/SM512M32Z01MD2BNP(200BALL).pdf Micron LPDDR4 Mobile LPDDR4 Datasheet]
X-Power PMU information:
* eMMC information:
* [https://files.pine64.org/doc/datasheet/star64/AXP15060%20datasheet%20V0.1.pdf X-Power AXP15060 Datasheet V0.1]
** [https://files.pine64.org/doc/rock64/PINE64_eMMC_Module_20170719.pdf PINE64 eMMC module schematic]
 
** [https://files.pine64.org/doc/rock64/usb%20emmc%20module%20adapter%20v2.pdf PINE64 USB adapter for eMMC module V2 schematic]
LPDDR4 (200 Balls) SDRAM:
** [https://files.pine64.org/doc/rock64/USB%20adapter%20for%20eMMC%20module%20PCB.tar PINE64 USB adapter for eMMC module PCB in JPEG]
* [https://files.pine64.org/doc/datasheet/rockpro64/SM512M32Z01MD2BNP(200BALL).pdf Micron LPDDR4 Mobile LPDDR4 Datasheet]
** [https://files.pine64.org/doc/datasheet/pine64/E-00517%20FORESEE_eMMC_NCEMAM8B-16G%20SPEC.pdf 16GB Foresee eMMC Datasheet]
 
** [https://files.pine64.org/doc/datasheet/pine64/SDINADF4-16-128GB-H%20data%20sheet%20v1.13.pdf 32GB/64GB/128GB SanDisk eMMC Datasheet]
eMMC information:
* SPI NOR Flash information:
* [https://files.pine64.org/doc/rock64/PINE64_eMMC_Module_20170719.pdf PINE64 eMMC module schematic]
** TBA
* [https://files.pine64.org/doc/rock64/usb%20emmc%20module%20adapter%20v2.pdf PINE64 USB adapter for eMMC module V2 schematic]
* Ethernet related info:
* [https://files.pine64.org/doc/rock64/USB%20adapter%20for%20eMMC%20module%20PCB.tar PINE64 USB adapter for eMMC module PCB in JPEG]
** TBA
* [https://files.pine64.org/doc/datasheet/pine64/E-00517%20FORESEE_eMMC_NCEMAM8B-16G%20SPEC.pdf 16GB Foresee eMMC Datasheet]
* WiFi/BT module info:
* [https://files.pine64.org/doc/datasheet/pine64/SDINADF4-16-128GB-H%20data%20sheet%20v1.13.pdf 32GB/64GB/128GB SanDisk eMMC Datasheet]
** [https://files.pine64.org/doc/datasheet/star64/Fn-Link_6252B-UUB_datasheet_V1.1_20220329.pdf Fn-Link 6252B 11AC Dual Band 2T2R WiFi + Bluetooth5.2 Datasheet]
 
SPI NOR Flash information:
* [https://files.pine64.org/doc/datasheet/star64/gd25lq128e_rev1.0_20210513.pdf GigaDevice 128Mb XSPI-Flash Datasheet]
 
Ethernet related info:
* TBA
 
WiFi/BT module info:
* [https://files.pine64.org/doc/datasheet/star64/Fn-Link_6252B-UUB_datasheet_V1.1_20220329.pdf Fn-Link 6252B 11AC Dual Band 2T2R WiFi + Bluetooth5.2 Datasheet]
 
== Bringup Notes ==
 
# The USB over-current protection is not wired up correctly to the USB ports on Star64. The default Starfive Kernel will disable USB on boot as it belives the ports are overcurrent. This ugly hack works around it: https://github.com/Fishwaldo/Star64_linux/commit/2634a13ecfa1fa5c232ec2b9f6a6b6b0d9d66898
# The Wifi Chip (RTL8852BU) is not supported in the kernel. There is a Vendor Driver that is imported in the kernel at https://github.com/Fishwaldo/Star64_linux/tree/Star64_devel/drivers/staging/rtl8852bu but it really needs a cleanup. It does BUG_ON at boot, but wifi is confirmed working.
# HDMI can be finicky. 4K Monitors are known to have a issue. This is also relevant for VisionFive2
# Some kernels/distributions do not detect the total memory correctly. This is due to the way u-boot is configured. Currently, u-boot reads the memory from the eeprom on the Star64, and updates the dtb file before booting the kernel. Distributions that boot differently may not get the updated dtb file with the correct memory entry. You can work around this by recompiling the DTB with the correct memory for your board
# VisionFive2 Kernels will only offer limited functionality on the Star64 - Mainly USB, Wifi and PCI will not work.
# The 4-pin 12 volt JST-XH-4A connector found on the Star64 is incompatible with the dual SATA power adapter intended for the ROCKPro64. The connector on the Star64 is rotated 180 degrees to the one on the ROCKPro64, resulting in the cable receiving +12V where GND is expected and vice versa. The cable's internal circuitry ends up shorting in this configuration.
# Booting from uSD: Component S1804 is adjacent to the 40pin GPIO Bus; ignore the printed text on S1804 that says "ON" or "ONKE". Do pay attention to the '1' and '2' printed on S1804. Also pay attention to the 'L' and 'H' text on the board next to S1804. The 'L' stand for '0' and the 'H' stands for '1'. You will need to flip switch '1' (GPIO_1) on S1804 to the 'L' position and switch '2' (GPIO_0) on S1804 to the 'H' position. S1804 maps to the table next to S1804 that has text [ [GPIO_1 | GPIO_0], [0|0] Flash, [0|1] SD, [1|0] EMMC, [1|1] UART ]; Helpful links: https://mrrcode979.github.io/blog/post/star64-guide/, https://www.bortzmeyer.org/star64-first-boot.html
# TTL use notes: Ground is on pin 6, RXD is on pin 8, and TXD is on pin 10.
 
== LEDs ==
 
The LEDs can be configured to stop blinking. Under Linux this can be done using the following command (as root):
 
echo "default-on" > /sys/devices/platform/leds/leds/blue-led/trigger
 
To list possible other triggers for the blue LED:
 
cat /sys/devices/platform/leds/leds/blue-led/trigger
 
An example for a trigger is ''activity'', where the the blue LED reflects the CPU activity.
 
== Potential Issues ==
 
<onlyinclude>
If you get the following error in u-boot (or your 8Gb board is only detected as 4Gb) the possible problem is a empty, or corrupt eeprom:
 
Not a StarFive EEPROM data format - magic error
EEPROM dump: (0x100 bytes)
00: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
10: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
20: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
30: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
40: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
50: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
60: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
70: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
80: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
90: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
A0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
B0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
C0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
D0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
E0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
F0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
 
Then from within u-boot execute the following commands:
 
mac initialize
mac product_id <PRODUCTID>
mac write_eeprom
 
Set ProductID to either:
* For 8Gb Models: STAR64V1-2310-D008E000-01234567
* for 4Gb Models: STAR64V1-2310-D004E000-01234567
 
You can replace the last 8 digits with a random number if you wish.
If these commands fail, please join the #star64 channel in the Pine64 community for more assistance.
</onlyinclude>
 
== Casing/Enclosure Compatibility ==
 
The table below collect known information about casing and enclosure compatibility for the Star64 sbc.
 
{| class="wikitable" style="margin:auto"
|+ Casing and enclosure compatibility for Star64
|-
! Casing/Enclosure !! Compatible !! Notes
|-
| [[Quartz64_Premium_Aluminium_Case|ROCKPro64 PREMIUM ALUMINUM CASING]] || No || Star64 has two stacked ethernet ports, making it too tall. Also, audio jack is too large and there is a USB type A instead of a USB type C port.
|-
| [[NASCase-STAR64|NAS Case]] || Yes || Micro SD slot and Second Gigabit Ethernet port are not accessible without modification
|}
 
== Prototype Bringup Notes ==
 
Note: This section is relevant to the original prototype (v1.0) that a few developers received.
 
# The [https://files.pine64.org/doc/star64/Star64_Schematic_V1.0_20220721.pdf schematic] has several discrepancies with actual board labels.
# The serial console can be found with TXD on pin 8 and RXD on pin 10; a convention common to Pi-style boards. Use the 40pin header pinouts in color on page one and not the schematic prose.
# If you have only a single core running and no PCI card present, it appears to power up via the +5V/GND lines from the USB serial adapter pins.
# It will not boot from a VisionFive R1 uSD card.
# The boot device switch labels and the silk screen are inverted. "0" means "On".
# 2021.10-00001-gdbdaad919b will attempt to boot from SPI, but it appears blank. If you let it for many minutes, the device will eventually time out and boot OpenSBI v1.0  from (SPI?). This will fail, but only after self-identifying as a VisionFive R2, complete with five cores and 4 GB of RAM, before failing. A "press any key" timeout is offered, but I've been unable to make it stop. It will eventually crash with:
 
Loading Environment from SPIFlash... SF: Detected gd25lq128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
*** Warning - bad CRC, using default environment
Not a StarFive EEPROM data format - magic error
 


[[Category:STAR64]] [[Category:StarFive JH7110]]
[[Category:STAR64]] [[Category:StarFive JH7110]]

Latest revision as of 08:20, 19 December 2023

The STAR64

The Star64 is a RISC-V based Single Board Computer powered by StarFive JH7110 Quad-Core SiFive U74 64-Bit CPU, Imagination Technology BX-4-32 GPU and supports up to 8GB 1866MHz LPDDR4 memory. It provides an eMMC module socket, MicroSD Card slot, PCI-e, Pi-2 Bus, USB 3.0, and many other peripheral interfaces for makers to integrate with sensors and other devices.

RISC-V.png

Software releases

The releases are still in alpha state and are only fit for testing purposes.

SoC and Memory Specification

StarFive.jpg

JH7110 Block Diagram.png

CPU Architecture

SiFive.jpg
  • Fully compliant with the RISC-V ISA specification
  • 64-bit RISC-V Application Core
  • 32KB L1 I-cache with ECC
  • 32KB L1 D-cache with ECC
  • 8 Region Physical Memory Protection
  • Virtual Memory support with up to 47 Physical Address bits
  • Integrated up to 2MB L2 Cache with ECC
  • includes RV64IMAC S7 monitor core, 16 KB L1 I-Cache with ECC, 8 KB DTIM with ECC
  • 32-bit RISC-V CPU core (E24) for real time control, support RV32IMFC RISC-V ISA

GPU Architecture

Imgtech.png
  • Support OpenCL 3.0
  • Support OpenGL ES 3.2
  • Support Vulkan 1.2
  • Tile-based deferred rendering architecture for 3D graphics workloads, with concurrent processing of multiple tiles
  • Support for GPU visualization, up to 8 virtual GPUs
  • On fly frame buffer compression and decompression (TFBC) algorithm
  • Performance: 128 FP32 FLOPs/Clock, 256 FP16 FLOPs/Clock

System Memory

  • LPDDR4 RAM Memory Variants: 2GB, 4GB and 8GB.

Board Features

Video

  • Digital Video output up to 4K@30Hz
  • 4K HDR @ 60fps
  • H.264/AVC Base/Main/High/High10 profile @ level 5.1; up to 4K×2K @ 60fps
  • H.265/HEVC Main/Main10 profile @ level 5.1 High-tier; up to 4K×2K @ 60fps

Audio

  • 3.5mm audio Jack

Network

  • Single or Dual 10/100/1000Mbps Ethernet
  • 2.4GHz/5Ghz MIMO WiFi 802.11 b/g/n/ac with Bluetooth 5.2

Storage

  • on-board 128Mbit (16MByte) XSPI NOR flash memory - bootable
  • microSD - bootable, supports SDHC and SDXC and storage up to 256GB
  • eMMC - bootable (optional eMMC Module)
  • 1× USB3.0 Dedicated Host port
  • 3× USB2.0 Host port

Expansion Ports

  • PCIe 2.0 ×1 lane
  • 2×20 pins "Pi2" GPIO Header
    • The JH7110 SoC supports full multiplexing of its GPIO pins. This means any non-power/ground pin can be configured to any function outlined in Table 4-2 of the SoC datasheet.
  • 4 lane MiPi DSI port for LCD panel
  • 4 lane MiPi CSI port for camera module

Board Information, Schematics and Certifications

Model "A" Baseboard Dimensions: 133mm×80mm×19mm

Input Power: DC 12V @ 3A 5.5mmOD/2.1mmID center-positive Barrel DC Jack connector

Schematic:

Certifications:

  • Disclaimer: Please note that PINE64 SBC is not a "final" product and in general certification is not necessary. However, PINE64 still submits the SBC for FCC, CE, and ROHS certifications and obtain the certificates to prove that the SBC board can pass the testing. Please note, a final commercial product needs to perform its own testing and obtain its own certificate.
  • Not yet available

Datasheets for Components and Peripherals

Star64 JH7110 SoC information:

X-Power PMU information:

LPDDR4 (200 Balls) SDRAM:

eMMC information:

SPI NOR Flash information:

Ethernet related info:

  • TBA

WiFi/BT module info:

Bringup Notes

  1. The USB over-current protection is not wired up correctly to the USB ports on Star64. The default Starfive Kernel will disable USB on boot as it belives the ports are overcurrent. This ugly hack works around it: https://github.com/Fishwaldo/Star64_linux/commit/2634a13ecfa1fa5c232ec2b9f6a6b6b0d9d66898
  2. The Wifi Chip (RTL8852BU) is not supported in the kernel. There is a Vendor Driver that is imported in the kernel at https://github.com/Fishwaldo/Star64_linux/tree/Star64_devel/drivers/staging/rtl8852bu but it really needs a cleanup. It does BUG_ON at boot, but wifi is confirmed working.
  3. HDMI can be finicky. 4K Monitors are known to have a issue. This is also relevant for VisionFive2
  4. Some kernels/distributions do not detect the total memory correctly. This is due to the way u-boot is configured. Currently, u-boot reads the memory from the eeprom on the Star64, and updates the dtb file before booting the kernel. Distributions that boot differently may not get the updated dtb file with the correct memory entry. You can work around this by recompiling the DTB with the correct memory for your board
  5. VisionFive2 Kernels will only offer limited functionality on the Star64 - Mainly USB, Wifi and PCI will not work.
  6. The 4-pin 12 volt JST-XH-4A connector found on the Star64 is incompatible with the dual SATA power adapter intended for the ROCKPro64. The connector on the Star64 is rotated 180 degrees to the one on the ROCKPro64, resulting in the cable receiving +12V where GND is expected and vice versa. The cable's internal circuitry ends up shorting in this configuration.
  7. Booting from uSD: Component S1804 is adjacent to the 40pin GPIO Bus; ignore the printed text on S1804 that says "ON" or "ONKE". Do pay attention to the '1' and '2' printed on S1804. Also pay attention to the 'L' and 'H' text on the board next to S1804. The 'L' stand for '0' and the 'H' stands for '1'. You will need to flip switch '1' (GPIO_1) on S1804 to the 'L' position and switch '2' (GPIO_0) on S1804 to the 'H' position. S1804 maps to the table next to S1804 that has text [ [GPIO_1 | GPIO_0], [0|0] Flash, [0|1] SD, [1|0] EMMC, [1|1] UART ]; Helpful links: https://mrrcode979.github.io/blog/post/star64-guide/, https://www.bortzmeyer.org/star64-first-boot.html
  8. TTL use notes: Ground is on pin 6, RXD is on pin 8, and TXD is on pin 10.

LEDs

The LEDs can be configured to stop blinking. Under Linux this can be done using the following command (as root):

echo "default-on" > /sys/devices/platform/leds/leds/blue-led/trigger

To list possible other triggers for the blue LED:

cat /sys/devices/platform/leds/leds/blue-led/trigger 

An example for a trigger is activity, where the the blue LED reflects the CPU activity.

Potential Issues

If you get the following error in u-boot (or your 8Gb board is only detected as 4Gb) the possible problem is a empty, or corrupt eeprom:

Not a StarFive EEPROM data format - magic error
EEPROM dump: (0x100 bytes)
00: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
10: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
20: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
30: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
40: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
50: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
60: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
70: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
80: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
90: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
A0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
B0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
C0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
D0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
E0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 
F0: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 

Then from within u-boot execute the following commands:

mac initialize
mac product_id <PRODUCTID>
mac write_eeprom

Set ProductID to either:

  • For 8Gb Models: STAR64V1-2310-D008E000-01234567
  • for 4Gb Models: STAR64V1-2310-D004E000-01234567

You can replace the last 8 digits with a random number if you wish. If these commands fail, please join the #star64 channel in the Pine64 community for more assistance.


Casing/Enclosure Compatibility

The table below collect known information about casing and enclosure compatibility for the Star64 sbc.

Casing and enclosure compatibility for Star64
Casing/Enclosure Compatible Notes
ROCKPro64 PREMIUM ALUMINUM CASING No Star64 has two stacked ethernet ports, making it too tall. Also, audio jack is too large and there is a USB type A instead of a USB type C port.
NAS Case Yes Micro SD slot and Second Gigabit Ethernet port are not accessible without modification

Prototype Bringup Notes

Note: This section is relevant to the original prototype (v1.0) that a few developers received.

  1. The schematic has several discrepancies with actual board labels.
  2. The serial console can be found with TXD on pin 8 and RXD on pin 10; a convention common to Pi-style boards. Use the 40pin header pinouts in color on page one and not the schematic prose.
  3. If you have only a single core running and no PCI card present, it appears to power up via the +5V/GND lines from the USB serial adapter pins.
  4. It will not boot from a VisionFive R1 uSD card.
  5. The boot device switch labels and the silk screen are inverted. "0" means "On".
  6. 2021.10-00001-gdbdaad919b will attempt to boot from SPI, but it appears blank. If you let it for many minutes, the device will eventually time out and boot OpenSBI v1.0 from (SPI?). This will fail, but only after self-identifying as a VisionFive R2, complete with five cores and 4 GB of RAM, before failing. A "press any key" timeout is offered, but I've been unable to make it stop. It will eventually crash with:
Loading Environment from SPIFlash... SF: Detected gd25lq128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
*** Warning - bad CRC, using default environment

Not a StarFive EEPROM data format - magic error