#include <termios.h>
#include <fcntl.h>
#include <sys/ioctl.h>
main() {
	int fd, serial;
	fd = open("/dev/ttyUSB0", O_RDWR | O_NOCTTY | O_NONBLOCK );

	usleep(1000000);

	ioctl(fd, TIOCMGET, &serial);
	if (serial & TIOCM_DTR) {
		puts("TIOCM_DTR is not set");
	} else {
		puts("TIOCM_DTR is set");
	}

	usleep(50000);

	serial |= (TIOCM_DTR); // set bit, set line LOW
	//serial &= ~(TIOCM_DTR); // clear bit, set line HIGH
	ioctl(fd, TIOCMSET, &serial);

	ioctl(fd, TIOCMGET, &serial);
	if (serial & TIOCM_DTR) {
		puts("TIOCM_DTR is not set");
	} else {
		puts("TIOCM_DTR is set");
	}

	usleep(50000);

	ioctl(fd, TIOCMGET, &serial);
	if (serial & TIOCM_DTR) {
		puts("TIOCM_DTR is not set");
	} else {
		puts("TIOCM_DTR is set");
	}

	while(1) {
		// wait here
	}

	close(fd);
}

