Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

How to Use CB2S WiFi Board: Examples, Pinouts, and Specs

Image of CB2S WiFi BoardDesign with CB2S WiFi Board in Cirkit Designer

Introduction

The CB2S WiFi Board is a compact and versatile development board designed for Internet of Things (IoT) applications. It features built-in WiFi connectivity, making it ideal for wireless communication in smart devices and automation projects. With its GPIO pins, the CB2S board allows seamless interfacing with sensors, actuators, and other peripherals. It supports multiple programming environments, making it suitable for both beginners and experienced developers.

Explore Projects Built with CB2S WiFi Board

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of ESP32 and BW16-Kit-1 Microcontroller Communication Hub with Buzzer Notification: A project utilizing CB2S WiFi Board in a practical application
ESP32 and BW16-Kit-1 Microcontroller Communication Hub with Buzzer Notification

This circuit features two ESP32 microcontrollers configured to communicate with each other via serial connection, as indicated by the cross-connection of their TX2 and RX2 pins. A BW16-Kit-1 microcontroller is also included, interfacing with one of the ESP32s through pins D26 and D27. Power is supplied to the microcontrollers through a step-down buck converter connected to a 5V Type C DC socket, and a buzzer is driven by one of the ESP32s, potentially for audio signaling purposes.

Open Project in Cirkit Designer

Common Applications and Use Cases

Technical Specifications

The CB2S WiFi Board is built to deliver reliable performance in a compact form factor. Below are its key technical details:

Key Technical Details

Parameter Specification
Microcontroller ESP8285 (ESP8266-based SoC with 1 MB Flash)
WiFi Standard IEEE 802.11 b/g/n (2.4 GHz)
Operating Voltage 3.3V
Input Voltage Range 3.0V - 3.6V
GPIO Pins 9 (configurable for digital I/O, PWM, etc.)
Communication Protocols UART, SPI, I2C
Power Consumption 15 mA (idle), up to 200 mA (transmit)
Dimensions 18 mm x 20 mm
Operating Temperature -40°C to +85°C

Pin Configuration and Descriptions

The CB2S WiFi Board has a total of 12 pins, including power, ground, and GPIO pins. Below is the pinout description:

Pin Number Pin Name Description
1 VCC Power input (3.3V)
2 GND Ground
3 TXD UART Transmit (for serial communication)
4 RXD UART Receive (for serial communication)
5 GPIO0 General-purpose I/O (can be used for PWM)
6 GPIO1 General-purpose I/O
7 GPIO2 General-purpose I/O
8 GPIO3 General-purpose I/O
9 GPIO4 General-purpose I/O
10 GPIO5 General-purpose I/O
11 EN Enable pin (active high)
12 RST Reset pin (active low)

Usage Instructions

How to Use the CB2S WiFi Board in a Circuit

  1. Powering the Board: Connect the VCC pin to a 3.3V power source and the GND pin to ground. Ensure the input voltage does not exceed 3.6V to avoid damaging the board.
  2. Programming the Board: Use a USB-to-UART adapter to connect the TXD and RXD pins to your computer. Popular programming environments include the Arduino IDE and ESP8266 SDK.
  3. Connecting Peripherals: Use the GPIO pins to interface with sensors, actuators, or other devices. Configure the pins as input or output in your code as needed.
  4. WiFi Configuration: Use the built-in WiFi module to connect to a local network. The board supports both station and access point modes.

Important Considerations and Best Practices

Example Code for Arduino UNO

Below is an example of how to use the CB2S WiFi Board with the Arduino IDE to connect to a WiFi network and send data to a server:

#include <ESP8266WiFi.h> // Include the ESP8266 WiFi library

const char* ssid = "Your_SSID";       // Replace with your WiFi network name
const char* password = "Your_Password"; // Replace with your WiFi password
const char* server = "http://example.com"; // Replace with your server URL

void setup() {
  Serial.begin(115200); // Initialize serial communication at 115200 baud
  WiFi.begin(ssid, password); // Connect to WiFi network

  Serial.print("Connecting to WiFi");
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print("."); // Print dots while connecting
  }
  Serial.println("\nWiFi connected!");
  Serial.println("IP Address: ");
  Serial.println(WiFi.localIP()); // Print the assigned IP address
}

void loop() {
  if (WiFi.status() == WL_CONNECTED) {
    WiFiClient client; // Create a WiFi client object
    if (client.connect(server, 80)) { // Connect to the server on port 80
      client.println("GET / HTTP/1.1"); // Send an HTTP GET request
      client.println("Host: example.com");
      client.println("Connection: close");
      client.println();
    }
    client.stop(); // Close the connection
  }
  delay(10000); // Wait 10 seconds before sending the next request
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. The board does not power on:

    • Ensure the input voltage is within the 3.0V to 3.6V range.
    • Check the connections to the VCC and GND pins.
  2. Unable to upload code:

    • Verify that GPIO0 is pulled low during programming.
    • Check the TXD and RXD connections to the USB-to-UART adapter.
    • Ensure the correct COM port and board settings are selected in the Arduino IDE.
  3. WiFi connection fails:

    • Double-check the SSID and password in your code.
    • Ensure the WiFi network is within range and supports 2.4 GHz.
  4. Unstable operation or frequent resets:

    • Add decoupling capacitors (e.g., 0.1 µF and 10 µF) near the power pins.
    • Verify that the power supply can provide sufficient current (at least 300 mA).

FAQs