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

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

 找回密码
 立即注册
查看: 5630|回复: 155

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

  [复制链接]

16

主题

183

帖子

1479

积分

金牌会员

Rank: 6Rank: 6

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

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

[C#] 纯文本查看 复制代码
// 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 定義, 節錄部份代碼如下

[C#] 纯文本查看 复制代码
// hardware.h
// 修改內容整併至 custom.h 保持原始文件不做更動


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

[C#] 纯文本查看 复制代码
// 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

主题

132

帖子

932

积分

高级会员

Rank: 4

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

使用道具 举报

2

主题

522

帖子

2107

积分

金牌会员

Rank: 6Rank: 6

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

使用道具 举报

4

主题

185

帖子

1022

积分

金牌会员

Rank: 6Rank: 6

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

使用道具 举报

30

主题

948

帖子

3560

积分

论坛元老

Rank: 8Rank: 8

积分
3560
金钱
2607
HASS币
0

活跃会员

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

使用道具 举报

3

主题

141

帖子

828

积分

论坛积极会员

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

使用道具 举报

2

主题

17

帖子

214

积分

论坛分享达人

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

使用道具 举报

0

主题

117

帖子

881

积分

论坛积极会员

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

使用道具 举报

1

主题

188

帖子

1052

积分

金牌会员

Rank: 6Rank: 6

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

使用道具 举报

2

主题

75

帖子

667

积分

高级会员

Rank: 4

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

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2019-5-22 21:16 , Processed in 0.499342 second(s), 42 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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