C_Law 讚

如果想讀取係冷氣機的遙控器訊號可能都只是勉強夠,以我房部陳年"凶宅"(日立 OEM 年代)的 ...
GbE 發表於 2016/6/14 12:09


日立冷氣(起碼我部日立 OEM 的凶宅機)並非用 NEC protocol。之前在另一個 Post 同人講開冷氣機遙控,搵到一個網頁講拆解日立遙控訊號,不過我無再詳細研究,反正我部老爺機都年事已高,隨時都駕鶴西歸,要玩都等換新機先至玩。

這舊 Post 8#。
http://www.hkepc.com/forum/viewthread.php?fid=146&tid=2254295

另外我在下面個 Post 19# 放了一段我部凶宅機遙控器的訊號。
http://www.hkepc.com/forum/viewthread.php?tid=2293173

不過,我個凶宅機遙控器的訊號同之前講個拆解日立遙控訊號網頁所講的訊號不同,我個 Header space 比較長,而且 Pulses 數量小好多,我個由 Header mark 到 End mark 只有 211,但係上面網頁的訊號就有 595。雖然不同,但係分拆的道理都應該大同小異,都係每次只變一個 Setting,睇下有那幾 bit 改變,慢慢搵出每 bit 的用途。

TOP

本帖最後由 GbE 於 2016-6-14 19:05 編輯

Thanks C Hing, 冷氣(日立)我大慨係應用層面玩過,用 Logitech Harmony 都控制到。所以略知佢 command length 好長,成個 command 係會包含溫度/時間制/風速等等,只有部份功能先係獨立 comnand. 照睇淘的那個 NEC only module 應該唔啱駛,唯有向 Arduino 進發。

TOP

本帖最後由 lawleo 於 2016-7-24 03:15 編輯

各位專家想請教下
我想試用 arduino / esp8266 來控制家中部日立冷機
http://www.newegg.com/Product/Product.aspx?Item=9SIA9YU3RV5637

http://www.analysir.com/blog/201 ... ol-signals-arduino/ 或修改了的 IR-Remote 都學到 531 長度的 code, 但再發出黎時,冷氣機都無反應(關機), 試左學習 samsung TV 的沒問題,但日立的就係唔得,有無咩原因?repeat send 兩次又唔得,用NPN 來連接都係唔得 (samsung 電視無問題), 用另一部 arduino 同時 detect 返個 esp8266 / arduino 發出來的 signal 都係 531...我實在想唔到問題出係邊呀...有無人可以俾些意見我呀?
關機 signal
  1. Raw: (531) 3340, -1680, 420, -1264, 416, -424, 416, -424, 416, -424, 416, -464, 380, -420, 416, -464, 380, -460, 380, -460, 380, -424, 416, -464, 380, -460, 376, -1304, 380, -460, 376, -424, 416, -464, 376, -424, 420, -424, 416, -424, 416, -460, 380, -464, 376, -456, 384, -424, 416, -464, 380, -420, 420, -420, 416, -424, 416, -464, 380, -460, 380, -424, 416, -1300, 380, -460, 380, -1300, 384, -1300, 376, -1304, 380, -1260, 420, -1260, 420, -1300, 380, -464, 376, -1264, 416, -1264, 420, -1300, 380, -1264, 416, -1300, 380, -1300, 380, -1304, 376, -1264, 420, -1260, 420, -424, 416, -424, 416, -424, 416, -424, 420, -460, 380, -460, 380, -420, 416, -464, 376, -464, 380, -460, 380, -1300, 380, -1264, 416, -464, 376, -464, 380, -1300, 376, -1304, 380, -1300, 380, -1260, 420, -460, 380, -464, 376, -1264, 420, -1260, 420, -460, 380, -460, 380, -460, 380, -1340, 340, -424, 416, -464, 380, -1296, 380, -464, 376, -424, 420, -1300, 380, -1300, 380, -460, 380, -1300, 380, -1264, 420, -460, 376, -1304, 376, -1304, 380, -424, 416, -1300, 380, -1304, 376, -424, 416, -424, 416, -1304, 376, -464, 380, -460, 380, -424, 416, -500, 340, -424, 416, -1300, 380, -1264, 420, -420, 420, -1260, 420, -1320, 360, -1300, 380, -460, 380, -464, 376, -1264, 420, -1260, 420, -420, 420, -460, 380, -1260, 416, -428, 416, -1300, 380, -1300, 384, -420, 416, -464, 376, -1264, 420, -1300, 380, -460, 380, -1300, 380, -424, 416, -424, 416, -464, 376, -464, 380, -460, 380, -460, 380, -424, 416, -424, 416, -1300, 380, -1300, 380, -1264, 416, -1264, 416, -1304, 380, -1300, 380, -1300, 380, -1300, 384, -460, 376, -464, 380, -460, 380, -424, 416, -424, 416, -420, 420, -460, 380, -424, 416, -1300, 380, -1264, 416, -1264, 416, -1304, 380, -1264, 416, -1264, 416, -1300, 380, -1264, 420, -460, 376, -428, 416, -420, 416, -464, 380, -460, 380, -460, 380, -424, 416, -424, 420, -1296, 384, -1300, 380, -1300, 376, -1264, 420, -1260, 420, -1264, 416, -1264, 416, -1304, 376, -428, 412, -464, 376, -424, 420, -460, 380, -460, 380, -424, 416, -464, 380, -460, 376, -1264, 416, -1304, 376, -1304, 380, -1260, 420, -1300, 380, -1300, 380, -1304, 376, -1264, 416, -424, 420, -460, 388, -416, 416, -424, 416, -424, 416, -460, 380, -464, 376, -424, 416, -1264, 420, -1260, 420, -1260, 420, -1300, 380, -1300, 384, -1296, 384, -1300, 380, -1260, 420, -1300, 380, -1300, 380, -464, 376, -424, 420, -1260, 420, -424, 416, -1260, 420, -424, 416, -460, 380, -460, 380, -1300, 380, -1264, 416, -424, 420, -1260, 420, -424, 416, -1300, 380, -1300, 380, -424, 416, -424, 420, -420, 416, -424, 420, -460, 376, -1304, 376, -1264, 424, -420, 416, -1300, 380, -1264, 416, -1304, 380, -1300, 376, -1264, 420, -424, 416, -460, 380, -424, 416, -464, 376, -464, 380, -460, 376, -424, 420, -420, 420, -424, 416, -424, 416, -1264, 416, -1264, 416, -1300, 380, -1264, 416, -1264, 420, -1260, 420, -1264, 416, -1264, 420, -460, 376, -424, 420, -460, 380, -460, 376, -424, 420, -424, 412, -464, 380, -424, 416, -1264, 416, -1264, 420, -1260, 416, -1264, 416, -1264, 420, -1264, 416, -1264, 416, -1300, 380,
複製代碼

TOP

試把第一個大數字 "3340" 放到最後,將 "-" 号去除
01.Raw: (531) 1680, 420, 1264,.......... 416, 1300, 380,3340,

TOP

本帖最後由 C_Law 於 2016-7-24 18:45 編輯
各位專家想請教下
我想試用 arduino / esp8266 來控制家中部日立冷機


用  或修改了的 IR-Remote 都學到 5 ...
lawleo 發表於 2016/7/24 03:01


由 Header Mark 到 End Mark,我部陳年凶宅機一期有 211 個 Mark+Space,下面條 Link 個日立冷氣就 595,而你這個就 531,似乎日立冷氣有好多不同款的 Code。

https://perhof.wordpress.com/2015/03/29/reverse-engineering-hitachi-air-conditioner-infrared-remote-commands/

有無實際數過個原裝遙控器出幾多個 Pulses?
會否太多個 Pulses 不夠 Buffer?
試下用 WinLIRC 個 Audio receiver,錄一段遙控訊號做 mono 8bit pcm 的 *.wav 檔。再搵我個 ExcelAIRC 的 Sheet:Wave2Pulses 去數下有幾多個 Pulses 以及每個 Pulse 長度。

WinLIRC audio receiver(1#a)
http://www.hkepc.com/forum/viewthread.php?tid=1645734



ExcelAIRC.rar
http://sites.google.com/site/chineseinput/electronics/airc/ExcelAIRC.rar

xAIRC05.gif

Trigger level:Sample 和 Sample 之間差距超過 Trigger level 就當係 Raising/Falling edge。建議 20~60,太細可能 Noise 都當係一個 Pulse,太大的話可能會數漏。

Repeat Gap:Press & Hold 一個遙控制時,不停重複的 Streams 之間的間隔時間,但冷氣機遙控一般都不會 Repeat,可以不理。

Button Gap:我寫這 VBA 目的係一次過錄取遙控器上所有制,這是按完一個制再按下一個制之間的間隔時間,同樣,冷氣機可以不理。

按 Open Wave 按鈕,選擇遙控訊號的 *.wav 檔,就會讀取每個 Mark 和 Space 的長度(解像度視乎錄音時的取樣頻率,最好用電腦 Sound card 可錄的最高取樣頻率),每一組 Stream 會放入一個 Column。每個 Stream 的 Header Mark 是放在 Row 21,所以睇下最底下 End Mark 的 Row no.,減 20 就係這個 Stream 的 Mark+Space 總數目。例如幅圖係 NEC protocol 的訊號,最底個 End Mark 的 Row no. 係 87(單數係 Mark、雙數係 Space),即由 Header Mark 到 End Mark 一共有 87-20=67 個 Mark+Space。

ps.
以前都寫過另一個用 VBA 去讀 *.wav 的程式,但當時好蠢地逐 Byte 去讀個 *.wav 檔,行得好慢 。今次這個是最近新寫,讀得快過以前個好多。

這個 Wav2Pulses 是從另一個我用開的 Excel 檔抄入去 ExcelAIRC,部份 Cell 位置和 Button 係另一個 Excel 檔入面用,在這裡是無用的。

TOP

本帖最後由 lawleo 於 2016-7-26 15:16 編輯

多謝你既 ExcelAIRC, 慳左我好多時間....
不過都係唔 work... 實在唔知發生咩事.... Trigger Level 30, 都係 531 code... 我拆左 remote同我用緊既 led emitter 比較,都係一樣的...
實在有咩出錯了呢...

Hitachi真難玩,我之前用 Logitech Harmony 又唔得,但 AICO smart egg 又用到.... 天呀, 救救我...

我錄左個 WAV & Excel 改左做 64 bits windows 用
http://gofile.me/2BVSx/FsL4GEUBP

TOP

本帖最後由 C_Law 於 2016-7-26 19:48 編輯
多謝你既 ExcelAIRC, 慳左我好多時間....
不過都係唔 work... 實在唔知發生咩事.... Trigger Level 30, 都 ...
lawleo 發表於 2016/7/26 12:12


讀取遙控器時距離接收器幾遠?
我發覺,太近的話(幾吋至一呎),同正常使用距離(3~10呎)比較,太近讀出來的 Mark 會比正常闊,Space 會比正常窄。如果個 Wav 係太近距離錄取的話,可能要重頭做過。

另外,純綷靠估,試下
Header Mark = 3360
Header Space=1680
Mark=385
ShortSpace=455
LongSpace=1295

或者將以上數值略作加減再試。

這堆數字係由你個 Wav 檔搵出來,Header Mark+Space 之後,後面似乎係 Fixed Mark。至於 Space 就有分長短,如果每個 Space 和之前的 Mark 加埋,Short(Mark+Space)=840,Long(Mark+Space)=1680,剛好係 Short 的一倍,亦剛好係 Header Space,又係 Header Mark 的一半。照計設計個 Code 的人不會搞到太多不同數值,所以以上數值不似是巧合,可能真係個 Code 的 Default pulse length。

即係變成:
  1. 3360,1680,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,455,385,455,385,1295,385,1295,385,1295,385,1295,385,455,385,455,385,1295,385,1295,385,455,385,455,385,455,385,1295,385,455,385,455,385,1295,385,455,385,455,385,1295,385,1295,385,455,385,1295,385,1295,385,455,385,1295,385,1295,385,455,385,1295,385,1295,385,455,385,455,385,1295,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,455,385,1295,385,1295,385,1295,385,455,385,455,385,1295,385,455,385,455,385,1295,385,1295,385,455,385,1295,385,1295,385,455,385,1295,385,1295,385,455,385,455,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,455,385,455,385,1295,385,455,385,1295,385,455,385,455,385,455,385,1295,385,1295,385,455,385,1295,385,455,385,1295,385,1295,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,455,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385,1295,385
複製代碼
食完飯,補返些圖表。用 ExcelAIRC 的 Wav2Pulses 搵出你個 Wav 檔的 Pulse length,撇除 Header Mark 和 Space 後,再分開長和短的 Mark+Space,排序後劃個 Frequency graph 出來(N 年前讀中學時學過,記得個用途,但不記得是否叫這個名 ),論是長或短,Mark+Space 好明顯都係一個 Peak,分別在 1680 和 840。而長或短的 Mark 都明顯有個 Peak 在 385(雖然有其它 Peak,但相對比 385 個 Peak 矮好多)。至於長和短的 Space,雖然無一個 Peak 有絕對明顯地高,但係用返 1680-385 和 840-385 去計就得出 1295 和 455。

Long.gif

Short.gif

TOP

本帖最後由 lawleo 於 2016-7-28 16:33 編輯

回覆 17# C_Law

真係好多謝你咁詳細的解答.....學左好多野.. 只係可惜仲係唔 work...

我把用左個啲 RAW code,再用另一個 arduino 黎 detect.. 基本上都係收返同一推 code [531], 最多係timing 差少少... 但就真係唔 work... 我開始唸緊,會唔會係 sender / LED 的問題,定係會有 checksum但唔知邊個 code...

TOP