Skip to content

NetSocialize is an ESP32-based WiFi and BLE broadcaster that displays your social media handles as multiple simultaneous WiFi networks.

License

Notifications You must be signed in to change notification settings

VinavilDev/NetSocializer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NetSocialize - ESP32

platform license
Broadcast your social media handles via WiFi and Bluetooth.
Multiple networks appear simultaneously for maximum visibility.

Installation · Configuration · Usage · Contributing


Documentation

Advanced

Installation

Hardware Requirements

  • ESP32 DevKit V1 (or compatible)
  • USB cable for programming
  • Optional: Battery pack for portable use

PlatformIO Setup (Recommended)

git clone https://github.com/yourusername/netsocialize.git
cd netsocialize
pio run --target upload

Arduino IDE Setup

# 1. Install ESP32 board support
File → Preferences → Additional Board Manager URLs:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

# 2. Install ESP32 boards
Tools → Board → Boards Manager → Search "ESP32" → Install

# 3. Install BLE library
Sketch → Include Library → Manage Libraries → Search "ESP32 BLE Arduino" → Install

# 4. Select your board
Tools → Board → ESP32 Arduino → ESP32 Dev Module

# 5. Configure partition scheme (IMPORTANT)
Tools → Partition Scheme → Huge APP (3MB No OTA/1MB SPIFFS)

Configuration

Edit include/config.h with your information:

Multi-Network Mode

NetSocialize can broadcast each platform as a separate WiFi network:

// Show all platforms as separate networks simultaneously
#define ENABLE_MULTI_SSID true

// Channel hopping for better coverage
#define ENABLE_CHANNEL_HOPPING true

When enabled, WiFi scans will show:

📡 𝕏 @vinavil
📡 💻 vinavildev
📡 🌐 vinavil.dev

Social Handles

Only add platforms you use - leave others empty:

#define X_HANDLE "vinavil"              
#define INSTAGRAM_HANDLE "vinavil"      
#define TIKTOK_HANDLE ""                
#define YOUTUBE_HANDLE "yourchannel"    
#define GITHUB_HANDLE "vinavildev"         
#define WEBSITE_URL "vinavil.dev"       
#define DISCORD_HANDLE "vinavil#1234"   

Broadcast Modes

// Multi-network mode (recommended)
#define ENABLE_MULTI_SSID true
#define ENABLE_CHANNEL_HOPPING true

// Single network mode (battery saver)
#define ENABLE_MULTI_SSID false
#define ENABLE_CHANNEL_HOPPING false
#define STATIC_CHANNEL 6

Usage

Quick Start

  1. Configure your handles in include/config.h
  2. Upload to ESP32
  3. Open Serial Monitor (115200 baud)
  4. Watch for "✓ Broadcasting" message
  5. Scan WiFi on your phone - you'll see all your networks

Serial Output

=================================
  NetSocialize v2.0
  Multi-Network Mode
=================================

Broadcasting 3 networks:
  [1] 𝕏 @vinavil
  [2] 💻 vinavildev
  [3] 🌐 vinavil.dev

Config:
  Multi-SSID: ON
  Channel Hop: ON
  Rotation: 300ms

Setting up WiFi...
Started on channel 1
Setting up BLE...
BLE active

✓ Broadcasting
All networks will appear in WiFi list

Features

Feature Description
Multi-Network Broadcasting Each platform appears as separate WiFi network
Channel Hopping Rotates between channels 1, 6, 11 for coverage
BLE Beacon Bluetooth Low Energy broadcasting
Auto-Configuration Only broadcasts configured platforms
Visual Feedback LED status indicators
Low Power Optimized for battery operation
Rapid Switching 300ms rotation makes all networks visible

Multi-Network Mode

How It Works

NetSocialize rapidly switches between SSIDs every 300ms. This creates the illusion of multiple simultaneous networks:

Timeline:

0ms   - Broadcast: 𝕏 @vinavil
300ms - Broadcast: 💻 vinavildev
600ms - Broadcast: 🌐 vinavil.dev
900ms - Back to: 𝕏 @vinavil

Since WiFi scans happen every 1-2 seconds on most devices, each network gets "caught" multiple times, making them all appear in the WiFi list simultaneously.

Performance

  • Visibility: All networks appear at once in WiFi scans
  • Battery Life: ~20 hours with 2000mAh battery
  • Recommended: 3-5 platforms for optimal results
  • Coverage: Works across all 3 non-overlapping channels

Notes

  • Each network broadcasts for 300ms
  • Too many platforms (7+) may reduce visibility
  • Works best with channel hopping enabled
  • All networks show on channel scans

Supported Platforms

Platform Handle Format Broadcast Example
𝕏 X_HANDLE 𝕏 @vinavil
Instagram INSTAGRAM_HANDLE 📸 vinavil
TikTok TIKTOK_HANDLE 🎵 vinavil
YouTube YOUTUBE_HANDLE ▶️ vinavil
GitHub GITHUB_HANDLE 💻 vinavildev
Website WEBSITE_URL 🌐 vinavil.dev
Discord DISCORD_HANDLE 💬 vinavil#1234

LED Indicators

Pattern Meaning
3 blinks at startup Initialization complete
Quick blink every 3s Heartbeat (normal operation)
Short blink Channel hop detected

Broadcast Modes

Multi-Network Mode (Recommended)

  • Battery Life: ~20 hours (2000mAh)
  • Visibility: Maximum - all networks visible
  • Use Case: Events, conferences, meetups

Single Network Mode

  • Battery Life: ~30 hours (2000mAh)
  • Visibility: One platform at a time
  • Use Case: Long events, power saving

Channel Hopping

  • Coverage: Spans channels 1, 6, 11
  • Benefit: Better visibility in congested WiFi areas
  • Interval: 10 seconds per channel

Custom Platforms

Want to add LinkedIn, Twitch, or others?

// In main.cpp, add to buildMessages() function:
if (strlen(TWITCH_HANDLE) > 0) {
  wifiMessages[messageCount++] = "🎮 " + String(TWITCH_HANDLE);
}

// In config.h:
#define TWITCH_HANDLE "yourhandle"

Battery Optimization

// Disable multi-SSID for longer battery
#define ENABLE_MULTI_SSID false

// Slower channel hopping
#define CHANNEL_HOP_INTERVAL 20000  // 20 seconds

// Or disable channel hopping entirely
#define ENABLE_CHANNEL_HOPPING false
#define STATIC_CHANNEL 6

Troubleshooting

Program Too Large Error

Error: Program size greater than maximum allowed

Fix: Change partition scheme

  • PlatformIO: Already configured in platformio.ini
  • Arduino IDE: Tools → Partition Scheme → Huge APP (3MB No OTA)

Board Not Detected

  • Install CP210x or CH340 USB drivers
  • Check USB cable supports data transfer
  • Try different USB port

Upload Failed

  • Hold BOOT button during upload
  • Lower upload speed: Tools → Upload Speed → 115200

Networks Not Showing

  • Check you configured at least one platform handle
  • Verify SSID isn't too long (32 char max)
  • Try disabling channel hopping first
  • Reduce number of platforms to 3-4

Only One Network Visible

  • Increase SSID_ROTATION_INTERVAL to 400-500ms
  • Reduce total number of configured platforms
  • Some phones cache WiFi scans - wait 10-15 seconds

Contributing

Want to Help?

Check out issues labeled as enhancement or good first issue.

Adding Features

  1. Fork the repository
  2. Create your feature branch
  3. Test on real hardware
  4. Submit a pull request

Tested Hardware

  • ✅ ESP32 DevKit V1 (DOIT)
  • ✅ ESP32 WROOM-32
  • ⚠️ ESP32-C3 (BLE only, no classic Bluetooth)

Community

Find NetSocialize useful? Give it a star ⭐

About

NetSocialize is an ESP32-based WiFi and BLE broadcaster that displays your social media handles as multiple simultaneous WiFi networks.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published