Съдържание:
- Консумативи
- Стъпка 1: Настройте вашия рутер (по избор, но препоръчително)
- Стъпка 2: Код
- Стъпка 3: Хардуер (бета)
- Стъпка 4: Outlook/Препратки
Видео: [15 минути] Часовник Уизли / Кой е вкъщи Индикатор - Въз основа на TR -064 (бета): 4 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:51
АКТУАЛИЗИРАНЕ: Вижте стъпка 3.
Дълга история (TL; DR по-долу): Преди време написах малък bash-скрипт на моя компютър, който ще сканира мрежата за регистрирани устройства и ще сравнява техните имена на хостове със списък със свързани имена. Всеки път, когато дадено устройство влезе или излезе от мрежата, ще получа известие. По този начин бих имал представа кой е вкъщи (не само че понякога е хубаво да знаете кой е у дома, за да ги попитате дали искат да се присъединят към храна или нещо подобно, но също така потенциално може да ви помогне да избегнете неудобни ситуации). Проблемът е, че този метод не е много надежден. За съжаление някои устройства не отговарят на пингове (напр. Смартфони) и изглежда преминават в някакъв режим за пестене на енергия, поради което не могат да бъдат надеждно открити с команди като nmap. Опитах се да преодолея това, като изисквах поне 10 негатива, преди най -накрая да обявя, че устройството е напуснало мрежата. Като цяло работи, но бавно, ненадеждно и не много добре. Също така исках да мога да проверя кой е вкъщи, без да отварям компютъра си. И така, тези ESP8266 лежаха наоколо - и исках да играя с тях. Но аз не исках да построя 10.120.124.812-та ESP-базирана метеорологична станция или нещо подобно (защо бихте искали да следите времето с вашия скапан термометър ± 2 ° C, когато все пак можете просто да посетите някой уебсайт?). Така че планът беше направен. За съжаление се оказва, че ESP изглежда не е оборудван за правилен пинг (което беше лошо за начало, помниш ли?) Да не говорим за цялостно сканиране на мрежата. Мислех да напиша някаква библиотека за това - но тъй като моят C ++ е много ограничен, това е първият ми ESP -проект и не съм гений с мрежови неща, но и премахнах тази идея. След като проучих, установих, че моят рутер (марка Fritz! Box) всъщност има API! ДА !!!! Протоколът се нарича TR-064. Такова вдъхновяващо име, нали? Правейки някои изследвания по въпроса, намерих (доста гадна) документация онлайн. Отне ми известно време, за да го оправя. Може да публикувам по-практични инструкции през следващите дни (и как да комуникирам/тествам този API с помощта на добавка за браузър). След като разбрах API, започнах да го използвам от моя ESP. Накратко: получих решение за патешка лента и wd40, работещо и правещо това, което исках (запитвам API за свързани устройства, сравнявам ги със списък с MAC-адреси и съответно превключвам светодиоди). Но исках по-стабилен и гъвкаво решение и този API може да предложи много повече (можете да промените настройките (включване/изключване на wifi, промяна на парола, отваряне/затваряне на wifi за гости, промяна на мощността на сигнала), рестартиране на рутера, запитване за скоростта на връзката, …) - затова реших да създам универсална библиотека TR -064! TL; DR; Устройство, което показва чрез светодиоди кой в момента е у дома. Работи чудесно, все още няма страхотни жилища (хей - забелязахте бета в заглавието?). Използва SOAP-протокол за комуникация с рутера. Написал е библиотеката Arduino, за да се случи това. Необходими познания • Основни познания за Arduino/ESP • Ако сте събрали пример за Blink с вашия ESP, ще се оправите! • Ако не, можете да следвате първите две стъпки от тази инструкция • Възможно е запояване ще ви бъде полезно, ако искате да напуснете етапа на макета • Някои 3D проектиране и/или дървообработване могат да ви бъдат полезни за връзка към проект за жилищеGithub [https://github.com/Aypac/Arduino-TR-064-SOAP-Library] за бърза справка.
Консумативи
- ESP8266 или ESP32 на борда за разработка или с друг програмист (2 ~ 6 €)
- USB кабел, подходящ за програмиста
- Захранващ адаптер (напр. USB или батерия ~ 2 €)
- Няколко светодиода и резистори (~ 1 €)
- (Корпус)
=> Около 4-6 € за минимален дизайн. Това за мен означава, че лесно мога да закача няколко из къщата. Ако сте мързеливи, можете също да използвате дъска за развитие с включени светодиоди (вижте стъпка 4 за повече подробности).
Стъпка 1: Настройте вашия рутер (по избор, но препоръчително)
Протоколът е проектиран като общ протокол за рутери, но знам само, че (повечето) маршрутизатори Fritz! Box (много често срещани поне в Европа) го използват. Не знам за други марки. Така че ще предположа, че използвате Fritz! Box. Ако можете да направите тази работа (или да не успеете) на друг рутер, с удоволствие бих я добавил към тази инструкция (може би дори да стартирам кратък списък за съвместимост?).
Тази стъпка не е необходима, можете също така просто да използвате своя администраторски акаунт, но това не е препоръчително по очевидни причини (може да бъде прихваната или извлечена от вашия ESP, може случайно да промените неща, които не искате, …) - така че съветвам ви да го направите.
Както и да е, ето ни:
- Влезте във вашия Fritz! Box, като въведете fritz.box в url лентата на любимия си браузър.
- Намерете страницата за създаване на нов потребител на FRITZ! Box (трябва да имате разширена, тя трябва да е под Система, ако не можете да я намерите, опитайте да актуализирате вашето устройство).
- Създайте нов акаунт, както виждате на снимката (използвайки различно потребителско име/парола!).
- Излез от профила си.
Стъпка 2: Код
-
Можете да получите библиотеката от Github.
- В примерите ще намерите файл, наречен home-indicator.ino, който е кодът за този проект. Поставете папката с примери в началната папка на вашия arduino IDE проект, а другата папка в папката библиотеки в същата начална папка на проекта.
- (Re) Стартирайте IDE.
- Отворете home-indicator.ino в IDE и въведете настройките си. Трябва да е съвсем очевидно какво отива накъде. Ако имате въпроси, уведомете ме!
- Сега можете да го компилирате и прехвърлите на вашия ESP!
Стъпка 3: Хардуер (бета)
Да… Това е стъпката, където все още трябва да работя още. Но предполагам, че има достатъчно материал в мрежата, за да разбера нещо:) Настройката, както е на снимките, е просто диод с резистор ~ 100 Ома, свързан към GPIO {5, 4, 0, 2}, които са D1, D2, D3, D4 (в този ред) щифтове на моята MCU ESP8266 платка и малкият оранжев кабел, отвеждащ катодите към GND (маркиран с G на дъската ми). Ако сте мързеливи, можете да направите това, което виждате на второто изображение. Просто използвайте платка за разработка с включени светодиоди (като "ESP-202", вижте снимките-около 3,50-5,00 €, включително доставката). След това можете просто да го свържете към USB захранване или да използвате включения в комплекта батерия, да нарисувате интерфейс на лист хартия и да го залепите към стената. За тази конкретна платка портовете са:
int userPins [numUser] = {5, 4, 2, 14, 16};
от горе до долу.
Стъпка 4: Outlook/Препратки
Това е, което все още планирам: 1. Направяне на хубав корпус (очевидно) 2. Добавяне на хубав графичен интерфейс за управление на потребители/светодиоди/MAC/известни устройства 3. Подобряване на библиотеката (вижте Github за това) 4. Поправка: понякога светодиодите реагирайте бавно (отнема малко, докато се изключат, след като устройството е напуснало) без очевидна причина 5. Закачете нещото в коридора и може би още няколко из къщата И както винаги, ме прави истински щастлив да видя други да правят глупости, които сте измислили, така че моля отделете минута, за да коментирате и публикувате снимки!:):) Още няколко справки Ще свържа някои неща тук, които биха могли да ви помогнат: • Справка за TR-064 • Някакъв човек, който се забърква с черупката и TR-064 (добре е да разберете API) • Хари Потър Уикипедия: Запис за часовник Уизли • Някои момчета изграждат красив, но сложен часовник Weasly*_*Той се основава на приложение за вашия телефон, което заема вашето местоположение. Ако сте в определени предварително определени зони, съответната лампичка на часовника ще се включи. За мен това беше твърде сложно и трябваше на много места, където може да се счупи/да се провали: • Приложенията трябва да се поддържат актуални • Всеки трябва да използва тези приложения • И да се справя с въздействието върху поверителността • Приложението работи само с интернет връзка • Трябва да използвате междинен сървър за свързване на комуникацията (освен ако не искате да настроите esp като сървър и да отворите домашната си мрежа за външен трафик - да, още едно опасно IOT устройство, директно свързано с интернет!) • междинната услуга може да излезе офлайн един ден/да промени своя API, • … Нуждаете се от повече софтуер. Повече софтуер означава повече места за грешка;) Но те свършиха невероятна работа и ако искате да направите нещо подобно, отидете на техния сайт, наистина е страхотно!
Препоръчано:
Часовник за местоположение „Уизли“с 4 стрелки: 11 стъпки (със снимки)
Часовник за местоположение „Уизли“с 4 ръце: И така, с Raspberry Pi, който се движеше известно време, исках да намеря хубав проект, който да ми позволи да го използвам най -добре. Попаднах на този страхотен инструктируем часовник „Изградете свой собствен Уесли“часовник от ppeters0502 и си помислих, че
ESP8266 Мрежов часовник без RTC - Nodemcu NTP Часовник Няма RTC - ИНТЕРНЕТЕН ЧАСОВНИК ПРОЕКТ: 4 стъпки
ESP8266 Мрежов часовник без RTC | Nodemcu NTP Часовник Няма RTC | ИНТЕРНЕТЕН ЧАСОВНИК ПРОЕКТ: В проекта ще се прави часовник проект без RTC, ще отнеме време от интернет с помощта на wifi и ще го покаже на дисплея st7735
Тестване на температурни сензори - кой за мен?: 15 стъпки (със снимки)
Тестване на температурни сензори - кой за мен?: Един от първите сензори, които новодошлите във физическите изчисления искат да изпробват, е нещо за измерване на температурата. Четири от най -популярните сензори са TMP36, който има аналогов изход и се нуждае от аналогово -цифров преобразувател, DS18B20, който
Д -р Кой Тардис Звънец на вратата: 14 стъпки (със снимки)
Dr Who Tardis Doorbell: Това е проект, който измислих, за да създам звънец на вратата Tardis. Това е безжичен звънец на вратата, който при натискане възпроизвежда аудио от шоуто. Записах и използвах аудио от поредицата Мат Смит, защото това е подарък за сестра ми и това е тя
Техно-маниак рулетка (или кой прави кафето?): 6 стъпки (със снимки)
Техно -маниак рулетка (или Кой прави кафето?): Това е притурка, направена от рециклирани компютърни части, за да даде абсолютен, недвусмислен и неопровержим отговор на този вечен офис въпрос - " Чий е редът да направи кафето? &Quot; Всеки път, когато захранването се включва, това прекрасно устройство