Download X-CUBE-IOTA1 2.0, ST’s software expansion for STM32Cube that takes advantage of the IOTA 1.5 Chrysalis protocol
To improve the accessibility of our content, please find the audio version of this blog post.
While a famous CEO recently admitted that he was “looking at other cryptocurrencies that use <1% of Bitcoin’s energy/transaction”, engineers were already downloading the X-CUBE-IOTA1 2.0 to take advantage of the new IOTA 1.5 Chrysalis that can perform 600 million transactions for the same amount of energy as one Bitcoin transaction. The new software expansion package integrates the latest iota.c middleware and offers an ST cryptographic library. Additionally, we included a project example and a pre-compiled binary for the B-L4S5I-IOT01A Discovery Kit. The application takes temperature and humidity values from the board’s sensors and sends them to the IOTA network. The program thus simulates a product relying on this ledger for machine-to-machine communication and more.
IOTA: How It Started, How It’s Going
In early 2020, The ST Blog introduced the first version of X-CUBE-IOTA1, which helps developers take advantage of IOTA. At the time, the first open-source distributed ledger technology was already very different from blockchain cryptocurrencies, such as Bitcoin. It relied on a directed acyclic graph (DAG) called the Tangle, promised fee-less transactions and a decentralized network. Embedded system engineers thus rapidly adopted it because, unlike traditional blockchain solutions, its data structure is compatible with microcontrollers. Similarly, large companies invested in IOTA since its friendly business model served their future machine-to-machine communication needs by offering an extensive network for IoT products.
One year later, IOTA 1.5 Chrysalis is highly symbolic because it lays the foundations for total decentralization. Previously, the IOTA foundation relied on the Coordinator, a central node that confirmed transactions. It ensured the network remained operational while developers worked on the protocol by protecting the Tangle from attacks. And it served its purpose, allowing the IOTA foundation to take swift actions to guard users against wrongdoings when necessary. However, the IOTA foundation always said that the Coordinator was temporary. Today, we know that it will disappear with IOTA 2.0, nicknamed Coordicide, and that Chrysalis serves as a stepping stone.
The move from IOTA 1 to IOTA 1.5 is not trivial. Adopting Chrysalis requires developers to refactor their applications and migrate their tokens. It will, however, make the adoption of IOTA 2.0 a lot smoother. Indeed, developers get a lot of time to deal with this critical transition, and the move from Chrysalis to Coordicide won’t include substantial changes or necessitate another refactoring. All the work that goes into adopting Chrysalis will ensure that applications take full advantage of what IOTA 2.0 will offer. Additionally, the latest code brings significant improvements. Let us, therefore, explore why IOTA 1.5 is such a big deal and how embedded systems engineers can already take advantage of it.
IOTA 1.5 Chrysalis: Why the New Code Inside X-CUBE-IOTA1 2.0 Matters?
The New Efficiency of IOTA
If IOTA 1.5 Chrysalis is vastly more efficient than the most popular cryptocurrencies today, it’s partly because of its new payload. Indeed, each transaction now demands only 275 bytes compared to about 3,500 bytes previously. The drastic reduction comes in part from fewer redundancies and the absence of complex transaction bundles in favor of atomic transactions. Additionally, the new version switched from a trinary to a binary representation, further explaining the size reduction. The most immediate consequence of this optimization is that validating transactions no longer takes minutes but mere seconds. And to further improve the network’s speed, IOTA implemented a new Uniform random tip selection algorithm. Put simply, the process for prioritizing, selecting, and confirming unvalidated transactions became simpler and a lot more efficient. All in all, each transaction demands far less time and energy, thus significantly boosting the overall efficiency.
The New Face of IOTA
The IOTA Foundation also worked on improving the overall security of the network. For instance, Chrysalis introduces a white-flag mechanism that ignores conflicts that may arise from spamming the network. The system thus ensures a high level of performance while discouraging attackers. The IOTA core libraries were also written in Rust to offer greater security and a new C library will improve performance on embedded systems. Additionally, IOTA will use an EdDSA (Edwards-curve Digital Signature Algorithm) address scheme. Version 1.5 thus abandons the old WOTS signature system in favor of something more standard, secure, and reliable. In a nutshell, Chrysalis makes the whole network more efficient and more robust.
X-CUBE-IOTA1 2.0: How Developers Can Rapidly Adopt IOTA 1.5 Chrysalis?
Many developers ask how they can more efficiently move to Chrysalis and benefit from its many benefits. IOTA is famous for its documentation, and each project will have its distinctive challenges. Yet, most if not all embedded system engineers working on an STM32 MCU will seek a solution that makes the IOTA 1.5 innovations accessible, which is precisely why ST released X-CUBE-IOTA1 2.0. The expansion package includes middleware libraries, Wi-Fi management, IOTA Client APIs, and more. As a result, it is the fastest way for teams to create a proof-of-concept capable of sending test transactions to the Tangle with an STM32 microcontroller.
X-CUBE-IOTA1 2.0 also includes features that will help engineers reduce their time to market. For instance, the new version includes a Wi-Fi management middleware, whereas the previous package only used Ethernet. Additionally, ST will continue to work on its expansion package to help engineers more easily write cellular applications. We also provide two cryptographic libraries, one from ST and one called Sodium. The former even includes protections against side-channel attacks to guard systems against physical hacks. Additionally, we will release an update that will take advantage of the STSAFE-A110 available on the B-L4S5I-IOT01 board.