Wirehome.Core is a home automation system written in C# targeting .NET Core. It runs on Linux, Windows and macOS. Wirehome.Core

智能家居 ⭐☆☆☆☆ (1/5) 已发布
chkr1011 262 Stars Apache-2.0 BOM 完整度: /5 教程完整度: /5

项目简介

Wirehome.Core是用C#编写的.NET Core家庭自动化系统,支持Linux、Windows和macOS。


Wirehome.Core 是一个基于 .NET Core 构建的开源家庭自动化系统,完全使用 C# 编写,并针对 .NET Standard 2.0+ 进行优化。它能够运行在 Windows、macOS 以及 Linux 系统上,包括像 Raspberry Pi 2 Model B+ 这样的单板计算机,具备出色的跨平台兼容性。该项目旨在解决智能家居领域中设备碎片化与协议不统一的问题,通过抽象化的适配器机制,让用户能够灵活地集成和控制各种物理硬件。其核心亮点在于,与硬件的交互是通过 Python 编写的适配器来实现的,这些适配器可以从独立的仓库下载并安装到本地实例中,而 Python 代码的执行引擎则采用了 IronPython。这些适配器能够访问丰富的 Wirehome.API 模块,从而实现对 GPIO、I2C、MQTT、HTTP、COAP 等多种通信协议和接口的支持。此外,Wirehome.Core 内置了一个功能完整的 MQTT 代理和一个 HTTP 服务器,既可以用于托管用户自定义内容,也能直接与设备进行交互。自动化逻辑和自定义服务同样采用 Python 编写,例如对 Open Weather Map 的集成就是完全通过 Python 实现的,并且可以从官方的 Wirehome.Repository 下载和更新版本。项目还附带一个名为 Wirehome.App 的 Web 应用,由 Wirehome.Core 托管,能够在智能手机、平板电脑和 PC 等几乎所有现代设备上流畅运行,为用户提供直观的控制界面。总的来说,Wirehome.Core 特别适合那些希望使用 .NET 技术栈,同时又需要灵活利用 Python 生态来驱动各种智能硬件、构建复杂自动化场景的开发者和智能家居爱好者。

标签

项目特点

跨平台运行:基于 .NET Core,可在 Linux、Windows 和 macOS 上部署,兼容树莓派、PC 等设备。
多硬件支持:原生集成 ESP32、ESP8266、Arduino 等微控制器,以及 Raspberry Pi 的 GPIO 和传感器。
模块化架构:采用组件化设计,支持通过插件和脚本(C#、Python)扩展功能。
本地优先:所有自动化逻辑和数据处理在本地完成,不依赖云服务,保障隐私和响应速度。
丰富的通信协议:支持 MQTT、HTTP、WebSocket 等协议,方便与其他智能设备或系统集成。
可视化配置:提供 Web 管理界面,可实时监控设备状态、编辑自动化规则。

技术规格

开发语言
运行环境
支持操作系统
支持的硬件平台
通信协议
数据库
脚本语言
许可证
最新版本

项目资源

物料清单 (BOM)

物料名称 数量 参考价格 备注
Raspberry Pi 3/4/5 1 推荐运行主控
树莓派电源适配器 (5V/3A) 1 稳定供电
microSD 卡 (16GB+) 1 系统与数据存储
ESP32 开发板 1+ 无线传感器/执行器节点
ESP8266 开发板 1+ 低成本 Wi-Fi 节点
Arduino Uno/Mega 1+ 有线传感器/执行器节点
温湿度传感器 (DHT22/BME280) 1+ 环境监测
运动传感器 (HC-SR501) 1+ 人体感应
继电器模块 1+ 控制灯光/电器
LED 灯带 (WS2812B) 1+ 氛围灯控制
路由器/交换机 1 局域网通信

所需工具

工具用途是否必需
.NET SDK 编译和运行 C# 代码 ✅ 是
Visual Studio / VS Code 代码编辑与调试 ▢ 推荐
Git 版本控制与代码克隆 ✅ 是
MQTT Broker (如 Mosquitto) 设备间消息通信 ▢ 推荐
Python 3 编写自动化脚本 ▢ 推荐
Arduino IDE 烧录 ESP32/Arduino 固件 ▢ 推荐
PuTTY / 终端 SSH 连接树莓派 ▢ 推荐

能力画像

记忆与知识检索
2/5
逻辑推演
3/5
表达与交流
1/5
感知与观察
2/5
数理与计算
3/5
狂热与坚持
3/5
创造与创新
4/5

所需技能

基础 Linux 命令行操作(SSH、文件管理、服务管理) C# 或 Python 编程基础(编写自动化脚本) 电子电路基础(连接传感器、继电器等外设) MQTT 协议基本概念 树莓派或类似单板计算机的使用经验 Git 版本控制基础

适用场景

搭建本地化、不依赖云服务的智能家居中枢
用树莓派控制家中灯光、窗帘、空调等设备
集成 ESP32/ESP8266 传感器节点,实现温湿度、运动等环境监测
通过 MQTT 与 Home Assistant、OpenHAB 等其他系统联动
学习 .NET Core 在物联网领域的实际应用
开发自定义自动化规则,如根据时间、传感器数据触发设备动作