请选择 进入手机版 | 继续访问电脑版

『瀚思彼岸』» 智能家居第一站

 找回密码
 立即注册
查看: 6697|回复: 163

[开关插座] 論壇改裝模塊的全新應用 - ESPurna for HASSMART

  [复制链接]

16

主题

193

帖子

1549

积分

金牌会员

Rank: 6Rank: 6

积分
1549
金钱
1356
HASS币
86
发表于 2018-6-30 16:47:39 | 显示全部楼层 |阅读模式
本帖最后由 chinyaolin 于 2018-8-10 15:27 编辑

2018/07/20 更新 ESPurna 1.13.1 調整一下程式碼架構, 改以 custom.h 放置自定義的內容, 方便以後更新版本

// custom.h
// 擴充 arduino.h 編譯時所要編的硬體
#define HASSMART_SINGLE
//#define HASSMART_DUAL
//#define HASSMART_TRIPLE

// 擴充 general.h
#define DEVICE_NAME             MANUFACTURER "-" DEVICE

// 擴充 hardware.h 改裝模塊 GPIO 定義 包含單開雙開及三開
#if defined(HASSMART_SINGLE)
    #define MANUFACTURER        "HASSMART"
    #define DEVICE              "SINGLE"
    // Buttons
    #define BUTTON1_PIN         0       // Button 0 on header
    #define BUTTON1_RELAY       1
    #define BUTTON1_MODE        BUTTON_PUSHBUTTON | BUTTON_DEFAULT_HIGH
    // Relays
    #define RELAY1_PIN          12
    #define RELAY1_TYPE         RELAY_TYPE_NORMAL
    // LEDs
    #define LED1_PIN            13
    #define LED1_PIN_INVERSE    0

#elif defined(HASSMART_DUAL)
    #define MANUFACTURER        "HASSMART"
    #define DEVICE              "DUAL"
    // Buttons
    #define BUTTON1_PIN         0       // Button 0 on header
    #define BUTTON2_PIN         14      // Button 1 on header
    #define BUTTON1_RELAY       1
    #define BUTTON2_RELAY       2
    #define BUTTON1_MODE        BUTTON_PUSHBUTTON | BUTTON_DEFAULT_HIGH
    #define BUTTON2_MODE        BUTTON_PUSHBUTTON | BUTTON_DEFAULT_HIGH
    // Relays
    #define RELAY1_PIN          12
    #define RELAY2_PIN          5
    #define RELAY1_TYPE         RELAY_TYPE_NORMAL
    #define RELAY2_TYPE         RELAY_TYPE_NORMAL
    // LEDs
    #define LED1_PIN            13
    #define LED1_PIN_INVERSE    0

#elif defined(HASSMART_TRIPLE)
    #define MANUFACTURER        "HASSMART"
    #define DEVICE              "TRIPLE"
  // Buttons
    #define BUTTON1_PIN         0
    #define BUTTON2_PIN         14
    #define BUTTON3_PIN         2
    #define BUTTON1_MODE        BUTTON_PUSHBUTTON | BUTTON_DEFAULT_HIGH
    #define BUTTON2_MODE        BUTTON_PUSHBUTTON | BUTTON_DEFAULT_HIGH
    #define BUTTON3_MODE        BUTTON_PUSHBUTTON | BUTTON_DEFAULT_HIGH
    #define BUTTON1_RELAY       1
    #define BUTTON2_RELAY       2
    #define BUTTON3_RELAY       3
    // Relays
    #define RELAY1_PIN          12
    #define RELAY2_PIN          5
    #define RELAY3_PIN          4
    #define RELAY1_TYPE         RELAY_TYPE_NORMAL
    #define RELAY2_TYPE         RELAY_TYPE_NORMAL
    #define RELAY3_TYPE         RELAY_TYPE_NORMAL
    // LEDs
    #define LED1_PIN            13
    #define LED1_PIN_INVERSE    0
#endif


首先感謝 Yonsm 的文章 - espurna - 支持Sonoff、Hassmart、NodeMCU的高性能、稳定固件
決定自己編譯論壇模塊專用的韌體/固件
這幾天以來不知道跌入多少坑中, 總算是有了一些結果, 貢獻給大家

官方網頁 : ESPurna Firmware
Y 大客製版 : tree/Yonsm ESPurna Firmware

我先使用 Ariduno IDE 1.8.5 搭配官方版本的程式碼, 不斷調校環境直到成功, 有興趣的人參考以下連結
https://github.com/xoseperez/espurna/wiki/ArduinoIDE
原作者詳細說明了如何將原始碼編譯出 ESPurna 韌體/固件

接著參考 Y 大的程式碼, 主要有兩個部份 arduino.h 與 hardware.h,
關於 hardware.h, 細節不多說, 主要在新增論壇模塊的 GPIO 定義, 節錄部份代碼如下

// hardware.h
// 修改內容整併至 custom.h 保持原始文件不做更動


另外一個是 arduino.h, 這個檔案選擇編譯的模塊以及額外要支援的功能

// arduino.h
// 修改內容整併至 custom.h 保持原始文件不做更動


我自己實際將雙開模塊刷上這個自製的韌體/固件後, 到目前使用上並無什麼問題
之後再找機會分享我的應用方式

PS.1 不好的話還是需要說在前頭, 我個人不對刷韌體/固件的風險負任何責任, 決定使用的朋友請自行承擔結果
PS.2 編譯時, 檔案 general.h 中的 #define USE_PASSWORD 設定為 0, 但還是建議要設上密碼確保安全

PS.3 編譯好的韌體(1.13.0) 回帖後可下載

游客,如果您要查看本帖隐藏内容请回复

评分

参与人数 2金钱 +20 收起 理由
neroxps + 10 在下对你的景仰犹如滔滔长江之水,连绵不绝.
Roger + 10 分享是一种美德!

查看全部评分

回复

使用道具 举报

3

主题

141

帖子

987

积分

高级会员

Rank: 4

积分
987
金钱
846
HASS币
0
发表于 2018-6-30 16:56:17 | 显示全部楼层
谢谢分享,在等各位大神发nodemcu的固件
回复

使用道具 举报

2

主题

550

帖子

2221

积分

金牌会员

Rank: 6Rank: 6

积分
2221
金钱
1671
HASS币
85
发表于 2018-6-30 20:55:45 | 显示全部楼层
感谢楼主分享~
回复

使用道具 举报

4

主题

199

帖子

1083

积分

金牌会员

Rank: 6Rank: 6

积分
1083
金钱
884
HASS币
0
QQ
发表于 2018-6-30 22:15:45 | 显示全部楼层
谢谢分享
回复

使用道具 举报

30

主题

980

帖子

3682

积分

论坛元老

Rank: 8Rank: 8

积分
3682
金钱
2697
HASS币
0

活跃会员

发表于 2018-7-1 10:09:13 | 显示全部楼层
谢谢分享!!
回复

使用道具 举报

4

主题

150

帖子

868

积分

论坛积极会员

积分
868
金钱
718
HASS币
0
发表于 2018-7-1 15:37:05 | 显示全部楼层
真不错    得学习一下。。我也试过便以 ,但头痛。。
回复

使用道具 举报

2

主题

17

帖子

214

积分

论坛分享达人

积分
214
金钱
197
HASS币
0
发表于 2018-7-1 15:37:29 | 显示全部楼层
非常好用的固件,感谢分享。
回复

使用道具 举报

0

主题

122

帖子

942

积分

论坛积极会员

积分
942
金钱
820
HASS币
0
发表于 2018-7-1 17:23:56 | 显示全部楼层
感謝大大熱情提供!!
回复

使用道具 举报

1

主题

194

帖子

1094

积分

金牌会员

Rank: 6Rank: 6

积分
1094
金钱
900
HASS币
0
发表于 2018-7-1 20:28:19 | 显示全部楼层
學習學習
回复

使用道具 举报

2

主题

79

帖子

699

积分

高级会员

Rank: 4

积分
699
金钱
620
HASS币
0
发表于 2018-7-1 23:11:02 | 显示全部楼层
看一下如何应用
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2019-7-22 18:18 , Processed in 0.101867 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表