简单RestAPI获取硬件状态

2023-05-11 作者:

简单来说,我需要一个能从HA上直接浏览家里主路由的CPU温度的首屏,因为RK3399发热比较猛却只有被动散热。有人可能说,加个小风扇难度很大么?呃,具备Netgear R7000(博通方案)在夏天轻松面对75℃服役5年的经验,我觉得国货不妨一战。

所以这个小项目,其实提供了对运行在物理机上几乎任意Linux的cpu温度、磁盘余量、上电时间等参数的rest api获取。写的比较糙快猛,主要满足自己需求,所以莫要预期过高哈。

提供何种接口

随意运行一个http client,比如  curl http://[hostname]:9090/stats/[data_type]

data_type初期支持三种, du, temps, boot_time 分别代表磁盘用量,多个温度,和上电时间。然后就可以返回数据了。

完整阅读本篇»

基于 Asus Tinker Board 2S 单臂路由

2023-05-07 作者:

书接上回,这次实验对象轮到了压箱底旧货,基于RK3399的华硕Tinker Board 2S

虽然原厂OS拉胯,不得不说硬件用料还是大厂风范

话说这CPU运行libvirt比较艰难,直接新建vm确定100%报错cpu初始化失败。

查阅了一些资料,发现这种大小核的cpu,libvirt支持上比较有个性,vm要么选择小核,要么选择大核,万不可“既要又要”,否则就报错摆烂。也好,A72双核 vs. A53四核,看看老话“双拳难敌四手”到底靠谱不靠。

带上vlan,蛮好一台4口路由

那么先给OpenWrt配置A72双核,注意是RK3399的后2核,莫要搞错。

完整阅读本篇»

基于 Raspberry Pi 4B 单臂路由

2023-04-30 作者:

Here we’re gonna talk about a hand-made router (NAT gateway) using a Raspberry Pi 4B with at least 3 implementations. Sorry the wifi router is not included since it’s kinda easy to find the tutorials about the hostapd stuff, and the signal from onboard wifi is not quite usable anyway.

这里聊一下基于树莓派4B的有线单臂路由实现,至少三种技术实现;wifi路由就不谈了,基于hostapd的教程遍地都是,信号强度也是个问题,可用性仅限于贴脸。

如果只使用iptables的话,实现一个基于pi的路由其实只需要一句话。加上让内核开启转发,两句话打完收工。

Method #1: Several simple commands could simply turn the Pi OS to be a layer 3 device with SNAT (or MASQUERADE).

开个玩笑,起码还得先给LAN口设个固定地址,比如给eth0设置 192.168.17.1/24 ,那么上边<lan subnet>就应当是 192.168.17.0/24 。

如果还需要dhcp服务器(非必须)的话,去看一下dnsmasq,熟练工的话,基于一般的Pi OS手打路由只要10分钟(含参考文档)。

PS:要问wan口谁来承担?wifi可以,给eth0加vlan也可以,看想怎么玩。


接下来就是自行编译OpenWrt的玩法,如果不想编,直接去官网下载预编译的镜像也完全ok。该镜像内置了基于Pi 4B的所有硬件驱动,也包括802.11nac的wifi支持,刷机后直接使用没有任何问题。

Method #2: Feel free to build the OpenWrt and run it on the bare metal Pi 4B, or a prebuilt image can be downloaded from OpenWrt official website then you don’t have to build that on your own.

默认设定是br-lan连接eth0,无wan口。因其为单臂路由(没有两张物理网卡),我把br-lan口连接改为 eth0.120 ,wan口设定为 eth0.12 ,当然交换机需要是802.1q VLAN switch,保存设置后正常上网就可以了。

PS:更改lan口vlan id设置的过程,最好走wifi,这样就不会在设置过程中断线。当然还有个选择就是把vlan id 1留给一个接口(无论wan还是lan),随意就好。

对单臂路由在内网进行iperf3带宽测试,MTU 1500就不改了,差不多可以跑满(下图右下)。由此可见,Pi 4B的全双工千兆网靠得住,作为单臂路由没问题,同时跑满带宽的资源消耗也不高。

完整阅读本篇»

PVE + HomeAssistant + ESPHome

2022-09-24 作者:

Today let’s try out this ESP32-C3-12F dev board that costs only $5 (domestic shipping included) but has 3 power supply mode (AC 220V, DC 7~12V and microUSB, which is super convenient!) and a relay to turn my ordinary led light strip to be a remote controlled.

记得上次玩Arduino已经是2014年的事情了,那会儿用的还是ATMega系列的MCU,装专用IDE,写的C lang。

近10年后,感觉家用IoT玩的都是ESP和Pico了。至于开发语言,常青树C lang自然还有的,但大多视频教程则是外行更容易上手的Micro Python、Lua乃至只要配个yaml config的ESP Home —— 可见贵圈也很卷。

今天搞的是这块ESP32-C3-12F,带wifi、蓝牙BLE和一路继电器,以上都属于一般配置。比较巴适的是,这货带三模供电,AC 220V、DC 7~12V,以及MicroUSB,这就很方便了,省一个手机充电头。

废话少叙,先看实验结果吧。

服务器自然是Proxmox VE Home Server上的vm,数据内网本地化存储(2C 2G 32G即可),公网使用走ddns没毛病。

【注】HAOS(Home Assistant Operating System)的部署有N多选择。支持X86物理机、至少三种VM(kvm、vbox、vmware)、三种主流操作系统(Linux、Win、MacOS),两种容器(docker、lxc)、以及包括树莓派在内的至少三种SBC…… 这友好程度,你要说自己小白不会安装,都对不起开发者。只是这里要注意,选择安装方式一定要带上Supervisor,否则无法支持ESPHome扩展,详情参阅官网文档

HAOS装好后,打开web服务,安装ESPHome的插件,打开后就能开始设计ESP固件了。

完整阅读本篇»

万兆TL-ST5008F到手初测

2022-07-05 作者:

先说应该是老的v1版本,起码铭牌上没见到v2的标识,作为初入手万兆光网实验装备应该是足用了。

如图:#1口接千兆RJ45转接头,#2和#8接的X520网卡。

某宝的X520-SR1(单口)和X520-SR2(双口)网卡各搞了几块。

作为VLAN交换机,可以走RS232 console、telnet、web等方式进行设置。

完整阅读本篇»

树莓派监控SANTAK UPS

2022-01-07 作者:

硬件:SANTAK TG-BOX 600 + RPi 4B (2GB) + Huawei ME909s-821

监控服务:NUT(Network UPS Tools)参考文章挺多,就不详解了;Pi上连了4G模块主要是掉电时可能无法得到Wired Ethernet供应,就发个短信而已,不如直接走wwan靠谱省心。

目前用的是standalone模式,回头有空查下文档试试netserver模式,看config文件介绍,猜测是client可以通过server知道市电挂了,从而在server之前关机?

完整阅读本篇»