v4.0!
Shabakah by Remal stands as a symbol of innovation and connectivity in the world of IoT development boards. As Remal’s flagship creation, Shabakah v4 focuses on networking and connectivity. Designed to weave a web of connections, its name—translating to “web” in Arabic—reflects its core capability of connecting various devices seamlessly.
Crafted to lead users into the realm of connectivity-focused applications with ease, Shabakah utilizes Wi-Fi and Bluetooth 5 technologies, making it a versatile platform for numerous applications.
More than just a development board, Shabakah v4 is a gateway to a world where your ideas can interconnect effortlessly. Whether you’re a seasoned developer or a curious beginner, Shabakah v4 offers the tools and flexibility to bring your innovative projects to life.
Shabakah is powered by Espressif Systems ESP32-C3-MINI. It is an extremely capable microcontroller with a lot of customizability regarding pin functionalities. We highly encourage users to check out these resources to get the most out of their Shabakah board:
Every Shabakah board comes pre-flashed with demo code to showcase some of its features. In the demo code, the RGB LEDs will cycle through a range of colors. You can use buttons 1 and 2 to adjust the intensity of the LEDs brightness. The temperature and humidity sensor will take readings every second and send them via serial output to a connected computer. If the humidity reading exceeds the threshold defined by HUMD_THRESHOLD the LEDs on Shabakah will turn red until the humidity falls below the threshold again.
You can find the above demo code and more after adding Shabakah to the Arduino IDE, selecting it, and then navigating to “File -> Examples -> Remal Shabakah v4 Examples”
You can explore numerous other examples that showcase amazing capabilities. Although these examples were not written by us, most should work directly. However, some might require adapting the code slightly to make it run correctly on your Shabakah board.
Note: after installing Shabakah from the board manager and selecting it in the Arduino IDE, you can leverage its pre-defined keywords in your projects. These keywords will automatically be substituted with the corresponding values:
/* LEDs */
RGB_LED_1_PIN //Shabakah built-in addressable RGB LED 1 pin number (1)
RGB_LED_2_PIN //Shabakah built-in addressable RGB LED 2 pin number (3)
/* Buttons */
SHBK_BTN_1 //Button 1 pin number (9) - Must be pulled-up by software before use
SHBK_BTN_2 //Button 2 pin number (10) - Must be pulled-up by software before use
/* Temp/Humd sensor */
SHBK_I2C_TEMP_ADDR //The I2C address of the SHT30 sensor (0x44)
/* UART */
TX //The TX pin, pin number (21)
RX //The RX pin, pin number (20)
/* I2C */
SCL //I2C clock line pin number (8)
SDA //I2C data line pin number (2)
/* SPI */
MOSI //SPI Master Out Slave In pin number (6)
MISO //SPI Master In Slave Out pin number (5)
SCK //SPI clock pin number (4)
SS //SPI Slave Select pin number (7)
/* Analog pins */
A0 //Pin 0
A1 //Pin 1
A2 //Pin 2
A3 //Pin 3
A4 //Pin 4
A5 //Pin 5
If you experience difficulties uploading new code to Shabakah, due to different reasons or if you are utilizing pins 18 and 19 which are designated for USB functionalities, the board might become unresponsive to new code upload attempts. To resolve this, you can switch the board to “Firmware Download Mode.” Follow the steps below for this process: