Status: Undetected (External Hardware + Kernel Read)
IMPORTANT: The offsets have to be always updated, you can find it here:
EDUCATIONAL PURPOSES ONLY. Playing like an idiot will result in account bans (VAC/Game Ban). Since the software is undetected, the only way to get banned is by playing like a psycho and shooting through smokes all the time. Manual gameplay review is the only real threat, so just play like a 'very good player' and don't tell your team you have a 'little' help."
- Microcontroller: ESP32-S3 (DevKitC or similar) running circuitpython.
- Display: ST7789 1.3" or 1.54" IPS LCD (240x240 resolution).
- Note: Code is configured for Version 1.1 displays.
- Connection: USB-C Data Cable (for serial communication).
- Wiring:
- CLK (SCL): GPIO 12
- MOSI (SDA): GPIO 11
- RES (Reset): GPIO 9
- DC (Data/Command): GPIO 8
- CS (Chip Select): GPIO 10
CS2-Hardware-Radar/
├── Driver/ # Kernel Driver (NXWire)
│ └── main.cpp # Driver Entry & Memory Operations
├── Client/ # User-Mode Application
│ ├── main.cpp # Logic to read memory & send to Serial
│ ├── client_dll.hpp # Generated Schema
│ └── offsets.hpp # Generated Offsets
└── Firmware/ # ESP32 CircuitPython Code
├── code.py # Rendering Logic
└── lib/
├── adafruit_display_text/ # Library to render text
└── adafruit_st7789.mpy # Library to render the graphs
The driver handles the MmCopyVirtualMemory calls to read game memory from the kernel level, bypassing user-mode anti-cheat hooks.
- Prerequisites:
- Visual Studio 2022 with Desktop development with C++.
- Windows Driver Kit (WDK) installed.
- Build:
- Open the Driver project properties.
- Set configuration to Release / x64.
- Build the solution to generate
NXWire.sys.
- Loading:
- This step depends, I sign this driver with a leaked chinese certificate that I found long time ago, if you don't have one, or you just use kdmapper, load it with that and you will be fine.
- Install CircuitPython:
- Put your ESP32-S3 into bootloader mode.
- Flash the latest CircuitPython 9.x
.uf2for your specific board.
- Install Libraries:
- Download the Adafruit CircuitPython Bundle.
- Copy the following folders/files to the
libfolder on yourCIRCUITPYdrive:adafruit_display_text/adafruit_st7789.mpy
- Deploy Code:
- Copy the provided python script to the root of the drive and name it
code.py. - Config: If your screen colors are inverted or the screen is mirrored, adjust
ROTATIONor the initialization arguments incode.py.
- Copy the provided python script to the root of the drive and name it
- Update Offsets:
- CS2 updates frequently. You must generate new offsets using a tool like a2x/cs2-dumper, or download it on the page I put on the top.
- Place
client_dll.hppandoffsets.hppin the Client source folder.
- Build:
- Open the C++ Client project in Visual Studio.
- Set configuration to Release / x64.
- Build the executable.
- Connect the Hardware: Plug in the ESP32-S3 via USB. The screen should show:
"WAITING FOR PROGRAM..."
- Load the Driver:.
- Start CS2: Launch the game and wait until you are in a match.
- Run the Client:
- Run the compiled
NXConnect.exeas Administrator. - It will ask for the COM Port (e.g., if ESP32 is on COM3, type
3).
- Run the compiled
- Play:
- The "Waiting" screen on the ESP32 will disappear once data is received.
- Enemies appear as Red Dots.
- You are the Green Dot (Center).
- Spectator Mode: If you die, the radar automatically adjusts to the POV of the player you are spectating, so a little help for the rest when you are dead.
- Bomb: When planted, an 'A' or 'B' indicator appears at the top of the radar, this is not 100% accurate, so on a couple of maps B = A and A = B.
To change how much of the map is visible, edit code.py:
# Lower = Zoom In | Higher = Zoom Out
scale = (WIDTH / 2) / 2100.0 To move the player dot (to see more in front or behind), edit code.py:
# +50 moves player down (see more in front)
RADAR_CY = RADAR_Y_START + (RADAR_HEIGHT // 2) + 50 - Screen is Black:
- Check wiring (GPIO 12/11/9/8/10).
- Ensure CircuitPython libraries are in
lib/.
- Windows crashes:
- The
offsetsmight be outdated. Update them.
- The
- Enemies Not Appearing:
- Update the
offsets and client_dll
- Update the
- Set 24AWG Cables, 8CM 120 u
- Aliexpress, like $2
- Cables
- Set Dupont Line, 10CM, 120 u
- Aliexpress, like $2.7
- Kit
- PCB Set, mixed, 5 u
- Aliexpress, like $2.4
- PCB
- 1x40Pin 2,54mm, 10 Uds
- Aliexpress, like $1.8
- Connectors

