Post
Topic
Board Hardware
Re: Official FutureBit Apollo BTC Software/Image and Support thread
by
jstefanop
on 07/06/2022, 16:16:15 UTC
Hey @jstefanop and @crypto_curious, I'm trying to mount the NVMe from a custom Linux install on another microSD card and it just doesn't show up in lsblk or elsewhere.
Does the 'Futurebit OS' have a special driver included or anything like that to recognize the small daughterboard which connects the NVMe SSD to the SBC?

Edit: It seems an OpenSUSE / JeOS specific issue. With ARMbian for Orange Pi 4 it works nicely.

But if there's any information you can share about accessing the hashboard through the internal connection, I'd really appreciate it!

Yea you could technically run the whole UI off a rasberry pi (or any ARM SBC with a UART port for that matter), or simply run it off the USB port if you dont want to deal with setting up the internal UART. I should probably post the board connector pinout for anyone that wants to do this. Will probably release a pi image at some point as well (or at least update the installer so its a one step RPI installation).
Oh, it's internal UART, alright. Would it be possible to know how to 'activate' it?

I can see on 'Futurebit OS', it's activated, while on my Armbian SD card it's not.
Code:
root@futurebit-btc:/boot/dtb/rockchip/overlay# dmesg | grep tty
[    0.000000] Kernel command line: root=UUID=98eceb4e-f6db-4229-bee6-b02137879d0c rootwait rootfstype=ext4 bootsplash.bootfile=bootsplash.armbian console=ttyS2,1500000 console=tty1 consoleblank=0 loglevel=1 ubootpart=37857158-01 usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u   cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1
[    0.001497] printk: console [tty1] enabled
[    2.729455] ff180000.serial: ttyS0 at MMIO 0xff180000 (irq = 47, base_baud = 1500000) is a 16550A
[    2.729630] serial serial0: tty port ttyS0 registered
[    2.730549] ff1a0000.serial: ttyS1 at MMIO 0xff1a0000 (irq = 48, base_baud = 1500000) is a 16550A
[    2.731757] ff370000.serial: ttyS4 at MMIO 0xff370000 (irq = 50, base_baud = 1500000) is a 16550A

I need stock Armbian to recognize ttyS1... Huh

Edit 2: I changed a few things as I noticed you swapped uart1 and uart2 in your Futurebit OS.
Code:
sudo dtc -I dtb -O dts /boot/dtb/rockchip/rk3399-orangepi-4.dtb -o /boot/dtb/rockchip/rk3399-orangepi-4.dts
sudo vim /boot/dtb/rockchip/rk3399-orangepi-4.dts
sudo dtc -I dts -O dtb /boot/dtb/rockchip/rk3399-orangepi-4.dts -o /boot/dtb/rockchip/rk3399-orangepi-4.dtb
Now, a ttyS1 device shows up, but I'm not sure everything's correct. The miner binary doesn't recognize it yet. The IRQ is probably wrong (wrong pin).
Code:
:% dmesg | grep tty
[    0.000000] Kernel command line: root=UUID=3398764f-7f34-4184-b0c2-c76e0b416579 rootwait rootfstype=ext4 console=ttyS2,1500000 console=tty1 consoleblank=0 loglevel=1 ubootpart=c257b905-01 usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u   cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1
[    0.002018] printk: console [tty1] enabled
[    1.530133] ff180000.serial: ttyS0 at MMIO 0xff180000 (irq = 44, base_baud = 1500000) is a 16550A
[    1.530315] serial serial0: tty port ttyS0 registered
[    1.531269] ff1a0000.serial: ttyS1 at MMIO 0xff1a0000 (irq = 45, base_baud = 1500000) is a 16550A
[    6.630819] systemd[1]: Created slice system-getty.slice.
[    6.635376] systemd[1]: Created slice system-serial\x2dgetty.slice.
[    8.463791] systemd[1]: Found device /dev/ttyS2.

You have to use our custom DTS, the UART port we use is not activated by default on Armbian.

If your doing custom stuff you can easily use any active UART port on any board/sbc. All you have to do is change the /dev/ttySx port number the app uses to start the hashboard via internal UART (its in /opt/apolloapi/backend/apollo-miner files).


FYI below is the board pinout for anyone that wants to tinker with rpi or any other SBC (Pin #1 is towards the bottom of the board). You can ignore the BOOT pin, all you have to do is reset the board using the RES pin (low then high), and start the miner program. The 5v pin can provide up to 15 watts of power so it can power most SBCs boards internally.