ndutton / minimosd-extra

Automatically exported from code.google.com/p/minimosd-extra
0 stars 0 forks source link

OSD Flickering with hi-res cameras? (Same issue with issue 55) #115

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. i can find flickering with 700 TVL ccd camera with PAL
2.
3.

What is the expected output? What do you see instead?
no Flickering for Text.

What version of the product are you using? On what operating system?
i just test with R726, R800

Please provide any additional information below.

This camera with PAL version... i did not test it with NTSC..
http://www.ebay.com/itm/171121162959?ssPageName=STRK:MESINDXX:IT&_trksid=p3984.m
1436.l2649

Original issue reported on code.google.com by mprint....@gmail.com on 16 Jan 2015 at 5:31

GoogleCodeExporter commented 9 years ago
plz check it more high priority.. i can reproduce it with 700 TVL also..

Original comment by ahnho...@gmail.com on 16 Jan 2015 at 5:36

GoogleCodeExporter commented 9 years ago
I have flickering issue too with my SJ4000 Action Camera. What causes that ? 
Any suggestions?

Original comment by osiarbay...@gmail.com on 5 Feb 2015 at 3:58

GoogleCodeExporter commented 9 years ago
Initially I experienced similar troubles (Data flickered or wasn't visible at 
all).
Making the following changes to the MinimOSD_Extra_Plane files solved it for me.

In the Setup() section, found in the MinimOSD_Extra_Plane_Pre_release_Beta.ino 
file, my code now reads as follows:
void setup() 
{
. 
.
. (no changes to the original code above this line)
    // Prepare OSD for displaying 
    //unplugSlaves(); //jmh committed out
    osd.init();
    osd.control(2); //jmh added - Force OSD to run on internal Sync & ignore Extrenal Video
    // Start 
    startPanels(); //Show StartUp Banner
    delay(2500); //jmh added - Let Display stablize 
    osd.control(1); //jmh added - Now switch to AutoSync

    // OSD debug for development (Shown at start)
. (no changes to the original code after this line)
.
. 
}
And then to the OSD method "control()" found in the ArduCam_Max7456.cpp file.
It's been rewritten to support all three sync options:

void OSD::control(uint8_t ctrl) //jmh version
{
  digitalWrite(MAX7456_SELECT,LOW);
  Spi.transfer(MAX7456_VM0_reg);
  switch(ctrl){
    case 0:
      Spi.transfer(MAX7456_DISABLE_display | video_mode);
      break;
    case 1:
      Spi.transfer((MAX7456_ENABLE_display_vert | video_mode) | MAX7456_SYNC_autosync);
      Serial.println("Auto Sync Set");
      break; 
    case 2:
      Spi.transfer((MAX7456_ENABLE_display_vert | video_mode) | MAX7456_SYNC_internal);
      Serial.println("Internal Sync Set");
      break;
    case 3:
      Spi.transfer((MAX7456_ENABLE_display_vert | video_mode) | MAX7456_SYNC_external);
      Serial.println("External Sync Set");
      break;  

  }
  digitalWrite(MAX7456_SELECT,HIGH);
}

//--------------------------------------

Maybe these changes will work for others too.
And finally, to be clear, the setup here is a MinimOSD clone and a Sony 
600ltv/NVP2040 board camera

Tnx Jim

Original comment by Jmh060...@gmail.com on 18 Mar 2015 at 9:28