For sake of debugging of this particular issue, would you please remove 7
out of the 8 channels and report the behavior?
On Mar 4, 2015 7:55 PM, "Paul Johnson" <[email protected]> wrote:

> Thanks for the help. I changed the last_declaration to the thread from the
> top of the parent class and it is working good.
>
> I used the Log.d and put it inside the catch beside the last_ = 0 . The
> log is printing a cluster of 4 of the tag every second whether or not
> anything is plugged in and the numbers continue to remain on the screen
> after disconnect. I have attached my current code. Is there another place I
> need to place the last_=0 ?
>
> class  PulseInputThread extends Thread {
>  private final PulseInput input_;
>   private final Timer timer_;
>   public float last_;
>  public PulseInputThread(PulseInput input,Timer timer) {
>  input_ = input;
>     timer_ = timer;
> }
>
>
>  private synchronized void read() throws ConnectionLostException {
>     TimerTask task = new TimerTask() {public void run() {
>      interrupt();
>   }};
>
>     timer_.schedule(task, 1000);
>     try {
>       last_ = 1/input_.getDuration();
>       task.cancel();
>     } catch (InterruptedException e) {
>       last_ = 0;
>       Log.d("BACON", "BACON");
>
>     }
>   }
>
>   public void run() {
>     try {
>       while (true) {
>         read();
>
>         try {
> Thread.sleep(1000);
> } catch (InterruptedException e) {
> // TODO Auto-generated catch block
> e.printStackTrace();
> }
>       }
>     } catch (ConnectionLostException e) {
>      e.printStackTrace();
>     }
>   }
>
> public synchronized float getLastReading() {
>     return last_;
>   }
>    }
>   class Looper extends BaseIOIOLooper {
>  PulseInputThread thread1_;
> PulseInputThread thread2_;
> PulseInputThread thread3_;
> PulseInputThread thread4_;
> PulseInputThread thread5_;
> PulseInputThread thread6_;
> PulseInputThread thread7_;
> PulseInputThread thread8_;
>  @Override
> protected void setup() throws ConnectionLostException {
>  PulseInput  input1_ = ioio_.openPulseInput(new
> DigitalInput.Spec(1,Mode.PULL_DOWN), ClockRate.RATE_62KHz,  PulseMode.FREQ,
> false);
> PulseInput  input2_ = ioio_.openPulseInput( new
> DigitalInput.Spec(2,Mode.PULL_DOWN ), ClockRate.RATE_62KHz,
>  PulseMode.FREQ, false);
> PulseInput  input3_ = ioio_.openPulseInput(new
> DigitalInput.Spec(3,Mode.PULL_DOWN), ClockRate.RATE_62KHz,  PulseMode.FREQ,
> false);
> PulseInput  input4_ = ioio_.openPulseInput( new
> DigitalInput.Spec(4,Mode.PULL_DOWN ), ClockRate.RATE_62KHz,
>  PulseMode.FREQ, false);
> PulseInput  input5_ = ioio_.openPulseInput(new
> DigitalInput.Spec(6,Mode.PULL_DOWN), ClockRate.RATE_62KHz,  PulseMode.FREQ,
> false);
> PulseInput  input6_ = ioio_.openPulseInput( new
> DigitalInput.Spec(7,Mode.PULL_DOWN ), ClockRate.RATE_62KHz,
>  PulseMode.FREQ, false);
> PulseInput  input7_ = ioio_.openPulseInput(new
> DigitalInput.Spec(10,Mode.PULL_DOWN), ClockRate.RATE_62KHz,
>  PulseMode.FREQ, false);
> PulseInput  input8_ = ioio_.openPulseInput( new
> DigitalInput.Spec(12,Mode.PULL_DOWN ), ClockRate.RATE_62KHz,
>  PulseMode.FREQ, false);
>
>  Timer t = new Timer();
>    thread1_ = new PulseInputThread(input1_, t);
>    thread2_ = new PulseInputThread(input2_, t);
>    thread3_ = new PulseInputThread(input3_, t);
>    thread4_ = new PulseInputThread(input4_, t);
>    thread5_ = new PulseInputThread(input5_, t);
>    thread6_ = new PulseInputThread(input6_, t);
>    thread7_ = new PulseInputThread(input7_, t);
>    thread8_ = new PulseInputThread(input8_, t);
>
>
>
>
>
>   thread1_.start();
>   thread2_.start();
>   thread3_.start();
>   thread4_.start();
>   thread5_.start();
>   thread6_.start();
>   thread7_.start();
>   thread8_.start();
>  }
>
>  @Override
> public void loop() throws ConnectionLostException {
>  setText1(thread1_.getLastReading());
>   setText2(thread2_.getLastReading());
>   setText3(thread3_.getLastReading());
>   setText4(thread4_.getLastReading());
>   setText5(thread5_.getLastReading());
>   setText6(thread6_.getLastReading());
>   setText7(thread7_.getLastReading());
>   setText8(thread8_.getLastReading());
>  try {
> Thread.sleep(1000);
> } catch (InterruptedException e) {
> }
> }
>  public void disconnected() {
>    try {
>
>      thread1_.join();
>      thread2_.join();
>      thread3_.join();
>      thread4_.join();
>      thread5_.join();
>      thread6_.join();
>      thread7_.join();
>      thread8_.join();
>    } catch (InterruptedException e) {
>    }
> }
>  }
>
>
>
> @Override
> protected IOIOLooper createIOIOLooper() {
> return new Looper();
> }
>
>
>
>>  --
> You received this message because you are subscribed to the Google Groups
> "ioio-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/ioio-users.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"ioio-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/ioio-users.
For more options, visit https://groups.google.com/d/optout.

Reply via email to