Есть такой зверек на Али
nRF24LE1
Такой вот
держатель для батареи 2032
nRF24LE1 являет собой всем известный nRF24L01 но с микроконтроллером С8051 на борту.
Вот спецификация
www.keil.com/dd/docs/datashts/nordic/nrf24le1_ds_v1_1.pdf
Среда разработки (все ссылки ниже для WIN64)
Суть вопроса: Все мы, так или иначе, часто нуждаемся в радиобрелке (открыть машину, дом, гараж, включить\выключить что либо и т.п.
Стандартные китайские брелки совершенно не обладают какой либо защитой, могут быть считаны с эфира с помощью ноутбука и SDR, и отправлены в эфир с помощью китайского передатчика на 315, 433, и т.д. МГц. Это приведет к тому, что любой продвинутый школьник сможет открыть то, что Вы бы хотели оставить закрытым.
На просторах интернета нашел интереснейшее решение
www.drive2.ru/c/2712270/
Человек предложил алгоритм, даже пробовал его реализовать (на начальном уровне), результат получился громоздким (nRF24L01 + Arduino), но обнадеживающим, наверное он просто не знал о ЛЕ1, да и дешеветь модули начали недавно только, некоторіе китайцы до сих пор держат цену. Но человек куда-то пропал. ((
Как я вижу реализацию:
Система состоит из брелка (передающая часть) "Slave", и "Master".
Слейв это конечно же nRF24LE1. Мастер может біть и на nRF24L01 + Atmega (для удишевления конструкции).
Должна быть продуманная система "подшивки" брелков.
"Мастер" должен уметь:
"Подшивать брелки" |
Конфигурироваться как с "залипанием" выходов, так и без. Типа раз нажал - включил, второй раз - выключил, или пришла команда - отдал, прекращение передачи команды - тоже уведомил по УАРТ. |
Мастер должен уметь выдавать код нажатой кнопки по UART + прерывание (на случай если будет работать с другим микроконтроллером, с ардуино, к примеру), UART полезен тем, что "слушать" его дешево по ресурсам контроллера и только две ноги + прерівание. |
Вызывать брелок, передавая статус чего либо, скажем "сработала сигнализация" и передавать на брелок на сколько поднять ШИМ на сигнальном выводе. Сам не понял что написал, ниже понятнее. )) Еще читать данные с ADC брелка. Короче аналоговый канал - читаем ADC с брелка и управляем ШИМ на віводе брелка, и наоборот. |
Контроль связи, - есть\нету. С отдачей статуса на брелок. |
Очень было бы круто, если бы два "мастера" могли создавать канал шифрованной связи между собой.
На пущей надежности от взлома, было бы вообще хорошо, если бы во время обмена сообщениями, слейв и мастер меняли канал передачи приема. Это сильно бы осложнило жизнь тем, кто хотят канал "послушать" или пеленг взять.
Брелок должен уметь:
"Подшиваться" |
Иметь минимум 4 кнопки управления и хотя бы один ADC + доп.канал управления нагрузкой думаю будет полезен, хотя не обязателен. Можно и статусным выводом нагрузкой рулить(сколько модуль китайский позволит, приедут - посчитаю выводы). |
Иметь возможность настраиваимо (параметры ШИМ получаем с "мастер") "пилипкать" бузером при вызове с мастера со статусом "сработало". Этим же выводом можно чем-то рулить с "мастера" - сервой например. |
Контроль связи - Весело мигнуть " зеленым" светодиодом если связь с базой есть, и жалобно "проскулить" бузером (тихонечко (ипользовать ШИМ вывод) и отключаемо с переводом индикации на "красный" светодиод) если связь пропала. |
Между сеансами связи, спать |
как убитый.
(у этого модуля сон - 20мкА!!!, на минуточку, чуть больше в режиме "слушать")
Ребята, я всего лишь начинающий ардуишщик, и полный "утопленник" в этом вот С. Давайте подымем этот проект, больно интересная вещи должна получится.
Пока жду модули. Готов купить парочку заинтересованному программисту за свои деньги. (бросайте адрес в личку)
Частина повідомлення прихована від гостей. Будь ласка, увійдіть або зареєструйтесь, щоб побачити її.
Забавное чтиво (файл хелпа из SDK, с описанием примеров)
drive.google.com/open?id=1hdU7Ln99ARkXTE_j5lVa6AtshD7vRK7r