Jump to content
kidzrevil

Petition for Samsung NX1 hack

Recommended Posts

On 25/03/2016 at 4:09 PM, RieGo said:

just follow this instructions: https://github.com/ottokiksmaler/nx500_nx1_modding/blob/master/DEV%20and%20CS%20modes.md

But instead of disabling recording limit just use this setting:

2. SYSTEM PARAMETER

(6) NO LENS RELEASE ENABLE [v]

please be careful, the dev menu is dangerous!

But is there any risk just disabeling that ? I just want that, not the recording limit, because I currently have a piece of paper on the lens button, so I can use my nikon glass..

Share this post


Link to post
Share on other sites
EOSHD Pro Color for Sony cameras EOSHD Pro LOG for Sony CamerasEOSHD C-LOG and Film Profiles for All Canon DSLRs

Aaron: 120 is NOT selectable if DIS is enabled. Hence disabling dis is a required action. And re-enabling is again a necessity when you want it again after selecting pal and 4k. So many selections to be done back and forth in different menus.

Share this post


Link to post
Share on other sites
34 minutes ago, AaronL said:

please excuse my lack of understanding, as I am a complete noob with cameras, but what is the reason for switching to PAL for 4k, is there a quality advantage or anything?

PAL highest framerate is only 100fps while NTSC allows for 120fps, for us PAL users that is almost 5 times slow motion compared to our regular 4 times.

Share this post


Link to post
Share on other sites
2 hours ago, ricardo_sousa11 said:

But is there any risk just disabeling that ? I just want that, not the recording limit, because I currently have a piece of paper on the lens button, so I can use my nikon glass..

it SHOULD not make any problems. it's disabled on mine since that hack came up. but please make sure to follow the manual closely. you don't need to disable recording limit for this.

Share this post


Link to post
Share on other sites
On 3/29/2016 at 10:56 PM, Syme said:

For internal recording it's highly unlikely. It would require extensive modification to the digital design of the video encoder. I won't say it's strictly impossible, since the NX1 supposedly uses a re-configurable processor for some tasks. Unfortunately no one knows if HEVC encoding is one of those tasks, so no one can say for sure if it is possible or not. My opinion is that Samsung probably did the power-hungry video encoding with a dedicated hardware block for the sake of efficiency, but I don't actually know. Even if it is possible, the reverse engineering required to do it would be unlike anything that has been done before in a public project.

I sure hope it is possible, but it's a moon-shot at best.

On the other hand, external recording might be a more plausible option. If it turns out to be possible to get a hold of a buffer of 10 or 12 bit video data while recording, it may be possible to send that out over the HDMI port.

The NX1 has a 14-bit sensor, so the hardware has the bit-depth capability.  It would probably have to be set up to be output through the HDMI stream (along with the 4:2:2 sampling).

Share this post


Link to post
Share on other sites
1 hour ago, LawDude said:

The NX1 has a 14-bit sensor, so the hardware has the bit-depth capability.  It would probably have to be set up to be output through the HDMI stream (along with the 4:2:2 sampling).

That's what I mean (though it's in 12-bit mode for video IIRC).

Share this post


Link to post
Share on other sites
On ‎3‎/‎30‎/‎2016 at 4:00 AM, Tommix said:

Couldn't resist just bought NX500. Very exited over this possibility to hack. also nice that samsung gives sources of kernel. Im windows guy and know nothing about linux :( 
Waiting Otto and Vasile to make their magic! Of course others too. It would be GREAT news is someone finally confirm that CPU and sensor is 100% the same!
For me 2.5K is VERY attractive! it's very usful to have it, because 1080p bit low and 4k not always needed.
I notice samsung prices started to get higher...i think this hacks is one of reasons why too :)

Also not cropped 4k would be awesome in NX500

I believe the sensors are the same, but the NX500 has a more basic processor.

On ‎3‎/‎29‎/‎2016 at 3:10 PM, EOS_Lurker said:

My semi-educated guess is it's plain old product market segmentation.  I.e. if the NX500 has capabilities similar to the NX1, why would customers purchase the much more expensive NX1?

AFAIK Samsung uses not only the same image sensor but apparently the same processor & ASIC/FPGA SoC chip in both cameras.  Admittedly there is conflicting info on whether this is the case or not, my guess the NX1 just gets a heatsink - whether it's really needed or not is a good question. But it's somewhat likely that the instruction sets for both the ARM core and the FPGA instructions are the same.  That's why I advocated trying to run NX1 binaries on the NX500.

 

The NX1 has a DRIMe V processor, whereas the NX500 has a DRIMe Vs processor, according to Samsung.

Share this post


Link to post
Share on other sites
2 hours ago, Tommix said:

Hrr imposisble to use thsi forum, it barely works....cant even write text, some quotes inserted automatically even if i never quote.. Anyways Tugela - dont you ever heard thing such as MARKETING?

How stupid company have to be to say - our 2-3 times cheaper camera is the same as NX1. All companies lie, all companies disables features on cheaper models. The same here with samsung. yes there maybe be different processor but maybe the only diferences is that NX1 proc can handle mic input, can output audio - have more interfaces, this doesnt mean nx500 cpu is less capable in terms of video, photo and it's because both camera using the same sensor. SO would make sense to get most of it, and not create diferent cpu who intentionally reads less data and have worser IQ.

 

PS> but in this monetary world-everything could happen, companies dont care their products, dont care anything but money..so..i guess it may be everything :D

Please reread the whole thread, the nx1 and nx500 cpus are not the same at all. They reuse a lot of code, Parts of the encoding blocks reference nx300 things, it doesnt mean they are the same as the nx300. The architecture may be similar but from what I have seen code wise is quite a lot of difference, yes both are tizen, both have very similar control file structures, but look into them and the function calls change for obvious reasons, now Im not saying you cant use code from either, just that like everything it would have to be adapted. and modified with the proper nx1/nx500 references.

Share this post


Link to post
Share on other sites
2 hours ago, Tommix said:

So far more proof that they are the same than different. Even Vasile thinks they are the same. What code you talk? Surce code? it means nothing with hardware. hardware may have protocol the same as 20years old one but this doesn't mean that code uses old hardware, it just use protocols.

 

Also i coulndt find ANY specs regarding Samsung's DRIMeV or DRIMeVs.... NONE. someone?

We will be expecting eagerly your hacking/moding advances, until then just keep it humble, so to keep this thread useful and without any grey noise.

Share this post


Link to post
Share on other sites
On 3/30/2016 at 2:49 PM, Marco Tecno said:

Aaron: for lights. Ntsc with artificial lights gives flickering. Besides with pal you have 25fps at the same bitrate as 30fps.

ahhh this what I wanted to hear, Im living in Europe and have been shooting in NTSC and just thought that the light flickering was something I need to work around. Just tried it out just now on the shop lights across the street and it dissapears with PAL. awesome, thats something I probably would not have found out for a long time, thanks!

47 minutes ago, Tommix said:

SO KEEP IT! so far you making empty noises here.

stock-photo-crying-angry-teenager-107478

Share this post


Link to post
Share on other sites
8 hours ago, Tommix said:

So far more proof that they are the same than different. Even Vasile thinks they are the same. What code you talk? Surce code? it means nothing with hardware. hardware may have protocol the same as 20years old one but this doesn't mean that code uses old hardware, it just use protocols.

 

Also i coulndt find ANY specs regarding Samsung's DRIMeV or DRIMeVs.... NONE. someone?

Hey @Tommix,  I hope my postings a few pages back haven't mislead you.  Although my belief that the NX1 and NX500 "may" have the same processor SoC may be for good reasons, even if this is true Samsung may have permanently disabled features in the NX500.

My reasoning basically is that it's a lot cheaper to order one larger production run of a design rather than two smaller runs of two designs.  Although perhaps Samsung speed and/or defect-bins their chips into NX1 'premium' and NX500 'sub-premium' chips.  Who knows?  However, it would be easily for them to laser-cut traces of functional blocks in what I assume/hope is the FPGA and/or RAM, permanently de-featuring the chip.  Modern chip manufacture always have at least one laser pass.  However, the ARM cores are very, very likely 100% the same.  That's why I think software intended to run on the NX1 chip has at least a reasonable chance or running on the NX500.  However, Samsung could have also put in some checks in their software which would complicate matters.  This could be circumvented using a debugger by someone who has the skills and the time.

I'm not sure why my posts got exactly zero traction here, and why someone who has access to the NX1 firmware doesn't at least try to load it onto a SD card and run the NX1 apps on the NX500.  It would be easy enough to set up and run, and the results would be low risk and very revealing.  But heck, I can't criticize, I'm too lazy to request someone upload the NX1 firmware and try it myself.  I barely have time to check this thread every few days.

I'm not sure whether these guys who claim to be working on secret projects are blowing smoke or have real skillz to do the job.  They'll either eventually either reveal their uber hacks and be worshiped as supermen or slink off into the internet night.  I offered some suggestions and got /ignore radio-silence in response, so that pretty much confirms this isn't a place where I want to invest my very limited free time.  I avoid making commitments I can't deliver on and would rather play with my new HoloLens - hacking it's API locks is a much more interesting problem to work on and I am very aware of how much time these little hacking project obsessions can suck.

I don't see this community growing by what I've seen, AFAIK it appears to be 3-4 guys with unknown skill levels and a bunch of photographers hungrily awaiting updates.  Let's just hope these l33t hackers deliver on their implied promises.  You might want to return your NX500 instead of waiting.  I'm thinking about selling mine to a friend who expressed interest.  At this point I wouldn't put money on huge developments unless perhaps a Samsung insider leaks or something - it's pretty difficult to hack hardware of this complexity in a partial documentation vacuum, even for developers with skills.

 

 

Share this post


Link to post
Share on other sites

You do bring up similar points about the nx of which I was thinking. But unless we can get the chips uncapped and analized there is no way to know for sure. The power requirement of the srp may have made samsung switch to a asic block for the nx500, as the drimev-s also shows up in the fcc docs as running the not released nx mini 2. 

Now as I stated before there is not much I can post showing what Ive been doing. Dumping ip code is not something I wish to do as that opens a whole lot of legal grey area. Theres a reason the sources dont include everything. They reuse a lot of their ip, and just update the functions inside, as I said I have seen much reference to the nx300 but when you compare the two files there are changes conducive to the hardware the nx1/nx500 runs.

By all means I did not promise anything, although my goals have been stated. With the warning that it may not work the way I intend and doing the due diligence to document and track changes over versions and to compare the findings to the nx500. As you seem to know your way around coding you understand the complexities of binary blobs and reversing them back into c. 

The script stuff that otto k and vasile are doing show promise, and in the past month things have moved very fast. If you were around when the gh2 was being modded it took quite a while for ptool to happen. Not saying they are the same but having the ability to up bitrate and access other parts of the os is nothing to scoff at. 

I can either keep posting tiny parts of what Im finding and documenting as I go or do what I have been the past two weeks and work and ignore what is going on here until situations like this arise and I feel compelled to reply.

Share this post


Link to post
Share on other sites
1 hour ago, EOS_Lurker said:

Hey @Tommix,  I hope my postings a few pages back haven't mislead you.  Although my belief that the NX1 and NX500 "may" have the same processor SoC may be for good reasons, even if this is true Samsung may have permanently disabled features in the NX500.

My reasoning basically is that it's a lot cheaper to order one larger production run of a design rather than two smaller runs of two designs.  Although perhaps Samsung speed and/or defect-bins their chips into NX1 'premium' and NX500 'sub-premium' chips.  Who knows?  However, it would be easily for them to laser-cut traces of functional blocks in what I assume/hope is the FPGA and/or RAM, permanently de-featuring the chip.  Modern chip manufacture always have at least one laser pass.  However, the ARM cores are very, very likely 100% the same.  That's why I think software intended to run on the NX1 chip has at least a reasonable chance or running on the NX500.  However, Samsung could have also put in some checks in their software which would complicate matters.  This could be circumvented using a debugger by someone who has the skills and the time.

I'm not sure why my posts got exactly zero traction here, and why someone who has access to the NX1 firmware doesn't at least try to load it onto a SD card and run the NX1 apps on the NX500.  It would be easy enough to set up and run, and the results would be low risk and very revealing.  But heck, I can't criticize, I'm too lazy to request someone upload the NX1 firmware and try it myself.  I barely have time to check this thread every few days.

I'm not sure whether these guys who claim to be working on secret projects are blowing smoke or have real skillz to do the job.  They'll either eventually either reveal their uber hacks and be worshiped as supermen or slink off into the internet night.  I offered some suggestions and got /ignore radio-silence in response, so that pretty much confirms this isn't a place where I want to invest my very limited free time.  I avoid making commitments I can't deliver on and would rather play with my new HoloLens - hacking it's API locks is a much more interesting problem to work on and I am very aware of how much time these little hacking project obsessions can suck.

I don't see this community growing by what I've seen, AFAIK it appears to be 3-4 guys with unknown skill levels and a bunch of photographers hungrily awaiting updates.  Let's just hope these l33t hackers deliver on their implied promises.  You might want to return your NX500 instead of waiting.  I'm thinking about selling mine to a friend who expressed interest.  At this point I wouldn't put money on huge developments unless perhaps a Samsung insider leaks or something - it's pretty difficult to hack hardware of this complexity in a partial documentation vacuum, even for developers with skills.

 

 

I kind of hope you're trolling, but I feel compelled to respond anyway.

tl;dr: Nobody has been making any implied promises, and your suggestion had already been tried and failed before you posted it.

First of all, nobody is claiming to be working on super-duper secret projects. Everyone has been very clear that they are doing this for fun in their spare time. From what I have read, nobody is releasing much since there isn't much interesting to release. For what it's worth, there have already been results, in particular from Otto and Vasile. Both of them made no promises yet delivered exactly what they said they expected to do. Vasile claimed to have found how to increase the bitrate, and provided a video as proof. Yea he could theoretically have faked it, but I see know reason to think that at this point. Otto stated his intentions very clearly and his results have already proven useful to people who want to take videos of events longer than 30 minutes (as well as anyone who wants to investigate their camera further).

You got radio silence on your suggestions because people were already working on that and ran into problems that you did not address at all. In case it's too much trouble for you to actually read what people have already written, the issue was that if the camera app is killed it freezes the camera. It's hard to replace an app if you cannot even remove it. If you think you know how to prevent that, I would love to hear it. If you want "traction" in this discussion, try actually being helpful.

Regarding the DRIMeV SoC itself, I mostly agree with your educated guess. It is almost certainly the same die, and the ARM cores are 100% identical. Unfortunately that's not saying much at all since most modern ARMv7 cores are identical as far as the software is concerned. It's the details of other blocks that would determine whether or not the important components of the camera application run or not. I can't tell just from skimming the kernel source code.

It takes under 5 minutes to find and download the firmware update from Samsung's site. If you really don't have 5 free minutes in your life, I don't understand why you are wasting time criticizing people who have actually accomplished things and posted them here. If you are 1/2 as smart as you make yourself sound, it should take you less than an hour to unpack all the components of the firmware. I had never unpacked a firmware before, but it only took me two evenings to get all the major pieces out. The offsets, sizes, compression, and filesystems are almost all documented right here in this forum, so there is no excuse not to take a look if you really want to test an idea.

I totally agree that the ratio of people waiting with high expectations to the people working on it is rather high. The Magic Lantern forums are just like that on a larger scale, but that doesn't change what they have or have not done. You need to keep in mind that this forum is a community of filmmakers, not hackers (or even "photographers"). The point of this thread in the first place was to show interest in modifying a camera, at which I'd say it has admirably succeeded!

Finally, nobody cares that you're a busy person. So you like your HoloLens and want to play with it. Cool story. We're all busy people too, so suck it up and either contribute or go back to lurking. Sorry for the tone, but that's because I can never stand people who drop into discussions and claim that they could do it all better if they didn't have so many more important things to do, yet don't contribute anything useful.

/rant

Share this post


Link to post
Share on other sites
13 hours ago, EOS_Lurker said:

But heck, I can't criticize, I'm too lazy to request someone upload the NX1 firmware and try it myself.

that's doable. i can upload my nx1 rootfs dump and you can do whatever you want with it. or maybe someone else. i haven't looked at it very much.

http://www14.zippyshare.com/v/H7PRdH4S/file.html

btw: an nx500 dump would be nice to see, so we could compare stuff...

Share this post


Link to post
Share on other sites
34 minutes ago, Tommix said:

 

Pls point me to ATLEAST 1 source file in Nx500 or NX1 where you can prove that CPU is different. YES maybe firmware send different parameters to enable/disable some functions, but this doesn't mean that cpu differs. You not the only one who looked at sources :) So far kernel is exactly the same what relates to DRIMeV

I don't think he has claimed to have proved that the CPU is different. It would be foolish for anyone to claim to know if the SoCs are the same or different without proof.

The possible differences between the SoC in the NX1 and the one in the NX500 will not necessarily appear in the source code that Samsung has released. The same source code can work with different hardware depending on how it is configured. What's more, there are probably (well, almost certainly) binary-only firmware blobs that are uploaded to run certain parts of the SoC that aren't directly controlled by the kernel. The kernel doesn't even have to include all the drivers needed to run the hardware. For all I know they might be using a user-space driver or proprietary kernel modules for some components, which would not appear in the GPL-required source. Or they might not. But you would have to carefully analyze the entire firmware image to find out.

There are many possibilities at this point. The silicon could be identical and fully enabled in both chips. It could be identical and configured differently by low-level binary firmware. It could be identical but with parts permanently (laser) disabled. It could be different.

As far as I know it isn't possible to tell apart those four (or more I haven't thought of) cases for sure just based on kernel code. Or it might be possible to prove. All we know right now is that the CPU cores themselves are functionally equivalent, which doesn't really matter anyway.

If anyone knows that I'm wrong, please correct me. I'm somewhat familiar with embedded Linux, but I'm not an expert by any stretch of the imagination.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...