The PI Hardware is dual mode, but wasn't originally set up for BLE by default. I believe that the support package needed to do this is "BlueZ" and you may need to build a non-standard version and install it to play with this.There are some examples on YouTube and elsewhere.
I got as far as using pi shell commands to enable BLE, but never got it working reliably with other equipment and haven't had time to get back to it.
The situation is complicated now that the PI GUI takes over control of Bluetooth for its own uses. I don't know if you can get BLE working without disabling the Raspbian use of it for keyboards, mice, etc. which is now enabled at bootup.
Depending on what you are doing, you may also need to get it running as a "slave" instead of it's usual role as a master on the pi.
Try googling BlueZ and BLE and PI together. There's a lot info out there, but much of it is out-of-date...
hope this helps a little - it would be great to see it working, since the PI Zero is easy to work with for building very powerful peripherals...
For IOS direct and BLE connectivity, I'm playing with boards available from Adafruit and other vendors. I'm using the Adafruit ones and find they're very easy to use, work well and have a lot of support documentation and examples. Some are actually programmable in a python dialect called Circuit Python.
I have NOT, however tried them with the cb module, but there's no reason they shouldn't work.
The easiest way to do what you are trying to do is to skip cb and use HID interfacing to create actual keyboard devices. This way your python program can use regular keyboard IO.
In fact, I've even used HID USB interfacing with Apple's Camera Connection Kit adapter to connect this type of device via USB.
The Adafruit "ItsyBitsy M0 Express" is a tiny controller that can be powered and run directly from a USB connection. A trivial python program can be used to simulate keyboard codes from contact closures with no additional parts besides the switches. I'm playing with a "page turner" that uses a foot pedal to turn document pages this way.
I'm also playing with a similar project using BLE with a fancier board called the "Feather MO Bluefruit LE". It's based on the popular Arduino development support, but there are plenty of samples and documentation for doing this kind of thing. There are many more boards available from Adafruit and others at various price points with different BLE and hardware IO and programming support.
All the BLE boards also support general purpose "BLE GAP" programming if you want to use the "cb" module to communicate, but I haven't played with that approach very much.
Just google "Adafruit".
Hope this info helps....
( I have no connection with Adafruit - I'm just a satisfied customer...)
Yes and it had me scratching my head in SSH as well (I rely heavily on unix command line help options)!
It's easily fixed by going to Settings:General:Keyboard and turning off "Smart Punctuation".
I don't know if smart punctuation has always done this or not, since I normally turn it off to avoid problems with quote marks.
In any case, the update seems to have turned it on.
hope this helps...
Thanks very much for this - it's cute and looks very useful. As a new Python programmer, I'm amazed at the power of the Flask library and am studying its manual closely at the moment.
No problem installing and running the script on the latest Pythonista - I do have one practical problem using the script however:
The file downloaded on connection to my macbook pro running OSX 10.11.5 Safari takes on the name of the url of the connection - in my case "mpv-ipad.local", since the URL I used to connect used Bonjour.
I had to manually rename it with a .zip extension before it could be recognized and opened. Shouldn't there be an easy way to get the server to provide a header that results in the correct filetype (and hopefully filename as well) being downloaded?