I'm a software developer looking to prototype an application that requires input from a 3-axis accelerometer, ideally via Bluetooth LE. Current specs on the accelerometer are +/-50G sensing range with +/-5% precision and at least 1kHz sample rate, ideally with peak sampling.

My primary question is whether I can do this with off-the-shelf hardware and APIs? If so what are good sources and standards, especially if I want to mass-produce the hardware?

E.g., can I pay up for an integrated prototype device that meets those specs and comes with an API that encapsulates the Bluetooth, self-test, and other hardware interaction, so I can just get to work on the software problem?

Or is this still a "hard"/custom electronics problem? If so is the Bluetooth requirement itself tricky, meaning I should start with a wired connection to the accelerometer and deal with Bluetooth integration later?

  • \$\begingroup\$ Everything can be considered a hard/custom problem, if you require reasonable amounts of reliability and integration. \$\endgroup\$ – Dzarda Mar 30 '14 at 16:56
  • \$\begingroup\$ Right. But my question is essentially "can this application be done, or at least prototyped, off-the-shelf?" (And if so, how.) When technology is new everything is hard. But Bluetooth and accelerometers are not new. I just don't know whether these components have matured to the point a software engineer can hack them as described without having to hack the hardware. \$\endgroup\$ – feetwet Mar 30 '14 at 18:02

BLE has enough bandwidth to send 1kHz of accelerometer readings, but it does not have low enough latency to send 1000/second.

If you accept the latency limitations of BLE, you can build your product around a BLE capable HCI module. HCI is a request/event protocol that lets you drive the Bluetooth stack in the module. You can use HID over GATT profile (HOGP) and you will only need to know a little bit about Bluetooth to drive HCI and otherwise you will work mostly in terms of USB HID concepts.

| improve this answer | |
  • \$\begingroup\$ Thanks. Latency isn't a problem for this application. So the BLE side of it sounds mature and straightforward. But what about the accelerometer integration? Are there standards for wrapping and interfacing (both hardware and software) an accelerometer with a BLE HCI module? Or at this point would I have to break out the solder and machine code? \$\endgroup\$ – feetwet Mar 30 '14 at 19:08
  • \$\begingroup\$ @feetwet: You will need to understand HCI to some degree (essentially the BT state machine sends you events to give you a chance to hook in. You must send the corresponding request to continue the normal BT operation). You will also have to interface with your accelerometer and decide how to present the data (I suggested a custom HID device in my answer, but there may be a BLE specific profile that's useful) \$\endgroup\$ – Ben Jackson Mar 30 '14 at 19:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.