I just unpacked and started setting up the Kysoh Tux
toy that I got at OScon. The lucky folks with a press badge were given a free one. I had to pay for mine.
Physically, it feels to be well and solidly made. It didn't feel like they were being cheap with the fabrication. It weighs just over half a kilogram.
Physical setup is straightforward. Unstrap the parts from the box. Click in the US power module into the internationalized power cord. Plug in the penguin unit, to charge it up. It can operate both plugged in, and on internal batteries, which it charges itself. Plug the fish unit into your computer with the included USB cord. It uses a mini-usb plug.
The firmware running in the "Penguin" main unit, and the firmware running in the "Fish" USB/wireless transmitter unit, and the interface library and control software on the host are all written in C and in Python, and licensed under the GPLv2.
There is a programmer friendly website
, with a community wiki, a blog
, a SVN repository, some mailing lists, a public bug database, and the software packages, which contains both the official software, and community contributions. They also have a freenode channel, #tuxdroid
. Included in the box is a programming cable, for reflashing both the penguin and the fish.
The "Needs Improvement":
The instructions in the box are not very good at "what to do next". They consist mainly of "go to our website". However, the website itself isn't very good at "what to do next". They should have a big noticeable link saying "Just get a Tux? Click here" which would lead to step-by-steps on downloading and installing the software.
, tuxisalive.com, is very slow. Maybe lots of other people just got one at OScon as well, but those "lots" number in the dozens instead of the thousands. Kysoh needs to scale up their site, and increase their bandwidth.
Their registration isn't OpenID enabled.
Their software isn't distribution-oriented. They need to release Fedora and Ubuntu packages.
Instead, it was a flashback to the bad old days of UNIX software installs. Download and unpack a tarball, read a README file, then run an install script as root. Said script creates and the copyfills a couple of directories under /opt and then makes some symlinks into /usr/local/bin.
That script failed the first time, it was unable to install the Atmel USB device programmer stuff. Instead it just gave me a link to the dfu-programmer
project on SourceForge, and quit. Fortunately, I was able to just download the tarball from that project, and do a standard "configure && make && sudo make install", and then go back and rerun the tux install script.
None of this stuff was hard for me
, but it's an unnecessary challenge that would frustrate and stop most people.
The "How to use it as an audio device" information on their website is confusing and incomplete. If I didn't have a decent grasp of how my system was set up, and how Linux audio works, I would have ended up switching over from ALSA to OSS, borked it all, and still
not got audio working.
The Text-to-Speech software is closed source. And it installs a license manager daemon! The only thing that makes this moderately forgivable is that TTS on this thing is darncool, and there is no acceptable open source TTS software. Yet.
The audio isn't exactly first rate. Which isn't really surprising, since the audio has to go thru the USB, then thru their custom wireless protocol. The D/As in the penguin unit are unlikely to be pro-grade. And the speaker/mike in penguin unit are, after all, buried inside a heavy plastic doll. (There are speaker and mike jacks in the back of the unit.)
The actuators that move the eyelids, beak, and flippers are somewhat noisy and slow. It really needs room to flap it's flippers. I discovered this, because it makes a really scary clicking grinding sound if you don't.
You can only control one droid. You can't have several fish units plugged into a USB hub, and thus control several penguin units at once. This is a known issue that should crack by virtue of the open source of the comm software and comm protocols.
But to counter all those "needs to be improved":
Kysoh feels to me as a not very large company. They've probably been spending their time working on the difficulties with firmware programming, and with dealing with fabrication contracts with contractors in China. Now that they are actually shipping, some effort can be spent upgrading the website bandwidth, and in fixing the software packaging and documentation. This last bit can be fixed by an open source developer community.
As for complaining about loud actuators, this is a sub hundred dollar toy made of plastic. If I wanted brass gears and precise motion-coded servos, it would have instead cost a thousand dollars, and I wouldn't have one at all.