Embedded Blockchain Clients
Overview
The blockchain client SDK is targeted to embedded devices and allows you to easily interact with the IoTeX blockchain in order to fetch blockchain data, send transactions or perform contract execution actions.
How does it work
The communication with the blockchain is done over HTTP, using the HTTP to JSON-RPC bridge at gateway.iotexlab.io.
Supported devices
Unix machines with curl support
ESP32 based boards using Arduino framework
ESP8266 based boards using Arduino framework
Nano33 IoT using Arduino framework
Arduino MKR WiFi 1010 using Arduino framework (not tested)
Porting to a new platform
Effort has been taken in trying to decouple non-platform dependant code as much as possible. However, a specific implementation of the following modules is needed when porting the library to a non supported device:
Http: the HTTP interface needs implemented. See
src/http/platform_name/http.cpp
for implemented platforms.Storage: The storage class needs implemented. It contains only two methods:
savePrivateKey()
saves the private key, andreadPrivateKey()
reads the private key. Seesrc/storage/platform_name/storage.cpp
for implemented platforms.Random: The random class needs implemented for true random number generation. It contains a single method
fillRandom()
, that fills a buffer with random bytes. Seesrc/random/platform_name/random.cpp
for implemented platforms.
Library architecture
Below are the main modules comprising the SDK:
Last updated