diff --git a/firmware/adc/hello_adc.c b/firmware/adc/hello_adc.c
index 9823332e6f9135a73dad02b444822ddb35ff3ced..d14ed6d70c3f2f428591e5bd66ea9510a46d21a5 100644
--- a/firmware/adc/hello_adc.c
+++ b/firmware/adc/hello_adc.c
@@ -122,18 +122,17 @@ int main(void) {
 	USART_Rx_Enable(USART_data.usart);
 	USART_Tx_Enable(USART_data.usart);
 
-	// // setup pwm
-	// TCC0.PER = 0x0400; //set up 4096 resolution
-	// TCC0.CTRLB |= TC_WGMODE_SS_gc;//( TCC0.CTRLB & ~TC0_WGMODE_gm ) | TC_WGMODE_SS_gc; //single slope
-	// TCC0.CTRLB |= TC0_CCDEN_bm; //& ( TC0_CCAEN_bm | TC0_CCBEN_bm | TC0_CCCEN_bm | TC0_CCDEN_bm ); //enable compare channel
-	// TCC0.CTRLA |= TC_CLKSEL_DIV2_gc;  //set clock divider
-	// set_pwm(900);
-
-	// // setup AWEX
-	// AWEXC.CTRL |= AWEX_DTICCDEN_bm; // enable on D channel (PC6 and PC7) and get CC from A
-	// AWEXC.STATUS &= ~AWEX_FDF_bm; // clear fault detection flag
-	// AWEXC.OUTOVEN |= chPin | dchPin; // enable output overide on charge and discharge pins
-	// AWEXC.DTBOTH = 32; // set deadtime (measured in clock cyles)
+	// setup pwm
+	TCC0.PER = 0x0400; //set up 1024 resolution
+	TCC0.CTRLB |= TC_WGMODE_SS_gc;//( TCC0.CTRLB & ~TC0_WGMODE_gm ) | TC_WGMODE_SS_gc; //single slope
+	TCC0.CTRLA |= TC_CLKSEL_DIV256_gc; //TC_CLKSEL_DIV64_gc;  //set clock divider
+	set_pwm(900);
+
+	// setup AWEX
+	AWEXC.CTRL |= AWEX_DTICCDEN_bm | AWEX_DTICCCEN_bm;; // enable DTI override on C and D channel (PC6 and PC7)
+	AWEXC.STATUS &= ~AWEX_FDF_bm; // clear fault detection flag
+	AWEXC.OUTOVEN |= chPin | dchPin; // enable output overide on charge and discharge pins
+	AWEXC.DTBOTH = 32; // set deadtime (measured in clock cyles)
 
 	// setup ADC
 
@@ -145,7 +144,7 @@ int main(void) {
 	ADC_Reference_Config(&ADCA, ADC_REFSEL_INTVCC_gc);
 	//_delay_ms(200);
 	// ADC_Prescaler_Config(&ADCA, ADC_PRESCALER_DIV32_gc);
-	ADC_Prescaler_Config(&ADCA, ADC_PRESCALER_DIV1_gc); //speed test
+	ADC_Prescaler_Config(&ADCA, ADC_PRESCALER_DIV16_gc); //speed test
 	// ADC_Ch_InputMode_and_Gain_Config(&ADCA.CH0,
 	//                                  ADC_CH_INPUTMODE_DIFFWGAINL_gc,
 	//                                  ADC_CH_GAIN_16X_gc);
@@ -167,7 +166,7 @@ int main(void) {
 	sei();
 	
 	while (1) {
-		if (RTC.CNT - last_tx_rtc > 10){
+		if (RTC.CNT - last_tx_rtc > 2){
 			ADC_Ch_Conversion_Start(&ADCA.CH0);
 			while(!ADC_Ch_Conversion_Complete(&ADCA.CH0)){};
 			ADC_result = ADC_ResultCh_GetWord_Signed(&ADCA.CH0,offset);
diff --git a/firmware/pulseGen/pulseGen_AWEX.c b/firmware/pulseGen/pulseGen_AWEX.c
index 37f9c4c6befc5da9be38165f2ee5ae6bfe8e4316..e52186d9c574f340f21823b0d5995cf07fd71bd2 100644
--- a/firmware/pulseGen/pulseGen_AWEX.c
+++ b/firmware/pulseGen/pulseGen_AWEX.c
@@ -65,6 +65,7 @@ void writeToBuffer(char *buff, char *fmt, ...) {
 
 void set_pwm(uint16_t duty){
 	TCC0.CCDBUF = duty; //set compare value
+	TCC0.CCCBUF = duty; //set compare value
 	do {} while(TCC0.INTFLAGS && TC0_OVFIF_bm == 0 );  //wait
 	TCC0.INTFLAGS = TC0_OVFIF_bm;
 }
@@ -96,7 +97,7 @@ int main(void) {
 	cli();
 
 	//setup real time counter
-	CLK.RTCCTRL	= CLK_RTCSRC_RCOSC_gc|CLK_RTCEN_bm;
+	CLK.RTCCTRL	= CLK_RTCSRC_RCOSC_gc | CLK_RTCEN_bm;
 	RTC.CTRL |= RTC_PRESCALER_DIV1_gc;
 
 	// configure pins
@@ -107,7 +108,7 @@ int main(void) {
 	chargePort.DIRSET = chPin | dchPin; // charge and discharge
 	// chargePort.PIN6CTRL |= PORT_OPC_PULLDOWN_gc; //turn on pull-down resistors (when in input mode)
 	// chargePort.PIN7CTRL |= PORT_OPC_PULLDOWN_gc; //turn on pull-down resistors (when in input mode)
-	// chargePort.REMAP |= PORT_TC0D_bm | PORT_TC0C_bm;//0b00001100; // remap OCOC and OCOD to our charge and discharge pins
+	chargePort.REMAP = PORT_TC0D_bm | PORT_TC0C_bm;//0b00001100; // remap OCOC and OCOD to our charge and discharge pins
 
 	// setup USART
 	USART_InterruptDriver_Initialize(&USART_data, &USARTC0, USART_DREINTLVL_LO_gc);
@@ -123,12 +124,11 @@ int main(void) {
 	// setup pwm
 	TCC0.PER = 0x0400; //set up 1024 resolution
 	TCC0.CTRLB |= TC_WGMODE_SS_gc;//( TCC0.CTRLB & ~TC0_WGMODE_gm ) | TC_WGMODE_SS_gc; //single slope
-	TCC0.CTRLB |= TC0_CCDEN_bm; //& ( TC0_CCAEN_bm | TC0_CCBEN_bm | TC0_CCCEN_bm | TC0_CCDEN_bm ); //enable compare channel
 	TCC0.CTRLA |= TC_CLKSEL_DIV64_gc;  //set clock divider
 	set_pwm(900);
 
 	// setup AWEX
-	AWEXC.CTRL |= AWEX_DTICCDEN_bm; // enable on D channel (PC6 and PC7)
+	AWEXC.CTRL |= AWEX_DTICCDEN_bm | AWEX_DTICCCEN_bm;; // enable DTI override on C and D channel (PC6 and PC7)
 	AWEXC.STATUS &= ~AWEX_FDF_bm; // clear fault detection flag
 	AWEXC.OUTOVEN |= chPin | dchPin; // enable output overide on charge and discharge pins
 	AWEXC.DTBOTH = 32; // set deadtime (measured in clock cyles)
@@ -159,7 +159,13 @@ int main(void) {
 		// _delay_ms(5);
 		// chargePort.OUTCLR = dchPin;
 		// _delay_ms(1);
-		// if (RTC.CNT - last_tx_rtc > 25){
+		if (RTC.CNT - last_tx_rtc > 25){
+			last_tx_rtc = RTC.CNT;
+			writeToBuffer(&output_buffer[0],"count=%d\n", counter++);
+			send_packet(output_buffer,maxBufferSize); 
+			ledPort.OUTTGL = ledPin;
+		} 
+
 		// 	chargePort.OUTSET = chPin;
 		// 	chargePort.OUTCLR = dchPin;
 		// 	ledPort.OUTSET = ledPin;