@maingear : The Raspberry Pi Zero W or Pi 3 both have BLE built-in, you don’t need any additional hardware to make them talk to a GoTenna. The standard Android Studio that is used for development contains an Android emulator, but I would not rely on it for Bluetooth at all -not even sure it is implemented - , there already is a huge variance from one tablet/phone to the next in how Bluetooth behaves, as I’m sure the Gotenna team knows very well
I have spent some time on the BLE protocol. It is not overly complicated - a simple HDLC framing system - , and mostly uses TLV structures (Tag-Length-Value) plus a couple of other oddities, but for instance building a NodeJS library that uses the ‘noble’ BLE API would require quite a bit of work, since this is a really low level protocol. I would love to implement a Gotennna driver in my http://wizkers.io/ framework but I simply lack the time.
And of course, since this is undocumented/unsupported, there is always a chance this will break with any firmware upgrade. The Android/iOS SDKs already support multiple firmware versions and models transparently, which indicates that the underlying protocol can definitely change a bit from one version to the next.
In practice, since the Gotenna needs a power supply if you want to operate for long periods of time, a USB SDK would probably make more sense, as long as it can be used on popular languages - C, python, Node, etc.