No title

 Introducing the Cutting-Edge Microcontroller Development Board by Bharat Pi Company: Unleash Your Creativity with ESP32-Powered Innovation


Purchase links:

https://bharatpi.net/product/bharat-pi-node-wifi/

If you use our coupon code you will get a huge discount.

coupon code   {TECHNOSAP}

Description

Bharat Pi Node WiFi with ESP 32 bit microcontroller + WiFi + Bluetooth + SD Card slot. You can build any IoT use case using Bharat Pi Node WiFi. Compute, network and storage – all on a single board!

Key Features:

  • 32 Bit microcontroller – ESP32 Wroom
  • Memory – 4MB
  • WiFi
  • Bluetooth
  • Storage – SD Card slot supports upto 64GB
  • Reverse polarity protection – (Onboard fuse)
  • USB Type-C connector
  • 9v-12v power adapter jack

Are you an electronics enthusiast, a DIY maker, or an embedded systems developer looking for a versatile and feature-rich microcontroller development board? Look no further, as Bharat Pi Company proudly presents its latest innovation - a powerful microcontroller development board equipped with the ESP32 chip. This exceptional board combines the flexibility of Arduino compatibility with a host of unique features, making it the ideal choice for a wide range of projects.

ESP32: Powering Your Imagination

At the heart of this remarkable development board lies the ESP32, a powerful and versatile microcontroller chip that opens up a world of possibilities. With dual-core processing, Wi-Fi, Bluetooth, and a wealth of GPIO pins, the ESP32 is a workhorse for IoT, robotics, and automation projects. Its integration into our development board ensures you have the power and performance you need to bring your ideas to life.

Arduino-Like Ease of Use

If you're familiar with Arduino, you'll feel right at home with our development board. We've designed it with a user-friendly interface, making it accessible to both beginners and experienced developers. The board is compatible with the Arduino IDE, allowing you to leverage the extensive library of Arduino sketches and libraries to streamline your project development process.

Unique Features That Set Us Apart

Our development board doesn't stop at the basics; it's packed with innovative features to enhance your experience:

  1. SD Card Slot: Need to store data or log information from your projects? The built-in SD card slot allows you to easily expand your storage capabilities and record data without the need for external modules.

  2. On-Board Fuse Protection Circuit: We understand the importance of safeguarding your board and connected components. Our development board comes equipped with an integrated fuse protection circuit, offering an extra layer of security against unexpected power surges or short circuits.

  3. Variety of Variants: We recognize that one size doesn't fit all. That's why our development board is available in various variants to cater to different project requirements. Choose from GSM and LoRa versions to meet your specific communication needs.

A World of Possibilities at Your Fingertips

With the Bharat Pi Company's development board, the possibilities are endless. Whether you're building a smart home automation system, a remote monitoring solution, a weather station, or a robotics project, our board's versatility and features will empower you to create innovative and reliable solutions.

Join the Revolution

Join the growing community of makers and developers who trust Bharat Pi Company for their microcontroller development needs. Our commitment to quality, innovation, and customer satisfaction drives us to deliver products that exceed expectations.

Unlock the potential of the ESP32 and elevate your projects to new heights with the Bharat Pi Company's microcontroller development board. Get started today and turn your ideas into reality!

Please note that the availability of specific variants may vary, and we recommend checking our product catalog for the latest information on available options and features.



Here is the code for its on board LED blinking.

// ESP32 LED Blinking Example
// This code blinks the built-in LED (pin 2) on an ESP32 board.

void setup() {
  // Set the LED pin as an OUTPUT
  pinMode(2, OUTPUT);
}

void loop() {
  // Turn the LED on
  digitalWrite(2, HIGH);
  delay(1000); // Wait for 1 second

  // Turn the LED off
  digitalWrite(2, LOW);
  delay(1000); // Wait for 1 second
}




Here is the code for SD Card.


/*
 * Connect the SD card to the following pins:
 *
 * SD Card | ESP32
 *    D2       -
 *    D3       SS
 *    CMD      MOSI
 *    VSS      GND
 *    VDD      3.3V
 *    CLK      SCK
 *    VSS      GND
 *    D0       MISO
 *    D1       -
 */
#include "FS.h"
#include "SD.h"
#include "SPI.h"

void listDir(fs::FS &fs, const char * dirname, uint8_t levels){
    Serial.printf("Listing directory: %s\n", dirname);

    File root = fs.open(dirname);
    if(!root){
        Serial.println("Failed to open directory");
        return;
    }
    if(!root.isDirectory()){
        Serial.println("Not a directory");
        return;
    }

    File file = root.openNextFile();
    while(file){
        if(file.isDirectory()){
            Serial.print("  DIR : ");
            Serial.println(file.name());
            if(levels){
                listDir(fs, file.path(), levels -1);
            }
        } else {
            Serial.print("  FILE: ");
            Serial.print(file.name());
            Serial.print("  SIZE: ");
            Serial.println(file.size());
        }
        file = root.openNextFile();
    }
}

void createDir(fs::FS &fs, const char * path){
    Serial.printf("Creating Dir: %s\n", path);
    if(fs.mkdir(path)){
        Serial.println("Dir created");
    } else {
        Serial.println("mkdir failed");
    }
}

void removeDir(fs::FS &fs, const char * path){
    Serial.printf("Removing Dir: %s\n", path);
    if(fs.rmdir(path)){
        Serial.println("Dir removed");
    } else {
        Serial.println("rmdir failed");
    }
}

void readFile(fs::FS &fs, const char * path){
    Serial.printf("Reading file: %s\n", path);

    File file = fs.open(path);
    if(!file){
        Serial.println("Failed to open file for reading");
        return;
    }

    Serial.print("Read from file: ");
    while(file.available()){
        Serial.write(file.read());
    }
    file.close();
}

void writeFile(fs::FS &fs, const char * path, const char * message){
    Serial.printf("Writing file: %s\n", path);

    File file = fs.open(path, FILE_WRITE);
    if(!file){
        Serial.println("Failed to open file for writing");
        return;
    }
    if(file.print(message)){
        Serial.println("File written");
    } else {
        Serial.println("Write failed");
    }
    file.close();
}

void appendFile(fs::FS &fs, const char * path, const char * message){
    Serial.printf("Appending to file: %s\n", path);

    File file = fs.open(path, FILE_APPEND);
    if(!file){
        Serial.println("Failed to open file for appending");
        return;
    }
    if(file.print(message)){
        Serial.println("Message appended");
    } else {
        Serial.println("Append failed");
    }
    file.close();
}

void renameFile(fs::FS &fs, const char * path1, const char * path2){
    Serial.printf("Renaming file %s to %s\n", path1, path2);
    if (fs.rename(path1, path2)) {
        Serial.println("File renamed");
    } else {
        Serial.println("Rename failed");
    }
}

void deleteFile(fs::FS &fs, const char * path){
    Serial.printf("Deleting file: %s\n", path);
    if(fs.remove(path)){
        Serial.println("File deleted");
    } else {
        Serial.println("Delete failed");
    }
}

void testFileIO(fs::FS &fs, const char * path){
    File file = fs.open(path);
    static uint8_t buf[512];
    size_t len = 0;
    uint32_t start = millis();
    uint32_t end = start;
    if(file){
        len = file.size();
        size_t flen = len;
        start = millis();
        while(len){
            size_t toRead = len;
            if(toRead > 512){
                toRead = 512;
            }
            file.read(buf, toRead);
            len -= toRead;
        }
        end = millis() - start;
        Serial.printf("%u bytes read for %u ms\n", flen, end);
        file.close();
    } else {
        Serial.println("Failed to open file for reading");
    }


    file = fs.open(path, FILE_WRITE);
    if(!file){
        Serial.println("Failed to open file for writing");
        return;
    }

    size_t i;
    start = millis();
    for(i=0; i<2048; i++){
        file.write(buf, 512);
    }
    end = millis() - start;
    Serial.printf("%u bytes written for %u ms\n", 2048 * 512, end);
    file.close();
}

void setup(){
    Serial.begin(115200);
    if(!SD.begin()){
        Serial.println("Card Mount Failed");
        return;
    }
    uint8_t cardType = SD.cardType();

    if(cardType == CARD_NONE){
        Serial.println("No SD card attached");
        return;
    }

    Serial.print("SD Card Type: ");
    if(cardType == CARD_MMC){
        Serial.println("MMC");
    } else if(cardType == CARD_SD){
        Serial.println("SDSC");
    } else if(cardType == CARD_SDHC){
        Serial.println("SDHC");
    } else {
        Serial.println("UNKNOWN");
    }

    uint64_t cardSize = SD.cardSize() / (1024 * 1024);
    Serial.printf("SD Card Size: %lluMB\n", cardSize);

    listDir(SD, "/", 0);
    createDir(SD, "/mydir");
    listDir(SD, "/", 0);
    removeDir(SD, "/mydir");
    listDir(SD, "/", 2);
    writeFile(SD, "/hello.txt", "Hello ");
    appendFile(SD, "/hello.txt", "World!\n");
    readFile(SD, "/hello.txt");
    deleteFile(SD, "/foo.txt");
    renameFile(SD, "/hello.txt", "/foo.txt");
    readFile(SD, "/foo.txt");
    testFileIO(SD, "/test.txt");
    Serial.printf("Total space: %lluMB\n", SD.totalBytes() / (1024 * 1024));
    Serial.printf("Used space: %lluMB\n", SD.usedBytes() / (1024 * 1024));
}

void loop(){

}



----------------------------------------------------------------------------------------

🄸🄽🅂🅃🄰🄶🅁🄰🄼 👇🏾 https://z-p42.www.instagram.com/aryanpandey699/ ______________________ __________________________________ (ABOUT ) Welcome to the "TECHNO SAP" YouTube channel, where you can explore the fascinating world of science with me, Aryan Pandey. As the founder and host of this channel, I am dedicated to sharing my passion for science and delivering exciting and informative videos on various scientific topics. From mind-blowing experiments to cutting-edge discoveries and technologies, you'll find it all here on my channel. So, join me on this incredible journey of learning and discovery, and don't forget to hit that SUBSCRIBE button and turn on the notification bell to stay updated on my latest uploads. _________________________________________________________ If you're interested in exploring more of the world of science, you're in the right place. Join me as we dive into exciting experiments, mind-blowing discoveries, and cutting-edge technology. Hit the SUBSCRIBE button and turn on the notification bell to stay updated on my latest uploads. For any queries or questions, feel free to contact me on my email address, aryan2020pandey@gmail.com. Thank you for watching, and I look forward to sharing more valuable content with you soon. #TechnoSAP" 🙏🙏


Post a Comment

Previous Post Next Post