TFT SIO communication (

Started by a1ex, November 26, 2017, 03:51:30 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


Hi, I tried to compile and test the module for 50D from dfort commit, but it doesn't work.

Brute force will end immediatly without any consistent output and when I try to change registers value by hand the camera will freeze


Quote from: aprofiti on November 29, 2017, 10:18:31 PM
Hi, I tried to compile and test the module for 50D from dfort commit, but it doesn't work.

a1ex just double checked my work and the one camera I got wrong was the 50D. I just updated it. Check out the new pull request. I'll also update the module on my downloads page.

Quote from: Walter Schulz on November 29, 2017, 09:47:18 PM
Having some fun with 7D. Dfort, have you tried register 0x10 with incrementing/decrementing values?

Trippy, isn't it? I'm uploading a video that shows an EOSM and 7D putting on an LCD light show.


Here we go--EOSM on the left, 7D on the right (duh!) No need to start them at the same time because the 7D runs through the code faster. Interesting how some registers do the same thing on both cameras while others are very different. All the fun stuff happens at the beginning. I cut it off because it gets less and less interesting with the higher registers. Nothing scientific but maybe it is a good reference to find the color adjustment registers.


Here is a brief summary of which registers do something on 50D

0x03 (V) Half resolution with odd values
0x04 (H) from value 0xa0 we get green screen on half of the values

0x06 Value format: 0xYZ
Y in 9, b, d, f
Z in 2 (flip vertical), 4 (flip horizontal), 6 (flip both vertical and horizontal)

ex. value 0x92, 0xb4, 0xd6, 0xf2 etc...

Color calibration:
0x0b (Thermal Camera Effect)
0x12 (Color Saturation)

Screen adjustment:
0x10 (I think is Contrast)
0x11 (Brightness)

Affect LiveView:
0x00 (Screen Gain??)


Note: I have missed how to invert screen color, not sure if it is present

Hope it helps!


Quote from: a1ex on November 29, 2017, 07:26:56 PM
Gamma correction: might be useful to make the screen more readable in sunlight.

Color calibration: was requested before. There are LOTS of registers for color adjustments.

Position fine-tuning: when you look at the screen from an angle, might be helpful (most models have it - IMAGE_POSITION; done with a different method; no idea if the feature is actually working on all of them).

Inverted display colors: was requested, already done on DIGIC 4 models, but the image also gets recorded that way (IMAGE_EFFECTS on the feature matrix). This investigation would allow inverting the display colors without affecting the recorded image.

Well, explained in this way and then demonstrated in Dfort's clips makes it quite clear and it makes sense.  Thank you, guys!

I have a big request to all developers.  Since 99% of the users, including me, have no idea about coding and technical aspects of Magic Lantern, the terminology is highly specialized and hard to understand, it is sometimes quite difficult for us to figure out what is going on.  That is why, when you start a new topic or a discussion on something that you have been working on or plan to work on, please provide a short explanation on what the topic/effort/discussion/suggestion, etc. is all about, what do you expect to achieve and why is this useful from the practical and/or application oriented point of view.  Please use simple words and write in English (not in Chinese) if possible!  In this way, several positive things will be achieved, for example:

1) It will be much easier for many users to understand and follow the developments in every aspect of Magic Lantern and use it in a better and more efficient way;

2) Once you understand something, it is much easier to perform tests and see what works and what doesn't.  It is also much easier to provide feedback, accordingly;

3) Once you understand something, it makes it much easier to come up with useful suggestions for improvements.  This will motivate more users to actively participate in the discussions.  And the opposite is also true - if you don't understand anything, you better remain silent and leave everything to the developers. 

Thank you in advance.

Walter Schulz

Sorry, but this thread originated from a question a user had about display orientation options and his thread is linked in first post of this thread from the very beginning.
You haven't bothered to open this link before you wrote your first post here, I suppose ...

Most of the time a1ex opens a discussion there are links leading to documents, other discussions, some hint about what is going on.


Minor update: register brute-forcing can now be done against a static image in PLAY mode (useful to run some color calibration tests).