Shabakah

شبكة

v4.0!

What is Shabakah?

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.

Already own a Shabakah v4 board?
Key Features
  • High-Performance MCU: Powered by the Espressif Systems ESP32-C3-MINI, Shabakah delivers robust performance with comprehensive documentation for ease of use.
  • Connectivity: Wi-Fi (2.4 GHz, 802.11 b/g/n) and Bluetooth 5 (Low Energy and Mesh), ensuring versatile and reliable connections.
  • Multiple Power Options: Flexible power options allow for USB-C or an external VIN pin, supporting a wide range of input voltages from 7V up to 30V.
  • Solid Power via VIN Pin: Designed to safely handle up to 1.5A, making it ideal for a wide range of IoT applications.
  • Rich I/O Capabilities: Equipped with 15 GPIO pins, supporting various input/output configurations for diverse applications.
  • Enhanced User Interface: Features two individually addressable RGB LEDs and two user-interactive buttons for a customizable user experience.
  • Environmental Sensing: Integrated temperature and humidity sensor (SHT30) for ambient monitoring.
  • Memory: Boasts 4 MB flash memory, ensuring ample space for code and data storage.
  • Broad Software Compatibility: Supports Arduino IDE, PlatformIO, ESP-IDF, and MicroPython! Offering flexibility in development environments.
  • Innovative Design: The v4 board introduces significant layout changes from the Founders Edition v3.1, optimizing both form and function.
Shabakah v4 Quick Start Guide

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:

  • Learn more about Shabakah in the pinout diagram above, and the table found here. Don’t forget to also check out the “Block Diagram” and “Documents” tabs!
  • Arduino Language Reference – Learn about the Arduino language here
  • ESP32 Libraries – Find ESP32’s unique Arduino functions and APIs here
  • Arduino ESP32 – Great resource to learn more about ESP32 and Arduino
  • MicroPython for ESP32C3 – Prefer writing code in Python? Kickstart your journey with MicroPython on Shabakah here and unlock endless possibilities!
 
 

Shabakah Example Code

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
				
			

Entering Firmware Download Mode

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:

 
Shabakah Revisions