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.