Hey all,
time to make the cross-platform app talk to a TTGO.
Polling characteristics 2A27 and 2A29 on nrfconnect I get frequency and board name data while on the app, running on the device, I get empty replies. Any idea why?
hmm - 2a27 is not a characteristic offered by our service. So at least wrt this call, I think you are trying to read from the wrong characteristic.
Our service only offers the following three characteristics:
FromNum
ToRadio
FromRadio
(documented here)
So for this call you would want something like this.ble.read(peripheral.id, 'CB0B9A0B-A84C-4C0D-BDBB-442E3144EE30', 'ed9da18c-a800-4f66-a670-aa7547e34453') (not 2a27) if you wanted to read āFromNumā - you should get back a four byte integer (in little endian order).
yes, that will work when you are reading from 0x180a (the device info service) - though as weāve been discussing the ionic lib might have āissuesā . But in your first two lines you are trying to read from our meshapi service, and that service only implements the three characteristics I just listed.
ok problem solved, I can read values v0.7.11 and 1.0-EU433.
This code should work, unfortunately my TTGO serial port doesnāt work so I canāt see the results. Is there a way to show it on the display?
var data = new Uint8Array(1);
data[0] = 0x55;
this.ble.write(peripheral.id, this.service_uuid, this.TORADIO_UUID, data.buffer).then((res) => console.log(res));
It works and even pairs with another TTGO. The ??km is quite ugly we may need to fix it if no GPS is detected.
Anyway, now itās time to work on sending and receiving messages.
Ok. It sure sounds like your build is linking against an old version of the arduino-esp32 prebuilt bins. The easiest way to make sure thatās not the problem is to ārm -rf .pio ~/.platformio/packagesā in your buildir - to blow away the platformio caches. I bet then your build will be happy.
Because if the software install works (which uses the 921600 baud rate also), the serial port hardware is fine.
(Or just program the release build of 0.9.1 and see how it goes)