delay(1000);
if (deviceConnected){
BleSentData(12.34, 1000, 10, 100,26); // Мощность дозы в мкР/ч, доза в мкР/ч, число импульсов за последние 2 секунды, процент заряда батареи, температура.
}
}
void BleSentData (float RAD,float DOSERAD,uint16_t PULSE,uint8_t battery,uint8_t temperature){
uint8_t date[13] = { 0x00, // Флаги
0x83 ,0x3C ,0xBC ,0x40, // Доза в мЗв
0x79, 0xB0, 0xE3, 0x3F , // Мощность дозы в мкЗв/ч
0xA8 ,0x00 , // Число импульсов за последние 2 секунды
0x41, // Процент заряда батареи (0..100)
0x17 }; // Температура
*(float*)(&date[1]) = DOSERAD/100000.0; // доза в млР/ч
*(float*)(&date[5]) = RAD/100.0; // Мощность дозы в мкР/ч
*(uint16_t*)(&date[9]) = PULSE; // Число импульсов за последние 2 секунды
*(uint8_t*)(&date[11]) = battery; // Процент заряда батареи (0..100)
*(uint8_t*)(&date[12]) = temperature; // Температура
pCharacteristic->setValue( date, 13 ); // Отправка данных
pCharacteristic->notify();
}
Убедительная просьба для всех. Загружайте пожалуйста фотографии в нашу фотогалерею по адресу http://rhbz.pw У кого нет учетной записи - отпишитесь в этой теме ЗДЕСЬ либо в ЛС к BON'у
BON
Отправлено: 15 Июля, 2021 - 22:12:52
Главный админ
Off-line
Сообщений всего: 8314
Дата рег-ции: Июль 2010 Откуда: USSR/Белгород
Репутация: 165
delay(1000);
if (deviceConnected) {
BleSentData(12.34, 1000, 18.6, 20, 22); // Мощность дозы в мкР/ч, доза в мкР/ч, cps, процент заряда батареи, температура.
// *Если процент заряда больше чем 100, то загорается значок заряда акб.
pCharacteristic->setValue(date,13); // Отправка данных
pCharacteristic->notify();
}
Добавил отображение зарядки акб и стат погрешность теперь может отразить 0.5
Хотел сделать двух сторонюю связь, но не получилось. Методом научного тика выяснил что епс32 не хочет запускать блютуз если UUID F8DE242F-8D84-4C12-9A2F-9C64A31CA7CA
Если поставить другой, то все нормально, но для работы нужен именно этот. Кто сталкивался с этой проблемой отпишитесь плз как вы ее решили )
Maniak003
Отправлено: 21 Ноября, 2021 - 16:20:59
Прописавшийся на форуме
Off-line
Сообщений всего: 334
Дата рег-ции: Янв. 2021 Откуда: СПб, Россия
Репутация: 20
Nikita71 пишет:
UUID F8DE242F-8D84-4C12-9A2F-9C64A31CA7CA
Вижу один сервис: 63462a4a-c28c-4ffd-87a4-2d23a1c72581
Одна характеристика для чтения: 70bc767e-7a1a-4304-81ed-14b9af54f7bd
И несколько характеристик для записи:
2e95d467-4db7-4d7f-9d82-4cd5c102fa05
3f71e820-1d98-46d4-8ed6-324c88428868c
57f7031f-03c1-4016-8749-baabaa58612d
bb6c9c06-c37d-49b0-94cf-83623622573b
e2423a67-7541-4080-8b5a-59449454a873
ea50cfcd-ac4a-4a48-bf0e-879e548ae157
f8de242f-8d84-4c12-9a2f-9c64a31ca7ca
Нужно для записи и чтения использовать разные характеристики. Т.е. из характеристики Dose_CHARACTERISTIC_UUID, читаем, а в какую то из перечисленных пишем. В характеристику для чтения писать нельзя.
(добавлено)
И еще, Вы уверены, что можно писать раз в секунду ? Мне помнится, что АтомФаст не очень быстро выполняет изменения настроек. Видимо нужно дожидаться подтверждения ?
Off-line
Сообщений всего: 95
Дата рег-ции: Сент. 2020 Откуда: Україна Київ
Репутация: 2
кажется все правильно сделал, вот пример с ca73b3ba-39f6-4ab3-91ae-186dc9577d99, но для работы нужен F8DE242F8D844C129A2F9C64A31CA7CA, но увы, с ним плата не хочет стартовать. (не хочет влючать блютуз)
только что зашел в serial порт, а там esp32 в бесконечной перезагрузке.
Off-line
Сообщений всего: 334
Дата рег-ции: Янв. 2021 Откуда: СПб, Россия
Репутация: 20
Характеристика ca73b3ba-39f6-4ab3-91ae-186dc9577d99 служит для чтения . Прибор при помощи этой характеристики передает данные в приложение на смартфон.
Характеристика f8de242f-8d84-4c12-9a2f-9c64a31ca7ca служит для записи. Прибор получает данные из приложения.
Нужно использовать обе характеристики если требуется обмен в обе стороны.
У меня к сожалению сейчас нет подходящего контроллера, что бы проверить...
Nikita71
Отправлено: 21 Ноября, 2021 - 19:08:04
Частый гость
Off-line
Сообщений всего: 95
Дата рег-ции: Сент. 2020 Откуда: Україна Київ
Репутация: 2
Maniak003 пишет:
Характеристика ca73b3ba-39f6-4ab3-91ae-186dc9577d99 служит для чтения . Прибор при помощи этой характеристики передает данные в приложение на смартфон.
Характеристика f8de242f-8d84-4c12-9a2f-9c64a31ca7ca служит для записи. Прибор получает данные из приложения.
Нужно использовать обе характеристики если требуется обмен в обе стороны.
У меня к сожалению сейчас нет подходящего контроллера, что бы проверить...
Nikita71 пишет:
как тут ? только другой UUID
по докам f8de242f-8d84-4c12-9a2f-9c64a31ca7ca Read/write
Off-line
Сообщений всего: 334
Дата рег-ции: Янв. 2021 Откуда: СПб, Россия
Репутация: 20
Brownout detector was triggered -- это однозначно говорит о проблеме питания. Попробуйте использовать usb кабель с более толстыми жилами или заведите питание на плату напрямую. Только опять не забывайте про заземление, к usb блокам питания - это тоже относится в полной мере.
Nikita71
Отправлено: 22 Ноября, 2021 - 16:47:40
Частый гость
Off-line
Сообщений всего: 95
Дата рег-ции: Сент. 2020 Откуда: Україна Київ
Репутация: 2
поменял все буквы в UUID на маленькиє и заработало, но не надолго, теперь при активном f8de242f-8d84-4c12-9a2f-9c64a31ca7ca приложении атом фаст вылетает. удалил PROPERTY_READ тепер есп32 вылетает )
Brownout detector was triggered ошибка так и осталась, хотя я подключил 5в от бп.
Попробую другой стаб на 3.3 поставить ...
Off-line
Сообщений всего: 334
Дата рег-ции: Янв. 2021 Откуда: СПб, Россия
Репутация: 20
Nikita71 пишет:
поменял все буквы в UUID на маленькиє и заработало, но не надолго, теперь при активном f8de242f-8d84-4c12-9a2f-9c64a31ca7ca приложении атом фаст вылетает. удалил PROPERTY_READ тепер есп32 вылетает
Вы создали вторую характеристику ? Покажите текущий исходник.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
Похожие темы: ProtonBridge2(ESP32) или используем приложение AtomSwift в самодельном дозиметре на esp32