08/21/2014 at 04:43 •
Well, I've been looking into the best way of emulating an HID keyboard. If I end up going with an at* microcontroller, V-USB would be the most logical choice. However, it may be best to use the bluetooth chip's SoC to handle the USB if possible. For example, this might be possible with the Texas Instruments chip, however it may not be with the CSR device. Further investigation is most certainly required.
There's always bitbanging USB 1.1......or not...
08/21/2014 at 02:37 •
Above is a board layout to get a feel for how components might be placed on the final product. I don't have a schematic or BOM available, because those parts are still in flux. I'm also still determining what bluetooth module to go with and if I'll be using an external microcontroller.
For which bluetooth chip to use, I'm getting ready to evaluate two components:
I have ordered a breakout board to test these components and hopefully provide a good testing platform. I've included a screenshot from Eagle below.
It's all modular with .1" headers and should be able to accommodate QFN 32 5mmx5mm as well as QFN 40 6mmx6mm. This way it is possible to use jumper wires to change configuration quickly. The above board fits on a 5x5cm board, which brings the cost down to below 1 dollar per board, which is pretty awesome. Once these come in, I'll begin with the testing of which chip to use, or if an entirely different product is needed.
08/15/2014 at 19:45 •
Here's the video of the handshake in action. Also I show the data that is transferred to show that encryption does indeed happen!
08/15/2014 at 19:04 •
Today I completed a software-only prototype of my project. Using C# and the loopback interface, I've established a secure key exchange for safe bluetooth communications. The next step is to implement my dongle code on a microcontroller, and communicate over a serial interface to simulate bluetooth. I'll be uploading a video soon of what I have as far as implementation.
- RSA-based key exchange
- 128bit AES encryption
To be done:
- Implement on microcontroller.
- Establish bluetooth communications to microcontroller.
- Setup HID emulation.
- Full phone app for database communication.
- Feature creep?