int main()
{

	Xuint32 numberOfSenders = 12;

	/* First, initialise the NoC */
	NoC_Init();

	node_id = NoC_Read_Byte_Blocking();

	//read EOP after getting the ID
	NoC_Send_ACK();

	/* Print confirmation and ID to the UART */
	xil_printf("\r\n *** Node %d is up and running ***\r\n \r\n", node_id);

	/*******************************************************/
	/***  Now we're setup lets do something on the core  ***/
	/*******************************************************/

	/* Read and print the RTC */
	xil_printf("RTC_value: %d\r\n", Read_RTC());

	/* Variable declarations */
	Xuint32 data[2];
	data[0] = node_id;
	data[1] = 0;

	Xuint32 pktNumber = 0;

	/**********************************/
	/*****  Main processing loop  *****/
	/**********************************/

	//Wait for a message from the host to say that it is done initialising
	NoC_Read_Byte_Blocking();

	// All nodes send to host
	if (node_id < numberOfSenders) {
		NoC_Write_Sys_Packet((Xuint8 *)(&data), 8);

		while(1) {

			/* Wait for a reply */
			data[1] = NoC_Read_Int_Blocking();

			xil_printf("%d, %d \r\n", Read_RTC(), pktNumber);
			pktNumber++;

			/* Return the same data */
			NoC_Write_Sys_Packet((Xuint8 *)(&data[0]), 8);

		}
	}
	while(1);
}