Li-Fi messaging · No Wi-Fi · No Bluetooth · No internet

Chat through
light.

Chatarpattar turns your phone’s flash into a transmitter and its camera into a receiver. Two devices, one beam of light, zero network. Send messages at the speed of light — literally.

100%offline
5–15bits / second
1-biterror correction
2devices needed

How it works

Your flash talks. Your camera listens.

No routers, no SIM cards, no radio waves. Just light pulses the other device decodes like Morse code — at machine speed.

01

Type the message

Write a line of text. Chatarpattar encodes it with Manchester modulation and Hamming error-correction — then waits for the other device.

02

The flash beams the data

A 500 ms sync burst locks the receiver in, then the LED blinks 1s and 0s as bursts of light at up to 15 bits per second.

03

The camera decodes it

A 200×200 px ROI in the viewfinder tracks brightness 60 times a second, applies an adaptive threshold, and rebuilds your message — errors fixed on the fly.

Live demo

Watch the beam talk

A real end-to-end transmission, simulated in your browser. The sender’s flash encodes the text as light pulses; the receiver’s camera reads them and decodes your message — one byte at a time.

Chatarpattar · TX Sending

Waiting for message…

Hello! 👋
Chatarpattar · RX Listening

Simulation uses the real Chatarpattar frame format — sync burst, Manchester half-periods and end-of-message marker — at 20 ms/symbol for speed. That’s roughly 5× faster than a real phone at 5 bps stable mode, so the beam feels as quick as it should.

TX idle RX idle

Engineering

Built like a comms lab

Every layer of the link is engineered for the hardest part of Li-Fi: a shaky hand holding a phone in a sunlit room.

Manchester encoding

Every bit is a guaranteed transition — rising for 0, falling for 1. The receiver’s clock stays locked even through long runs of zeros.

Hamming(7,4) error correction

Four data bits ride in a seven-bit codeword with parity. One flipped bit per byte — from a jittery hand or a stray sunbeam — is found and fixed.

Adaptive light threshold

A rolling window of the last 30 frames computes mean + 1.5σ. Bright office, dim café, blazing sun — the receiver calibrates itself automatically.

Flash-powered transmitter

Uses the camera flash via the hardware HAL — a 500 ms sync burst, then precise on/off pulses driven by a dedicated background thread so the UI never stutters.

60 fps vision pipeline

A 200×200 ROI crops the frame centre, converts to BT.601 luma and feeds a demodulator state machine — all while keeping the app at a smooth 60 fps.

Fully offline & private

No radios, no base stations, no internet — the beam carries your message in a straight line from one lens to another. It simply cannot be sniffed out of the air.

Protocol

One frame, two phones

SYNC BURST500 ms
GUARD200 ms
DATA — Manchester-encoded bytesat 5 / 15 bps
EOM8 × zero-bits

Modulation Manchester · FEC Hamming(7,4) · Sensing BT.601 luma + adaptive threshold · Stack Python · Kivy · OpenCV · NumPy

FAQ

Questions, beamed

The short answers, so the rest of the page can stay visual.

What is Chatarpattar?

A Li-Fi (light fidelity) messenger app. It turns one device’s camera flash into a transmitter and the other device’s camera into a receiver, so two devices exchange text messages using bursts of light.

Do I need Wi-Fi, Bluetooth or the internet?

No. Chatarpattar works completely offline. Messages travel as light pulses from the flash of one device to the camera of another — no radio waves, routers or servers are involved.

Is Li-Fi messaging private and secure?

Because data travels as a narrow light beam that requires direct line of sight, it cannot be intercepted from the air the way Wi-Fi or Bluetooth can. The receiver must physically face the transmitter to read anything at all.

How fast is Chatarpattar?

The prototype runs at 5 to 15 bits per second using Manchester modulation with Hamming(7,4) error correction. The demo on this page is sped up roughly five times so you can watch a full transmission in seconds.

How do I use Chatarpattar?

Place two devices facing each other. On the sender, type a message — the flash encodes it as a 500 ms sync burst followed by precise light pulses. The receiver’s camera locks onto the beam, decodes the brightness waveform and displays the message.

Which platforms are supported?

Android (packaged with Buildozer), iOS (via the Kivy-iOS toolchain) and desktop simulation mode for development.

Coming soon

Chatarpattar is almost here.

We’re tuning the final beam. Leave your email and we’ll notify you the moment the first light goes out.

Android · iOS · Desktop simulation — no spam, only light.