Es wäre ja schön, wenn man mal einen vernünftigen Kernel in die Hand bekommen würde. Der Stand der Dinge, so wie meine Info's sind.
Sinovoip hat ein kleines Tool veröffentlicht, mit dem man ein bestehendes SD-Karten-Image aktualisieren kann, ohne eine Neuinstallation des Images.
Vorgehensweise:
Mit git die bpi-tools clonen.
root@bpi-iot-ros-ai:~# git clone https://github.com/BPI-SINOVOIP/bpi-tools.git
Cloning into 'bpi-tools'...
remote: Counting objects: 49, done.
remote: Total 49 (delta 0), reused 0 (delta 0), pack-reused 49
Unpacking objects: 100% (49/49), done.
Checking connectivity... done.
Verzeichnis wechseln
root@bpi-iot-ros-ai:~# cd bpi-tools
Befehl zum Updaten der bpi-tools
Heute mal ein Thema, was offensichtlich nicht so einfach ist. Aber, Versuch macht klug ;)
Der BananaPi M2-Ultra besitzt als WLan-Chip einen AP6212, dieser beinhaltet ein WLan- und ein Bluetooth-Modul. Mein Testsystem ist ein
Linux bpi-iot-ros-ai 3.10.65-BPI-M2U-Kernel #1 SMP Sun Sep 25 21:08:46 CST 2016 armv7l GNU/Linux
Meine ersten Versuche waren nicht sehr erfolgreich, also auf die Suche machen und ich wurde in einem Forum fündig.
Ich fange mal mit dem Wichtigsten an, für mich ist der BPi M2-Ultra ein würdiger Nachfolger des BananaPi's M1.
Nun zu dem was nicht so toll ist, die Unterstützung mit Treibern und Kernelversionen ist im Moment noch sehr bescheiden. Evt. habe ich ein Vorserienmodell?, so weit ich weiß hat Sinovoip erst eine kleine Serie aufgelegt. Evt. sind ja sogar noch Änderungen möglich? Ich weiß es nicht, ich habe aber mal nachgefragt ;)
Ich hatte heute mal die Möglichkeit eine SSD an den Ultra zu hängen. Es handelt sich um eine "SanDisk SSD PLUS 240GB Sata III 2,5 Zoll Interne SSD, bis zu 530 MB/Sek".
iperf3 -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Accepted connection from 192.168.3.12, port 46071
[ 5] local 192.168.3.213 port 5201 connected to 192.168.3.12 port 46072
[ ID] Interval Transfer Bandwidth
[ 5] 0.00-1.00 sec 85.2 MBytes 715 Mbits/sec
[ 5] 1.00-2.00 sec 88.8 MBytes 745 Mbits/sec
[ 5] 2.00-3.00 sec 88.0 MBytes 738 Mbits/sec
[ 5] 3.00-4.00 sec 88.3 MBytes 741 Mbits/sec
[ 5] 4.00-5.00 sec 88.5 MBytes 742 Mbits/sec
[ 5] 5.00-6.00 sec 88.4 MBytes 741 Mbits/sec
[ 5] 6.00-7.00 sec 88.3 MBytes 741 Mbits/sec
[ 5] 7.00-8.00 sec 88.8 MBytes 745 Mbits/sec
[ 5] 8.00-9.00 sec 88.9 MBytes 745 Mbits/sec
[ 5] 9.00-10.00 sec 88.4 MBytes 741 Mbits/sec
[ 5] 10.00-10.04 sec 3.77 MBytes 742 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 5] 0.00-10.04 sec 885 MBytes 739 Mbits/sec 0 sender
[ 5] 0.00-10.04 sec 885 MBytes 739 Mbits/sec receiver
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
Dann
iperf3 -c 192.168.3.12
Connecting to host 192.168.3.12, port 5201
[ 4] local 192.168.3.213 port 36402 connected to 192.168.3.12 port 5201
[ ID] Interval Transfer Bandwidth Retr Cwnd
[ 4] 0.00-1.00 sec 105 MBytes 881 Mbits/sec 0 764 KBytes
[ 4] 1.00-2.00 sec 112 MBytes 940 Mbits/sec 0 813 KBytes
[ 4] 2.00-3.00 sec 112 MBytes 938 Mbits/sec 0 897 KBytes
[ 4] 3.00-4.00 sec 112 MBytes 939 Mbits/sec 0 1000 KBytes
[ 4] 4.00-5.00 sec 112 MBytes 941 Mbits/sec 0 1000 KBytes
[ 4] 5.00-6.00 sec 112 MBytes 943 Mbits/sec 0 1000 KBytes
[ 4] 6.00-7.00 sec 109 MBytes 918 Mbits/sec 0 1.04 MBytes
[ 4] 7.00-8.00 sec 109 MBytes 912 Mbits/sec 0 1.23 MBytes
[ 4] 8.00-9.00 sec 112 MBytes 940 Mbits/sec 0 1.23 MBytes
[ 4] 9.00-10.00 sec 112 MBytes 940 Mbits/sec 0 1.23 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 1.08 GBytes 929 Mbits/sec 0 sender
[ 4] 0.00-10.00 sec 1.08 GBytes 928 Mbits/sec receiver
iperf Done.
Danch nochmal die Schreib- und Lesegeschwindigkeit getestet.
Schreibtest:
root@bpi-iot-ros-ai:~# dd if=/dev/zero of=tempfile bs=1M count=1024 conv=fdatasync,notrunc
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 29.8102 s, 36.0 MB/s
Danach mal ein Lesetest. Cache leeren.
root@bpi-iot-ros-ai:~# echo 3 | sudo tee /proc/sys/vm/drop_caches
3
Lesetest:
root@bpi-iot-ros-ai:~# dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 5.85632 s, 183 MB/s
root@bpi-iot-ros-ai:~# dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 2.09852 s, 512 MB/s
root@bpi-iot-ros-ai:~# dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 2.02298 s, 531 MB/s
root@bpi-iot-ros-ai:~# dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 2.02782 s, 530 MB/s
root@bpi-iot-ros-ai:~# dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 2.02498 s, 530 MB/s
Der Lesewert kommt gut an die Werbung des Herstellers ran, sogar ziemlich genau aber nur wenn der Cache gefüllt ist. Wenn Daten im Cache sind geht der Wert an die Angabe des Herstellers hoch. Der Schreibwert ist wie beim ersten Test mit einer normalen 2,5 Zoll HDD. Die SATA-Schnittstelle wird also auch beim Ultra nicht komplett ausgereizt :(
Siehe -> BPi M2-Ultra - SATA Schnittstelle HDD