Author Topic: Buying camera for ML development, advice needed  (Read 4065 times)

heder

  • Developer
  • Member
  • *****
  • Posts: 171
  • No time for caution
Buying camera for ML development, advice needed
« on: May 27, 2022, 09:00:17 PM »
Hi all.

I have'nt been programming for a while, progres on the 40D is equal to none. The open beta ML version is 70% done, the reason being the camera is old, different from the newer camera, and last but not least, the camera model is really old. I have learned alot about ML firmware, and I think it's time to utilize this and move on to a newer unsupported camera.

I would like to hear from other people which camera would be interessing to get into the ML "program". I'm not in a rush, as I need to sell some old HAM gear inorder to get additional cash, but I would estimate I can spend around 800€ on a camera body. Timeline for getting a new body is approx 31th of December 2022.

Which camera's are interessing for this budget, and why ?
... some text here ..

Walter Schulz

  • Contributor
  • Hero Member
  • *****
  • Posts: 8824
Re: Buying camera for ML development, advice needed
« Reply #1 on: May 27, 2022, 09:42:33 PM »
Digic IV: 2000D, 4000D. No clean HDMI without ML.
Digic 6: 750D, 760D, 80D. ARM architecture is quite unique and seems to be not covered by current devs.
Digic 8: M200. I think the cheapest D8 cam with EOS firmware. Maybe 250D, but I'm biased here.

names_are_hard

  • Developer
  • Hero Member
  • *****
  • Posts: 817
  • Dev: 200D, 750D, 850D, 7D2
Re: Buying camera for ML development, advice needed
« Reply #2 on: May 27, 2022, 10:26:58 PM »
Join usssss, join usssss.  On D678X work.  I am baised, I'm the most active dev there at present.  Walter's list seems reasonable.  I might add the M50, similar prices to M200, you may find one cheaper.  200D is D7 and in your price range.  More details follow :)

What cam to play with depends on what kind and level of challenge you would enjoy.  The newer D4 cams should be easiest to port, and I think they'll benefit from ML a lot, so it's not a bad choice.  Maybe they're faster than old D4, maybe have better SD interface?

D78 are very similar internally and we have ML working to menus with some small features enabled.  D7 is quite stable on my 200D.  D8 on my 850D is stable, but other D8 cams seem to suffer from frequent unpredictable crashes, cause unknown (*possibly* EVF related, since 850D doesn't have one?).  These are dual-core cams, which is fun; interesting cache behaviour and you can schedule tasks on the different cores.  We have two active devs with a 200D so that could make sense, it's not an expensive cam and we understand it fairly well.  But all D78 cams seem fairly similar, you can likely port our code quickly (a few days, we've done this multiple times and can help).  These are ARMv7-A.

D6 are dual-cpu, not dual-core.  No shared memory, some form of inter-core IPC.  ARMv7-R.  We can run code on these but not as much work has been done, no active devs happen to have D6.  We try to keep our code functional on D6 but don't have good ways to test.  It would be helpful to the group effort to have an active dev with D6, but it's the cam we can give the least help with.  5D4 is D6 so that's a cool target that would be aided by a working port on any D6 cam.  750D is D6 and cheap.

tupp

  • Member
  • ***
  • Posts: 130
Re: Buying camera for ML development, advice needed
« Reply #3 on: May 27, 2022, 10:59:44 PM »
As a somewhat experienced cinematographer and photographer, I would urge you to work on any one of the cameras with an EF-M mount, that also has viewfinder capability and dual pixel autofocus, and the potential for continuous, 4K, raw video.

There are plenty of ML cameras with EF and EF-S mounts that work great -- more of those are not needed.

On the other hand, EF-M mount cameras (the EOSM line) have a shallow mount that accepts almost all lenses via mount adapters, speedboosters, and tilt/swing and tilt-shift adapters.  Also, the EOSM cameras are relatively cheap (unlike the shallow mount, full frame, EOSR line, with some models already featuring raw video capability).

The EOS M50 is a good candidate that has a built-in viewfinder (allowing one to use radio slaves along with the viewfinder), but I am not sure if ML would work on it.

An EOSM with full-sensor, 4K, raw video capability and a viewfinder would be amazing!

ArcziPL

  • Contributor
  • Member
  • *****
  • Posts: 191
Re: Buying camera for ML development, advice needed
« Reply #4 on: May 27, 2022, 11:32:12 PM »
DSLR is dead.

M50 is an inexpensive, modern, very decent DSLM with some low-hanging fruits (functions existing in firmware, not exposed to a user like silent shutter enable/disable in any mode, 1- or 1/3 stop ISO selector) and some potential for tough work in very long-term perspective (it natively supports 4k video).

It's my first choice for using manual lenses (in-viewfinder focusing assistance), first choice-for using 35mm-FF lenses (short flange, speedbooster).

There are rumours the M-line is dead. If so, the second hand M-line-cams may become very inexpensive in the near future.

Yes, I'm biased.
M50.110 [main cam] | G7X III [pocket cam] | 70D.112 [gathers dust] | M.202 [gathers dust] | waiting for M5II

Skinny

  • Senior
  • ****
  • Posts: 278
Re: Buying camera for ML development, advice needed
« Reply #5 on: May 28, 2022, 08:33:17 AM »
(I'm also biased) so I'll say something full-frame :D because full frame camera with raw recording is awesome.

I know many people have dreamed about ML on 5D4 for years.
while 5D3 is very developed with latest achievements..
5D2 lack many features possible now for other cameras (doesn't have 1x3 modes working, no lossless compression, no 16x9 mode for 48 fps.. correct realtime preview, CF overclock.. all these things are possible but not implemented yet. for example there is an instruction how to activate 1x3 and it works, but it takes 20mins to do so with registers manipulation)
6D probably can also benefit from some further development
6D2 - people ask all the time.

In general, older cameras are very attractive to many people because of their low price. And stable and good builds for them can stimulate second-hand market which in turns leads to more users with fresh cameras and potentially new developers who can work on new and more expensive cameras also.
Strong support for legacy cameras means loyal community and more sales for new cameras, this is how it works. I think Canon should publish all source code for their products older than 10 years or so, it will bring them new loyal customers for sure. Over the time, of course. But big companies don't think like that obviously..

Bruno Italiano

  • New to the forum
  • *
  • Posts: 35
Re: Buying camera for ML development, advice needed
« Reply #6 on: May 28, 2022, 09:51:45 AM »
Most likely there won't be any Magic Lantern for a lot of new cameras. 😇

heder

  • Developer
  • Member
  • *****
  • Posts: 171
  • No time for caution
Re: Buying camera for ML development, advice needed
« Reply #7 on: May 29, 2022, 05:10:59 PM »
Hi all, lots of good advices so far, and it's ok to be bias'ed as long as theres a reason. I will not comment on each post, but I see mainly 3 requirements I need to address.

Community momentum.
In the recent years Canon have unleashed a high number of different cameras, making it harder for us all to keep momentum. I guess names_are_hard nail'ed it down to D678X. Since most of development is taking place around D7,D8, this is where we as a comminity will gain the most. Also since I only have limited time to spend on the project it will be difficult for me to carry the D6 development on by shoulders. There are a many nice entry level camera with D4,D5, but the future is changing.

Trends
The digital single lens reflex era is comming in an end. Canon has still to release is last flagship(?), while others like 5D and 7D seires will be discontinued. The future is mirrorless, so from that perspective, I think it would be wise to choose a mirror less unit.

Personal ideas
It would be fun to have a fullframe camera for astrophotography, but most of the time (99%) will be spend in video mode where APS-C is just fine, and purchasing a lesser expensive unit would make it possible for me to get some additional stuff.

Canon M50 (D8) - might be a solution ?
Like some have mentioned in this thread, M50 might be the right one. Just look a ZEEKs videos, were he's squeezing every last drop of blood out of the ML build for the EOS-M's, looks great and fun, what a pleasure to watch. The Next camera line missing a ML is the M50, with the "crippled" 4K video mode and many other stupidities. Reminds me about .. never buy a Camera what implements a "new feature" for the very first time, because it's going to suck. Never the less, the M50 it looks really interessing. Wikipedia also states differences between the M50 and M50 MKII :  "internal and external components are the same", which could make a future ML for M50 MKII a easy job. Also last but not least kitor did a speedrun on the M50, getting menu's up and running.
... some text here ..

Bruno Italiano

  • New to the forum
  • *
  • Posts: 35
Re: Buying camera for ML development, advice needed
« Reply #8 on: May 29, 2022, 06:03:11 PM »
An easy job is said easily. Philip Bloom said the Canon 5D Mark III is a full frame beauty. I think it doesn't get better.

names_are_hard

  • Developer
  • Hero Member
  • *****
  • Posts: 817
  • Dev: 200D, 750D, 850D, 7D2
Re: Buying camera for ML development, advice needed
« Reply #9 on: May 29, 2022, 06:45:39 PM »
I like the M50 a lot as a target cam.  One significant point I forgot to mention previously: the uart is harder to access:
https://www.magiclantern.fm/forum/index.php?topic=7531.msg235437#msg235437

Most D678X "non powershot" cams have easily accessible port, under one of the rubber grips.  Although the socket may not be soldered.  We know the typical parts needed to solder it if you want.

Skinny

  • Senior
  • ****
  • Posts: 278
Re: Buying camera for ML development, advice needed
« Reply #10 on: May 29, 2022, 07:06:51 PM »
M50 is very popular camera now, it is a good choice :)

Danne

  • Developer
  • Hero Member
  • *****
  • Posts: 7739
Re: Buying camera for ML development, advice needed
« Reply #11 on: May 29, 2022, 11:52:02 PM »
+1 for the M50.

kitor

  • Developer
  • Senior
  • *****
  • Posts: 460
Re: Buying camera for ML development, advice needed
« Reply #12 on: May 30, 2022, 10:41:54 AM »
We can run code on these but not as much work has been done, no active devs happen to have D6.

Turns out it is enough not to commit for 5 days to become inactive dev 8) My 750D is sad.

Yes, definitely something Digic 78X. I consider D6 lost generation due to hardware differences - but from effort PoV IMO it makes more sense to do 78X and backport things to D6 where applicable.

M50 yes, but again - UART hard to access, and since we don't have a proper emulation - it is in "very nice to have" category.

800 eur is definitely RP, and maybe even R territory. I think R is (obviously) the best understood so far in D8 generation, and almost everything up to now was easy backported to other D8 models + a lot to D7 and DX.

M50 from hardware PoV is very similar to R. While we don't understand the new EDMAC controller, channel configuration is almost 1:1. There's "just" half of the RAM available.

I also think that due to lack of IBIS but yet a very good sensor, R will drop in price quick and become a very popular 2nd hand model.
And being honest - IMO all three categories doesn't mean anything - the first body to get the features will become the popular one - just because we don't have anything for D6+ right now.

Thus the discussion point is if it makes sense to spend time trying to reverse engineer more similar models at the same time, or keep the effort more focused to have something concrete that is then relatively easy to port elsewhere. Of course that is up to you :)

Side note: it will be great to have someone on board with prior knowledge on EDMAC and so on. From people who contribute to D6+ world, we have no idea on how exactly it worked previously which makes it twice harder to reverse engineer for the "new world" models.
Too many Canon cameras.
If you have a dead R/RP mainboard (e.g. after camera repair) and want to donate for experiments, I'll cover shipping costs.

theBilalFakhouri

  • Developer
  • Hero Member
  • *****
  • Posts: 1346
  • UHS-I
Re: Buying camera for ML development, advice needed
« Reply #13 on: May 30, 2022, 01:27:29 PM »
I will vote for mirrorless:

APS-C:           M50 or *M6 Mark ii (second hand) or wait for R10 :)
Full-Frame:     EOS RP/R (second hand) as Kitor suggested

*M6 Mark II has 32.5 MP sensor, 14 FPS, uncropped 4K (soft 4K but better than 1080p), 120 FPS in 1080p, UHS-II SD card interface, I think R10 would be better choice overall for image/video quality (please read its specs) than M6 Mark II, but keep in mind R10 has DIGIC X, you might want to ask Kitor about DIGIC X and if it harder to work on it than DIGIC 8.

kitor

  • Developer
  • Senior
  • *****
  • Posts: 460
Re: Buying camera for ML development, advice needed
« Reply #14 on: May 30, 2022, 01:50:22 PM »
Digic X models have no Resource Manager (it got replaced with a brand new solution - RscMgr2) and somehow maps memory into 32 bit address space + offloads a lot of memory transfer using some new interfaces (IBus)

It is too early to tell anything about those, except that effort will be significantly higher than for D78.
We may also hit some more important roadblocks, but I can't/won't tell more unless someone have R7/R10 in hand.
Too many Canon cameras.
If you have a dead R/RP mainboard (e.g. after camera repair) and want to donate for experiments, I'll cover shipping costs.

names_are_hard

  • Developer
  • Hero Member
  • *****
  • Posts: 817
  • Dev: 200D, 750D, 850D, 7D2
Re: Buying camera for ML development, advice needed
« Reply #15 on: May 30, 2022, 04:42:17 PM »
Turns out it is enough not to commit for 5 days to become inactive dev 8) My 750D is sad.

I'd forgotten you had that one :P  In my defence, last commit to platform dir for that one was Dec, and you have too many cams :P  I keep meaning to pick up a 760D but haven't found a good 2nd hand one.

flostro

  • New to the forum
  • *
  • Posts: 38
  • EOS 5D Mark III / EOS 3 / A1
Re: Buying camera for ML development, advice needed
« Reply #16 on: May 31, 2022, 01:05:48 PM »
I was hoping for 5DIV and 1DX  :)
 But this will never happen.

2blackbar

  • Hero Member
  • *****
  • Posts: 517
Re: Buying camera for ML development, advice needed
« Reply #17 on: June 01, 2022, 10:43:18 AM »
M50 or R