diff --git a/fireapp.c b/fireapp.c
new file mode 100644
index 0000000000000000000000000000000000000000..f38927210bd458bf10f996e54ca29e9546074412
--- /dev/null
+++ b/fireapp.c
@@ -0,0 +1,51 @@
+#include <stdio.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <stdlib.h>
+
+#include <sys/stat.h>
+#include <sys/ioctl.h>
+#include <sys/types.h>
+#include <sys/ioctl.h>
+#include <sys/sysmacros.h>
+
+
+#define FIRE_MAJOR_NUMBER	503
+#define FIRE_MINOR_NUMBER 	101
+#define FIRE_DEV_PATH_NAME 	"/dev/fire_ioctl"
+
+#define IOCTL_MAGIC_NUMBER		'f'
+#define IOCTL_CMD_FIRE_ON					_IO(IOCTL_MAGIC_NUMBER, 0)
+#define IOCTL_CMD_FIRE_OFF					_IO(IOCTL_MAGIC_NUMBER, 1)
+
+int main(void) {
+	dev_t fire_dev;
+	int fd;
+	fire_dev = makedev(FIRE_MAJOR_NUMBER, FIRE_MINOR_NUMBER);
+	mknod(FIRE_DEV_PATH_NAME, S_IFCHR | 0666, fire_dev);
+
+
+	fd = open(FIRE_DEV_PATH_NAME, O_RDWR);
+
+	if (fd < 0) {
+		printf("fail to open FIRE\n");
+		return -1;
+	}
+
+	int i = 0;
+
+	while (i < 100) {
+		if (ioctl(fd, IOCTL_CMD_FIRE_ON, 0) == 0) {
+			printf("fire\n");
+			sleep(1);
+			i++;
+		}
+		else
+			printf("no fire\n");
+		sleep(1);
+		i++;
+	}
+
+	close(fd);
+	return 0;
+}