A place users can post their projects. If you have a small project and would like your own dedicated place to post and have others chat about it then this is your spot.

User avatar
By cheblin
#73993 Hello!

Recently I finished the BlackBox: binary, lightweight communication protocol handler code generator.

And now complete new project which converting of MAVLink protocol description XML file into the BlackBox format
It is clearly demonstrates the maturity of BlackBox and its comparatively greater capability against MAVLink.

Everything works just fine, all tests are passed successfully. Therefore I decided to share this with you.

What are the advantages?

    The BlackBox format of the protocol and the network topology description file is presented as plain java source - more compact and familiar for the programmers, instead of XML format in the MAVLink. Plain java file format supported by many development environments with all the refactoring capabilities.
    inheritance of packet fields;
    Base 128 Varint data compression

additional data formats:

    fields with the built-in structure of multidimensional arrays;
    fields of sparse multidimensional arrays;
    bit fields;
    fields with the built-in structure of multidimensional arrays of bits;

Using BlackBox , you can easily establish communication not only between microcontrollers, mobile devices but also between the ordinary computers. And what is important, without time and effort waste. In fact, the generated BlackBox code can become the skeleton of your distributed application. The programmer will just have to add handlers to the packet's reception events, as well as the logic for creating the package, populating it with data and sending it to the recipient.

BlackBox generates the source code in the following programming languages: JAVA, C#, C.

Forget about:

    MQTT
    MQTT-SN
    CoAP
    SMCP
    STOMP
    XMPP
    XMPP-IoT
    Mihini/M3DA
    AMQP
    DDS
    LLAP
    LWM2M
    SSI

With BlackBox you can build you own protocol, fit to only your project needs. You will get very efficient, fast, working over USART or TCP/IP protocol.

Here is an example of demo project to control from Android based mobile, blinking LED on a board under STM8S103F3P6 via Bluetooth UART on HC 08.