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
Добавить комментарий