智能家居折腾之旅——在32位机器上安装HomeAssistant Supervised
智能家居折腾之旅——在32位机器上安装HomeAssistant Supervised
纯新手,前几天买了个小机器打算跑HomeAssistant,没仔细看买了个D2550回来,查询英特尔官方说是64位,可到手装HASS OS才发现装不上,一查资料才明白D2550是i686架构,不完整支持64位,也就是说这玩意实际上是个32位的机器。且以其孱弱的性能无法跑虚拟机,只能想其它办法了。
32位和64位的最大区别就是32位不被Docker官方支持,也就是说常规的安装方法无法适用于32位的X86机器。
准备
首先需要安装最新的Debian系统,必须得是Debian因为HomeAssistant Supervised只支持Debian,而且Debian是唯二给i386机器提供Docker支持的发行版。截至目前(2022-02),Debian的最新版是bullseye(11)。注意一点就是如果在安装Debian时提示需要非自由固件才能继续安装,那么就需要安装带非自由固件版的Debian。
一些前期的必要设置就不细说了,比如配置良好的网络环境。我家因为勉强可以访问到Github就没有进行过多的配置 ...
125个练手小轮子
今天逛知乎,发现了一个挺有意思的文章,主要介绍了有个大神想了125个造轮子的项目出来。看着很有意思,就搬运过来了。
原文地址在这里。我直接把中文翻译搬过来:
建议用自己会的最低级的语言实现,这样才能达到造轮子的本质。
文本操作
逆转字符串——输入一个字符串,将其逆转并输出。
拉丁猪文字游戏——这是一个英语语言游戏。基本规则是将一个英语单词的第一个辅音音素的字母移动到词尾并且加上后缀-ay(譬如“banana”会变成“anana-bay”)。可以在维基百科上了解更多内容。
统计元音字母——输入一个字符串,统计处其中元音字母的数量。更复杂点的话统计出每个元音字母的数量。
判断是否为回文——判断用户输入的字符串是否为回文。回文是指正反拼写形式都是一样的词,譬如“racecar”。
统计字符串中的单词数目——统计字符串中单词的数目,更复杂的话从一个文本中读出字符串并生成单词数目统计结果。
文本编辑器——记事本类型的应用,可以打开、编辑、保存文本文档。可以增加单词高亮和其它的一些特性。
RSS源创建器——可以从其它来源读取文本并将其以RSS或者Atom的格式发布出去。
实时股价——可以 ...
OpenWRT折腾记 - 2
前面帮那个哥们装完星际宝盒的OpenWRT之后,发现空载时的核心温度为80℃以上,于是我也想装一个体验一下,看到他的界面比Padavan好看,而且还支持KMS服务器什么的插件,然后我也给我的新三(NewWiFi D2)装了一个。
目录
前言
刷机
换源
扩容
换主题
汉化
插件
官方插件
第三方插件
配置
IPv6配置
WAN6
WAN
LAN
防火墙
杂项配置
NTP
管理权限
防火墙
端口转发/UPnP
密码
静态DHCP地址
日志
后记
前言
首先说明,我会尽量使用图形化界面来进行配置,因为命令配置通常是无记录且不可逆的。
刷机
刷机就不说了,恩山论坛上一大把自编译固件,但是我用的是官方固件,因为装各种包的玄学问题会尽量少(折腾那个哥们的OpenWRT已经充分让我感受到了什么叫玄学),在这里找到d-team_newifi-d2-squashfs-sysupgrade.bin,注意一定要是squashfs-sysupgrade的,另一个真的是纯净版系统,啥都没有,连WiFi驱动都得自己装的那种,很不推荐。这个有一些基本的功能,算是一般定义的纯净了。然后 ...
OpenWRT折腾记
有一哥们再也无法忍受小米路由青春版(79那个可以用充电宝供电的巴掌大的路由器)的孱弱性能了,于是考虑购入星际宝盒(矿渣路由器)。由于买来需要用Dr.COM,于是问卖家能不能用,卖家说不行。我说:“这OpenWRT都装上了,只要有GCC就能编译一个Dogcom出来,怎么就不行呢?您随便买,买来我帮您装(其实是自己想玩(bushi))。”
于是就有了这篇文章。
前言
路由器还没拿到手,我先让那哥们装一下Dogcom作者编译出来的ipk插件试一下,结果发现不行,然后网上也没找到这个CPU的编译成品,我心想坏了,该不会是什么特殊CPU吧,别装逼失败了,赶紧上网查了一下,哎,舒了一口气。该路由的主要配置如下:
硬件
参数
CPU
高通 骁龙 IPQ4019
RAM
512M
ROM
128M
接口
USB3 * 1 + WAN(1Gbps) * 1 + LAN(1Gbps) * 2
一查OpenWRT官方,还好,这种类型的CPU在官方的支持列表中,不需要自己写DTS文件,相当省事。那其实需要做的仅仅就是编译一个插件出来,不需要编译内核和固件。上网一查,还真有教 ...
51单片机学习笔记-第一周-点亮LED
以前我也进行过51的学习,但是不太系统,这次跟着物理学院的一个嵌入式开发小组学习一下,应该会比较有意思。
环境搭建
这个没什么好说的,跟着教程一步一步走即可,先装驱动,再装Keil,需要注意一下,Keil最新版本是5,到官网下载C51的最新版本即可。
Keil在高分屏下的设置,需要右键属性->兼容性->更改高DPI设置->高DPi缩放替代即可。
关于编辑器主题,这里附赠一个类似VS Code的暗色主题:
# properties for all file types
indent.automatic=1
virtual.space=1
view.whitespace=0
view.endofline=0
code.page=936
caretline.visible=1
highlight.matchingbraces=1
print.syntax.coloring=1
use.tab.color=1
create.backup.files=0
auto.load.e ...
LaTeX学习笔记
由于需要参加美赛,所以我来学习LaTeX了,这个LaTeX我早有耳闻,但是只知道它表示数学公式比较不错,接触之后发现它简直就是科研工作者的救星,因为只需要学习简单的几个指令就可以进行标准化的排版,下面这篇博客是对我学习过程及一些LaTeX语法的记录。
准备工作
首先需要下载一款可以支持LaTeX的编辑器,由于时间不是很充足,我没有找到原生支持LaTeX的编辑器。我一开始看到LaTeX,以为它应该像MarkDown那样被广泛支持,但是实际上它的支持情况并不理想,甚至2020年的今天,要想显示中文还是比较困难的一件事。
LaTeX是需要编译的,编译结果为PDF。我在网上看到的大部分方法都需要下载LaTeX官方的编译器,大概为4个G,我不知道为什么这么大,但是我看到下载完这4个G仍然需要进行复杂的设置才能获得接近MarkDown的书写体验,我就放弃了本地客户端转向在线客户端。
当然,在线客户端的问题很多,最直接的就是无法安装自己想要的包。不过,我们现在就是简单学习一下,并不需要多么复杂的包和宏集,所以,我找到了一款在线的LaTeX编辑器,免费且支持实时预览,请移步ShareLaTeX, ...
一道有意思的练习题
今天,在查询C++练习题时,发现一个有趣的项目,如图,其分析给了一个数列,但本人认为这是练习对象的一个好机会,因为可以用以下方式实现:
![1]
首先,需要有一个Nature包,其中有Time类。
Time类代码如下:
12345678910111213141516171819202122232425262728package Nature;public class Time { public static float month = 30;//set 1 month equals to 30 days; public static float day = 1; public static float year = 360; float time; public int getTimeByDay() { return (int)time; } public int getTimeByMonth() { return (int) (time/this.month); } public float getTimeByYear() &# ...
C++学习第一天
今天,在编写第一个C++程序时,出现了一个编译错误:
![1]
以下是原来的代码:
12345678910111213141516#include <iostream>int main(){ using namespace std::cout; using namespace std::cin; using namespace std::endl; int dogs = 1; cout << "I have " << dogs << " dogs." << endl; cout << "Then you need to add some dogs, input the number which you want to add: "; cin >> dogs; dogs += 1; cout << "Now I have " << dogs << " ...
在CentOS 6上搭建 方舟:生存进化 服务器
Foreword
In 2018, Steam had been started a Chinese Spring Festival Selling Activity, I buy a ARK: Survival Evolved in this activity. Though I can’t play it at the moment, but I can setup a server. Luckily, I have an avaliable VPS.
Contents
Prepare
Installation
Update glibc
Update gcc
Install Third Party Dependency
Install arkserver
Usage
All Commands
Running
Updating
Debugging
Configure LinuxGSM
Further Information
Prepare
A 4GB RAM or higher VPS
CentOS 6 or higher system
Installa ...
在XCode中编译下载的项目
Foreword
Sometimes, we need to compile others’ program, but to the people who didn’t know Swift or Objective-C at all, compiling other people’s program is so difficult to do. So this passage will tell you how to compile existed project in XCode.
Contents
Prepare
Carthage
CocoaPods
Compile
Clone Project
Prepare
There are two ways to install project’s dependency, so judge it from project files.
You may saw some projects tree like this: ![Cartfile Project][1]
Look at the last two files, ...

