2x16 LCD Display backlight control?

Whats the standard method to control the LCD backlight level? I’m using the gadgeteer LCD from GHI? I only see a method call BacklightEnabled

@ anthonys - We don’t provide a way to control the level in the driver. You may be able to manually control the pin with a modified driver using SignalGenerator or PWM if available.

Never created a driver for netmf? Where do i start?

From gadgeteer driver ?

[url]http://gadgeteer.codeplex.com/SourceControl/latest#Main/Modules/GHIElectronics/Display_HD44780/Software/Display_HD44780/Display_HD44780_43/Display_HD44780_43.cs[/url]

and rewrite this part ?


        /// <summary>
        /// Sets the module's backlight to the passed in value.
        /// </summary>
        /// <param name="bOn">True for backlight enabled, false for disabled.</param>
        public void SetBacklight(bool bOn)
        {
            BackLight.Write(bOn);
        }

@ David@ Leclanche - Our source is actually at https://bitbucket.org/ghi_elect/gadgeteer now.

@ John - Time to cleanup my bookmarks then :smiley: (thanks)

Thanks Guys…that doesn’t look too hard :slight_smile:

I want to make the backlight using PWM, never modified a Gadgeteer driver. How do i change private GTI.DigitalOutput backlight; to a PWM pin?

https://bitbucket.org/ghi_elect/gadgeteer/src/eba1405f769bd03e7241b5ca8cc305d5a4ba4be1/Modules/GHIElectronics/CharacterDisplay/CharacterDisplay_43/CharacterDisplay_43.cs?at=master&fileviewer=file-view-default

private const byte DISP_ON = 0x0C;
		private const byte CLR_DISP = 1;
		private const byte CUR_HOME = 2;
		private const byte SET_CURSOR = 0x80;
		private static byte[] ROW_OFFSETS = new byte[4] { 0x00, 0x40, 0x14, 0x54 };
		private GTI.DigitalOutput lcdRS;
		private GTI.DigitalOutput lcdE;

		private GTI.DigitalOutput lcdD4;
		private GTI.DigitalOutput lcdD5;
		private GTI.DigitalOutput lcdD6;
		private GTI.DigitalOutput lcdD7;

		private GTI.DigitalOutput backlight;

		private int currentRow;

		/// <summary>Whether or not the backlight is enabled.</summary>
		public bool BacklightEnabled {
			get {
				return this.backlight.Read();
			}

			set {
				this.backlight.Write(value);
			}
		}

You want to look at something like:
GTI.PWMOutput backlightPWM = SetupPWMOutput(GT.Socket.Pin.Seven);
But that obviously requires a PWM capable pin (P socket)