timhendriks93 / blender-servo-animation-arduino

This library helps to control servos based on an exported Blender animation. It is specifically designed to work with the Blender Servo Animation Add-on.
GNU General Public License v3.0
19 stars 2 forks source link

Feature request: Websockets connectivity via #1

Closed StrandedAlien closed 1 year ago

StrandedAlien commented 1 year ago

Hi Tim,

I am quite impressed by your engineering artwork and even more that you made your software openly available. Thanks a lot. I have one proposal which is websockets connectivity, that feature enables you to go wireless via Arduino ESP8266 or ESP32 modules. It supports a data rate of 1Mbit/s in both directions simultaneously. Once opened it acts like a cable connection until you close it. I just tried out the rather new websocket implementation in Armory3D (Blender Game engine with logic nodes) and must say after coping with the lack of documentation it works like a charm for me.

It has a functional web exporter, so you can really easy export working websites with your creations which could be animated remotely by the visiting audience. I can help you with some kick start to get you going, if you like. Just join the Armory3D forum and leave a PM or leave some note via Github. https://github.com/StrandedAlien?tab=repositories. Or just answer right here.

Cheers StrandedAlien aka 3D-Penguin

timhendriks93 commented 1 year ago

Hi StrandedAlien,

first of all thanks a lot for your kind words and sorry for the late reply. In the meantime, I have been working on an upgrade of my O.J. Punctuel animatronic which used a Raspberry Pi and could be controlled via a web UI. In hindsight the Raspberry Pi was a bit overkill for what I actually needed which is why I'm replacing it with an ESP32.

This leads me to your request as I'm now using my library in combination with Wifi functionality on the ESP32 anyway. I'm just getting started, but already have quite a clear picture of how to extend the already existing live mode feature based on a TCP socket. I'm happy to reach out to you should I encounter issues along the way or as soon as I have something ready for you to test.

Best regards Tim

timhendriks93 commented 1 year ago

I have now completed the implementation on both the Arduino library and the Blender add-on. The feature is yet to be officially released, but you can find and test the current implementation via the develop branches of both repositories:

The Arduino library now also includes a WebSocketLiveMode example.