What is Cicada, and what does it do?

“Cicada” is the IoT communications module with GSM & WiFi capabilities that allows energy access appliances like mini-grids and SHS to send and receive information. The open remote monitoring & controlling capabilities also provides valuable customer data to the local energy service providers. This communication module enables energy service providers to expand their services to rural communities which traditionally have been hard to reach.

How does Cicada compare to existing off-the-shelf communications modules?

Existing off-the-shelf solutions were not rugged enough to perform in low-connectivity environments. This prompted Okra to develop a solution and open source it, so that other companies on the same mission could use and tweak the technology to their own needs.


Cicada is also platform agnostic, and can be easily customized to other microcontrollers or OS.

What is the cost of setting up Cicada WiFi in a rural community?

For a full cost breakdown see the case study of implementing Cicada WiFi in Maybuho, Phillipines. 

Can the VSAT set-up costs for Cicada WiFi be covered by offering customers Internet-as-a-Service (IaaS)?

Installing the VSAT uplink only for IoT device communications is not guaranteed to be enough to justify the ongoing costs. That is why the IaaS business model is currently being tested by Okra Solar and ATE Co (local energy service provider) in Maybuho, Philippines, to offer general-purpose internet to the community, who will purchase vouchers for specific amounts of data.


Based on the data from the IaaS business model test run in Maybuho, the costs of providing internet service via VSAT can be recovered through additional revenue from internet sales, provided the community is sufficiently large, and monthly fees are in the ranges the local energy service provider is able to procure.


Overall, providing IaaS should be able to cover the set-up costs and also provide additional value to the rural community that did not priorly have access to internet connectivity.

Is there any way for me to check if the Cicada WiFi hardware is compatible with my devices?

Yes, you can access the design files on GitHub to see if the hardware specifications are compatible with your devices. If you want to physically test the hardware, then you can also purchase the Cicada WiFi IoT communications module from to use that as a prototype.


Is the Github library for Cicada actively supported/maintained?

Yes. Okra Solar publishes internal updates made to the Cicada project on GitHub. Additionally, bug reports, merge requests or openings of issue trackers are also communicated to developers at Okra Solar. Merge requests are especially welcome and positively received.

Is the project available on Github as C implementation or only C++?

Cicada project on GitHub is available in C++, but the code can be wrapped into a mix of C and C++. There are current efforts by adopters to do the above or merge the C++ in a C environment. If successfully concluded, those would be made available as well.

How does incorporating the Cicada IoT comms module affect the product’s price?

Like with any additional feature being added to a product, the price will increase. That is why incorporating an IoT comms module into a smaller product (ex: small solar lamp) is not the best solution because the price will double (or more). The use of Cicada makes sense for products like mini-grids or larger Solar Home Systems because the price of the IoT module is not as high compared to the product price itself. 


While this addition might increase the product price, it is also important to note that it can significantly decrease maintenance costs – especially if the product needs to be maintained & monitored in remote locations. The final trade-off between initial component costs and benefits in remote monitoring, management, and maintenance needs to be done by each developer/operator itself. Operating models, financial situations, and business models can be very different and do not allow a one-fits-all answer.

What Operating Systems (OS) does Cicada support? Are there any plans to also support Zephyr RTOS?

The Cicada library is independent of Operating Systems (OS). The library does contain example codes for using it in combination with Mbed OS, but it has been purposely been build OS agnostic.

Is it a good idea to integrate LoRa modules?

This depends on the use case, because the approach of LoRA is different from IP communications. Okra Solar is currently working on incorporating LoRaWAN and testing it to see if it is a good idea. But again, this decision mainly depends on operational strategies in individual use cases.

What is the philosophy behind the non-blocking communication with the modem?

Non-blocking philosophy is a principle in programming for communication with external devices when either blocking or non-blocking can be implemented. 


In the case of the Ciada IoT comms module, non-blocking is implemented in the design of micro-controller programming. The advantages of non-blocking are in the code – it has a very linear program flow, meaning that functions are not interrupted while data is being transmitted. Additionally, it makes debugging easier.

How many different chips and modems does Cicada support?

Cicada 2G PCB is SIM800C based, and Cicada 4G PCB is SIM7600 based. Cicada WiFi is ESP8266 based. Okra Solar is also working to support LoRaWAN.