Orodha ya maudhui:

ESP32 Xiaomi Hack - Pata data bila waya: Hatua 6 (na Picha)
ESP32 Xiaomi Hack - Pata data bila waya: Hatua 6 (na Picha)

Video: ESP32 Xiaomi Hack - Pata data bila waya: Hatua 6 (na Picha)

Video: ESP32 Xiaomi Hack - Pata data bila waya: Hatua 6 (na Picha)
Video: Hacking into Android in 32 seconds | HID attack | Metasploit | PIN brute force PoC 2024, Novemba
Anonim
Image
Image
ESP32 Xiaomi Hack - Pata Data bila waya
ESP32 Xiaomi Hack - Pata Data bila waya

Wapendwa marafiki karibu kwa mwingine anayefundishwa! Leo tutajifunza jinsi ya kupata data ambayo ufuatiliaji wa Joto na Unyevu wa Xiaomi hupitisha kwa kutumia utendaji wa Bluetooth wa bodi ya ESP32.

Kama unavyoona, ninatumia bodi ya ESP32 na onyesho la rangi ya T8 ya rangi ya 2.8. Kwenye onyesho, tunaonyesha joto na unyevu. Jambo la kupendeza ni kwamba sijaunganisha sensorer yoyote kwenye bodi ya ESP32. Ninapata joto na unyevu bila waya kutoka kwa ufuatiliaji huu wa joto wa Xiaomi na Ufuatiliaji wa Unyevu. Jinsi baridi ni kwamba! Onyesho kwenye kifaa cha Xiaomi husasishwa kila sekunde lakini ninasasisha onyesho ambalo limeunganishwa na bodi ya ESP32 kila sekunde 10 ili kuhifadhi nguvu kwenye kifaa cha Xiaomi.

Kihisi baridi cha joto cha Xiaomi na unyevu huonyesha hali ya joto na unyevu kwenye onyesho lake la LCD na pia inaweza kusambaza data hiyo kwa Vifaa vingine vya Xiaomi au programu kwa kutumia itifaki ya Bluetooth. Vifaa vinatumia betri moja ya AAA na kwa kuwa ni bidhaa ya kibiashara, maisha ya betri ya kifaa ni bora. Inaweza kudumu kwa betri moja ya AAA kwa miezi, kitu ambacho hatuwezi kufikia kwenye miradi yetu ya DIY. Wiki chache zilizopita, niligundua kuwa wavulana wengine werevu waliweza kubadilisha mhandisi itifaki ambayo Xiaomi hutumia kusambaza data kutoka kwa sensa na kufanikiwa kupata data hiyo kwa kutumia bodi ya ESP32. Kwa hivyo nilijaribu, na kama unavyoona inafanya kazi!

Hatua ya 1: Pata Sehemu Zote

Pata Sehemu Zote
Pata Sehemu Zote

Wacha tuone jinsi ya kujenga mradi huu. Tunahitaji bodi ya ESP32, onyesho la 2.8”ILI9341, joto la Xiaomi na sensorer ya unyevu, ubao wa mkate na waya zingine.

Hapa kuna viungo kadhaa kwa sehemu ambazo nitatumia katika hii inayoweza kufundishwa.

  • ESP32 ▶
  • 2.8 "Onyesha ▶
  • Sensorer ya Xiaomi ▶
  • Bodi ya mkate ▶
  • Waya ▶
  • Mita ya USB ▶
  • Powerbank ▶

Hatua ya 2: Bodi ya ESP32

Image
Image
Bodi ya ESP32
Bodi ya ESP32

Ikiwa hauijui, chip ya ESP32 ndiye mrithi wa chip maarufu ya ESP8266 ambayo tumetumia mara nyingi huko nyuma. ESP32 ni mnyama! Inatoa cores mbili za usindikaji 32 ambazo zinafanya kazi kwa 160MHz, idadi kubwa ya kumbukumbu, WiFi, Bluetooth na huduma zingine nyingi na gharama ya karibu $ 7! Vitu vya kushangaza!

Tafadhali angalia ukaguzi wa kina ambao nimeandaa kwa bodi hii. Nimeambatanisha video kwenye hii inayoweza kufundishwa. Itasaidia kuelewa ni kwa nini chip hii itabadilisha njia tunayotengeneza vitu milele! Moja ya mambo ya kufurahisha zaidi juu ya ESP32 ni kwamba ingawa ina nguvu sana, inatoa hali ya kulala-kina ambayo inahitaji tu 10μΑ za sasa. Hii inafanya ESP32 kuwa chip bora kwa matumizi ya nguvu ndogo.

Hatua ya 3: 2.8 "Onyesho la TFT la Arduino na ESP32

Image
Image
2.8
2.8
2.8
2.8
2.8
2.8

Onyesho ni kubwa, na inatoa azimio la saizi 320x240. Ikilinganishwa na moja wapo ya maonyesho ninayopenda, onyesho la 1.8 Colour TFT unaweza kuona kuwa kubwa zaidi. Skrini pia inatoa utendaji wa kugusa ambayo ni bonasi iliyoongezwa na kadi ya SD nyuma. Inatumia kiolesura cha SPI, kwa hivyo unganisho na Arduino au bodi ya ESP32 ni ya moja kwa moja. Gharama ya maonyesho ni ya chini; inagharimu karibu $ 11 ambayo kwa maoni yangu ni bei nzuri kwa kile onyesho hili linatoa.

Jambo lingine kama juu ya onyesho hili ni kwamba haiji kama ngao kama onyesho la kugusa tulilokuwa tunatumia hadi sasa. Kwa njia hii, tunaweza kuunganisha onyesho kwa bodi yoyote, Arduino Pro mini, STM32, ESP8266, na ESP32. Hii ni muhimu sana kwa sababu sasa tuna onyesho la gharama nafuu ambalo tunaweza kutumia na kila bodi. Hadi sasa, onyesho la kugusa tu ambalo tunaweza kutumia na bodi hizi zilikuwa maonyesho ya Nextion ambayo ni ghali zaidi, na kusema ukweli hata kama ninayatumia mara kwa mara, siwapendi sana.

Hatua ya 4: Kuunganisha Onyesho

Kuunganisha Onyesho
Kuunganisha Onyesho
Kuunganisha Onyesho
Kuunganisha Onyesho
Kuunganisha Onyesho
Kuunganisha Onyesho
Kuunganisha Onyesho
Kuunganisha Onyesho

Kwanza, lazima tuunganishe Bodi ya ESP32 kwenye onyesho la 2.8”. Unaweza kupata skimu iliyoambatanishwa na inayoweza kufundishwa. Ninatumia bodi hii ya DOIT ESP32 ambayo ilitolewa karibu miaka miwili iliyopita. Toleo hili la bodi haipatikani tena kwani sasa kuna toleo jipya zaidi ambalo linatoa pini zaidi, hii. Sababu pekee ninayotumia toleo la zamani la bodi hiyo ni kwamba pini ya GND ya bodi imewekwa karibu na pini za SPI, upande huo huo wa bodi, ambayo inafanya urafiki wa mkate.

Baada ya kuunganisha onyesho na bodi tunaweza kuimarisha mradi. Baada ya sekunde chache, tunapokea data ya moja kwa moja kutoka kwa Kifaa cha Xiaomi kilicho karibu. Kwa kuwa kifaa hutumia Bluetooth 4 anuwai yake ni nzuri sana. Tunaweza kupata data kwa urahisi kutoka kwa umbali hadi mita 10 au zaidi! Tunaweza pia kupokea kiwango cha betri cha Kifaa cha Xiaomi lakini sionyeshi thamani hii kwenye skrini.

Ikiwa tunatumia mita hii ya USB, tunaweza kuona kwamba mchoro wa sasa wa mradi huu ni karibu 120-150 mA ukitumia onyesho hili kubwa. Ikiwa tunatumia onyesho la e-karatasi, weka bodi ya ESP32 katika hali ya usingizi mzito, na upate data kutoka kwa sensorer kila dakika chache tunaweza kufanya mradi huu kuwa wa kirafiki. Nitajaribu hii katika video ya baadaye. Mradi huu ni onyesho tu kwamba tunaweza kupata data kutoka kwa kifaa hiki bila waya.

Hatua ya 5: Kanuni ya Mradi

Kanuni za Mradi
Kanuni za Mradi

Wacha tuone upande wa programu hiyo.

Nambari ya mradi huo inategemea mradi huu:

Nilitumia nambari ambayo hupata data hiyo kutoka kwa kifaa cha Xiaomi na nikaunda mradi wa pekee nayo.

Katika mabadiliko haya, tunatangaza kwamba tunahitaji kupata data mpya kila sekunde 10.

#fafanua SCAN_TIME 10 // sekunde

Hapa, tunatangaza kwamba tunataka kuonyesha joto katika digrii Celsius. Ikiwa unataka kutumia mfumo wa Imperial weka tu mabadiliko haya kuwa ya uwongo.

METRIC ya boolean = kweli; // Weka kweli kwa mfumo wa metri; uwongo kwa kifalme

Katika kazi ya usanidi tunaanzisha onyesho na moduli ya Bluetooth ya bodi ya ESP32 na kisha tunachora kiolesura cha mtumiaji kwenye skrini.

usanidi batili () {

WRITE_PERI_REG (RTC_CNTL_BROWN_OUT_REG, 0); // afya detector ya brownout

tft kuanza ();

Serial. Kuanza (115200);

Serial.println ("ESP32 XIAOMI DISPLAY"); initBluetooth ();

choraUI ();

}

Ifuatayo, tunatafuta vifaa vya Bluetooth karibu kila sekunde 10. Hatuunganishi kwenye Kifaa cha Xiaomi kwani haihitajiki. Tunatafuta tu vifaa vya karibu vya nishati ya chini ya Bluetooth na tunaangalia pakiti za matangazo.

kitanzi batili () {char printLog [256]; Serial.printf ("Anza BLE scan kwa sekunde% d … / n", SCAN_TIME); Matokeo ya BLEScan foundDevices = pBLEScan-> kuanza (SCAN_TIME); hesabu ya int = foundDevices.getCount (); printf ("Hesabu ya kifaa kilichopatikana:% d / n", hesabu);

kuchelewesha (100);

}

Unyevu na maadili ya joto huhifadhiwa kwenye pakiti hizo, kwa hivyo tunahitaji kusoma tu. Baada ya kusoma maadili tunayoyaonyesha kwenye skrini. Kama kawaida, unaweza kupata kiunga cha nambari ya mradi huu katika maelezo yaliyoambatanishwa na hii inayoweza kufundishwa.

Hatua ya 6: Mawazo ya Mwisho na Maboresho

Mawazo ya Mwisho & Maboresho
Mawazo ya Mwisho & Maboresho
Mawazo ya Mwisho & Maboresho
Mawazo ya Mwisho & Maboresho

Sasa kwa kuwa tunajua jinsi ya kupata data bila waya kutoka kwa sensa hii tunaweza kujenga kituo kamili cha hali ya hewa inayotumia betri. Kwa kuwa Kifaa hiki cha Xiaomi ni bidhaa ya kibiashara, inatoa maisha mazuri ya betri. Kwa bahati mbaya, hatuwezi kufikia matumizi sawa ya betri kwenye miradi yetu bado. Kwa hivyo, nina mpango wa kutumia sensor hii kama sensorer ya nje kwa mradi wa kituo cha hali ya hewa ambayo itatumia onyesho kubwa la karatasi. Itakuwa baridi. Pia, nitaenda kutafuta vifaa vingine vilivyowezeshwa vya Xiaomi Bluetooth ambavyo tunaweza kudanganya vivyo hivyo. Endelea kufuatilia.

Ningependa kujua maoni yako kuhusu mradi huu. Je! Unaona ni muhimu kwamba tunaweza kupata data kutoka kwa vifaa vya biashara vya Bluetooth? Je! Utaenda kutumia utendakazi huu? Ningependa kusoma maoni yako kwa hivyo tafadhali weka kwenye sehemu ya maoni hapa chini. Asante!

Ilipendekeza: