took out the extra pauses in the Toshiba SD590EKE. Removed the timer include (not needed). Updated the information in the branched SD1091 code. Finished implementation and testing of the SD1091 code. Added a space to the formatting of the second timer UI output.
This commit is contained in:
@@ -1,29 +1,29 @@
|
||||
/* DVD IR Synchronizer for Toshiba SD590EKE V1.0
|
||||
* Developed for Art Installation "Dawn" by Sigrun Hardardottir<sigrun@stalverk.is>
|
||||
/* DVD IR Synchronizer for Toshiba SD1091EKE
|
||||
* Developed for Art Installation by Steina
|
||||
* Code written by Joe Foley <foley@ru.is>
|
||||
* on 2013-09-08
|
||||
*
|
||||
* Based upon Sychronizer code by
|
||||
* KHM 2010 / Martin Nawrath
|
||||
* Kunsthochschule fuer Medien Koeln
|
||||
* Academy of Media Arts Cologne
|
||||
*
|
||||
* Requires libraries:
|
||||
* MsTimer2 http://playground.arduino.cc/Main/MsTimer2
|
||||
* Arduino-IRremote https://github.com/shirriff/Arduino-IRremote
|
||||
*
|
||||
* More codes at http://www.lirc.org/
|
||||
* The compatible remote is SE-R0301
|
||||
* We use the codes for the SE-R0031
|
||||
* http://lirc.sourceforge.net/remotes/toshiba/SE-R0031
|
||||
* Note that this has some similar codes
|
||||
*
|
||||
* The IRremote library uses Pin 3 for the Anode (longer pin)
|
||||
* We have made a ground pin on Pin 4 for the Cathode (shorter pin)
|
||||
*
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
#include <MsTimer2.h>
|
||||
#include <IRremote.h>
|
||||
|
||||
int pinGND=4; // Longer leg on the IR LED
|
||||
|
||||
int secs;
|
||||
int playtime= 6*60+9; // set here ypur DVD title playtime in sec leave a little extra
|
||||
int playtime= 1*60; // set here ypur DVD title playtime in sec leave a little extra
|
||||
//int playtime= 10; // testing
|
||||
|
||||
IRsend irsend;
|
||||
@@ -32,8 +32,8 @@ void setup() {
|
||||
pinMode(pinGND,OUTPUT);
|
||||
Serial.begin(115200);
|
||||
|
||||
Serial.println("Toshiba DVD SD590EKE Synchronizer $Rev$");
|
||||
Serial.println("For \"Dawn\" by Sigrun Hardardottir");
|
||||
Serial.println("Toshiba DVD SD1091EKE Synchronizer $Rev$");
|
||||
Serial.println("For Steina");
|
||||
Serial.println("Code by Joe Foley <foley@ru.is>");
|
||||
Serial.println("$URL$");
|
||||
Serial.println("$Id$");
|
||||
@@ -49,9 +49,7 @@ void setup() {
|
||||
|
||||
// The DVD player starts playing automatically, so we should pause it
|
||||
send_pause();
|
||||
waitsec(1);
|
||||
send_pause();
|
||||
waitsec(2);
|
||||
waitsec(3);
|
||||
secs=playtime;
|
||||
|
||||
}
|
||||
@@ -59,8 +57,9 @@ void setup() {
|
||||
/********************************************************************/
|
||||
void loop() {
|
||||
Serial.println("Sync");
|
||||
send_play();
|
||||
|
||||
send_previous();
|
||||
// on this model, previous immediately starts playing
|
||||
|
||||
for(int t = 0; t < playtime; t++) {
|
||||
// This will not give us perfect 1 second timing
|
||||
// but it is good enough for most video applications
|
||||
@@ -79,41 +78,39 @@ void loop() {
|
||||
send_pause();
|
||||
waitsec(1);
|
||||
|
||||
send_pause();
|
||||
waitsec(2);
|
||||
|
||||
send_previous();
|
||||
waitsec(5);
|
||||
}
|
||||
|
||||
/**************************************************************/
|
||||
void waitsec(int sec) {
|
||||
Serial.print("wait");
|
||||
Serial.print("Wait ");
|
||||
Serial.print(sec);
|
||||
Serial.println("seconds");
|
||||
Serial.println(" seconds");
|
||||
delay(sec*1000);
|
||||
}
|
||||
|
||||
|
||||
/********************************************************************/
|
||||
// NEC data format: first comes the pre-data bits, then the command code
|
||||
void send_stop() {
|
||||
// First comes the pre-data bits, then the command code
|
||||
Serial.println(" stop");
|
||||
irsend.sendNEC(0xA25D28D7,32);
|
||||
}
|
||||
|
||||
/********************************************************************/
|
||||
void send_play() {
|
||||
// First comes the pre-data bits, then the command code
|
||||
Serial.println(" play");
|
||||
irsend.sendNEC(0xA25DA857,32);
|
||||
// Note that play and pause are a toggle for the same command
|
||||
Serial.println(" play");
|
||||
irsend.sendNEC(0xA25DA857, 32);
|
||||
|
||||
}
|
||||
|
||||
/********************************************************************/
|
||||
void send_pause() {
|
||||
// First comes the pre-data bits, then the command code
|
||||
Serial.println(" pause");
|
||||
irsend.sendNEC(0xA25D00FF, 32);
|
||||
void send_pause() {
|
||||
// On this model, pause and play are the same button so it toggles
|
||||
// We use the "step" command which will always pause, no matter
|
||||
// how many times we press it.
|
||||
Serial.println(" step/pause");
|
||||
irsend.sendNEC(0xA25D00FF,32);
|
||||
}
|
||||
|
||||
/********************************************************************/
|
||||
@@ -121,4 +118,4 @@ void send_previous() {
|
||||
// First comes the pre-data bits, then the command code
|
||||
Serial.println(" previous");
|
||||
irsend.sendNEC(0xA25DC43B, 32);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,23 +1,19 @@
|
||||
/* DVD IR Synchronizer for Toshiba SD590EKE V1.0
|
||||
/* DVD IR Synchronizer for Toshiba SD590EKE
|
||||
* Developed for Art Installation "Dawn" by Sigrun Hardardottir<sigrun@stalverk.is>
|
||||
* Code written by Joe Foley <foley@ru.is>
|
||||
* on 2013-09-08
|
||||
*
|
||||
* Based upon Sychronizer code by
|
||||
* KHM 2010 / Martin Nawrath
|
||||
* Kunsthochschule fuer Medien Koeln
|
||||
* Academy of Media Arts Cologne
|
||||
*
|
||||
* Requires libraries:
|
||||
* MsTimer2 http://playground.arduino.cc/Main/MsTimer2
|
||||
* Arduino-IRremote https://github.com/shirriff/Arduino-IRremote
|
||||
*
|
||||
* IR Remote codes from SE-R0313
|
||||
* http://lirc.sourceforge.net/remotes/toshiba/SE-R0313
|
||||
*
|
||||
* The IRremote library uses Pin 3 for the Anode (longer pin)
|
||||
* We have made a ground pin on Pin 4 for the Cathode (shorter pin)
|
||||
*/
|
||||
|
||||
|
||||
#include <MsTimer2.h>
|
||||
#include <IRremote.h>
|
||||
|
||||
int pinGND=4; // Longer leg on the IR LED
|
||||
@@ -49,9 +45,7 @@ void setup() {
|
||||
|
||||
// The DVD player starts playing automatically, so we should pause it
|
||||
send_pause();
|
||||
waitsec(1);
|
||||
send_pause();
|
||||
waitsec(1);
|
||||
waitsec(2);
|
||||
secs=playtime;
|
||||
|
||||
}
|
||||
@@ -60,7 +54,7 @@ void setup() {
|
||||
void loop() {
|
||||
Serial.println("Sync");
|
||||
send_previous();
|
||||
waitsec(3);
|
||||
waitsec(2);
|
||||
|
||||
send_play();
|
||||
for(int t = 0; t < playtime; t++) {
|
||||
@@ -81,16 +75,13 @@ void loop() {
|
||||
send_pause();
|
||||
waitsec(1);
|
||||
|
||||
send_pause();
|
||||
waitsec(1);
|
||||
|
||||
}
|
||||
|
||||
/**************************************************************/
|
||||
void waitsec(int sec) {
|
||||
Serial.print("wait");
|
||||
Serial.print("Wait ");
|
||||
Serial.print(sec);
|
||||
Serial.println("seconds");
|
||||
Serial.println(" seconds");
|
||||
delay(sec*1000);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
{\rtf1\mac\ansicpg10000\cocoartf949\cocoasubrtf540
|
||||
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
|
||||
{\colortbl;\red255\green255\blue255;}
|
||||
\paperw11900\paperh16840\margl1440\margr1440\vieww13280\viewh7500\viewkind0
|
||||
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
|
||||
|
||||
\f0\fs24 \cf0 to install arduino libraries unzip them into Documents/Arduino/libraries\
|
||||
}
|
||||
5
dawn/readme.txt
Normal file
5
dawn/readme.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
To install arduino libraries put them in
|
||||
Documents/Arduino/libraries
|
||||
|
||||
Directions on setting up the IR remote system are at
|
||||
http://www.righto.com/2009/08/multi-protocol-infrared-remote-library.html
|
||||
Reference in New Issue
Block a user