Orodha ya maudhui:

Hack Mlango wako wa Gereji: Hatua 5
Hack Mlango wako wa Gereji: Hatua 5

Video: Hack Mlango wako wa Gereji: Hatua 5

Video: Hack Mlango wako wa Gereji: Hatua 5
Video: Majambazi walipopambana na Polisi baada ya kuiba pesa NMB Bank 2024, Novemba
Anonim
Hack Mlango wako wa Gereji
Hack Mlango wako wa Gereji
Hack Mlango wako wa Gereji
Hack Mlango wako wa Gereji
Hack Mlango wako wa Gereji
Hack Mlango wako wa Gereji

Nani hajawahi kuota kwenda nyumbani tu na programu ya simu, au kuweza kusikiliza na kurudia tramu za data? Nina furaha kuwa na uwezo wa kushiriki nawe kile nilichotambua, na jinsi nilivyoendelea. Nilianza mradi huu baada ya mara ya pili kusahau funguo zangu…

Kwa kweli, usimbuaji, aina ya moduli, masafa ya mbebaji, habari ya unganisho la Bluetooth, na data ambazo nitaonyesha kwa mfano sio asili, napendelea kutokuwa na wageni;-).

Maombi haya yanatumika kwa kitu chochote kinachoweza kupokea habari ya dijiti na mawimbi ya umeme (mlango wa karakana, gari, vifunga …). Mfumo mzima unajumuisha kitu kilichounganishwa na bluetooth kwa simu, kitu hiki kuwa na uwezo wa kutuma fremu sawa na rimoti inayohusiana na kile tunachotaka kudanganya. Niliweka kitu hiki kwenye karakana yangu, na ninaweza kuungana nacho kutoka nje.

Hatua ya 1: Vifaa

Vifaa
Vifaa
Vifaa
Vifaa

Lugha zilizotumiwa: C ++, MATLAB, Typescript, C, html.

Maarifa ya kimsingi katika umeme wa dijiti na mawasiliano ya simu / usindikaji wa ishara.

Gharama: chini ya $ 35.

Mahitaji ya vifaa:

- NooELEC NESDR: kwa kukamata data. Moduli hii ya bei rahisi hufanya demodulation ya dijiti, kwa hivyo uwezo wake mkubwa. Mfano huu ni sawa na MATLAB. ($ 18.95)

www.nooelec.com/store/sdr/sdr-receivers/nes…

- Wemos Lolin32 lite: esp32 hii ni mdhibiti mdogo wa bei nafuu, aliye na Wifi na Bluetooth. Hatutatumia Wifi katika programu tumizi hii, lakini hii inaweza kufikirika. ($ 4.74)

wiki.wemos.cc/products:lolin32:lolin32_lit…

- CDSENET cc1101: kifaa hiki cha redio kinatupa kubadilika sana, kutoka kwa masafa ya mtoa huduma aliyechaguliwa hadi aina ya moduli. ($ 2.63)

www.aliexpress.com/item/2PC-Lot-E07-868MS1…

- waya, vichwa, vifaa vya kulehemu, 3.7V betri ya lipo kwa uhuru, labda oscilloscope, na / au analyzer ya mantiki ya utatuzi, na kwa bahati, smartphone …

Mahitaji ya programu:

- MATLAB / Simulink: kwa kukamata data. Vifaa vingine mbadala vya bure vinaweza kutumiwa, kama Ushupavu wa taswira ya data. (leseni)

fr.mathworks.com/products.html?s_tid=gn_ps

- esp-idf zana ya vifaa: hii itatumika kupanga programu ya esp32. Dhana ya Arduino pia inaweza kutumika, lakini hairuhusu uhuru kama vile tutakavyotumia. (bure)

esp-idf.readthedocs.io/en/latest/get-starte…

- Studio ya TI SmartRF: hii itatusaidia kusanikisha rejista za cc1101, kulingana na maelezo yetu. (bure)

www.ti.com/tool/SMARTRFTM-STUDIO

- Ionic: kwa ajili ya kujenga programu. Yako inaweza kufanya uchaguzi wa kujenga programu za asili, lakini Ionic inatuwezesha kuendesha programu yetu kwenye vifaa vyote vya Android na IOS, na nambari pekee. Utendaji hautafutwi kwa upande wetu. (bure)

ionicframework.com/

- Maoni yako upendayo…

Hatua ya 2: Kupeleleza Udhibiti wa Kijijini

Kupeleleza Udhibiti wa Kijijini
Kupeleleza Udhibiti wa Kijijini
Kupeleleza Udhibiti wa Kijijini
Kupeleleza Udhibiti wa Kijijini
Kupeleleza Udhibiti wa Kijijini
Kupeleleza Udhibiti wa Kijijini

Tutaanza kwa kuchunguza data ambayo amri za udhibiti wa kijijini huzalisha. Ili kufanya hivyo, tutatumia rtl-sdr dongle na antena:

fr.mathworks.com/hardware-support/rtl-sdr….

Kwa kufuata kiunga hiki, utapata kifurushi cha MATLAB, na pia kitabu cha bure kinachoelezea pricipes zote na maelezo yao. Kwa muhtasari wa kile kinachotuhusu, data ya usafirishaji iko katika mfumo wa ishara ya IQ: "I" data ya awamu, pamoja na data ya "Q" ya quadrature. Njia hii inawezesha mawasiliano ya simu. Tutavutiwa tu kupokea ishara kwa awamu. Sasa tutakusanya habari ya kidigitali na ya dijiti kwenye rimoti. Kama unaweza kupata nyaraka juu yake, itakuwa rahisi. Sikupata yoyote. Ili kuweza kutazama ishara kwa muda, lazima kwanza tujue ni nini mbebaji wa masafa ya ishara iliyotolewa. Tutatumia mfano uliotolewa na nyaraka za kifurushi "Uchambuzi wa Spectral na Redio ya RTL-SDR", kujua haswa ni wakati gani tunaona nguvu ya kilele wakati tunatuma amri. Kwa upande wangu ni 868.22 MHz. Masafa "ya kawaida" ya aina hii ya programu ni karibu 868 MHz.

Na dalili hizi, tutaweza kuandika nambari ya MATLAB kupata data. Hii imeambatanishwa kwenye picha na kutoa maoni. Tokeo linaturuhusu kupata aina ya moduli: kwa kurudisha habari mbichi, kuonyesha matokeo tu baada ya kupata sehemu halisi ya ishara, tunaweza kugundua kuwa ni ASK / OOK moduli. Kwa kweli, tunaona kuwa masafa hayabadiliki, hata hivyo, ishara ina vielelezo viwili tu: null, na fasta. Nambari zingine zinaturuhusu kupona bahasha ya ishara iliyopokea, iliyorahisishwa kusoma ili kujua trame. Mara tu inapoonyeshwa, tunaweza kuamua moduli ya baseband: hii ni usimbuaji wa Manchester (angalia picha iliyoambatishwa). Tunaweza pia kugundua kiwango cha baud (alama kwa sekunde). Habari hii yote inakusanywa, tunaweza kujua sura ya data. Kwa upande wangu, baiti zilizopatikana ni: 249, 39, 75, 178, 45, 200, na kurudiwa mara kadhaa, kuhakikisha kuwa amri imepokelewa vizuri. Kwa bahati nzuri, nambari hiyo haitembezi, sura ya data ni sawa kila wakati.

Hatua ya 3: Tuma Muafaka wa Takwimu Sawa

Tuma fremu za Takwimu sawa
Tuma fremu za Takwimu sawa
Tuma fremu za Takwimu sawa
Tuma fremu za Takwimu sawa
Tuma fremu za Takwimu sawa
Tuma fremu za Takwimu sawa

Vyombo vya Texas cc1101 ni rahisi sana kwamba bado utafikia lengo lako, hata ikiwa mipangilio uliyoipata katika hatua ya awali ni tofauti kabisa na yangu. Kwa kweli, utaona kwenye nyaraka, ukurasa wa 2 (https://www.ti.com/lit/ds/symlink/cc1101.pdf) ambayo inaruhusu kutekeleza moduli za NRZ, Manchester, FSK, ASK / OOK, kufikia masafa karibu 433 MHz au 868 MHz, na vitu vingine vingi. Ninakushauri usome nyaraka ili ujitambulishe na moduli hii.

Kwenye kiunga hiki utapata kama mfano kazi ya Loboris kuhusu ujenzi wa kazi kwa kutumia moduli hii:

github.com/loboris/ESP32_CC1101/tree/maste …….

Tutaandika kificho chetu cha esp32 yetu na chombo cha esp-idf (tazama viungo vya hatua ya kwanza). Unaweza kuongeza faili za kiunga kwenye saraka ya vifaa vya mradi wako. Ili kusanidi vizuri cc1101 yetu, tutahitaji kurekebisha rejista zake. Vyombo vya Texas hutupatia programu ambayo inatupa dhamana ya sajili kulingana na usanidi wetu: Studio ya SmartRF.

Kunihusu mimi, ninaonyesha kwa programu hiyo kuwa ninataka nambari ya usajili ya Manchester, kwamba masafa yangu ya kubeba ni 868.22 MHz, kwamba aina yangu ya moduli ni ASK / OOK… Ninakuacha uingie vigezo vyako. Katika kesi ambayo usimbuaji wako wa baseband haupatikani, unaweza kuzingatia usimbuaji wa NRZ, kwa kuongeza vizuri kiwango cha baud, na kurekebisha data.

Mara tu unapofafanua maadili yako, una chaguo kadhaa juu ya utumiaji wa moduli: unaweza kutumia kazi ambazo nimekuunganisha, au kile nilichofanya, pata tu msukumo kutoka kwa nambari hii, ili kusanidi kila kitu kwa zaidi njia ya kikatili (angalia picha zilizoambatishwa), na tumia tu kile tunachohitaji.

Kama chip ya cc1101 inavyowasiliana na SPI, utapata kwenye kiunga cha nambari ya mfano faili ya kichwa "spi_master_lobo.h", iliyo na kazi rahisi zaidi ya kutumia SPI kuliko ikiwa utalazimika kuitumia kwa zana tu. Ninajiunga nawe kwenye picha mpango wa mawasiliano ya CC1101 katika SPI, picha iliyopigwa kutoka ukurasa wa 30 wa data ya CC1101. Waya nne zilizowasilishwa ni: CS (Chip Chagua, au SS: Chagua Watumwa, au hapa CSn), CLK (au SCLK, Saa, iliyotolewa na bwana), MISO (au SO, Master In Slave Out), na MOSI (au SI, Master Out Slave In). Kwa upande wetu, bwana ni ESP32, na mtumwa ni CC1101. Mawasiliano huanza wakati pini ya CS iko chini, kwa ujumla.

Usisahau kuwezesha katika chaguzi za mkusanyaji wa menuconfig isipokuwa C ++ kwa kuandaa.

Hatua ya 4: Unganisha kwenye Mfumo

Unganisha kwenye Mfumo
Unganisha kwenye Mfumo
Unganisha kwenye Mfumo
Unganisha kwenye Mfumo
Unganisha kwenye Mfumo
Unganisha kwenye Mfumo

Ikiwa nambari yako inafanya kazi, umefanya muhimu. Katika sehemu hii, tutazingatia jinsi ya kuunda programu ya simu iliyounganishwa na mfumo. Suluhisho la kupendeza zaidi ni kuungana na bluetooth, kwa sababu inaruhusu matumizi ya itifaki ya nguvu ya chini: Bluetooth Low Energy (BLE). Profaili ya uongozi imeonyeshwa kwenye mchoro ulioambatanishwa: tutasoma na kuandika amri katika Tabia ya Huduma. Na kwa kweli, esp32 yetu na smartphone yetu ina vifaa vya Bluetooth.

Hatua hii imegawanywa katika sehemu mbili: sehemu ya esp32, na sehemu ya programu. Picha imeambatanishwa kuonyesha na kuelezea sehemu kuu za nambari.

Unaweza kutengeneza UUID zako kwa kufuata kiunga hiki:

www.uuidgenerator.net/

Hizi ndizo vitambulisho ambavyo vitatoa ufikiaji wa huduma na huduma za wasifu wetu wa BLE.

Kuhusu nambari ya esp32 BLE, Kolban alifanya kazi nzuri na kufanya kazi hizi zote za kiwango cha juu cha C ++ kuendana:

github.com/nkolban/esp32-snippets/tree/mas…

Unaweza kuweka faili hizi kwenye sehemu ndogo ya saraka. Vinginevyo, utahitaji muda zaidi kuelewa jinsi ya kutumia BLE na zana ya esp-idf.

Kwa muhtasari wa kile utakachoona kwenye nambari hiyo, tunaunda Seva, Huduma, na Tabia, na UUID zinazohusiana, na tunaongeza darasa lililofafanuliwa tena la kupigia simu, na njia inayohusiana kwenye uandishi: tunapopokea "O" tabia, tunatuma amri ya kuandika kwa cc1101.

Kwa kweli, usisahau kuwezesha Bluetooth katika usanidi wa Sehemu ya Menuconfig.

Kuhusu sehemu ya programu, tutatumia Mfumo wa Ionic. Unaweza kupata infos zaidi juu yake kwenye kiunga kilichowasilishwa katika hatua ya kwanza, na kwa maelezo zaidi juu ya jinsi ya kutumia BLE na Ionic:

ionicframework.com/docs/native/ble/

Na mifano, iliyoandikwa na don:

github.com/don/ionic-ble-examples/tree/mas…

Kwa mfano unaweza kuhariri mfano "Unganisha". Tunachanganua vifaa kwenye ukurasa wa kwanza, na kufikia ukurasa wa pili ikiwa tutachagua kifaa chetu. Kisha tunapata kiolesura ambapo unaweza kuongeza kitufe na njia iliyowasilishwa kwenye picha: inatuma amri yetu "O" na UUID zinazofaa. Unaweza pia kuongeza katika mtengenezaji wa ukurasa wa kwanza njia "kuwezesha", ukiuliza kuamsha Bluetooth mwanzoni mwa programu.

Ninakushauri uchunguze wavuti ya Ionic, na ugundue Vipengele vyote (vifungo, arifu, visanduku vya ukaguzi…) ili kuongeza programu yako:

ionicframework.com/docs/components/#overvi…

Hatua ya 5: Boresha Matumizi ya Nguvu

Boresha Matumizi ya Nguvu
Boresha Matumizi ya Nguvu
Boresha Matumizi ya Nguvu
Boresha Matumizi ya Nguvu

Tulianza kufanya kazi kwa matumizi ya chini, kwa hivyo wacha tufanye kazi.

Chombo cha zana cha esp-idf kinaturuhusu kutumia usanidi wa GUI, menuconfig: vigezo vingi vinaweza kupunguza matumizi ya esp32. Kwanza kabisa, kwa kuwa hatuhitaji Wifi, tunaweza kuizima kwenye usanidi wa Sehemu. Katika folda hiyo hiyo, katika FreeRTOS, unaweza kuchagua "Run FreeRTOS tu kwa msingi wa kwanza. Halafu, kwa maalum ya ESP, unaweza kupunguza mzunguko wa CPU hadi MHz 80. Vipengele vyote vya kazi bado vinafanya kazi kwa kasi hii ya saa. Mwishowe, unaweza angalia "Wezesha Mchapishaji wa Nguvu za Chini (ULP). Usanidi huu hufanya matumizi ya sasa kutoka kwa karibu mia ya mA hadi karibu mA thelathini. Hii bado ni nyingi…

ESP32 inaweza kushughulikia usingizi mzito. Msingi wa nishati ya chini tu ndio unaowaka na unangojea kuamka.

Tazama kiunga hiki hapa chini kwa maelezo zaidi:

esp-idf.readthedocs.io/en/latest/api-refere…

Kwa bahati mbaya, katika toleo la mwisho linalopatikana la zana ya vifaa vya esp-idf (3.0), kuamka pekee kunapatikana kwa vipima muda na usumbufu wa GPIO. Kwa bahati nzuri, Espressif anatuahidi BLE kuamka katika toleo linalofuata (3.1).

Unaweza pia kuweka CC1101 katika hali ya kulala, kwa kutuma kwa SPI amri sahihi ya kukiwezesha kifaa (angalia cc1101 datasheet, amri ya SPWD, ukurasa wa 51). Kwa kuweka kifaa katika hali ya kulala au kwa kukiamsha, unaweza kuweka chini kisha juu pini ya Chagua Chip ya pini za SPI (infos zaidi kwenye data ya data).

Mipangilio hii ya mwisho inapaswa kufanya matumizi ya mfumo kupita chini ya milli-ampere…

Mwishowe, kuufanya mfumo uendelee kwa muda mrefu iwezekanavyo bila kuchaji tena, au hata kufikia mwezi wa uhuru, chagua betri ya 3.7V na milli-amperes nyingi kwa saa. Kwa kupima matumizi ya nguvu ya mfumo wako, na onyesho la jenereta au ammeter iliyounganishwa katika safu kabla ya pole yako ya mfumo, unaweza kukadiria wakati ambao mfumo wako utadumu!

Ilipendekeza: