З’єднання «самопальних» пристроїв з bluetooth з iOS
Здрастуйте, Хабраюзер! Виникла у мене на роботі ситуація, що потрібно було спроектувати пристрій для iOS, який за допомогою bluetooth передавав дані на iPad. Якщо в кратце- це пристрій, який повинен ховатися у звичайній пачці сигарет і передавати на ipad дані, на якому ребрі вона лежить. Я почав вивчати сайт apple на предмет взаємодії bluetooth-пристроїв і самого ipad, але пропонувалися варіанти або використовувати GameKit (що нам зовсім не підходило), або вступати в програму Apple MFi (яка несе купу обмежень і просто так в неї не вступиш). Почали шукати рішення, і тут підвернувся мені людина, яка дуже добре дружить з електронікою. Спочатку розробка планувалася на Arduino, але знаюча людина відмовила від цієї витівки через великі фінансові витрати (потрібна була партія близько 1000 штук). І ми знайшли оптимальне рішення - зібрати пристрій самим. Так як я не сильний в електроніці, то просто опишу які компоненти використовувалися:
- датчик положення MMA7260QT
- контролер ATmega16U4-AU
- bluetooth BlueGiga
У результаті вийшов такий прототип:
Вигляд знизу:
Пристрій чудово передавав своє становище, але постало найголовніше питання: як ці дані передати на iPad?
Пристрій передає 10 разів на секунду певну літеру в залежності від розташування, і при кожній зміні положення передає цифру від 0 до 9, яка відповідає заряду акумулятора.
Ну а на iPad вже перехопити дані з клавіатури не склало труднощів. Я створив прихований UITextField і просто в ньому перехоплював «натиснені» клавіші. Ось короткий код, як це все працює:
А у нас тут можна отримати грант на тестовий період Яндекс.Хмари. Варто лише у полі «секретний пароль» запровадити «Хабр»