ITСooky

IT-рецепты съедобные и не очень!

Khadas Edge-V MAX — великий и ужасный, обзор!

дата 28.06.2020

Khadas видел у многих видео блогеров, очень они восторженно описывали его — думал что это что-то особенное, нет оказался очень странный, недодуманный, пафосный пшык!

Как и все видео блогеры обзоршики, я конечно его не купил за свои, мне его подарили — но с формулировкой «фигня какая-то»! У меня версия Khadas Edge-V MAX самая крутая с 128Gb eMMC, на soc RK3399 2017 года — уже тут должно екнуть в 2020 году у тех кто собирается выложить за Khadas Edge-V MAX 230$ (это только чистая плата)!

К такому шикарному микрокомпьютеру нужен шикарный корпус. И он есть — правда всего лишь один — рассчитан на голую плату без шильдов, ну что есть то есть берем!

15$ за пластмаски плюс 9$ за железки не жалко, для такой шикарной платки! Только есть одна проблемка! Этот корпус который продается на сайте в разделе Edge-V не подходит для Edge-V!!!! И даже железку не прикрутить к палстмаске из-за этого!

Ну это ладно может есть все таки у кого-то корпус для Khadas Edge-V MAX — нет нету!!! Или пилите или сами печатайте на 3D принтере, вроде бы народ уже нарисовал для него корпус!

Еще беру вентилятор и кулер — вреда от них ни какго, пусть будут! Но вред есть! Khadas подается как крутая ТВ приставка, и с учетом что блок питания идет на 4А охлаждать надо. И вот смотрите вы фильм, в настройках Android стоит галочка охлаждать по необходимости, и смотрите вы фильм и наступает напряженный оммент без взрывов и стонов и ВВЖУУУУУУУУУУУУХХХХХХХХХХХХХХХХХХХХХХХХХХХХХ кстати фильм необязательно смотреть он и в покое раскручивается регулярно! Думал что сможет стать плеером и хранилищем для Google Movie но нет, с таким шумом точно нет!

Вентилятор и кулер +25$ итого уже 279$ за микрокомпьютер который точно не может быть ТВ приставкой!

Пока Khadas на Androidе запускаю тест Geekbenchmark 5

Khadas быстрее чем RPI4, гораздо быстрее чем Redmi 8A — но до старых настольных ПК еще очень далеко. Geekbenchmark 5 есть для 64 битных архетектуры x86-64 поэтому Intel и проверил — но нет для arm архитектуры, поэтому только через Android!


Буду закачивать на Khadas Linux в eMMC

Сначала надо подключить Khadas к ПК — нужен кабель USB C на нормальный!
Так же советую хадас подключить еще и к внешнему питанию!

Качаю тут Edge_Ubuntu-server-focal_Linux-5.7_arm64_EMMC_V0.9.1-20200602
docs.khadas.com/edge/FirmwareUbuntu.html#EMMC-Installation

По инструкции docs.khadas.com/edge/HowtoBootIntoUpgradeMode.html
вводим в апгрейд мод платку, у меня сработал вот это способ

1 Power-on Edge.
2 Quickly press the Function key 3 times in 2 seconds, then release the key.

Дальше закачиваю по инструкции
docs.khadas.com/edge/UpgradeViaUSBCable.html
у меня Ubuntu так что
sudo apt-get install libusb-dev git parted
git clone https://github.com/khadas/utils
cd ./utils
git pull
./INSTALL

Далее жгу
rk-burn-tool -i Edge_Ubuntu-server-focal_Linux-5.7_arm64_EMMC_V0.9.1-20200602.img

И захожу по ssh, IP посмотрел на своем роутере

Name: khadas
Password: khadas

Провожу синтетичсекие тесты sysbench 1.0
sysbench --test=cpu run
sysbench --test=cpu --num-threads=2 run
sysbench --test=cpu --num-threads=4 run
sysbench --test=cpu --num-threads=6 run
sysbench --test=cpu --num-threads=8 run

Больше лучше! Ясно что eMMC и SD не влияют на скорость CPU. Старик Intel тут проигрывает, может за счет архитектуры они его обогнали RISC vs CISC

Проверяю чистую скорость eMMC
sudo dd if=/dev/zero of=test.file count=10000 bs=1048576

10485760000 bytes (10 GB, 9.8 GiB) copied, 47.7476 s, 220 MB/s

Скорость хорошая, сильно больше чем у SD!

Вот еще тест
hdparm -Tt --direct /dev/mmcblk2p7

/dev/mmcblk2p7:
 Timing O_DIRECT cached reads:   302 MB in  2.00 seconds = 150.64 MB/sec
 HDIO_DRIVE_CMD(identify) failed: Invalid argument
 Timing O_DIRECT disk reads: 812 MB in  3.00 seconds = 270.26 MB/sec

Добавляю батарею BAT-D01 Battery Module за 40$ и контроллер баттареи Juice Module за 15$… а ладно до кучи добавляю еще M2X Extension POE шный — M2 NVe-шный шильд за 25$ (правда POE не работает с Khadas Edge-V)

Итого: Фото микрокомпутера за 360$ в корпусе от производителя, с шильдами разработанными специально для него!

Проблема с батаррей
Не работает в Linux! После первого разряда не заряжается!
Проблема известная, и никак не решается
forum.khadas.com/t/edge-v-domain-power-management-lipo-battery-does-not-charge

M2 PCIE NVMe диск
M2 NVme-шный точно поддерживает Samsung EVO 960 256Gb, другие видимо не пробовали… не знаю когда он ко мне придет, надеюсь к тому моменту придумаю что сделать из Edge-V!
docs.khadas.com/edge/ListOfCompatibleNVMeSSDs.html

Достал 256Gb KingSpec M.2 NVMe SSD NE Series 2280 PCIE Gen3x4
вот такой за 2482 RUR liexpress.ru/item/32847169083.html?spm=a2g0s.12269583.0.0.5dc641fdx5IN1T


На не смонтированном диске можно уже посмотреть какие-то скорости
hdparm -Tt --direct /dev/nvme0n1

/dev/nvme0n1:
 Timing O_DIRECT cached reads:   1052 MB in  2.00 seconds = 525.93 MB/sec
 HDIO_DRIVE_CMD(identify) failed: Inappropriate ioctl for device
 Timing O_DIRECT disk reads: 1612 MB in  3.00 seconds = 537.27 MB/sec

Смотрим какуету инфо про NVMe
modinfo nvme

name:           nvme
filename:       (builtin)
version:        1.0
license:        GPL
file:           drivers/nvme/host/nvme
author:         Matthew Wilcox <willy@linux.intel.com>
parm:           use_threaded_interrupts:int
parm:           use_cmb_sqes:use controller's memory buffer for I/O SQes (bool)
parm:           max_host_mem_size_mb:Maximum Host Memory Buffer (HMB) size per controller (in MiB) (uint)
parm:           sgl_threshold:Use SGLs when average request segment size is larger or equal to this size. Use 0 to disable SGLs. (uint)
parm:           io_queue_depth:set io queue depth, should >= 2
parm:           write_queues:Number of queues to use for writes. If not set, reads and writes will share a queue set. (uint)
parm:           poll_queues:Number of queues to use for polled IO. (uint)

Создаем раздел и монтируем NVMe
sudo mkfs.ext4 /dev/nvme0n1
mount /dev/nvme0n1 /mnt/nve

Еще меряем скросоть
sudo dd if=/dev/zero of=test.file count=10000 bs=1048576

10000+0 records in
10000+0 records out
10485760000 bytes (10 GB, 9.8 GiB) copied, 31.718 s, 331 MB/s

Скорость побольше чем у встроенного eMMC

Проблема с вентилятором в Linux у Edge-V
Тут написано как какбы настроить можно docs.khadas.com/edge/HowToSetupFan.html

Вентиялтор уже был в auto — и должен был сам включаться, но не включался!
Температуру можно посмотреть так
sudo /usr/local/bin/fan.sh temp
И можно включтиь вентилятор, задав ему уровень громкости
sudo /usr/local/bin/fan.sh low
А выключить уже нельзя
sudo /usr/local/bin/fan.sh off

/usr/local/bin/fan.sh: line 87: /sys/class/hwmon/hwmon0/enable: Permission denied
CAUTION: Disabling fan can reduce the lifetime of this board!

Даже в low вентилятор уже сильно шумит!

Однако посмотрев на скрипт /usr/local/bin/fan.sh можно понять что вентилятор выключается вот так!
echo 0 > /sys/class/thermal/cooling_device0/cur_state

И температуру можно смотреть вот так
cat /sys/class/thermal/thermal_zone0/temp

А нука надо быстро написать контроллер вентилятора на Node-Red

Поставлю Node-Red как на Raspberry
bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
И чтобы само грузилось
sudo systemctl enable nodered.service

Вот

код

[{"id":"d8342f64.6c8678","type":"tab","label":"Flow 1","disabled":false,"info":""},{"id":"69301ab6.b1b544","type":"exec","z":"d8342f64.6c8678","command":"bash /home/khadas/temp.sh","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"","x":560,"y":280,"wires":[["6ebf99e8.3843f","14256e93.bac029","86c0c740.00bc7"],[],[]]},{"id":"59e6d7e5.13acb8","type":"inject","z":"d8342f64.6c8678","name":"","topic":"","payload":"","payloadType":"date","repeat":"5","crontab":"","once":false,"onceDelay":0.1,"x":330,"y":280,"wires":[["69301ab6.b1b544"]]},{"id":"6ebf99e8.3843f","type":"ui_chart","z":"d8342f64.6c8678","name":"","group":"ac6f8ab6.993fc","order":3,"width":0,"height":0,"label":"","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"cubic","nodata":"","dot":false,"ymin":"","ymax":"","removeOlder":1,"removeOlderPoints":"","removeOlderUnit":"3600","cutout":0,"useOneColor":true,"useUTC":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"outputs":1,"x":770,"y":240,"wires":[[]]},{"id":"14256e93.bac029","type":"ui_text","z":"d8342f64.6c8678","group":"ac6f8ab6.993fc","order":1,"width":0,"height":0,"name":"","label":"CPU temp: ","format":"{{msg.payload}} °C","layout":"row-center","x":790,"y":160,"wires":[]},{"id":"86c0c740.00bc7","type":"switch","z":"d8342f64.6c8678","name":"","property":"payload","propertyType":"msg","rules":[{"t":"lt","v":"40","vt":"num"},{"t":"btwn","v":"40","vt":"num","v2":"55","v2t":"num"},{"t":"btwn","v":"56","vt":"num","v2":"65","v2t":"num"},{"t":"gt","v":"65","vt":"num"}],"checkall":"true","repair":false,"outputs":4,"x":310,"y":460,"wires":[["413e1c31.f5cbc4"],["7231d613.e4ee98","8cadde92.1a901"],["a7c696d3.4e8958","8cadde92.1a901"],["3d4e9bbd.556c44","8cadde92.1a901"]]},{"id":"413e1c31.f5cbc4","type":"delay","z":"d8342f64.6c8678","name":"","pauseType":"delay","timeout":"1","timeoutUnits":"minutes","rate":"1","nbRateUnits":"60","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":520,"y":400,"wires":[["27e11699.8b54aa"]]},{"id":"27e11699.8b54aa","type":"exec","z":"d8342f64.6c8678","command":"bash /home/khadas/fanoff.sh","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"","x":740,"y":400,"wires":[["823f2435.9f77d"],[],[]]},{"id":"823f2435.9f77d","type":"ui_text","z":"d8342f64.6c8678","group":"ac6f8ab6.993fc","order":2,"width":0,"height":0,"name":"","label":"Fan ","format":"{{msg.payload}}","layout":"row-center","x":770,"y":200,"wires":[]},{"id":"7231d613.e4ee98","type":"exec","z":"d8342f64.6c8678","command":"bash /home/khadas/fanlow.sh","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"","x":750,"y":460,"wires":[["823f2435.9f77d"],[],[]]},{"id":"a7c696d3.4e8958","type":"exec","z":"d8342f64.6c8678","command":"bash /home/khadas/fanmid.sh","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"","x":750,"y":520,"wires":[["823f2435.9f77d"],[],[]]},{"id":"3d4e9bbd.556c44","type":"exec","z":"d8342f64.6c8678","command":"bash /home/khadas/fanhigh.sh","addpay":true,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"","x":750,"y":580,"wires":[["823f2435.9f77d"],[],[]]},{"id":"8cadde92.1a901","type":"function","z":"d8342f64.6c8678","name":"reset","func":"msg.reset = true;\nreturn msg;","outputs":1,"noerr":0,"x":410,"y":580,"wires":[["413e1c31.f5cbc4"]]},{"id":"ac6f8ab6.993fc","type":"ui_group","z":"","name":"Khadas Edge-V","tab":"2a69cb5b.3416d4","order":1,"disp":true,"width":"6","collapse":false},{"id":"2a69cb5b.3416d4","type":"ui_tab","z":"","name":"HWmonitor","icon":"dashboard","order":1,"disabled":false,"hidden":false}]

Эти скриптики надо положить в /home/khadas/
khadas_temp.tar

И получается вот так

Хорошенько прогреть CPU можно коммандой
stress -c 6


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *