Broadcast on initialization

HTML

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script>
<div ng-controller="FirstController">
  <input type="text" ng-model="myInput"/>
  <button ng-click="broadcast()">
  BROADCAST
  </button>
</div>

<p ng-controller="SecondController">
  Data: {{data}}
</p>

JavaScript

var myApp = angular.module('myApp',[]);

myApp.controller('FirstController', function ($scope, $rootScope) {
	$scope.myInput = 'Initial data';
  
  $scope.broadcast = function() {
  	console.log ('broadcasting: ' + $scope.myInput);
    $rootScope.$broadcast('myEvent', $scope.myInput);
  };
   $rootScope.$on("secondready",function(){
    $scope.broadcast();
   });	
 
});

myApp.controller('SecondController', function ($scope, $rootScope) {
 $scope.$on('myEvent', function (event, args) {
 				console.log ('myEvent catched - Data: ' + args);
        $scope.data = args;
    });
 $scope.$emit("secondready");   
});