Hacker Newsnew | past | comments | ask | show | jobs | submit | ge0rg's commentslogin

The other half of the problem is what to gain from a root shell. You can't influence the stages of the image processing without a PhD in Sony DSP Reverse Engineering, and so what remains is probably hooking into the camera controls and injecting key events to re-invent time-lapse timers or bulb exposures, and removing the 30min video recording limit.

This is where the NX mod project arrived - additional hooks into the camera controls and a few changes to internal registers left over by Samsung engineers for debugging, like silent shutter or the 30min limit.


Sony's full frame machines are so customizable out of the box already, so you don't need anything to begin with, at least for normal photography needs. Maybe focus stacking, but it's a pure new procedure.

30 minute recording limit is already lifted and advanced time-lapse is introduced alongside mammal eye tracking with a firmware update by Sony, and you can customize anything sans preliminary image processing steps, and by customization I mean the parameters of the algorithms or algorithms themselves.

Moreover, Sony's full-frame systems are already distributed systems to begin with. There are at least two DSPs running asynchronously during focus and image capture, so there may be no pathways to influence the DSPs significantly after they boot up, even.

Personally I wouldn't muck with a system designed to do image processing 30FPS even before taking a photo (A7-III) incl. face and eye tracking and focus correction without any hiccups to this day.

From what I understood, these cameras perform a nigh impossible dance within the limits of their hardware to maximize speed and reduce energy consumption. Who am I to disrespect them for doing that. Instead, I prefer to use the thing and get nice photos out of it.


I want to write my own metering algorithms in the pursuit of ETTR instead of using the current garbage leftover from film cameras


When reverse-engineering some of the Samsung NX camera firmware files, I found USB-PTP code that implements different custom remote commands <https://chaos.social/@ge0rg/114723076401717110> but I'm not deep enough into PTP to make sense of them.

Is there anywhere a group focusing on understanding and re-implementing custom PTP protocols?


The last two generations of Samsung NX cameras were built around Tizen Linux, and it was (and still is) easy to get a root shell on them. They still make great photos and you still can buy them used for a good price.

NX300/NX30/NX2000 had a read-only rootfs, but for NX500 and NX1 there was a persistent mod that extended camera functionality with a menu, and you can actually SSH into them and rsync your photos... while shooting!

Background: I've recently taken over maintenance of the NX-KS mod at https://github.com/ge0rg/nx-ks-mod


Great to see another Samsung NX hacker in the wild! I'm in the process of developing a mod for my NX300 and NX30 (with the NX2000 likely compatible). It doesn't do anything yet, but I've got a lot of work done on hooking ARM code [0] and compiling modern C++ for the cameras.

Personally I think the NX300/30/2000 are the most hackable cameras ever made, even compared to the NX1/500. The read-only rootfs isn't really a barrier, since the software runs a shell script from the SD card on boot (or rather resume from hibernation, it's a pretty clever system). And unlike the newer models, they don't have an RTOS coprocessor, so everything is handled in the easier-to-modify Linux code. It's not a design decision I would have made, but it makes in-depths mods easier.

The older cameras are also easy to unbrick, since the bootloader files used for firmware flashing without a working OS were released in the FLOSS code dump. The availability of some C headers in that dump is the cherry on top.

I'll admit I'd still rather have an NX500, I just bought the NX300 because I'm cheap :)

[0]: https://gitlab.com/dvdkon/pahil


Yeah, I've documented a thing or two about the NX series on https://op-co.de/blog/tags/samsung-nx/

Regarding the RTOS, I took my NX300 from the shelf some weeks ago to make a few shots for the live demo at https://programm.froscon.org/froscon2025/talk/fc37ae17-9264-... and OH MY FSCKING GOD IT'S SLOW! I made a burst shot of a model train approaching, and the camera was busy processing it for multiple minutes. The NX500 is lightning fast in comparison, and the NX1 is even snappier.

So what do you plan to do with the ARM hook? I've poked at different places of di-camera-binary, but never at the processing pipeline, and there are soooo many things to reverse-engineer, and I'm but one person!


The possibilities are endless, so I need to make sure not to get lost in them and actually get something done :) I have a shortlist of changes to make, from surface-level to harder things:

- Allow configuring the controls. For example, the multi-purpose "focus" ring is great, but is severely hampered by having to press the "iFn" button every time.

- Add bulk upload of photos to Immich (though that could just as easily be an external script).

- Write custom widgets for the LV view, like a RAW histogram or time display. Also hide the bottom buttons that have already burned into my screen.

- Allow full electronic shutter (I already had to change this camera's shutter once).

- Add highlight metering, or rewrite the autoexposure entirely.

- Support outputting raw video.

- Tone down the denoising on out-of-camera JPEGs.

- Play with custom sensor crops, line skipping and other things to get zoomed in videos.


I had the NX1 with all the premium lenses and some photos still seem to be better than what my Sony A7-M4 shoots. But no 10bit 4:2:2 for video and no real flat profile was a bummer. I loved the persistent mod though. Sold all NX1 gear years ago, moved to a Sony A7-M3 and then A7-M4. Full Frame has some great benefits.


Looks like it was invented by two Fujitsu engineers, is free of patents and maybe was optimized for hardware implementation? I've linked some Japanese sources in the post, but I don't speak Japanese and the auto translation is not easy to read.


Creating a high performance image processing pipeline requires significant engineering effort and probably a custom SoC or DSP. You need to take care of auto focus and all the other physical configurations (shutter time, aperture, ISO), then you need to add post processing to correct for lens distortion and to do white balancing. I wish there was a FOSS camera, eg with the rather open MFT lens mount, but I don't see it happen any time soon.


I want back the UX of electronics from twenty years ago, with physical knobs and dials. Spare me the glitchy touch screens on kitchen appliances that can't be operated with wet fingers. Spare me the cheap pseudo buttons without a noticeable click point on washing machines. I don't want to wait multiple seconds after pushing the power "button" to see if the device just lags or if I didn't push hard enough. I don't want a TV that needs minutes to boot android, only to overlay what I want to see with ads benefiting the manufacturer. I don't want to wait a minute after starting the car before I can configure the heating... on a touch screen that first makes me accept the ToS.


> Spare me the glitchy touch screens on kitchen appliances that can't be operated with wet fingers

Well, the person upthread did say "I don't think any of the camera manufacturers have good UX people" (emphasis mine) and the kitchen appliance companies don't either


I wouldn't want that either.


And even one with interchangeable lenses: https://op-co.de/blog/posts/galaxy_nx/


I'm a huge fan of the NX mini and they are fully supported by the SNS API bridge.

I have a bunch of them, one converted to infrared. Usually I have the mini with me when the NX500 is too bulky. It's a pity that the lenses are so rare on the used market. The image quality is just awesome for the form factor!


So I've used the discussion here and the inspiration by @samcat116 to finally publish my review of the Samsung Galaxy NX - half smartphone, half "professional" camera: https://op-co.de/blog/posts/galaxy_nx/


Samsung actually released multiple Android-based cameras: the Galaxy Camera range with built-in zoom lenses (https://www.zisman.ca/blog/2013-01-05.html) and the Galaxy NX with interchangeable lenses: https://op-co.de/blog/posts/galaxy_nx/

They all suffered from running Android 4.x with no major upgrades from Samsung.


If I want a camera running a smartphone OS, I use a phone. A camera should be by definition running on dedicated camera firmware, and nothing else.


> A camera should be by definition running on dedicated camera firmware, and nothing else.

Says who? There's no intrinsic reason a camera couldn't run with an Android OS. In fact, there's a lot of good reasons why you would want that - simpler development platform, reusing existing drivers, etc...


> There's no intrinsic reason a camera couldn't run with an Android OS.

There is: battery life and startup time.

DLSRs have no problem being being on standby for weeks if not months with minimal battery drain and then springing to life within a second at the press of a button. Android phones do no even come remotely close to that level of efficiency.


A lot of that comes down to the always-on radio on the phone... When I've done road trips, I've used my phone mostly as an mp3/podcast player and had it in airplane mode, and it lasted much longer than when it was just in normal operation. Standby for several days.

My M1 air is in standby for weeks at a time on a single charge. There's no reason you can't do similar with a phone. Maybe not months, but definitely for extended periods of time.


E-readers running Android can last forever on a single charge, too. The biggest drain on most phones' battery are the wireless radio (like you described) and those big, beautiful screens :) But certainly not the OS itself!


A DSLR has the added benefit of not needing a screen to be on for it to work (this is why they still have better battery life than mirror less as well). Then again, SLRs have even better battery life (it's only used for the light meter and on newer models autofocus motor and film advance).


Take a look at the Alice camera: https://www.alice.camera/

Basically an add-on for your phone that adds a serious interchangeable lens sensor.


Sure, a camera is a specialized tool doing a limited set of functions. It does not need the vast majority of functions Android offers: phone, 5g, internet, app stores... No nerd for that on a camera.

What camera needs: fast "boot", stability, reliability, ability to run offline for decades.

And no, I don't want all software being developed the way a social.media app for a phone is.


But how else will you get ads on your viewfinder?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: