99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>松下的視頻對講機(jī)被黑以啟用Alexa

松下的視頻對講機(jī)被黑以啟用Alexa

2022-11-08 | zip | 0.16 MB | 次下載 | 免費(fèi)

資料介紹

描述

這種可視對講在日本只有一個(gè)共用入口的典型公寓中很常見。大多數(shù)型號沒有任何物聯(lián)網(wǎng)功能,并且由于它們已集成到樓宇安全系統(tǒng)中,因此幾乎不可能用智能門鈴代替它們。因此,有些人使用 ADC、光傳感器音頻傳感器來檢測呼叫并使用伺服電機(jī)來執(zhí)行解鎖按鈕按下,從而入侵了他們公寓中的對講機(jī)。但是,由于我喜歡人們無法僅從外面看就知道是否添加了 IoT 功能的 hack,所以這次我在家中破解了一個(gè)(松下的 SHVT18612WK),其方式是

  • 它的原始功能完好無損,從外部看不到破解。
  • 呼叫檢測和解鎖操作 100% 以電子方式執(zhí)行。
  • 它安全地連接到 AWS 云。
  • 它播放預(yù)先錄制的消息。

工作原理

我使用了帶有Mongoose OS的ESP32微控制器,因?yàn)槲蚁嘈胚@是物聯(lián)網(wǎng)項(xiàng)目的最佳組合之一。我使用光電耦合器以電子方式檢測呼叫并解鎖入口門,并使用 DFPlayerMini播放預(yù)先錄制的消息。

poYBAGNo8ZWAGVGWAABrlE-JwGo118.png
整體架構(gòu)
?

以電子方式檢測呼叫

當(dāng)從入口發(fā)起視頻通話時(shí),可視對講機(jī)上的鑰匙形綠色 LED 開始閃爍。因此,通過將光耦合器的初級側(cè)與該 LED 并聯(lián),將次級側(cè)連接到 GPIO 和 GND,并檢查 GPIO 的狀態(tài),您可以檢測到呼叫。

當(dāng)檢測到呼叫時(shí),ESP32 會(huì)向 AWS IoT Core 發(fā)布消息。然后自動(dòng)執(zhí)行 AWS Lambda 以發(fā)送 Slack 消息。

pYYBAGNo8ZeAIk6eAAEIliGHgSw926.png
檢測來電并發(fā)送通知
?

以電子方式執(zhí)行解鎖按鈕按下

通過將光耦的初級端連接到 GPIO 和 GND,次級端與對講電路板上的解鎖按鈕并聯(lián),并將 GPIO 從 L 設(shè)置為 H,然后再設(shè)置為 L,中間有輕微的延遲,您無需物理按下解鎖按鈕即可執(zhí)行解鎖操作。通話按鈕也是如此。

AWS Amplify Web 應(yīng)用程序和 Alexa 技能向 AWS IoT Core 發(fā)布消息,ESP32 接收消息并完成工作。

pYYBAGNo8ZqAHOWNAABYxaWUQxY588.png
解鎖入口門
?

步驟 1. 暴露主 PCB 并尋找 hack 點(diǎn)

首先,拆下可視對講機(jī)的側(cè)蓋并擰松螺絲。

poYBAGNo8cGADHOAAA7mxBQ1_jE199.jpg
卸下側(cè)蓋
?

在卸下電線束之前,請務(wù)必關(guān)閉電源開關(guān)。大多數(shù)型號都帶有內(nèi)置火災(zāi)警報(bào)器,當(dāng)這些電線在電源開關(guān)打開的情況下被移除、切斷或燒毀時(shí),它就會(huì)關(guān)閉。

pYYBAGNo8ciAfqWhABBcqCuvOjg536.jpg
卸下主板
?

?

尋找容易被黑客入侵的地點(diǎn)。

pYYBAGNo8cqAFPajAAC3V7z8euI607.jpg
尋找黑客位置
?

將帶狀電纜焊接到黑客點(diǎn)。(電纜顏色)

  • 解鎖待機(jī) LED +(橙色)
  • 解鎖待機(jī) LED –(紅色)
  • 解鎖按鈕(藍(lán)色)
  • 通話按鈕(綠色)
  • 解鎖/通話按鈕共用 GND(黃色)
poYBAGNo8cyAClocAADi9gxoXmQ774.jpg
將帶狀電纜焊接到主板
?

步驟 2. 構(gòu)建電路

在迷你面包板上,放置 ESP32-DevKitC、光耦合器和 DFPayerMini。為盡可能避免穩(wěn)定性問題,請使用實(shí)心跳線而不是柔性跳線。

我發(fā)現(xiàn)視頻對講面板上的鑰匙形 LED 上的電壓約為。3.0V,所以我使用 IF=7.5mA (and R=250ohm) 作為光耦進(jìn)行呼叫檢測,根據(jù)其數(shù)據(jù)表,這是在 VF=1.17V 下運(yùn)行的推薦。如果這個(gè)IF太大,鑰匙形LED不閃爍,如果太小,光耦將不起作用。我使用 IF=15mA(和 R=120ohm)作為光耦合器,用于通話和解鎖按鈕按下。

對于 DFPlayerMini,只連接 Rx,因?yàn)閷τ谶@個(gè) hack,ESP32 不需要知道它何時(shí)完成播放音頻文件,因此不需要 Tx。使用 Amazon Polly 生成 mp3 格式的音頻消息并將其保存到 microSD。

pYYBAGNo8dCAUz0bAADds-0-EwU459.png
電路的設(shè)計(jì)
?

實(shí)際電路如下所示。你可以為此設(shè)計(jì)一個(gè)PCB。

poYBAGNo8dKAPSRuAACtHDibY8c388.jpg
?

步驟 3. 為 ESP32 編寫代碼并為 AWS IoT 預(yù)置它

對于這個(gè)項(xiàng)目,我使用了Mongoose OS ,一個(gè)非常強(qiáng)大的物聯(lián)網(wǎng)固件開發(fā)框架,因此應(yīng)用程序代碼(init.js)可以用 JavaScript 編寫。完整代碼可在GitHub中找到。

首先,將 Mongoose OS 安裝到 ESP32 并使用以下命令將其連接到 Wi-Fi。

$ mos flash esp32
$ mos wifi SSID PASSWORD

通過加載 Mongoose OS API 開始編寫 init.js,然后聲明變量。

// Load Mongoose OS APIs
load('api_gpio.js');
load('api_mqtt.js');
load('api_sys.js');
load('api_timer.js');
load('api_uart.js');

// Declare variables
let ledPin = 12;
let talkBtn = 13;
let unlockBtn= 14;
let callState = false;
let uartNo =1;
let topic1 = 'intercom/detect';
let topic2 = 'intercom/unlock';
let qos = 1;

為 DFPlayerMini 設(shè)置 UART。

// UART Setup
UART.setConfig(uartNo, {
  baudRate: 9600,
  esp32: {
    gpio: {
      rx: 25,
      tx: 26,
    },
  },
});

設(shè)置 GPIO 模式并初始化 GPIO。

// Set GPIO mode
GPIO.setup_input(ledPin, GPIO.PULL_UP);  // iput & internally pulled up
GPIO.set_mode(startTalkingBtn, GPIO.MODE_OUTPUT);
GPIO.set_mode(openSecurityDoorBtn, GPIO.MODE_OUTPUT);

// Initialize GPIOs
GPIO.write(startTalkingBtn, 0);
GPIO.write(openSecurityDoorBtn, 0);

以下代碼塊檢測調(diào)用并向 topic1 發(fā)布消息。Mongoose OS 帶有一個(gè)有用的按鈕處理程序,用于檢測按鈕按下。ledPin 是內(nèi)部上拉的,所以它通常是 H 并在發(fā)起呼叫時(shí)變?yōu)?L。Timer.set() 使 callState 在 15 秒后恢復(fù)正常。

// Detect calls and publish a message to topic1
GPIO.set_button_handler(ledPin, GPIO.PULL_UP, GPIO.INT_EDGE_NEG, 20, function(x) {
?
  if (!callState) {
?
    callState = true;
    let message = JSON.stringify({ });
    let ok = MQTT.pub(topic1, message, qos);
    print(ok);
    print("-----Call detected, hopefully published to AWS IoT-----");
?
    Timer.set(15000, false, function() {
      callState = false;
      print("-----Back to normal-----");
    }, null);
?
  }
?
}, true);

要通過 Slack 發(fā)送通知,您可以使用發(fā)布到 topic1 和Incoming Hooks 的消息。創(chuàng)建一個(gè)將消息發(fā)送到 Slack 通道并配置 AWS IoT 規(guī)則以觸發(fā)此 Lambda 的 Lambda 函數(shù)。

當(dāng)從 AWS IoT Core 接收到消息時(shí),以下代碼塊依次執(zhí)行通話按鈕按下、音頻播放、解鎖按鈕按下和通話按鈕按下。我在這里使用了 3 個(gè)定時(shí)器,因?yàn)樵?Mongoose OS 中,對于這種用例,建議使用 Timer.set() 而不是 Sys.usleep() 來穩(wěn)定運(yùn)行。

// Subscribe to topic2 and unlock door when message is received
MQTT.sub(topic2, function(conn, msg) {

  print('-----Received message from AWS IoT-----')
  talk();
?
  Timer.set(2000, false, function() {
    play();
  }, null);

  Timer.set(4500, false, function() {
    unlock();
  }, null);
?
  Timer.set(9500, false, function() {
    talk();
  }, null);
?
}, true);

talk() 和 unlock() 所做的是將 GPIO 從 L 設(shè)置為 H,然后將 Sys.usleep() 設(shè)置回 L。這可以模擬實(shí)際的按鈕按下。

// Mimic talk button press
function talk(){
  GPIO.write(talkBtn, 1);
  Sys.usleep(300000);
  GPIO.write(talkBtn, 0);
}

// Mimic unlock button press
function unlock(){
  GPIO.write(unlockBtn, 1);
  Sys.usleep(300000);
  GPIO.write(unlockBtn, 0);
}

DFPlayerMini 可以通過 UART 控制。參考在這里。

// Play /01/001.mp3 with DFPlayerMini
function play(){
  UART.write(uartNo, '\x7E');
  UART.write(uartNo, '\xFF');
  UART.write(uartNo, '\x06');
  UART.write(uartNo, '\x0F');
  UART.write(uartNo, '\x00');
  UART.write(uartNo, '\x01');
  UART.write(uartNo, '\x01');
  UART.write(uartNo, '\xEF');
}

由于 Mongoose OS 包含適用于嵌入式 C 的 AWS IoT 設(shè)備開發(fā)工具包并執(zhí)行將 ESP32 連接到 AWS IoT Core 所需的一切操作,因此您需要執(zhí)行以下命令。確保您準(zhǔn)備好您的訪問密鑰 ID 和秘密訪問密鑰對,并事先在您的計(jì)算機(jī)上進(jìn)行設(shè)置。

$ mos aws-iot-setup --aws-region AWS_REGION

對于 Alexa 技能,創(chuàng)建一個(gè)具有向主題 2 發(fā)布消息的歡迎意圖,對講/解鎖。如果你使用 python,這樣的東西會(huì)起作用。

client = boto3.client('iot-data', region_name='es-east-1')
response = client.publish(
    topic='intercom/unlock',
    qos=1,
    payload=json.dumps({ })
)

網(wǎng)上有很多如何創(chuàng)建 Alexa Skill 和 Amplify web 應(yīng)用程序,所以請參考那些創(chuàng)建自己的 Skill 和應(yīng)用程序的方法。

第 4 步:做電氣工作,把所有東西都藏在墻上

從墻上拆下可視對講機(jī)的底座。

poYBAGNo8diAWp-8AA6atoKkEvo842.jpg
基本單元
?

拆下交流電源線,并在交流電源線上做一個(gè)分支。將帶有 USB 充電端口的壁式插座連接到分支,并將交流電源線連接到基本單元。

pYYBAGNo8d6AQNv7AA4OSe3-j00302.jpg
連接墻上插座
?

?

使用微型 USB 電纜為 ESP32 供電并將所有東西隱藏在墻上。確保將揚(yáng)聲器放置在靠近麥克風(fēng)的位置,否則客人無法聽到音頻消息。

poYBAGNo8eWATGqrAA6m1flUpro895.jpg
在隱藏一切之前
?

現(xiàn)在破解完成了!

pYYBAGNo8eyAaaBLAAps62e5Fn4088.jpg
從外面看不到黑客!
?

未來發(fā)展方向

我想為這個(gè)項(xiàng)目制作一個(gè)PCB。我還想分析視頻信號,將其從板上取出,然后發(fā)送到 AWS 云來做一些有趣的事情。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)