{"id":1060,"date":"2024-02-11T16:57:08","date_gmt":"2024-02-11T16:57:08","guid":{"rendered":"https:\/\/bechele.de\/?page_id=1060"},"modified":"2026-02-23T17:45:05","modified_gmt":"2026-02-23T17:45:05","slug":"bechele-software-2-0","status":"publish","type":"page","link":"https:\/\/bechele.de\/?page_id=1060","title":{"rendered":"Bechele Software 3.0 + 2.0 &#8211; open source"},"content":{"rendered":"\n<p>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. <\/p>\n\n\n\n<p><strong><em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-luminous-vivid-orange-color\">Related Links:<\/mark><\/em><\/strong><br><a href=\"https:\/\/bechele.de\/?page_id=186\"><strong>The project \u2013 how it works<\/strong><\/a><br><strong><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\"><a href=\"https:\/\/bechele.de\/?page_id=1065\">Downloads for Version 3.0 (+ old 2.0)<\/a><\/mark><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-cyan-blue-color\"><br><a href=\"https:\/\/bechele.de\/?page_id=1069\">Handling SD card Image files<\/a><br><a href=\"https:\/\/bechele.de\/?page_id=1081\">Installing the bechele software from scratch<\/a><br><a href=\"https:\/\/bechele.de\/?page_id=1071\">SSH Access to the software \u2013 fix line drawing issues<\/a><br><a href=\"https:\/\/bechele.de\/?page_id=1117\">Using one of the SD card images:<\/a><br><a href=\"https:\/\/bechele.de\/?page_id=1123\" target=\"_blank\" rel=\"noreferrer noopener\">Fault handling \u2013 possible sources of Problems<\/a><\/mark><\/strong><\/p>\n\n\n\n<p><strong>The core function of the Bechele 2 software is, to move Servos (typically model making servos) synchronous to audio speech or music data.<\/strong><\/p>\n\n\n\n<p>Therefore the movement data will be recorded according to the sound. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"194\" src=\"https:\/\/bechele.de\/wp-content\/uploads\/2022\/07\/79-1.png\" alt=\"\" class=\"wp-image-250\" srcset=\"https:\/\/bechele.de\/wp-content\/uploads\/2022\/07\/79-1.png 800w, https:\/\/bechele.de\/wp-content\/uploads\/2022\/07\/79-1-300x73.png 300w, https:\/\/bechele.de\/wp-content\/uploads\/2022\/07\/79-1-768x186.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure>\n\n\n\n<p>At publishing time these &#8220;audio moves&#8221; can be output &#8211; eventually chained with other audio moves as many times as you desire. The servos then drive some mechanical elements that shall create the &#8220;living&#8221; 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.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"269\" src=\"https:\/\/bechele.de\/wp-content\/uploads\/2022\/07\/79-2.png\" alt=\"\" class=\"wp-image-251\" srcset=\"https:\/\/bechele.de\/wp-content\/uploads\/2022\/07\/79-2.png 800w, https:\/\/bechele.de\/wp-content\/uploads\/2022\/07\/79-2-300x101.png 300w, https:\/\/bechele.de\/wp-content\/uploads\/2022\/07\/79-2-768x258.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure>\n\n\n\n<p>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.<\/p>\n\n\n\n<p>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.<br><br>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.<\/p>\n\n\n\n<p>This had the following disadvantages:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The whole movement range of the servo needed to be mechanically&nbsp; possible.<\/li>\n\n\n\n<li>Different servo types could not be combined when the servo parameters deviated.<\/li>\n\n\n\n<li>On mechanical changes of servos or joy stick, a mechanical re-calibration was required.<\/li>\n\n\n\n<li>Mechanical changes required a new recording of the concerned movement.<\/li>\n<\/ul>\n\n\n\n<p>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 &#8211; despite parametrized correctly &#8211; does never try to exceed its mechanical limits in the model.<\/p>\n\n\n\n<p>Here a screen shot of the user interface to record the movements according to the sound. The channel names are according to your settings.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"438\" src=\"https:\/\/bechele.de\/wp-content\/uploads\/2024\/02\/ScreenShot-180-rolf@orangepipc_--1024x438.png\" alt=\"\" class=\"wp-image-1062\" srcset=\"https:\/\/bechele.de\/wp-content\/uploads\/2024\/02\/ScreenShot-180-rolf@orangepipc_--1024x438.png 1024w, https:\/\/bechele.de\/wp-content\/uploads\/2024\/02\/ScreenShot-180-rolf@orangepipc_--300x128.png 300w, https:\/\/bechele.de\/wp-content\/uploads\/2024\/02\/ScreenShot-180-rolf@orangepipc_--768x328.png 768w, https:\/\/bechele.de\/wp-content\/uploads\/2024\/02\/ScreenShot-180-rolf@orangepipc_-.png 1219w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Have a look at the follwing videos to better understand the bechele software:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Tutorial: open source animatronics software to drive servos synchronous to sound.\" width=\"843\" height=\"474\" src=\"https:\/\/www.youtube.com\/embed\/9hyF8b8JamQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"ConfigL.pm - configuration of bechele software 2.0\" width=\"843\" height=\"474\" src=\"https:\/\/www.youtube.com\/embed\/ecAITBntI8s?list=PLPYqY0GeaRxzm4E8Ogsm-ljlDMyqA4Rf5\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"trackui pl - operation of bechele open source animatronic software 2.0\" width=\"843\" height=\"474\" src=\"https:\/\/www.youtube.com\/embed\/EzXlcl5pR4A?list=PLPYqY0GeaRxzm4E8Ogsm-ljlDMyqA4Rf5\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>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&hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":70,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1060","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/bechele.de\/index.php?rest_route=\/wp\/v2\/pages\/1060","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bechele.de\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/bechele.de\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/bechele.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/bechele.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1060"}],"version-history":[{"count":11,"href":"https:\/\/bechele.de\/index.php?rest_route=\/wp\/v2\/pages\/1060\/revisions"}],"predecessor-version":[{"id":1533,"href":"https:\/\/bechele.de\/index.php?rest_route=\/wp\/v2\/pages\/1060\/revisions\/1533"}],"up":[{"embeddable":true,"href":"https:\/\/bechele.de\/index.php?rest_route=\/wp\/v2\/pages\/70"}],"wp:attachment":[{"href":"https:\/\/bechele.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1060"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}