A zero-processing manual camera for Android. What the sensor saw, nothing added.
光子 (kōshi) is Japanese for photon, a particle of light. Formerly HeyCam.
I was tired of every phone's camera app processing photos behind my back: AI "enhancements", aggressive noise reduction, over-sharpening. I wondered: could I build a camera app with zero processing?
The goal is simple: capture what the lens and sensor actually see, as fast as possible, with nothing in between. That camera is Koshi.
- An S · ISO · EV · focus readout sits under the viewfinder. In Auto, the shutter speed, ISO and focus distance the camera actually chose are shown live, marked with a red A.
- A ruler dial in third stops controls shutter, ISO and exposure compensation, limited to what your sensor supports.
- Tap S or ISO in Auto to switch to Manual, starting from the metered exposure. Tap EV to go back.
- .6× / 1× / 3× stream straight from the ultra-wide, main and telephoto sensors. They switch lenses; they don't crop.
- Many phones hide their multi-camera from apps. On the Nothing Phone (3) the real one is camera id 4, over sensors 0 / 2 / 3; Koshi finds it and locks the stream to the sensor you pick. Needs Android 10 or newer.
- Manual focus: tap the focus cell (AF → MF) and turn the dial like a lens barrel, from the lens's closest focus to ∞.
- Focus aid: the centre of the viewfinder is magnified 2.5× for as long as your finger rests on the focus dial.
- Tap to focus locks focus at that point (AF-L), and in Auto it also meters there. Long-press to return to continuous AF.
| Mode | What the phone is allowed to do |
|---|---|
| Minimal (default) | No sharpening, minimal noise reduction, no distortion correction |
| Off | No noise reduction, sharpening, hot-pixel, aberration or distortion correction; neutral sRGB tone curve |
| Device | The phone's own processing, for comparison |
The viewfinder uses the same settings, so it shows what will be recorded. In side-by-side tests, Device mode adds sharpening halos and synthetic texture, while Minimal and Off keep the sensor's real detail.
- RAW is pure sensor data: no noise reduction, no sharpening, no tone curve. It is the only output guaranteed to be untouched, because some phones still process JPEGs even when asked not to.
- Each DNG is paired with the capture data of its own exposure and embeds the lens shading map. On multi-camera phones it carries the selected sensor's colour and noise profile.
- There is no focus or exposure sequence before a normal shot and no preview restart after it.
- Files are written on their own thread, so bursts never wait for the disk. On a Nothing Phone (3), a JPEG takes about 30–100 ms and a 25 MB DNG about 110 ms.
- Import
.cubeLUTs. They are applied with trilinear interpolation, so skies don't band. - Frames include Darkroom (a filed-carrier darkroom print) and Gallery (a caption passe-partout), plus the film classics.
- EXIF data is kept when a LUT or frame is applied. LUTs and frames never touch DNG files.
- Interval timer: 1–30 s intervals and 1–99 shots, with a countdown ring in the viewfinder. On Nothing Phone (3) the countdown also runs on the Glyph Matrix.
- Shutter: the on-screen button, the volume keys, a camera key, or the Essential Key on Nothing phones.
- Viewfinder tools: live histogram and a rule-of-thirds grid.
| APK | For |
|---|---|
Koshi_v*-nothing.apk |
Nothing phones, Android 14+ (Glyph Matrix support) |
Koshi_v*-standard.apk |
Other Android phones, Android 9+ |
- Download the APK from Releases.
- Allow installing apps from unknown sources.
- Install and grant camera access. Koshi installs as an update over HeyCam.
Photos are saved to Pictures/Koshi.
- Language: Java, Camera2 API.
- Code:
camera/CameraController(session, per-request processing, lenses, focus),camera/PhotoSaver(MediaStore, DNG, LUT and frame rendering) andcamera/CaptureMatcher(image ↔ result pairing). - UI: Android Views with a custom-drawn dial, viewfinder overlay and histogram, set in Barlow (OFL).
- Glyph:
com.nothing.ketchum(Glyph Matrix SDK). - Design sources: the UI mockup, logo studies and frame generator live in
design/.
Koshi is made for people who want control. If you prefer point-and-shoot convenience with AI enhancements, your phone's own camera app is the better choice.


