Controlling when a script is enabled with another Script

Trying to control how often my light flickers with another script. I can succesfully control my LightFlicker script in the update function of my FlickerRate script. However I can’t seem to get it to work with a StartCourotine/IEnumerator function. Please help me shed some light on this.
Here’s my LightFlicker Script which works as intended.`using UnityEngine;
using System.Collections;

public class LightFlicker : MonoBehaviour {

// Use this for initialization
void Start () {


}

// Update is called once per frame
public void Update () 
{ 

	{
		if (Random.value > 0.7) //a random chance
		{
						
			if (light.enabled == false) //if the light is on...
			{
			light.enabled = true; //turn it off
			} 
			else 
			{
			light.enabled = false; //turn it on
			}

		}

	}

}

}

And here is my FlickerRate Script which is not currently doing anything.

using UnityEngine;
using System.Collections;

public class FlickerRate : MonoBehaviour {
	public LightFlicker LightFlickerScript;


	// Use this for initialization
	void start () {
		StartCoroutine (flicker ());
		GetComponent<LightFlicker>();

	}


	
	// Update is called once per frame
	void Update () {


	}

	IEnumerator flicker()
	{
		LightFlickerScript.enabled = true;
		yield return new WaitForSeconds (2.0f);
		LightFlickerScript.enabled = false;
		yield return new WaitForSeconds (2.0f);
	}

}

`

Figured it out, This is what i ended up doing.

using UnityEngine;
using System.Collections;

public class FlickerRate : MonoBehaviour {
	public LightFlicker LightFlickerScript;


	// Use this for initialization
	void start () {

		GetComponent<LightFlicker>();//LightFlicker Script
		GetComponent<AudioSource>();
}


	
	// Update is called once per frame
	void FixedUpdate () {
		if(LightFlickerScript.enabled == true)//Light will be on at end of start Coroutine
		{
			StartCoroutine(flickeroff());
		}


	}

	IEnumerator flickeroff()
	{
		yield return new WaitForSeconds (3.0f);//Light Flickers for X seconds then stops
		LightFlickerScript.enabled = false;//Light stops flickering
		audio.enabled = false;//Audio turns off
		light.enabled = false;//Light is off after flickering
	

		yield return  new WaitForSeconds (5.0f);//Light begins flickering again after X seconds
		audio.enabled = true;//audio turns on
		yield return new WaitForSeconds (0.5f);//Let's audio play for X seconds before light flickers
		LightFlickerScript.enabled = true;//Light turns on


	}

}