# OpenShock Wiki - Home - [Welcome to OpenShock](/home): Welcome to the OpenShock wiki — start here to learn, build and safely use OpenShock. - [Frequently Asked Questions](/home/faq): Quick answers to the most common questions about OpenShock. - [Safety Rules](/home/safety-rules): Essential safety rules for OpenShock: body zones to avoid, handling practices, and consent. - **Separator** - [Terms and conditions](/home/legal/terms-and-conditions): Terms and conditions for the OpenShock open-source software. - [Privacy Policy](/home/legal/privacy-policy): GDPR-compliant privacy policy for openshock.app and the OpenShock Discord bot. - [Contributor Covenant Code of Conduct](/home/legal/code-of-conduct): Community code of conduct for everyone participating in OpenShock spaces. - [License](/home/legal/license): OpenShock software licensing: AGPL-3.0, GPL-3.0 and MIT depending on the repository. - Guides - **Getting Started** - [What you need](/guides/quickstart/what-you-need): The three things you need to get started with OpenShock: a server, a hub and shockers. - **Setup & Usage** - [OpenShock Platform Guides](/guides/openshock): Step-by-step guides for setting up, configuring and sharing your OpenShock hub. - [How to flash the firmware](/guides/openshock/how-to-flash-your-board): Flash OpenShock firmware onto a supported board using the web-based Flashtool. - [First time setup](/guides/openshock/first-setup): Pair your hub with Wi-Fi and your OpenShock account, then connect your first shocker. - [How to Update the Hub](/guides/openshock/how-to-update): Keep your hub on the latest firmware with over-the-air updates from openshock.app. - **Sharing** - [Share links](/guides/openshock/sharelinks): Share control of a shocker with anyone via a link — no OpenShock account required. - [Share codes](/guides/openshock/sharecodes): Generate a single-use code to grant another OpenShock user control of your shocker. - **Advanced** - [Offline Remote Setup](/guides/openshock/offline-remote-setup): Pair a physical 433 MHz offline remote with your shocker through the OpenShock dashboard. - [Using the E-Stop 101](/guides/openshock/e-stop-guide): How to trigger and reset the emergency stop to immediately halt all shocker activity. - **DIY** - [Do-It-Yourself](/guides/diy): Build your own OpenShock hub or self-host the server — entry point for DIY users and hosts. - [DIY Hardware](/guides/diy/hardware-buying): Recommended parts for building your own OpenShock hub: ESP32 board, transmitter and shockers. - [Assembling](/guides/diy/assembling): Wire up an ESP32 and a 433 MHz transmitter into a working OpenShock hub. - [E-Stop](/guides/diy/e-stop): Add an emergency-stop button to a DIY hub with a simple pull-up or pull-down circuit. - **ShockOSC (VR)** - [Basic Setup](/guides/shockosc/basic): Install and sign into ShockOSC, the OpenShock Desktop module that bridges OSC to your shockers. - [VRChat Avatar Setup](/guides/shockosc/avatar-setup-vrc): Add VRChat contact receivers to your avatar so touching them triggers ShockOSC. - [ChilloutVR Avatar Setup](/guides/shockosc/avatar-setup-cvr): Configure ChilloutVR avatar triggers to fire ShockOSC groups on contact. - [List of ShockOsc Parameters](/guides/shockosc/parameters): Reference for every ShockOSC avatar parameter — shock, vibrate, sound, and their variants. - **Self Hosting** - [Self Hosting](/guides/selfhosting): Run your own OpenShock server stack with Docker Compose, Postgres and a Redis-compatible cache. - Hardware - [Hardware Overview](/hardware): Entry point for OpenShock hardware: supported boards, transmitters and shockers. - **Boards** - [Boards](/hardware/boards): Compatibility and support matrix for every microcontroller board tested with OpenShock. - **Official** - OpenShock - [OpenShock Core V2](/hardware/boards/openshock/core-v2): OpenShock Core V2 — purpose-built ESP32-S3 hub with integrated RF TX, RGB LED and E-Stop. - [OpenShock Core V1](/hardware/boards/openshock/core-v1): OpenShock Core V1 — purpose-built ESP32-S3 hub with on-board transmitter and E-Stop. - **Third Party** - Seeed Studio - [Seeed Xiao ESP32S3](/hardware/boards/seeed/xiao-esp32s3): Seeed Xiao ESP32S3 — compact ESP32-S3 board with detachable antenna; fully compatible. - Wemos - [Wemos Lolin S3](/hardware/boards/wemos/lolin-s3): Wemos Lolin S3 — recommended ESP32-S3 board (16 MB flash, 8 MB PSRAM) for DIY hubs. - [Wemos D1 Mini ESP32](/hardware/boards/wemos/d1-mini-esp32): Wemos D1 Mini ESP32 — classic ESP32 board; fully compatible with OpenShock. - [Wemos Lolin S2 Mini](/hardware/boards/wemos/lolin-s2-mini): Wemos Lolin S2 Mini — compact ESP32-S2 board with 4 MB flash; fully compatible. - PiShock - [PiShock 2023 (Current)](/hardware/boards/pishock/2023-pishock): The 2023 PiShock (ESP32-WROOM-32D) — fully compatible after flashing OpenShock firmware. - [PiShock Lite (2021 Q3)](/hardware/boards/pishock/2021q3-lite): PiShock Lite (2021 Q3) — Wemos D1 Mini ESP32 based, can be re-flashed with OpenShock. - [PiShock Plus (2021 Q1)](/hardware/boards/pishock/2021q1-plus): PiShock Plus (2021 Q1) — Raspberry Pi Zero W based, not compatible with OpenShock. - DFRobot - [DFRobot FireBeetle 2 ESP32-E](/hardware/boards/dfr-firebeetle/dfr-firebeetle): DFRobot FireBeetle 2 ESP32-E: pinout, default GPIOs and buying info — fully OpenShock compatible. - **Other** - Other / China - [ESP32-S3 "Dorx"](/hardware/boards/china/esp32s3-dorx): Brandless ESP32-S3 knockoff board (N8R2 / N16R8) — fully compatible with OpenShock. - **Shockers** - [Shockers](/hardware/shockers): Overview of OpenShock-supported 433 MHz shocker models and where to buy them. - [CaiXianlin](/hardware/shockers/caixianlin): CaiXianlin shockers — the cheap, widely-available OpenShock-compatible collars. - [Petrainer](/hardware/shockers/petrainer): Petrainer shockers — compatible with OpenShock but discontinued. - [Wellturn T330](/hardware/shockers/wellturn-t330): Wellturn T330 shocker — technically compatible, but RF-only and hard to get. - **Transmitter** - [Transmitter](/hardware/transmitter): 433 MHz transmitter requirements and tested modules for an OpenShock hub. - [Open Smart 433MHz](/hardware/transmitter/china/open-smart): Open Smart 433 MHz transmitter module — tested to work with OpenShock hubs. - **Firmware** - [Visual Status LED Patterns](/hardware/firmware/status-led): Blink patterns used by the firmware's status LED to communicate device state. - **Remotes** - [Identifying](/hardware/remotes/identifying): How to tell a genuine CaiXianlin remote from common knockoffs. - Vendors - **Hardware** - [Hardware vendors](/vendors/hardware): Community-run list of vendors selling pre-built OpenShock hubs, shockers and 3D prints. - [ArtisanForgeDesigns](/vendors/hardware/artisanforgedesigns): ArtisanForgeDesigns — community vendor selling pre-built OpenShock hubs and spacers. - [BosjesMan](/vendors/hardware/bosjesman): BosjesMan — community vendor selling OpenShock hardware since 2023. - [Ebthing](/vendors/hardware/ebthing): Ebthing — Australian community vendor selling hubs and FlatShocker kits. - [Luc](/vendors/hardware/luc): Luc — German community vendor selling OpenShock Core V2 hubs and 3D-printed spacers. - [Luvini](/vendors/hardware/luvini): Luvini - Brazilian community vendor selling custom hubs and shockers, ships within Brazil. - [MarkDasWolf](/vendors/hardware/markdaswolf): MarkDasWolf — Austrian community vendor shipping hubs, shockers and 3D prints across Europe. - [MeguminVRC](/vendors/hardware/meguminvrc): MeguminVRC — community vendor selling hubs, shockers and custom 3D prints. - [Millkox](/vendors/hardware/millkox): Millkox — community vendor offering hubs, shockers, offline remotes and custom 3D prints. - [NamelessNanashi](/vendors/hardware/namelessnanashi): NamelessNanashi — community vendor selling hubs and custom spacers on request. - [Nerex](/vendors/hardware/nerex): Nerex — community vendor selling hubs and shockers via a Ko-fi shop. - [nullstalgia](/vendors/hardware/nullstalgia): nullstalgia — designer of the OpenShock Core boards; sales currently on hold. - [Silly pupkit](/vendors/hardware/sillypupkit): Silly pupkit — community vendor selling hubs, spacers and shockers via Discord. - Troubleshooting - [Troubleshooting: Hub](/troubleshooting/hub): Diagnose common OpenShock hub issues: offline status, wrong RF TX pin, and wiring problems. - [Troubleshooting: Shocker Pairing](/troubleshooting/shocker-pairing): Fix shocker pairing problems — pairing mode, RF TX pin, and model-specific quirks. - [Troubleshooting: ShockOSC](/troubleshooting/shockosc): Quick fixes for ShockOSC: OSC toggle, config reset, and avatar refresh. - Developer - [Developer & API Docs](/dev): OpenShock backend architecture, API authentication, and a pointer to the OpenAPI reference. - **API Reference** - SignalR - [User](/dev/signalr/user): Reference for the /hubs/user SignalR endpoint: server methods, events and authentication. - **Contributing** - [Contributing](/dev/contributing): How to contribute to OpenShock — stub page, reach out on Discord for now. - [Compiling Firmware](/dev/contributing/compile-firmware): Build and flash OpenShock firmware from source using VSCode and PlatformIO. - [Backend Development Setup](/dev/contributing/backend): Set up the OpenShock backend locally with Docker, Postgres, Dragonfly and the .NET 10 SDK.