Django登陆Admin后台错误的解决方案

最近学习使用Django来做网站,但是遇到一个问题,就是无法通过localhost:8000/admin来登陆后台,提示连接错误。但是如果输入错误的用户名的话,会提示你用户名或者密码错误,也就是说你输入正确了,需要跳转的时候就会出问题。在网络上找了不少的解决方案,但是都不能解决我的问题,除了下面这个。

1. 下载pipenv

2. $ pipenv shell

3. (code) $ django-admin startproject emaillogin_project #开始建立一个新的项目

4. (code) $ python manage.py startapp users #开始建立一个新的app, 叫做users

5. 更改项目的设定的文件,也就是setting.py,注意,红色部分就是新增加的

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.sites',

# 3rd party
'allauth',
'allauth.account',
'allauth.socialaccount',

# Local
'users.apps.UsersConfig',
'pages.apps.PagesConfig',

]
# emaillogin_project/settings.py
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'

AUTHENTICATION_BACKENDS = (
    # Needed to login by username in Django admin, regardless of `allauth`
    "django.contrib.auth.backends.ModelBackend",

    # `allauth` specific authentication methods, such as login by e-mail
    "allauth.account.auth_backends.AuthenticationBackend",
)

SITE_ID = 1

ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_SIGNUP_PASSWORD_ENTER_TWICE = False
ACCOUNT_SESSION_REMEMBER = True
ACCOUNT_AUTHENTICATION_METHOD = 'email'
ACCOUNT_UNIQUE_EMAIL = True
6.(code) $ pipenv install django-allauth #安装这个第三方的插件,我直接pip安装
7. (code) $ python manage.py migrate
8. 项目urls文件里面是这样的。
from django.contrib import admin
from django.urls import path, include # new

urlpatterns = [
    path('admin/', admin.site.urls),
    path('accounts/', include('allauth.urls')), # new
9. 当然还有模块文件夹和模块等等。。。
(code) $ mkdir templates
(code) $ mkdir templates/account
(code) $ touch templates/account/login.html
(code) $ touch templates/account/signup.html
<!-- templates/account/login.html -->
<h2>Log In</h2>
<form method="post">
  {% csrf_token %}
  {{ form.as_p }}
  <button type="submit">Log In</button>
</form>
<!-- templates/account/signup.html -->
<h2>Sign Up</h2>
<form method="post">
  {% csrf_token %}
  {{ form.as_p }}
  <button type="submit">Sign Up</button>
</form>
10. (code) $ python manage.py startapp pages #新建页面app
11. 。。。。太多内容了。其实git上有一个代码,下载下来就能用了。 

https://github.com/wsvincent/django-login-with-email

我用了这个代码以后,刚开始也不行,然后admin神奇的就可以用了。以为是电脑的环境变化了,重新新建一个项目,但是还是不能工作,重新用这个代码,然后还是可以使用。

这个代码的好处不仅是解决了后台的问题,同时给了我们一个新用户注册和登陆的解决方案,其他的内容可以在这个基础上增加即可。

ESPHOME通过MQTT发送指令控制ESP8266上面的灯

涉及到几个部分:

1、一个安装了MQTT的服务器,也可以在本机上模拟一个,我用的是https://www.emqx.io/cn/products/broker

2、把程序编译并烧录至ESP8266的模块中。注意API的功能要禁止,不能喝mqtt同时使用

mqtt:
broker: 服务器的IP地址
username: 用户名
password: 密码
discovery: True # 启用主动发现
discovery_prefix: homeassistant # 不设置默认就这个,要和ESPHome的一致

switch:
– platform: gpio
id: “logo_light”
name: “8266light_logo_light”
pin:
number: D0 #LED的正极接D0, 负极接一个GND
# HASS标准格式  状态话题  HASS接收来自设备的状态信息
state_topic: “8266light/switch/8266light_logo_light/state”
# HASS标准格式  命令话题  HASS发送控制设备的命令
command_topic: “8266light/switch/8266light_logo_light/command”

3、在homeassistant中会找到一盏灯。 确保操作开关,EPS8266上的灯会被点亮或者关闭

1577951505(1)

4、登录的MQTT的后台订阅一下8266light/#

1577951361(1)

然后发送消息给8266light/switch/8266light_logo_light/command这个主题,内容是on或者off。一切正常的话,板子上的灯会打开或者关闭

1577951425(1)

5、也可以电脑下载一个MQTT的客户端来做,我用的是MQTTBox,用来测试非常方便,输入on 或者off能起到相同的效果。

http://workswithweb.com/html/mqttbox/downloads.html

1577951849(1)

Windows 下面安装ESPHOME出错的解决方法

在Windows下面安装ESPHOME也很简单,但是安装好以后使用的时候,编译,上传窗口都不会有任何的内容,但是可以创建yaml文件。命令行窗口则会出现TypeError: ‘NoneType’ object is not callable错误。具体如下:

1

网上找不到解决方案。研究了一下,结果还是从命令行工具解决了。

1. 使用localhost:6052 创建一个yaml文件。其实手工创建也可以的。

2

2. 使用命令行编译, esphome config/test.yaml compile

3. 编译完成以后会得到一个firmware.bin的文件,地址在C:\Users\pzhang\config\test\.pioenvs\test里面,注意test就是你创建的yaml文件名称

4. 使用https://github.com/esphome/esphome-flasher/releases 这个页面下载的工具,把这个固件烧录到ESP8266里面

Capture

这个时候就可以在homeassistant的页面里面发现并使用了。因为只是做实验,所以并没有任何可以操控的内容。

3

现在回过头来分析一下,是不是编译路径问题造成网页版的无法使用呢?现在还不知道。但是我的两台MAC电脑都可以使用网页版的进行编译、烧录。

智能家居篇-5:ESP01 + DHT22 接入HomeAssistant

智能家居篇-5:ESP01 + DHT22 接入HomeAssistant

智能家居篇-5:ESP01 + DHT22 接入HomeAssistant
(包含ESP01、DHT22和继电器模块的盒子)

  前几篇文章介绍了如何将安装HomeAssistant、ESPHome并通过ESP01模块,将继电器、RGB接入HomeAssistant的教程,这篇文章介绍如何做一个智能浇花系统,通过DHT22温湿度传感器和继电器,控制一个小水泵,让你家阳台的花花草草,不再被晒死。。。

这里有一个小Bug,DHT22传感器测量的是空气中的温湿度,并不是土壤的温湿度,土壤湿度传感器的接入放在下篇文章讲。


电路设计

电路比较简单,ESP01的GPIO-0接继电器,控制水泵的开合,GPIO-2接DHT22,都是采用现成模块,随便找了个合适的盒子。

智能家居篇-5:ESP01 + DHT22 接入HomeAssistant
(盒子内部构造)


程序设计

程序也比较简单,两个设备,DHT22温湿度传感器 和 relay继电器模块,程序如下:


为防止爬虫恶意采集,此处内容需要评论回复后方可阅读。


按照上两篇教程的方法,将ESPHome环境中编译好的固件,烧录到ESP01中即可,然后再HomeAssistant 管理后台,添加设备,即可完成所有设置。

打开手机,即可发现设备已经添加进来,此时已经可以通过APP or Siri 进行控制了~

智能家居篇-5:ESP01 + DHT22 接入HomeAssistant

PS:这里还存在一个问题,HomeKit无法发现并显示湿度数据,我查阅了一些资料,目前暂未解决,我的HomeAssistant版本是0.98.1,若有知道怎么弄的朋友,望告知一下,非常感谢~~



智能家居篇-5:ESP01 + DHT22 接入HomeAssistant

智能家居篇-5:ESP01 + DHT22 接入HomeAssistant

觉得好看,点个【在看】~~~

智能家居篇-5:ESP01 + DHT22 接入HomeAssistant


智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制
(图来自互联网,若有侵权请告知删除)

视频如下:


  上一篇介绍了如何利用ESP01/01S + 继电器模块实现台灯的改造,其实不局限于台灯,那个模块可以应用于你想要控制的任何开关场合,比如:热水器,风扇,鱼缸水泵等等。。。这一篇文章玩一点有趣的,刚好手头上有一块WS2812B RGB模块,查了下资料,ESPHome 刚好支持,于是就开始折腾啦。

首先,准备材料有:

  • WS2812B 模块;

  • ESP01/01S模块;

  • ESP01 烧录器;

  • 220Vac 转 5V dc模块;

第一步:创建rgblight

在ESPHome 管理界面中新建一个rgb_light 硬件,详细步骤请参考上一篇:智能家居篇-3,rgb_light配置代码如下:


为防止爬虫恶意采集,此处内容需要评论回复后方可阅读。


按照上一篇的步骤,进行编译,下载,烧录就行了

安装模块

需要注意的是:ESP01/01S模块是3.3V dc供电,WS2812B是5V 供电,台灯多数是220V ac,所以需要使用一个小变压器模块,将220V ac 转为 5V dc,且在接ESP时,要将5v降压到3.3v ,还有在操作电路时,
切记不能带电操作,强电、弱电做好绝缘隔离
切记不能带电操作,强电、弱电做好绝缘隔离
切记不能带电操作,强电、弱电做好绝缘隔离

推荐下面这种,220v ac ~ 5V dc 模块。
智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

这个位置可以焊接ASM1117-3.3 芯片,实现多一路3.3v输出

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

我这是之前买了个LED台灯,就随手把它拆了,发现拆掉里面的LED电路板,刚好能容纳ESP01S + WS2812b,所以就把变压器模块放到了台灯底座上,这也是考虑到如果将ESP01S放在底座上,会无法接收到wifi信号,因为底座是金属的,放在里面基本完全屏蔽了电磁信号,真机智如我…

(没有热缩管了,在接线处打胶,防止产生电弧)
智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

变压器模块置于底部,并用电工胶布包好,因为RGB灯功率不高(最多1.5W),所以基本不用担心发热导致胶布融化问题。

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

将ESP01S + WS2812B 置于灯泡内部,这样灯泡也能旋转出来,需要注意的是电源正负极不要搞反了,接入灯泡的是5V,所以需要在这里面加一个3.3v 降压芯片。

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

直接用AB胶把WS2812B 粘在ESP01S 上,应该不会影响信号吧 = =

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

合上雾面灯罩,一个智能 RGB灯就诞生了23333,还能让Siri 改变颜色、亮度哦~

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

试试APP 上的效果~

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

哈哈哈哈



智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制

觉得好看,点个【在看】~~~

智能家居篇-4:ESP01/01S + RGB 接入HomeAssistant,实现Siri控制


智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

前言

  ESP-01/01S应该是目前最便宜的ESP8266系列模块了。在未涨价之前,单个模块价格在3-4块之间,不知为啥现在都涨价了= =、现在价格在6-8块之间,安信可官方店里卖10块,加上一个继电器模块,总价在10-15块之间。

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(ESP01/01S模块)

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(ESP01/01S + 继电器 模块)

也就是说:通过研读本篇文章,你只需花3-4瓶快乐水的钱,即可让你桌面上的台灯接入HomeAssistant,实现APP or Siri 智能控制。如果换成是现成的设备呢?

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(HomeKit认证的插座 288块,够我买半年快乐水了,打扰了…)

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(小米米家插座,49块)

这么一看,小米是真的很良心啊!确实,价格屠夫嘛,可是米家设备闭源,不支持开放协议,虽然也可以通过米家Aqara二代网关接入,但是,二代网关多少钱?比我半年快乐水还多23333…


好了进入正题,本片文章讲的是如何使用ESP01/01S通过刷ESPHome固件接入HomeAssistant 的过程,可能会比较长,但是比较简单,跟着教程基本能100%实现。本篇文章会分两个部分,第一部分为ESPHome固件的编译与烧录;第二部分为ESPHome设备添加到HomeAssistant实现智能控制。

第一部分

第一步:准备工作

准备材料、工具、环境:

  • 准备材料:ESP01/01S(注意:这是两个不同的模块,01和01S都可以),继电器模块。可以直接买上面一套的那种,10.2 元的,还需要有一个烧录工具

  • 工具:小螺丝刀,烧录工具,杜邦线等

  • 环境:HomeAssistant ,ESPHome 环境,参考前两篇连载文章;

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(需使用到的模块)

最右边的是一个烧录工具,它与上面我提供的链接里的不一样,但是功能是一样的。提供链接里的烧录器不需要上电GPIO-0拉高,但我图中的这种是需要拉高,才能进去烧录模式。


第二步:添加ESPHome硬件

在局域网内,打开ESPHome管理界面,浏览器输入群晖IP:6052,打开主界面。点击右上角加号,开始添加设备的操作

1、在第一栏输入设备名称,可以自定义,只能由小写字母,不能大写字母开头,可以使用下划线、拼音,不遵循驼峰命名法则,写好之后点击蓝色按钮CONITNUE

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

2、设备类型选择:Generic ESP8266即默认的就可以。点击CONITNUE

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

3、输入Wifi信息,注意:ESP8266 只支持2.4G wifi,不支持5G wifi,请不要搞错了。OTA & HA 连接密码,我这里填的是1,这里需要记住,后面要用到。

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

4、输入完成之后,最后一步点击SUBMIT即可完成对设备的初步设定。
智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制


第三步:编写配置文件代码

这是关键的一步,在这里你需要通过编写一些配置代码,实现对这个设备的控制,一些简单的控制逻辑、传感器算法也是在这里配置的。不会很难,很简单的 = =、

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

回到ESPHome配置界面,找到刚刚新建出来的switch硬件,点击②EDIT 进入编辑,代码如下:


为防止爬虫恶意采集,此处内容需要评论回复后方可阅读。



第四步:校验-编译-下载

.yaml配置文件对空格、换行敏感,请特别注意!编写好了之后,点击右下角SAVE,然后点击④VALIDATE 检查一下配置文件有没有错误,如下图,出现右上角标志,表示配置文件没有错误,能通过校验。

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

通过校验之后,点击CLOSE关闭校验窗口,回到主界面,点击switch右上角三个点,弹出来选择Compile开始编译固件,大概需要3-5分钟即可完成编译。

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(开始编译)

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(编译成功)

然后点击DOWNLOAD BINARY将固件下载到桌面。

2019.9.4,接着更…

上面编译完成的固件下载保存到桌面之后之后,就需要通过下载工具烧录到ESP01/01S中了。

第五步:烧录固件

烧录软件点击下面链接获取

复制地址到浏览器打开:http://www.codess-yun.top:6860/index.php?share/file&user=1&sid=mZRfKghx

提取密码:EkEe9

或者Github下载:下载工具

首先,把ESP01/01S接上烧录工具,注意方向,否则直接烧报废,还有GPIO0需要拉低才能进入擦除Flash模式,也就是:拉低GPIO0再插入电脑USB

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(烧录成功)


第六步:接入HomeAssistant

让ESP插上继电器模块接入5v电源,注意:ESP01/01S模块的CH_PD引脚需要拉高至VCC才能正常工作!,如下图:

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(这里是为了演示引脚接法,实际使用中请不要直接使用焊锡飞线)

稍等一会儿在路由器管理界面就能看到接入的ESP设备,地址就是上面配置文件中你设置的地址,在这里就能测试继电器模块是否能正常工作,能显示这个界面,肯定是能工作的。

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制
(WEB管理界面,也可以在这里进行固件的升级)

然后打开 HomeAssistant管理界面,配置-Server Control ,重启一下服务,稍等一会儿,再刷新一下就能看到一个新设备了。

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

按照步骤添加就行了

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

下面的是你设置的连接HA密码,我设的是1;
智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

然后,在主界面,点击右上角三个点,“未使用的实体” 就能发现你刚添加的继电器了,然后“配置UI” — “原始UI编辑器” 加上下面的卡片代码:


- entities:
- switch.test_switch_relay
show_header_toggle: false
theme: default
title: 测试房间
type: entities

(注意:这里只是一张自定义卡片,请严格遵循缩进)

卡片示意图:

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

打开HomeAssistant APP 和 Apple家庭应用:

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

自动添加,完美~

此时呼唤一句:嘿~ Siri,打开“测试开关”试试?

到了这里,台灯的智能改造已经完成95%了,至于后面怎么接入、改造台灯部分,那就自己发挥啦,强电一定要注意安全哦。





智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制

觉得好看,点个【在看】~~~

智能家居篇-3:ESP-01/01S 接入HomeAssistant,实现Siri控制


智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

介绍

  ESPHome 是一个配置、管理智能硬件的系统。它通过简单但功能强大的配置文件,控制ESP8266 / ESP32硬件,实现家庭自动化控制。

开篇之前,先简明介绍一下本篇文章内涉及到的一些可能带有一点专业性的名词:

固件:也叫“程序”,就是通过编写代码实现特定控制功能的文件,它能够烧录(写)进特定芯片里面。比如:洗衣机、空调、智能电饭煲等,里面都有控制芯片,那么实现智能化的,就是芯片里面的程序了,程序编写好了之后是固定不变的,所以也叫固件。

编译环境:就是在编写代码的时,调试、运行代码所需要的环境,它需要包含了特定的头文件、依赖文件、库文件等等。

编译固件:就是在编写完代码之后,生成“固件”的过程;

配置文件:就是对硬件、软件起配置、初始化作用的文件。HomeAssistant 和 ESPHome 的配置文件格式都为.yaml

  ESPHome简而言之,它就是一个在线编译的系统、环境,它尽可能减少你的学习成本 or 学习难度,直接使用这个环境(系统)就能够编译出特定需求、使用场景的硬件固件,让你直接刷入就可以使用了。emmmm,是不是还有点不明白?

前言

举个栗子:
  假如你有一个ESP8266,一个温度传感器(DHT11/DHT22),还有一个继电器模块,你想要对你家那台老破旧的台式电风扇做个改装,让它实现智能化。比如:当温度超过 36° 就自动打开风扇,并调到最大档,当温度在 30-36° 就打开为第二档,当温度小于30° 的时候,打开为第一档,微风模式。或者把它连入手机,让我躺在床上就能控制它开关、换挡呢?

在以前,没有ESPHome的时候,你需要的工具有:Arduinoesptool + 基本的C语言编程知识(最起码别人写的代码你得看得懂 = =),而且,就算你使用别人写好的代码 + 官方库,使用Arduino编译固件,可能还会带来一系列的依赖、报错信息,这大概劝退了80%的人。而有了ESPHome之后,你根本不需要考虑编译环境的问题,只需要自己编写一个.yaml配置文件,就能生成固件了。

听到这里,是不是还是有很多朋友要告辞23333…且慢,听我讲完。.yaml配置文件其实很简单的 = =、不会写可以参(zhao)考(chao)别人写好的啊.


前面介绍了那么多,下面开始正题:群晖Docker安装ESPHome,为啥这么喜欢Docker,因为简单、高效,问题少。

第一步:安装Docker

看过第一篇文章的朋友,可以忽略这一步。在群晖“套件中心” 搜索“Docker” ,点击安装。

智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境


第二步:安装ESPHome

1、安装完成之后,打开 Docker ,点“注册表” ,搜索“esphome”,选择第一个,即Star数最多的那一个,右键—下载此映像,弹出的框选择latest最新版本。
智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

2、下载完成之后,在“映像”中, 选择刚刚下载的映像,点击“启动”,开始安装ESPHome。容器名称可以自定义,然后点击高级设置。

智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

3、在“高级设置”中:勾选

  • 启动自动重新启动

  • 创建桌面快捷方式
    智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

4、选择“网络”,勾选使用与Docker Host相同的网络,点击“应用”。再 “下一步”,然后点击“应用”即可完成安装
智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境


登陆ESPHome

安装好了之后,在Docker 容器界面,就能看到刚刚安装的ESPHome了,然后打开浏览器,输入群晖IP:6052就能打开ESPHome的配置页面了。

智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

至此,ESPHome 的安装已经完成,



智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境

觉得好看,点个【在看】~~~

智能家居篇-2:群晖Docker搭建ESPHome环境 ,为智能硬件构建编译环境


智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

  Home Assistant 是一款基于 Python 3 的智能家居开源系统,支持众多品牌的智能家居设备,可以轻松实现设备的语音控制、自动化等。

了解智能家居的朋友,相信肯定听过小米米家,米家目前是国内智能家居领域集成度、生态都建设地比较好的设备厂商。相比于苹果的HomeKit设备,米家的东西性价比确实不错,但是唯一有一个缺点,它是闭源的!尽管有些米家设备支持接入Homekit,但是米家生态链是闭源的,只整合小米生态链内的企业、设备商。也就是说:比如你家用的是格力、美的空调,是不能接入米家的…要想接入智能控制?请买小米空调,emmmmmm

   从本篇文章开始,我将会更新一系列文章,主要解决的就是家里各个设备接入智能化控制的过程,其中可能会有一些我自己DIY的控制设备,因为我本身是电子行业从业,与其买现成的设备刷机、改装,不如买几个模块自己做,说到底还是折(mei)腾(qian),没有这方面基础的朋友,可以直接买现成设备去改装,后面文章会详说。

本篇文章是介绍如何在群晖上安装HomeAssistant,为解决直接安装可能带引入的各种依赖问题,这里采用Docker方式,简单明了。


第一步:安装Docker

在套件中心找到Docker并安装,安装好了之后打开,点击注册表,搜索homeassistant选择第一项,注意千万别选错了。

智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

右键下载此映像,选择默认latest最新版,下载比较慢,大概需要20分钟左右。


第二步:安装homeassistant

启动安装

点击 映像,选择刚刚下载的镜像,左上角点击启动,开始安装。

智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

容器名称可以自定义,但是请安图上的写,然后点击高级设置,对容器安装环境进行设置。

1、高级设置:

  • 勾选自动重新启动

  • 创建桌面快捷方式
    智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

2、 设置:

点击文件/文件夹下面框,然后添加文件夹,选择你文件夹下用于存放HomeAssistant文件的目录,我这里存放于docker/HA路径下,装载路径框下面直接写/config,即默认配置文件是在docker/HA下。
智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

3、网络设置:

勾选网络下面使用与Docker Host相同的网络即可

4、环境设置:

点击上方号,在 可变 那里填写TZ 填写Asia/Shanghai,然后点击应用。
智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

然后,下一步,在这个页面勾选 向导完成后运行此容器,点击应用即可完成安装。

智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心


第三步:登陆HomeAssistant

登陆管理界面,在浏览器输入群晖IP:8123即可打开HomeAssistant管理界面。首次登陆会要求设置管理员、密码。我这里是远程登陆界面演示。

智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

至此,你已经完成了搭建智能家居的第一步,构建HomeAssistant智能控制中心,后面就可以开始逐步添加各种传感器、设备了。

PS:如果你要实现远程访问(我强烈不建议开放远程访问),那么需要在路由器上设置一条转发规则,将xxxx你自定义外网端口转发至群晖IP8123端口。




智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心

觉得好看,点个【在看】~~~

智能家居篇-1:群晖搭建HomeAssistant,构建智能家居控制中心