-
- child_stdin = fdopen(stdin_pair[1], "w");
- close(stdin_pair[0]); // child stdin read
- close(stdout_pair[1]); // child stdout write
-
- if( giDoor_ChildStatus || read(stdout_pair[0], buf, 512) < 0) {
- #if DEBUG
- printf("Door_DoDispense: fread fail\n");
- #endif
- return -1;
- }
-
- // Send password
- if( giDoor_ChildStatus || fputs(gsDoor_Password, child_stdin) <= 0 ) {
- #if DEBUG
- printf("Door_DoDispense: fputs password\n");
- #endif
- return -1;
- }
- fputs("\n", child_stdin);
-
-
- #if DEBUG
- printf("Door_DoDispense: Door unlock\n");
- #endif
-
- // ATH1 - Unlock door
- if( giDoor_ChildStatus || fputs("ATH1\n", child_stdin) <= 0) {
- #if DEBUG
- printf("Door_DoDispense: fputs unlock\n");
- #endif
+
+ writes(door_serial_handle, "\r\r");
+ sleep(1);
+
+ if( writes(door_serial_handle, "ATH1\r") ) {
+ fprintf(stderr, "Unable to open door (sending ATH1)\n");
+ perror("Sending ATH1");