0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【賽昉科技昉·星光RISC-V單板計(jì)算機(jī)試用體驗(yàn)】跑起來HomeAssistant是一種什么樣的體驗(yàn)?

開發(fā)板試用精選 ? 來源:開發(fā)板試用 ? 作者:電子發(fā)燒友論壇 ? 2022-11-15 11:33 ? 次閱讀
本文來源電子發(fā)燒友社區(qū),作者:cszzlsw, 帖子地址:https://bbs.elecfans.com/jishu_2286481_1_1.html

一.前言

書接上文:fedara系統(tǒng)啟動(dòng)及homeassistant安裝體驗(yàn),這次終于把homeassistant跑起來的,這其中到底發(fā)生了些什么故事呢,且聽我慢慢道來.
二.環(huán)境準(zhǔn)備
上篇說了,跑homeassitant需要從頭編譯系統(tǒng),所以先搭建編譯環(huán)境吧,官方的git倉庫在這:https://github.com/starfive-tech/freelight-u-sdk,啥也不說了,先down下來,提一下,官方說推薦編譯環(huán)境是Ubuntu16.04或Ubuntu18.04,我這里用的是Ubuntu20.04,實(shí)際體驗(yàn)一點(diǎn)問題沒有,所以朋友們放心大膽的玩吧.
因?yàn)槔锩姘似渌麄}庫,所以必須加--recursive,完整的方式如下:
溫馨提示:輸入完之后就可以去洗澡沖涼或者做飯去了
然后就是裝一堆的依賴:sudo apt-get install autoconf automake autotools-dev bc bison xxd
build-essential curl flex gawk gdisk git gperf libgmp-dev libmpc-dev libmpfr-dev libncurses-dev libssl-dev libtool patchutils python screen texinfo unzip zlib1g-dev device-tree-compiler libyaml-dev把這些完成咱們就可以到下一步了:
三.系統(tǒng)配置和編譯把代碼下完之后cd到倉庫目錄.然后還需要用下面這些指令配置一些東西$ cd buildroot && git checkout JH7100_VisionFive_devel && cd ..$ cd HiFive_U-Boot && git checkout JH7100_VisionFive_devel && cd ..$ cd linux && git checkout --track origin/visionfive-5.15.y-devel && cd ..$ cd opensbi && git checkout master && cd ..
然后就可以啟動(dòng)編譯了:make HWBOARD=visionfive或者make visionfive
再次溫馨提示:這步操作完就可以掛機(jī)去睡覺了,等明兒再弄吧
如果沒有ERROR這樣的字樣就代表編譯成功了,有ERROR的話就去查錯(cuò)吧.
再再溫馨提示:請先預(yù)留20G+的磁盤空間


四,燒錄固件
我這里采用的是sd卡方式,readme里面有NFS方式,無奈水平太菜沒弄成功,把固件燒錄到sd卡之前還需要這么一個(gè)步驟:
$ make HWBOARD=xxx -jx$ make HWBOARD=xxx buildroot_rootfs -jx$ make HWBOARD=xxx vpudriver-build-rootfs$ rm -rf work/buildroot_rootfs/images/rootfs.ext*$ make HWBOARD=xxx buildroot_rootfs -jx這里面的HWBOARD=xxx指的是前面的板子類型,其實(shí)這里可以省略掉完成這些之后,先找一張sd卡,推薦至少16G,完事將卡用讀卡器接到電腦USB或者如果你電腦自帶tf卡插槽的話直接懟里就行這里需要提前將sd卡格式化一下,參考這篇鏈接:https://wiki.rvspace.org/en/Prod ... r_Quick_Start_Guide等把卡格式話完成之后,執(zhí)行這兩條指令:umount /dev/sdb3umount /dev/sdb1
然后再用這條指令將固件燒錄到卡里:

make HWBOARD=visionfive DISK=/dev/sdb format-nvdla-rootfs && sync
之后就是漫長的等待,我這邊是10分鐘以上吧,可以去沖杯咖啡先.
看到這樣的信息就代表燒錄成功了:
pYYBAGKnVtSAGnmoAAH9m05yTgo996.png

五.系統(tǒng)啟動(dòng)
系統(tǒng)成功燒錄到卡之后就可以上電了,等上電完成之后可以看到熟悉的輸入用戶名和密碼,這里輸入root回車然后starfive回車,順利的話就可以進(jìn)入系統(tǒng)了,完事的話可以執(zhí)行一些簡單的指令,證明系統(tǒng)是好的
有朋友問了,這個(gè)用戶名和密碼太長了想改怎么辦:用這條指令進(jìn)入buildroot的配置界面:
make buildroot_rootfs-menuconfig
找到如下地方,可以選擇把密碼去掉或者改簡單點(diǎn),比如我改成了123456,
poYBAGKnVs-ASM8vAAHx3DtJCRc840.png

六,重新編譯python,pip等
python其實(shí)系統(tǒng)中已經(jīng)帶了,默認(rèn)3.9.0,其實(shí)夠用,這里暫時(shí)不用改,需要在python的核心包里添加sqlite和xml等支持,
還是剛剛的menuconfig指令,在此界面配置即可,步驟截圖如下:

然后重新編譯python,重新編譯python的方式如下:
先進(jìn)入work下面的buildroot_rootfs目錄:
在目錄下面執(zhí)行 make python3-dirclean && make python3_rebuild,等待片刻后即可編譯成功
這里附上buildroot的文檔地址:http://buildroot.uclibc.org/downloads/manual/manual.html
這些都完成之后,可以添加pip指令,如下圖:

做完這些之后可以嘗試先編一個(gè)系統(tǒng)看看生效沒有:
回到sdk目錄,執(zhí)行以上那四條指令:
$ make HWBOARD=xxx buildroot_rootfs -jx$ make HWBOARD=xxx vpudriver-build-rootfs$ rm -rf work/buildroot_rootfs/images/rootfs.ext*$ make HWBOARD=xxx buildroot_rootfs -jx事實(shí)證明,只執(zhí)行rm -rf work/buildroot_rootfs/images/rootfs.ext*和make HWBOARD=xxx vpudriver-build-rootfs這兩條指令也夠
之后就是添加homeassistant系統(tǒng)了

七.homeassistant系統(tǒng)編譯
要編譯homeassistant首先要在package里面配置homeassistant的包,我們在這個(gè)文件夾下添加python-homeassistant這個(gè)文件夾,然后添加3個(gè)文件:
pYYBAGKnVtqAXu0OAAWKVv-okuw411.png

做完這些步驟之后又回到work下面的buildroot_rootfs目錄,執(zhí)行指令:make python-homeassistant-rebuild指令,等待編譯完成,編譯完成之后可以在target/usr/bin下面看到一個(gè)文件叫hass,到這里homeassistant就編譯完成了
poYBAGKnVtyAAexYAAGmDHDl4E0141.png

八.編譯homeassistant的依賴
到上面的步驟你以為homeassistant編譯成功了嗎,太天真了,由于homeassistant是python寫的,
python有個(gè)最大的特點(diǎn)就是屬于動(dòng)態(tài)語言,很多包都是在運(yùn)行的時(shí)候加載的,
所以homeassistant運(yùn)行所需要的所有包都需要提前編譯好,
查看homeassistant的requirements文件,發(fā)poYBAGKnVt2AOJbkAADptpCYsEE437.png

到這里就要解釋一下requiremtnets.txt文件了,我們到pypi網(wǎng)站上去找到homeassistant包,這里我選擇一個(gè)歷史版本,homeasssistant 2.21.8.8版本,
下載過來,打開壓縮包,可以看到一個(gè)文件叫做requiremtnets.txt,這里面記載了所有的依賴,
那么這么多的依賴要如何處理呢,有兩個(gè)方法,
方法一就是在buildroot下面有一個(gè)utils文件夾,里面有一個(gè)scanpypi的工具,使用這個(gè)工具可以很方便的集成一些包進(jìn)來,但是這個(gè)工具經(jīng)常會不好使,研究這個(gè)工具還專門花了好幾個(gè)小時(shí),最后發(fā)現(xiàn)機(jī)制有問題(最主要的是python依賴包的方式經(jīng)常不一樣)
方法二,這個(gè)方法比較簡單,但是很繁瑣,需要一個(gè)包一個(gè)包的處理,最后會在buildroot的packages目錄下生成一大堆的python-xxx包,具體的過程文字描述比較費(fèi)勁這里就不多講了,給大家看一下我的構(gòu)建history,
等把這些包全都弄完,快的話也得需要1天,這中間還會出現(xiàn)各種各樣的錯(cuò)誤,所以其中的辛酸曲折大家能體會了.
把這些都弄完之后又回到sdk的目錄下面指令構(gòu)建的那兩條指令,完事之后就燒到sd卡

九,啟動(dòng)homeassistant
如果一切順利的話,等系統(tǒng)啟動(dòng)成功之后,輸入hass指令,就能看到hass可以啟動(dòng)了,第一次啟動(dòng)會花費(fèi)不少時(shí)間,這是因?yàn)殡m然我們已經(jīng)構(gòu)建了很多包,但是都是大包,有很多小的包還是需要他在運(yùn)行的時(shí)候自己下載安裝,等這些都o(jì)k了之后,打開你的瀏覽器,輸入你的開發(fā)板ip后跟端口8123,比如我的開發(fā)板用網(wǎng)線連接,系統(tǒng)啟動(dòng)之后自動(dòng)獲得ip是:192.168.1.7,那我在瀏覽器輸入:192.168.1.7:8123,順利的話就能看到homeassistant的主界面了,這里截圖一下,
pYYBAGKnVuCARMaeAAM6s6WBRV4919.png

在瀏覽器里面設(shè)置你的用戶名,密碼等等,然后還有些其他的設(shè)置,就能進(jìn)到homeassistant了,到這里,homeassistant就做完了.
poYBAGKnVuOANI3CAARrBpQhcuU089.png

pYYBAGKnVuWAZg-cAADlu9vKVhg569.png

十.總結(jié)
編譯整個(gè)homeassistant的過程是痛苦的,期間有好幾次想放棄,因?yàn)閷?shí)在是太耽誤時(shí)間了,而且因?yàn)閷﹂_發(fā)板的編譯構(gòu)建方式不熟悉,僅tf卡燒錄這些步驟就花了很多時(shí)間,但就像有一句話說的,得不到的永遠(yuǎn)在騷動(dòng),從小的教育告訴我做事情不能輕言放棄,這么多年的工作經(jīng)歷告訴我,有時(shí)候成功就差再努力那么一下,再想到賽昉對我的信任(由于錯(cuò)過第一波的申請,到我申請的時(shí)候就剩3個(gè)名額了,但是依然申請到了),帶著這一份承諾和執(zhí)著,終于還是做成功了,結(jié)果不光是學(xué)到了技術(shù),感覺更是對自己心志的一次磨煉.再次感謝賽昉,感謝發(fā)燒友平臺.

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • RISC-V
    +關(guān)注

    關(guān)注

    44

    文章

    2216

    瀏覽量

    45968
  • 賽昉科技
    +關(guān)注

    關(guān)注

    3

    文章

    145

    瀏覽量

    14246
收藏 人收藏

    評論

    相關(guān)推薦

    Ubuntu現(xiàn)已適配RISC-V單板計(jì)算機(jī)Milk-V Mars

    近期,Canonical宣布優(yōu)化的Ubuntu24.04鏡像已可用于RISC-V單板計(jì)算機(jī)Milk-VMars。Milk-VMars由深圳市群芯閃耀科技有限公司(Milk-V)設(shè)計(jì)并推出,搭載
    的頭像 發(fā)表于 06-12 08:19 ?405次閱讀
    Ubuntu現(xiàn)已適配<b class='flag-5'>RISC-V</b><b class='flag-5'>單板計(jì)算機(jī)</b>Milk-<b class='flag-5'>V</b> Mars

    暢玩·星光 2|手把手教你搭建基于RISC-V的家用NAS

    方案。通過科技與開源社區(qū)的共同努力,·星光2(VisionFive2)RISC-V單板計(jì)算機(jī)
    的頭像 發(fā)表于 06-04 08:19 ?798次閱讀
    暢玩<b class='flag-5'>昉</b>·<b class='flag-5'>星光</b> 2|手把手教你搭建基于<b class='flag-5'>RISC-V</b>的家用NAS

    信用卡大小的 RISC-V 單板計(jì)算機(jī)介紹

    信用卡大小的 RISC-V 單板計(jì)算機(jī) —— Mars Mars 由深圳市群芯閃耀科技有限公司(Milk-V)設(shè)計(jì)并推出,搭載科技
    發(fā)表于 04-12 16:39

    科技VisionFive 2生態(tài)進(jìn)展雙周報(bào)(2.1-2.29)

    Image for VisionFive 2) 社區(qū)開發(fā)者發(fā)布4篇【·星光 2高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】系列文章,內(nèi)容包括:為Ubuntu安裝Docker及常用軟件;以容器
    發(fā)表于 02-29 15:45

    RISC-V智能化網(wǎng)絡(luò)解決方案|科技·星光 2成功運(yùn)行OpenWrt

    。近期,科技在·星光2(VisionFive2)RISC-V單板計(jì)算機(jī)上成功運(yùn)行OpenW
    的頭像 發(fā)表于 02-23 08:18 ?608次閱讀
    <b class='flag-5'>RISC-V</b>智能化網(wǎng)絡(luò)解決方案|<b class='flag-5'>賽</b><b class='flag-5'>昉</b>科技<b class='flag-5'>昉</b>·<b class='flag-5'>星光</b> 2成功運(yùn)行OpenWrt

    ·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】以容器的方式安裝 HomeAssistant

    ·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】以容器的方式安裝 HomeAssistant 下載并啟動(dòng)容器 HomeAssisatant
    發(fā)表于 02-21 18:07

    ·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】為 Ubuntu 安裝 Docker 及常用軟件

    ·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】為 Ubuntu 安裝 Docker 及常用軟件 目的 為了更好的利用星光2,決定使用容器
    發(fā)表于 02-21 17:54

    ·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】VisionFive2開箱+安裝Ubuntu

    ·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】VisionFive2開箱+安裝Ubuntu 前言 很感謝
    發(fā)表于 02-21 17:49

    ·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(三) - SSH連接

    ·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(三) - SSH連接 、官方資料 RISC-V官網(wǎng):
    的頭像 發(fā)表于 02-21 10:21 ?460次閱讀
    <b class='flag-5'>昉</b>·<b class='flag-5'>星光</b>2 <b class='flag-5'>RISC-V</b><b class='flag-5'>單板計(jì)算機(jī)</b>體驗(yàn)(三) - SSH連接

    ·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(二) - 系統(tǒng)環(huán)境

    ·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)(二) - 系統(tǒng)環(huán)境 、官方資料 RISC-V官網(wǎng): [
    的頭像 發(fā)表于 02-21 10:15 ?600次閱讀
    <b class='flag-5'>昉</b>·<b class='flag-5'>星光</b>2 <b class='flag-5'>RISC-V</b><b class='flag-5'>單板計(jì)算機(jī)</b>體驗(yàn)(二) - 系統(tǒng)環(huán)境

    ·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)() - 開箱

    ·星光2 RISC-V單板計(jì)算機(jī)體驗(yàn)() - 開箱 、開箱
    的頭像 發(fā)表于 02-21 10:10 ?629次閱讀
    <b class='flag-5'>昉</b>·<b class='flag-5'>星光</b>2 <b class='flag-5'>RISC-V</b><b class='flag-5'>單板計(jì)算機(jī)</b>體驗(yàn)(<b class='flag-5'>一</b>) - 開箱

    ·星光 2 高性能RISC-V單板計(jì)算機(jī)試用體驗(yàn)】開箱及裝載Debian系統(tǒng)

    上周收到了·星光 2高性能RISC-V單板計(jì)算機(jī)開發(fā)板,在此非常感謝科技提供的
    發(fā)表于 01-24 00:32

    256核!發(fā)布全新RISC-V眾核子系統(tǒng)IP平臺

    11月23日,中國RISC-V軟硬件生態(tài)領(lǐng)導(dǎo)者科技正式發(fā)布自主研發(fā)的片上致性互聯(lián)IP——·星鏈-700(StarLink-700),
    發(fā)表于 11-29 13:37

    科技重磅亮相RISC-V Summit 2023

    近日,科技重磅亮相RISC-VSummit2023(2023年RISC-V北美峰會),并連續(xù)三年發(fā)表主題演講,展現(xiàn)
    的頭像 發(fā)表于 11-22 08:19 ?546次閱讀
    <b class='flag-5'>賽</b><b class='flag-5'>昉</b>科技重磅亮相<b class='flag-5'>RISC-V</b> Summit 2023

    ·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】在·星光2上安裝配置新編譯的OpenWRT

    本文是《【·星光 2 高性能RISC-V單板計(jì)算機(jī)體驗(yàn)】在·星光2上編譯OpenWRT》的下
    發(fā)表于 11-18 11:22