Menu Close

Bechele Software 2.0 – open source

Just the mechanical hardware does not make models move, so the really imortant part to drive the hardware is the software that can control the mechanics.

Related Links:
The project – how it works
Downloads for Version 2.0
Handling SD card Image files
Installing the bechele software from scratch
SSH Access to the software – fix line drawing issues
Using one of the SD card images:
Fault handling – possible sources of Problems

The core function of the Bechele 2 software is, to move Servos (typically model making servos) synchronous to audio speech or music data.

Therefore the movement data will be recorded according to the sound.

At publishing time these “audio moves” can be output – eventually chained with other audio moves as many times as you desire. The servos then drive some mechanical elements that shall create the “living” impression in the audience. The possibilities of the software are far beyond just animating a puppet. Here you may have some more possibilities. Always when a pre-recorded movement pattern shall run parallel to sound, this software can be used.

In the replay mode the system works independent, this means usually then there is no terminal connected. Depending on the structure of the audio data, interrupts may be contained.

Working principle: A movement set always consists of a mp3 sound file and a .svo file, that contains the movement points for the servo. Optionally a .txt file may exist in addtion, that contains textual hints for the puppet player in case dialogues are desired and the text shall not be learned fully by rote. The text will then be displayed on the terminal screen from where the replay program has been started.

In the first version of the project the positions of the joy stick have been directly passed to the servos. There the value range of the joy stick needed to coincide exactly with the servos.

This had the following disadvantages:

  • The whole movement range of the servo needed to be mechanically  possible.
  • Different servo types could not be combined when the servo parameters deviated.
  • On mechanical changes of servos or joy stick, a mechanical re-calibration was required.
  • Mechanical changes required a new recording of the concerned movement.

Therefore joy stick movements as well as servo movements will be parametrized and normalized to a range of 0 to 4096 in file ConfigL.pm. If for example a mouth movement of a puppet was realized, so that 2/3 of the possible angle range of the servo was in use and after a mechanical change just the half of the angle range is needed, existing movement files can be re-used without any change, by adapting the servo parameters. The same applies if the joy stick changes. The positions of 0 to 4096 in a movement file contains the complete possible mechanical movement range of the servo in the model. In other words: The servo – despite parametrized correctly – does never try to exceed its mechanical limits in the model.

Here a screen shot of the user interface to record the movements according to the sound. The channel names are according to your settings.

Have a look at the follwing videos to better understand the bechele software: