Porting ML to XSi (450D)

Started by rwl408, September 06, 2013, 06:07:43 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Ant123

Tried to use fast SD Card - Sandisk Extreme Pro 95MB/s (UHS-I U3 V30). CHDK benchmark on Digic6 camera writes at 70+ MB/s.

On 450D ML benchmark in playback mode writes at 19-20 MB/s. The theoretical limit is 48MHz / 2 = 24MB/s.
Can't display benchmark results in LiveView mode because canon code refreshes the bitmap buffer continiously and ML texts are flickering or disappear. How to fix it?

Now MotionJPEG recording is more stable at ~29.7FPS (dual write buffering - 2x8MB).
But frame drops still occur when the frame size exceeds 400kB for a long time.
In some very spetial situations frame size can exceed 700kB. For example: https://i.stack.imgur.com/YbUvO.gif

The experimental build is there

heder

Quote from: Ant123 on July 21, 2020, 10:39:09 PM
Tried to use fast SD Card - Sandisk Extreme Pro 95MB/s (UHS-I U3 V30). CHDK benchmark on Digic6 camera writes at 70+ MB/s.

On 450D ML benchmark in playback mode writes at 19-20 MB/s. The theoretical limit is 48MHz / 2 = 24MB/s.
Can't display benchmark results in LiveView mode because canon code refreshes the bitmap buffer continiously and ML texts are flickering or disappear. How to fix it?

Hi Ant123

I never any flickering on 40D, not even on the early version, but if you have flickering the buffering system is'nt working correctly, might be due to incorrect WINSYS_BMP_DIRTY_BIT_NEG address. If that one is incorrect the BMP_LOCKS in dialog_test.c will not work, and that might result in flickering. Without locking canon is free to redraw.


Quote from: Ant123 on July 21, 2020, 10:39:09 PM
Now MotionJPEG recording is more stable at ~29.7FPS (dual write buffering - 2x8MB).
But frame drops still occur when the frame size exceeds 400kB for a long time.
In some very spetial situations frame size can exceed 700kB. For example: https://i.stack.imgur.com/YbUvO.gif

That is really interessing, too bad I don't have time atm to implement your module on 40D, maybe after summer holiday.
... some text here ..

Ant123

Quote from: heder on July 22, 2020, 01:34:35 PMThat is really interessing, too bad I don't have time atm to implement your module on 40D, maybe after summer holiday.

You need only modify lines 559, 560, 715 and 755.

MrGoodween

Good day. tell me on the latest version of the magic lantern is the focus peaking function implemented? moved from film and got used to manual fixes. and this function would help me. only she is needed.

Ant123

Quote from: MrGoodween on July 22, 2020, 08:29:33 PM
on the latest version of the magic lantern is the focus peaking function implemented?
Not implemented on 450D.

Hellmark

Out of curiosity, does this port include the patch manager stuff? I'm wanting to use ML to help with trying to circumvent the SD Card write lock issue on mine (it shows as being set to lock no matter what, and not had any luck getting it to show otherwise so far), and I saw a1ex had a method for circumventing the check with ROM patching that required the patch manager.

Damiano

Hello,
I'm trying  to find the STATE objects of the 450D. In particular i'm trying to find the address of SCSState and SSSState.
I'm using this procedure on qemu as a1ex said : https://www.magiclantern.fm/forum/index.php?topic=17969.msg196010#msg196010
but the first part of the code doesn't return nothing.

./run_canon_fw.sh 450D,firmware="boot=0" -d calls |& grep --text EvfState

Any idea why the code doesnt't work and how can find SCSState and SSSSate for this camera?
Thank you,
Damiano

Damiano

I was able to redo the procedure of a1ex using FWState instead of EvfState but the SCSState and SSSState are not present in the  final result. Does anyone know what's the name of SCSState and SSSState for this camera?
Thanks.
Damiano

dopler

Hi all.
I am new to this forum and I appreciate the enormous work that you are all doing.
I am trying to install ML on a 450D.
When trying to download the BITBUCKER links give an error.

Could someone post a link with the latest version that works?
Thank you very much

heder

Quote from: dopler on September 11, 2020, 11:39:01 AM
Hi all.
I am new to this forum and I appreciate the enormous work that you are all doing.
I am trying to install ML on a 450D.
When trying to download the BITBUCKER links give an error.

Could someone post a link with the latest version that works?
Thank you very much

web.archive to the rescue .. for now use ..

Firmware
https://web.archive.org/web/20200621212226/https://bbuseruploads.s3.amazonaws.com/39131396-31da-4c59-98ed-3df70d37782d/downloads/9e0f7550-647f-4982-82be-b7eeec449aad/magiclantern-Nightly.2019Feb16.450D110.zip?Signature=DuZqzUI%2FRhpGC%2BEAtPTZXVAyXZE%3D&Expires=1592776346&AWSAccessKeyId=AKIA6KOSE3BNJRRFUUX6&versionId=4rR_PYbb_295GyYgICNVFnf4WK4NLQjV&response-content-disposition=attachment%3B%20filename%3D%22magiclantern-Nightly.2019Feb16.450D110.zip%22

Bootflag flipper
https://web.archive.org/web/20200621212220/https://bbuseruploads.s3.amazonaws.com/39131396-31da-4c59-98ed-3df70d37782d/downloads/99b44d90-6666-4ac9-b358-5859e60ff378/ML450D110.fir?Signature=yy3eSRCThCOgnTyGPhMUGuEJPAk%3D&Expires=1592776340&AWSAccessKeyId=AKIA6KOSE3BNJRRFUUX6&versionId=24Txxkdk2Q7xoqtn.VqfpPIU2H7SUhbP&response-content-disposition=attachment%3B%20filename%3D%22ML450D110.fir%22

... some text here ..

stephanW91

Im new to this and my 450d has the 1.0.4 firmware version, does anyone have a WORKING link for 1.1.0? most of the links i found dont work or arent trustworthy
And what exactly are the features for the ML for the 450D, I dont know everything about this


stephanW91

Quote
Firmware
https://web.archive.org/web/20200621212226/https://bbuseruploads.s3.amazonaws.com/39131396-31da-4c59-98ed-3df70d37782d/downloads/9e0f7550-647f-4982-82be-b7eeec449aad/magiclantern-Nightly.2019Feb16.450D110.zip?Signature=DuZqzUI%2FRhpGC%2BEAtPTZXVAyXZE%3D&Expires=1592776346&AWSAccessKeyId=AKIA6KOSE3BNJRRFUUX6&versionId=4rR_PYbb_295GyYgICNVFnf4WK4NLQjV&response-content-disposition=attachment%3B%20filename%3D%22magiclantern-Nightly.2019Feb16.450D110.zip%22

Bootflag flipper
https://web.archive.org/web/20200621212220/https://bbuseruploads.s3.amazonaws.com/39131396-31da-4c59-98ed-3df70d37782d/downloads/99b44d90-6666-4ac9-b358-5859e60ff378/ML450D110.fir?Signature=yy3eSRCThCOgnTyGPhMUGuEJPAk%3D&Expires=1592776340&AWSAccessKeyId=AKIA6KOSE3BNJRRFUUX6&versionId=24Txxkdk2Q7xoqtn.VqfpPIU2H7SUhbP&response-content-disposition=attachment%3B%20filename%3D%22ML450D110.fir%22

Which of these do i need to download? because i got 3 .FIR files, ML450D110, ML-setup and e5kr4110.
The last one is the firmware update for 1.1.0 and not one of the others works to get ML on my 450D, I constantly get the error 'update file error please check the memory and reload the battery and try again'

kitor

First update to 1.1.0, then use Magic Lantern files.
Too many Canon cameras.
If you have a dead R or RP mainboard (e.g. after camera repair) and want to donate for experiments, I'll cover shipping costs.

Ant123

I uploded the source code and the latest build to bitbucket.
But the modules can't be built because of missing the ".hg" folder. How to fix that?
Motion Jpeg movie recording is still experimental. It is limited to the SD controller speed.  Maybe there need to increase somehow the compression of JPEG frames.

names_are_hard

Looks interesting, but it's hard to understand because there is not much context.  This is a fork of some other repo?  Which one?  The commit history has lost everything from wherever it came from.  It's not forked from mine because platform dir doesn't have any Digic 6, 7, or 8 cams.  It would probably make more sense to have these changes on a branch of an existing repo, so that history was more meaningful.

You have a .gitignore file at top level, but official ML is hg managed - that's why you're getting these errors.  You've probably taken this source from some git managed repo?  The build process expects to use hg tools at a few places.  Personally I think making the build process dependent on the source control system is not a good idea, I removed this in my repo so you might be able to adapt those changes:
https://github.com/reticulatedpines/magiclantern_simplified/commit/4a29a347f29276d4bec0876412cec4bb12b5a28c
https://github.com/reticulatedpines/magiclantern_simplified/commit/3163d41cee35fb54b4308e1f32318ff87de53645

Those changes might not cover everything you need, it was over a year ago and I wasn't very familiar with ML code yet, changes are more likely to be messy.  Check commits around the same time.

Ant123

This source code came from the official ML bitbucket repo last year before they removed all mercurial repos.
It contains my 450D related changes. Some code was taken from heder's 40D project.
But there was no changes since summer 2020. I was trying to convert mercurial to git locally but without success. Maybe I am wrong  but it's strange that bitbucket do not provide mercurial to git conversion like github doing it (AFAIK).

names_are_hard

Okay, in that case definitely look at the commits I linked.  ML does shell commands in various places that explicitly call hg CLI commands.  It is not possible to automatically convert it, the problem isn't the repo using git or hg, the problem is ML build system tries to use hg tools, and expects hg related directories to exist.  You must modify the build system if you want to manage ML code using git.

The commits I link to make those changes. 

dl1ekm

Hi, just put the 2021-Version on my 450D -fine.
I have already my other 600Da (astro) with ML so want to use this as many others as 2nd device in the night (after get rid of th LPT2-Filter).
Well - I mainly use the Intervalometer to avoid the need of an external control.
So what I really miss is the control/entension of the shutter time in bulk mode (to get 60sec or more).

Is there any chance to get this (simple?) feature into the firmware?

KR
Marcel

names_are_hard

Hi,

First, it's not likely as simple as you expect, second, the number of developers is very small.  The number of devs who own a 450D is probably 1: Ant123.  Either they notice this and decide they want to spend several days (at least) trying to get intervalometer working, or you'll need to learn how to do it yourself.

dl1ekm

No problem - if this is really the case - makes no sence :-) I'll stay with external control. Was just an idea. But anyway - thank you for the work so far!

alin.cocos

Quote from: dl1ekm on November 07, 2022, 08:16:46 AM
Hi, just put the 2021-Version on my 450D -fine.

KR
Marcel

Hi,

You mentioned that you have the 2021 version for your 450D. From the first download link I get "magiclantern-Nightly.2019Feb16.450D110" and this bootflag flipper "ML450D110.fir"

Can you please provide a link for this 2021 version and some instructions on how to do it? I mean how do I use or when do I use Bootflag flipper? I will search the forum, but if you can  links it will be much appreciated.

Thank you.

BR,
Alin


alin.cocos

Quote from: Walter Schulz on February 18, 2023, 11:20:23 PM
https://bitbucket.org/Ant123/magic-lantern-450d/downloads/

Thank you so much for quick reply.

I have copied the files to the root of the card. When I go in menu for firmware upgrade WB button led start to blink or remain solid blue and the screen remains black.

Canon FW is 1.1.0.

Should I try to run firmware update only with the "Bootflag flipper" on the card? Or try to prepare a bootable card with EOSCard utility?

Thank you in advance.

alin.cocos

Please disregard my previous post. My brain malfunctioned :)

I create a bootable SD card with EOSCard utility.

After pressing Recycle button, there it was. ML in all it's glory.

Much appreciated all the help.

BR,

Alin