I post here to present the work I did for some time, hoping it may be useful for someone :
What is it ?
An OSC server to control crazyflies, and a Unity3d client to this server, giving an interface, and scripting abilites
---
OSC SERVER :
What is OSC ?
OSC (Open Sound Control) is a protocol, based on UDP, used by a lot of digital artists.
It is used as a replacement for midi, but also to transfer data between two computers/programs, such as video streams, user inputs, etc...
Why use Osc ?
A lot of artists could use crazyflies fairly easily by having an OSC server instead of a ROS or python API.
My work :
I created an OSC server, using the python crazyflie API.
It supports :
- Drone connection
- LPS anchors (TdoA mode)
- Log system
- Param system
And the OSC documentation here : https://github.com/4rzael/crazyflie-osc/wiki
---
UNITY3D CLIENT :
What is Unity3d ?
Unity3d is a free game engine, used by a lot of independent creators.
Given the number of tools it provides, it is now used for a lot of applications, such as :
- game development
- research
- augmented reality apps
- interfaces
- digital art
- ...
Why use Unity3d ?
Unity3d is used by a lot of people, and is free and cross platform.
It also gives a cool 3d interface, has support for many input systems, and fantastic scripting abilities.
My work :
I create some scripts, allowing to control crazyflies as standard Unity GameObjects, using my OSC server.
It supports :
- LPS positioning
- Multi-drone control
- Log and parameters handling
- LPS anchor identifying
- Led ring decks
And the documentation here : https://github.com/4rzael/crazyflie-osc-unity/wiki
---
More information :
* This project is in a stage we could consider "alpha". You may encounter bugs/problems in the current state.
* If you have any questions, create an issue on github
* If you would like to contribute, create a fork, and make a pull request.
* If you would like to maintain the project (as I cannot work on it anymore : I don't have neither drones nor time), contact me by mail at maxime.agor23@gmail.com