Shakti Software

SHAKTI class of processors have a wide range of system softwares and tool chain support. There are Software Development Kits (SDK) and Integrated Development Environment (IDE) dedicated for SHAKTI SoCs.

SHAKTI-SDK

Shakti SDK provides all necessary tools, scripts, board support packages to build your application. SDK also provides sample programs to use various sensors. README provides further details

IDE

For Rapid application development and particularly for embedded applications, SDK and IDE are indispensible. Shakti-SDK is integrated with PlatformIO IDE. Follow the instructions in README to use PlatformIO.

Sample Applications

Shakti SDK hosts sample applications to demonstrate working of sensors. Some of the applications that can be developed using SHAKTI are listed below.

Weather station



Monitor weather parameters and store the data in cloud. Use this data to predict weather. This sample application demonstrates capturing data and uploading it to cloud.

RISE - Lab Live Temperature

Detecting Human movement

All living objects, emit the heat in the form of infrared radiation through their body, also called thermal radiation. This Radiated energy is invisible to the human eye. These Signals can be detected using PIR sensors which is specially designed for these purposes. Using this sensor various applications to light up a hallway, room etc can be done. This sample demonstrates use of PIR with Shakti processor.

Irrigation System


Monitor and regulate water usage in the garden based on the needs using Shakti irrigation system. Moisture sensor connected to Shakti E class provides moisture level in the soil. Based on this input, water pump is switched on or off. This application uses GPIO pins to actuate motor and I2C to read values from moisture sensor.

Joystick


A joystick is an input device consisting of a stick that pivots on a base and reports its angle or direction to the device it is controlling. Joysticks are often used to control video games and robots. This sample uses two analog outputs (corresponding to X, Y biaxial offsets) and one digital output representing whether it is pressed on Z axis, to control the movements in a game or robot.