I am glad to announce that Bluetooth HID devices are now supported by the USB Host library. The library already supports PS3 and Wiimote controllers, but now it also supports more general devices, like Bluetooth keyboard and mice.
First time you run the code, you will have to pair with your device, this is done by creating the instance like so:
BTHID hid(&Btd, PAIR, "0000");
You can of course set the pin to anything you like.
Now you should enable discovery of your device and it should automatically detect any mouse or keyboard present and then connect to them. On Bluetooth mice there is no need to enter any pin, but on a keyboard you should enter the pin on the keyboard and then afterwards press enter.
So in this example you should press 0 four times on the keyboard and then press enter afterwards.
After you have paired with the device, you can simply create the instance like so:
When you press any button on your device it will automatically connect to the last paired device i.e. your Arduino. Read more…
We are very pleased to announce that our Kickstarter for the Balanduino balancing robot has successfully been funded by $13,494 which we are very happy about.
We have just received stickers from our printing company and have decided to give a little bonus in form of a signed Balanduino post card. We will be shipping this post card and stickers to all of our backers who have pledged $10 or more, within next week.
Hello to all of our followers. This is just a short reminder that the Kickstarter of our Balancing robot, the Balanduino, is nearly finished.
We have already reached our goal of $10.000, but of course it would be great to get even more backers and pledges.
In the meanwhile we have recorded a new video of the robot with a GoPro mounted on the top.
Hello all fellow blog readers.
Most of you might be aware of the Balancing robot project we have been working on for quite a while, if not please have a look here: The Balancing Robot.
We have now been working on this project in over a year, fine tuning the balance and stability of the robot and adding even other features and control options.
And NOW we are ready to announce this Balancing robot to be sold as a kit, named Balanduino.
The Balanduino kit consists of an Arduino compatible main board with the necessary sensors to keep the robot balanced automatically.
Furthermore the main board contains a USB Host controller, the MAX3421E, which library for the Arduino we have been expanding a lot recently, adding support for many of the most popular game controllers.
This USB Host controller together with a USB Bluetooth dongle enabled you to remotely control the Balanduino with your Android phone, PS3, Wii or Xbox controller and even your Windows, Linux or Mac PC. Read more…
I’m happy to announce that documentation is now available for all the libraries I have written for the USB Host Shield library.
The documentation is available at the following link: http://felis.github.com/USB_Host_Shield_2.0.
The documentation is generated using Doxygen which is a free documentation-generator based upon the header files in the source code.
I hope this will be useful for people who is new to the USB host library or even people who just want a quick overview.
If you spot any typos or got any comments please let me know in the comments below.
This is a short announcement regarding the USB Host Shield from Circuits@Home, which we are now carrying in in our store.
By buying the official shield you will support the continous development of the library and get support from us!
The shield can be found and bought here: USB Host Shield 2.0 for Arduino.
The shield can be used with almost any kind of Arduino including the most popular Arduino Uno, Arduino Mega, Arduino Leonardo etc. If you are in doubt if your Arduino is supported please don’t hesitate to write a comment below.
The library now also supports the Nunchuck controller and the Motion Plus extensions. The newest version of the library can be found at github.
The library now also work with the new Wiimote where the Motion Plus extension is built-in. Check out my commit to see what where needed in order to make the new Wiimote work as well – the main difference is that you now have to send the data using the interrupt channel.
To tell if your Wiimote is the new type, it should have a label at the bottom saying “Wii MotionPlus INSIDE”. If you are in doubt take a look at this picture.
This is yet again a new library for Arduino.
But this time it is a speciel one and a library I have though about making for a long time since I wrote the PS3 Bluetooth Library. It is the RFCOMM/SPP library, in short it is a virtual serial port via Bluetooth, which means you can now communicate with your Arduino via Bluetooth using a normal terminal application on your computer, smartphone etc. It has been confirmed working with Windows 7, Mac OS X, Linux (Ubuntu 12.04) and several Android devices.
I have for a long time wanted to build a remote controllable balancing robot aka Segway – that’s was actually the main reason why I created the PS3 Bluetooth Library both for Arduino and the FEZ Devices. It has been a long time since the sneak peak and the performance has been improved a lot since then. The original one had a FEZ Rhino as the main processor, but I discovered that it was not fast enough to read the encoders, as it is not running embedded code. Also I was already using more than 10ms per loop, which I used as a fixed time loop, so I decided to step up a notch and go for a much more powerful device: the mbed microcontroller, which is an ARM Cortex-M3 running 96MHz.
It might have been possible with just a normal Arduino (NB: I have now ported the code to Arduino, see update for the code), but I didn’t want the speed of the processor to be an issue, so I decided to go for the mbed. The robot also features an Arduino Duemilanove with a USB Host Shield on top running a sketch based on my PS3 Bluetooth Library. The mbed board actually has USB Host functionality, but I decided not to port the PS3 Bluetooth Library as my original thought were to use an Arduino Due, but as you might know it hasn’t been released yet, despite the Arduino team announced, that it would be released by the end of 2011. But as soon as it is released I think I will port the code to it instead.
Here is a short video demonstration of the robot and me explaining some of the concepts of the design and how it works:
I have now created another library that only supports the controller via USB. The source code for the USB library can be found at the github repository. An example can be found as well: PS3USB.ino.