Backend for custom back lcd visual feedback

Started by Marsu42, February 09, 2014, 06:34:38 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Marsu42

Adding to my all-time favorite requests (submenus (nearly done) and array variables in modules) here's a new one:

For the auto_iso module and other features, I'd like to give non-audio feedback. The latter is limited to max. 2 beeps with varying frequencies and the audio on 6d is also very quit so it's often no good.

What I have in mind is about what Canon does on the newer Cameras with the subitems in the Q menu -  some large-print text and probably scale on the LCD w/o entering the ML or Canon menu.

One example would be to print the selected min. shutter/aperture from the auto_iso module, but I'm sure there are tons of other applications for visual back lcd feedback ... unfortunately, we cannot control the vf or top lcd, so that's the only option left.

a1ex

I'm not sure I understood it correctly:

- Large fonts with duplicate pixels are very easy (but they will look blocky). Without duplicate pixels, they would eat too much RAM for my taste.
- Scale on the LCD... what's this?

Sounds somewhat related to the NotifyBox facelift proposed by g3gg0 here: http://www.magiclantern.fm/forum/index.php?topic=9625.msg99329#msg99329

LCD backlight might also be interesting.

Marsu42

Quote from: a1ex on February 09, 2014, 07:24:10 PM
- Large fonts with duplicate pixels are very easy (but they will look blocky). Without duplicate pixels, they would eat too much RAM for my taste.

I have no clue about the coding side (yet), but the sense of this is that you can see whatever is displayed on the back lcd from a bit away, say if you hold the camera at hip position and look down standing ... the standard ML font is way too small for that.

Quote from: a1ex on February 09, 2014, 07:24:10 PM
- Scale on the LCD... what's this?

Ah, you ol' 5d3 owners don't know that :-p ... it's new on 6d/70d for setting iso via Q menu, it's not the iso select boxes of old, but a linear scale you can move left and right ... same functionality, other visuals than plain text.

Quote from: a1ex on February 09, 2014, 07:24:10 PM
Sounds somewhat related to the NotifyBox facelift proposed by g3gg0 here

Yes, indeed, though what I want is NotifyBoxLCD(...) that turns on the back lcd, draws some large text/visual feedback and turns off the lcd again after a while so we can have ml feedback in photo mode w/o using the inaccessible vf or top lcd.

dmilligan

Quote from: Marsu42 on February 11, 2014, 07:34:05 AM
Yes, indeed, though what I want is NotifyBoxLCD(...) that turns on the back lcd, draws some large text/visual feedback and turns off the lcd again after a while so we can have ml feedback in photo mode w/o using the inaccessible vf or top lcd.


#define NotifyBoxLCD(time, ...) \
display_on(); \
NotifyBox(time, __VA_ARGS__); \
msleep(time); \
display_off()

nanomad

 you should save and restore the lcd state instead. No need to turn LCD off if it was on in the first place
EOS 1100D | EOS 650 (No, I didn't forget the D) | Ye Olde Canon EF Lenses ('87): 50 f/1.8 - 28 f/2.8 - 70-210 f/4 | EF-S 18-55 f/3.5-5.6 | Metz 36 AF-5

dmilligan

right I know, I was just trying to make a point

"that turns on the back lcd" => display_on()
"draws some large text/visual feedback" => NotifyBox()
"again after a while" => msleep()
"turns off the lcd" => display_off()

Marsu42

Quote from: nanomad on February 11, 2014, 07:32:34 PM
you should save and restore the lcd state instead. No need to turn LCD off if it was on in the first place

For those simple devs who don't know, could you please amend dmilligan's macro with the save & restore lcd state or - if too complex - turn it into a function? I'll try it then, though if it prints in the small ml font I guess it'll be too small to see from a bit of a distance.

Marsu42

Quote from: dmilligan on February 11, 2014, 08:03:20 PM
right I know, I was just trying to make a point
"that turns on the back lcd" => display_on()
"draws some large text/visual feedback" => NotifyBox()
"again after a while" => msleep()
"turns off the lcd" => display_off()

* This doesn't work - it only pops up the message for a blink of an eye, no matter how many time the NotifyBox() has and how many many msleep() I put anywhere :-( ... does anyone know what the problem is?

* As predicted, the ML font is too small to give an adequate feedback - is there some function available that prints in the default Canon font or larger?

Thanks!


a1ex