Skip to content

breakfastny/Verbalizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Verbalizer

The Verbalizer is an open source hardware and software platform originally built for activating and performing Google's Voice Search for desktop. The platform is developed with amatuers and home tinkeres in mind, so it's got a low barrier of entry. The hardware is Arduino-Compatible and the desktop software is build on top of OpenFrameworks.

Hardware

The Verbalizer board is a microcontroller board based on ATMega328. It's Arduino-Compatible so all you need is a mini-USB cable and the Arduino IDE to start hacking. In addition to most of the features you normally expect from an Arduino board, it has an onboard bluetooth module (Liard BTM511) which supports audio profiles (HFP) and serial data (SPP) communication. It also features 2 built in capacitive touch sensors.

The board operates at 3.3V and is best powered by a 3.6V lipo battery which can be charged when the USB cable is connected. The board has 2 digital I/O ports and 2 analog input pins available for the user. Max current for I/O pins are around 80mA.

Communication can be established either through the Bluetooth device or the onboard FTDI which channels serial data through USB.

Software

Verbalizer.app runs on the desktop to receive commands from the board and executes the Voice Search in Chrome. It's currently developed for Mac OS X 10.6. The application connects over bluetooth to the the board and establishes an RFCOMM channel for serial data communication. There's a basic ASCII protocol between the app and the board where a client (either board or desktop app) sends a command and expects an ACK_OK status back. The ack protocol is implemented since messages and commands can easily get lost due to naive programming (such as sleep/delays which are common in the Arduino world) on the board. The uC is using a software serial implementation to talk to the bluetooth module, which means that some serial data can get lost.

The desktop app is built on top of OpenFrameworks and is heavily tied to the OS X platform by using it's IOBluetooth.framework and CoreAudio.

To start developing the Desktop app, you'll need Xcode 3.2.5 or possibly later. The application has been developed with the OpenFrameworks library v0.062. It's also got a dependency of ofxMSAInteractiveObject from MSA libs use revision 62b877c768905909b95368a9d1f3146b1d7904b8.

To successfully compile the arduino sketch the bundled NewSoftSerial and CapacitiveSense libraries will need to be installed. How to install arduino libraries.

Change Log

Version 0.04

  • Added support for auto connect on startup.
  • Various bug fixes

Contributors

  • BREAKFAST
  • Zach Eveland, Blacklabel Development

Verbalizer homepage