BlackBox: binary, lightweight communication protocol handler source code generator.



  • 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
    Everything works just fine, all tests are passed successfully. Therefore I decided to share this with you, guys.
    It is clearly demonstrates the maturity of BlackBox and its comparatively greater capability against MAVLink.

    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.

    1. inheritance of packet fields;
    2. additional data formats:
    3. fields with the built-in structure of multidimensional arrays;
    4. fields of sparse multidimensional arrays;
    5. bit fields;
    6. fields with the built-in structure of multidimensional arrays of bits;
    7. Base 128 Varint data compression

    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.

    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.


  • Mod

    I am not a super skilled programmer, so may I ask how would this fit with MySensors?



  • 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.



  • @gohan do you use MQTT? well. forget it.
    With BlackBox you can build your own, fit to only your project needs.


  • Hardware Contributor

    @sirguy-cheblin said in BlackBox: binary, lightweight communication protocol handler source code generator.:

    @gohan do you use MQTT? well. forget it.
    With BlackBox you can build your own, fit to only your project needs.

    What's the advantage of leaving an interoperable protocol like MQTT for your own protocol ?
    And how is it relevant in a MySensors environment ?


 

458
Online

7.9k
Users

8.8k
Topics

94.3k
Posts