Jump to content

Banana Pi BPI-F3 (bananapi-bpi-f3)

From postmarketOS Wiki
Revision as of 11:43, 18 December 2024 by Haui2 (talk | contribs)
Banana Pi BPI-F3
Manufacturer Banana Pi
Name BPI-F3
Codename bananapi-bpi-f3
Released 2024
Type single board computer
Hardware
Chipset SpacemiT K1
CPU 8x SpacemiT X60 @ 1.6 / 2.0 GHz
GPU IMG BXE-2-32
Storage SD Card, NVMe, or 8 / 16 / 32 / 128 GB eMMC
Memory 2 / 4 / 8 / 16 GB 64bit LPDDR4X
Architecture riscv64
Software
Original software Bianbu Linux
postmarketOS
Category testing
Pre-built images no
Features
Flashing
No data
USB Networking
No data
Internal storage
No data
SD card
Works
Screen
Works
Multimedia
3D Acceleration
No data
Audio
No data
Camera
No data
Connectivity
WiFi
No data
Bluetooth
Broken
Ethernet
Works
Miscellaneous
USB-A
Works
USB OTG
No data
HDMI/DP
Works
Sensors
Power Sensor
No data


Contributors

Users owning this device

  • Haui2 (Notes: Same issue as the roma pad. Needs specific sd card layout.)


How to enter flash mode

Use the download button or the DIP switch.

Installation

The company who builds the processor (Spacemit) also makes the Linux distribution that comes with it (Bianbu Linux) and holds the key to the proprietary u-boot fork that they make.

So currently you have to burn the bianbu image to an sd card and exchange the content of the rootfs with the one of the postmarketOS build.

We will update this once it has been figured out.

Resources

Documentation

Articles

Software

GPIO

PIN Function Function PIN
1 VCC3V3_SYS VCC5V0_OUT 2
3 AP_I2C4_SDA_3V3 VCC5V0_OUT 4
5 AP_I2C4_SCL_3V3 GND 6
7 GPIO_70_3V3 / JTAG TDI R_UART0_TXD_3V3 8
9 GND R_UART0_RXD_3V3 10
11 GPIO_71_3V3 / JTAG TMS GPIO_74_3V3 12
13 GPIO_72_3V3 / JTAG TCK GND 14
15 GPIO_73_3V3 / JTAG TDO GPIO_91_3V3 16
17 VCC3V3_SYS GPIO_92_3V3 18
19 SPI3_MOSI_3V3 GND 20
21 SPI3_MISO_3V3 GPIO_49_3V3 22
23 SPI3_SCLK_3V3 SPI3_CS_3V3 24
25 GND GPIO_50_3V3 26

DIP switches

Front

QSPI_DATA1 QSPI_DATA0 Function
0 0 TF Card -> EMMC
1 0 TF Card -> SPI NOR
0 1 TF Card -> SPI NAND
1 1 TF Card -> SD
QSPI_DATA3 Function
0 Normal boot
1 Download mode
QSPI_DATA2 Function
0 USB
1 UART

Back

There are pads on the back for a DIP switch.

1K resistor to VCC
JTAG_SEL Function
0 GPIO (off)
1 JTAG
10K resistor to GND
MMC1_CMD Route
0 X60
1 N308

Boot process

Firmware (?) -> U-boot SPL (128K) -> OpenSBI (1M) (?) -> U-boot (2M) -> kernel

Spacemit k1 Firmware

emmc
raw raw gpt fsbl env opensbi uboot bootfs rootfs
bootinfo_emmc.bin FSBL.bin fw_dynamic.itb u-boot.itb bootfs.img: Image, kernel.dtb, env.txt, bootlogo rootfs.img
boot0--> user_data area-->


sdcard
bootinfo_sd.bin fw_dynamic.itb u-boot.itb bootfs.img: Image, kernel.dtb, env.txt, bootlogo rootfs.img
gpt fsbl env opensbi uboot bootfs rootfs
user_data area -->


nor+ssd
bootinfo_spinor.bin FSBL.bin fw_dynamic.itb u-boot.itb bootfs.img: Image, kernel.dtb, env.txt, bootlogo rootfs.img
bootinfo fsbl env opensbi uboot gpt bootfs rootfs
nor 0x0 ssd 0x0

https://bianbu-linux.spacemit.com/en/device/boot/

See also

Purchase links