Is it possible to install the IOTA library on a micro-controller such as ESP (
ESP8266)? such that it can write in the Tangle by sending a transaction?
It is feasible to use the microcontroller as an IOTA wallet. For example, you can store your IOTA seed on the flash, generate addresses from it, generate sign transactions. One option to get started is to use the IOTA Ledger Blue / Nano wallet code. It is a lightweight C library that can be easily ported to different hardware targets.
It is not feasible to compute the Proof-of-Work on microcontrollers due to their limited computational speed. Furthermore, the official CCurl implementation (Proof-of-Work computation in C) uses the
pthreads library and other functionality which are not typically available on microcontrollers.
It is, in my opinion, not feasible to run IOTA in battery powered embedded devices due to the large amount of energy it takes to sign transactions, even if the Proof-of-Work is done elsewhere.
Edit: our paper "Distributed Ledger Technology and the Internet of Things: A Feasibility Study" which describes experimental results on Texas Instruments CC2650 System-on-Chip has been accepted for publication. You can access the preprint here.
Working on it: https://github.com/embedded-iota/iota-c-light-wallet (on my own fork. Will push it to embedded iota when it works fine.) The address generation works. I work currently on the transfer, so that it is possible to use it on a MCU without MMU. I also integrated it already to RIOT OS. So feel free to check it out: https://github.com/Citrullin/RIOT/tree/iota_implementation/examples/iota-address-lora (Just generation of addresses is working) And feel free to fork and improve :)
Feel free to ping me on discord (@citrullin) /e We can discuss further stuff there. I successfully created a transaction bundle on the STM32F1 on Saturday.