<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="bbPress/1.0.2" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Jee Labs Talk &#187; Recent Posts</title>
		<link>http://talk.jeelabs.net/</link>
		<description>Discussion about Jee Labs projects</description>
		<language>en-US</language>
		<pubDate>Sat, 31 Jul 2010 11:14:08 +0000</pubDate>
		<generator>http://bbpress.org/?v=1.0.2</generator>
		<textInput>
			<title><![CDATA[Search]]></title>
			<description><![CDATA[Search all topics from these forums.]]></description>
			<name>q</name>
			<link>http://talk.jeelabs.net/search.php</link>
		</textInput>
		<atom:link href="http://talk.jeelabs.net/rss/" rel="self" type="application/rss+xml" />

		<item>
			<title>stef007 on "RFID meets JeeNode"</title>
			<link>http://talk.jeelabs.net/topic/443#post-2421</link>
			<pubDate>Sat, 31 Jul 2010 07:17:40 +0000</pubDate>
			<dc:creator>stef007</dc:creator>
			<guid isPermaLink="false">2421@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Yaba,&#60;/p&#62;

&#60;p&#62;reading the manual does help you know. I don't know how the easy mechanism works but just reading the docs I can see several errors you are making.&#60;/p&#62;

&#60;p&#62;The error you are experiencing: duplicate packets are not sent by design!&#60;/p&#62;

&#60;p&#62;Best catch up on:&#60;/p&#62;

&#60;p&#62;&#60;a href=&#34;http://cafe.jeelabs.net/man/rf12/rf12_easysend/&#34;&#62;http://cafe.jeelabs.net/man/rf12/rf12_easysend/&#60;/a&#62;&#60;/p&#62;

&#60;p&#62;&#60;a href=&#34;http://cafe.jeelabs.net/man/rf12/rf12_easypoll/&#34;&#62;http://cafe.jeelabs.net/man/rf12/rf12_easypoll/&#60;/a&#62;&#60;/p&#62;

&#60;p&#62;And also this one you don't even call (no idea what effect that will have):&#60;/p&#62;

&#60;p&#62;&#60;a href=&#34;http://cafe.jeelabs.net/man/rf12/rf12_easyinit/&#34;&#62;http://cafe.jeelabs.net/man/rf12/rf12_easyinit/&#60;/a&#62;&#60;/p&#62;
</description>
		</item>
		<item>
			<title>yaba on "RFID meets JeeNode"</title>
			<link>http://talk.jeelabs.net/topic/443#post-2420</link>
			<pubDate>Sat, 31 Jul 2010 03:29:47 +0000</pubDate>
			<dc:creator>yaba</dc:creator>
			<guid isPermaLink="false">2420@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Hi all, I wonder if someone could help me, I have the following code, and when I swipe the same card twice, I don't receive anything on JeeLink.&#60;br /&#62;&#60;/p&#62;

&#60;pre&#62;&#60;code&#62;void setup()
{
Serial.begin(57600);
Serial.print(&#34;[Leitor RFID]&#34;);
D_DIR&#38;amp;=~(DATA0+DATA1);
rf12_config();
rf12_initialize(1,RF12_868MHZ,212);
buzzer.mode(OUTPUT);
}

void loop() {
unsigned char recieve_count=0;
unsigned char card_num[4]={0,0,0,0};
unsigned char teste[4] = {0,0,0,0};
for(;;) {
unsigned char data0=0,data1=0;
if(D_IN&#38;amp;DATA0)  //DATA0 incoming signal
{ data0=1; }
if(D_IN&#38;amp;DATA1)  //DATA1 incoming signal
{ data1=1; }
if(data0!=data1)  // card detected
{
recieve_count++;
if(recieve_count==1) //drop even bit
{
}
else if(recieve_count&#38;lt;10)// card data group 1
  {
    if(!data1)
    {
      card_num[0]&#124;=(1&#38;lt;&#38;lt;(9-recieve_count));
    }
  }
  else if(recieve_count&#38;lt;18)// card data group 2
  {
    if(!data1)
    {
      card_num[1]&#124;=(1&#38;lt;&#38;lt;(17-recieve_count));

    }
  }
  if(!data1) // card data group 3
  {     
    card_num[2]&#124;=(1&#38;lt;&#38;lt;(25-recieve_count));
  }
  delayMicroseconds(80);  //Data impulse width delay 80us
}
else    // no card incoming or finish reading card
{
  unsigned char i=0;
  if(recieve_count&#38;gt;= 25)  //output card number

  {
    recieve_count = 0; //reset flag
    for(i=0;i&#38;lt;4;i++)
    {

      Serial.print(card_num[i], DEC);

      teste[i]=card_num[i];
&#60;/code&#62;&#60;/pre&#62;

&#60;p&#62;card_num[i]=0; //reset card_number array
        }&#60;/p&#62;

&#60;pre&#62;&#60;code&#62;    rf12_easySend(&#38;amp;teste,sizeof teste);
    Serial.println();// output debug value
    for (long i = 0; i &#38;lt; 1024 ; i++ )
    {
      // 1 / 2048Hz = 488uS, or 244uS high and 244uS low to create 50% duty cycle
      buzzer.digiWrite(1);
      delayMicroseconds(244);
      buzzer.digiWrite(0);
      delayMicroseconds(220);
    }
  }
  for(int r=0;r&#38;lt;4;r++){
    teste[r]=' ';
  }
  rf12_easyPoll();
}
&#60;/code&#62;&#60;/pre&#62;

&#60;p&#62;}
}
`
&#60;br /&#62;
Example: &#60;br /&#62;
Pass card #1 and it returns the id in JeeLink (JL has RF12demo)&#60;br /&#62;
Pass card #2 and get it again&#60;br /&#62;
Pass card #2 again, and nothing... no packets sent :&#124;&#60;br /&#62;
I think i'm messing up with easyPool()&#60;br /&#62;
enlight me please :)&#60;/p&#62;
</description>
		</item>
		<item>
			<title>lordmundi on "polar heart rate monitor"</title>
			<link>http://talk.jeelabs.net/topic/433#post-2419</link>
			<pubDate>Fri, 30 Jul 2010 13:46:20 +0000</pubDate>
			<dc:creator>lordmundi</dc:creator>
			<guid isPermaLink="false">2419@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;thanks so much for all your help.  unfortunately, I tried setting the rate delay as high as 20 (not the 100 you suggested but something that should definitely fix the issue), and there was still no change.  Also, I tried with the pull-up resistors as Dan suggested.&#60;/p&#62;

&#60;p&#62;For now we may punt and just use the Wire library with this hardware since figuring this out appears to be eating away at our schedule.  If anyone else gets this working on a soft I2C on a Jeenode, &#60;em&#62;PLEASE&#60;/em&#62; let us know how you did it!&#60;/p&#62;
</description>
		</item>
		<item>
			<title>gregor on "Upload to JeeNode v4 fails"</title>
			<link>http://talk.jeelabs.net/topic/440#post-2418</link>
			<pubDate>Fri, 30 Jul 2010 13:22:44 +0000</pubDate>
			<dc:creator>gregor</dc:creator>
			<guid isPermaLink="false">2418@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;OK, here's what I tried:
-Reseating CPU: no effect, and I have only this one 328.&#60;/p&#62;

&#60;p&#62;-Checking RX/TX/SCK etc with a multimeter: Connections appear to be OK, but that does not mean much.&#60;/p&#62;

&#60;p&#62;-@tankslappa: Got the kit two weeks ago...&#60;/p&#62;

&#60;p&#62;-Tried to repair/reset fuses following tankslappas link: Both JeeNodes behaved as expected/described in the link, no errors came up. 
And something has changed: The RF12demo is no longer working on the JeeNode v4 (the JeeNodeUSB, of course, now contains the &#34;repair&#34; sketch). 
But still, the &#34;repaired&#34; JeeNode v4 does not accept any uploads, error messages are the same as ever.
But I think I'll take another look at this &#34;fuses&#34; thing, maybe try repairing once more.&#60;/p&#62;

&#60;p&#62;Also I'll try to hook up the JeeNode&#60;em&#62;USB&#60;/em&#62; to the USB-BUB, just to make sure that the USB-BUB is working.&#60;/p&#62;

&#60;p&#62;So, thanks again everybody who responded, ideas are still welcome.&#60;/p&#62;
</description>
		</item>
		<item>
			<title>stef007 on "polar heart rate monitor"</title>
			<link>http://talk.jeelabs.net/topic/433#post-2417</link>
			<pubDate>Fri, 30 Jul 2010 09:24:49 +0000</pubDate>
			<dc:creator>stef007</dc:creator>
			<guid isPermaLink="false">2417@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;If you set the rate to 9 the i2c port code will use a delay of 9 microseconds. This calculates to 111 Khz. According to the HRMI docs the highest rate supported is 100Khz. You're cutting it close (or to much;-)). I suggest passing something safe as rate/delay for example 100 which would translate to 10Khz?&#60;/p&#62;

&#60;p&#62;Also did you see Dan suggests that pull-up resistors might be necessary? Perhaps you could try that also if you haven't already.&#60;/p&#62;
</description>
		</item>
		<item>
			<title>lordmundi on "polar heart rate monitor"</title>
			<link>http://talk.jeelabs.net/topic/433#post-2416</link>
			<pubDate>Fri, 30 Jul 2010 03:02:01 +0000</pubDate>
			<dc:creator>lordmundi</dc:creator>
			<guid isPermaLink="false">2416@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;well, after some experimenting, I was able to get the board up and running with the example code from Dan Julio.  I think this proves that the logic levels are ok (Dan suggested they should work with 3.3V and after this test, it seems it should).&#60;/p&#62;

&#60;p&#62;To get his example code to work on the jeenode, I had to wire up to the SDA and SCL lines on the PSI port instead of trying to make an I2C port using one of the Jeenode &#34;Ports&#34;.  This let me run his code pretty much unmodified except for having to change the I2C address to one that matched the jumpers I have soldered on the board.&#60;/p&#62;

&#60;p&#62;But, one big obstacle still remains.  This lets me prove the board works, and works over I2C and works with the Jeenode.  But for the life of me I still can't seem to get this to work using the Ports library (which I wish I could).  Keeping the HRMI wired to the PSI port, I used &#34;Port 0&#34; as it looks like JC has made the Ports library map port 0 to the Arduino hardware I2C lines.  I thought that the main issue was the clock rate on the I2C bus, but even with setting this to 9 in the constructor, still getting garbage from the Port.  I've tried lots of stuff but obviously I'm still missing something.  The code is below.  Can anyone suggest why this hardware works with the wire library but won't work with the Ports library?&#60;/p&#62;

&#60;pre&#62;&#60;code&#62;#include &#38;lt;Ports.h&#38;gt;
#include &#38;lt;RF12.h&#38;gt; // needed to avoid a linker error :(

PortI2C myport (0, 9);  // the default clock may be too high. use 100 KHz
DeviceI2C hrmi (myport, 0x3f);  // address for pin OP7 soldered

void setup() {
Serial.begin(57600);
Serial.println(&#34;\n[HRMI]&#34;);
}

void loop() {

// request 1 reading (3 bytes total)
hrmi.send();
hrmi.write('G');
hrmi.write(1);  
hrmi.receive();
byte value1 = hrmi.read(0);
byte value2 = hrmi.read(0);
byte value3 = hrmi.read(1);
hrmi.stop();

Serial.print(value1, DEC);
Serial.print(&#34; &#34;);
Serial.print(value2, DEC);
Serial.print(&#34; &#34;);
Serial.println(value3, DEC);

delay(1000);    
}
&#60;/code&#62;&#60;/pre&#62;
</description>
		</item>
		<item>
			<title>yaba on "Arduino/ATmega/JeeNode port/pin diagram"</title>
			<link>http://talk.jeelabs.net/topic/442#post-2415</link>
			<pubDate>Thu, 29 Jul 2010 20:31:59 +0000</pubDate>
			<dc:creator>yaba</dc:creator>
			<guid isPermaLink="false">2415@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;excelent work. thanks&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tankslappa on "Arduino/ATmega/JeeNode port/pin diagram"</title>
			<link>http://talk.jeelabs.net/topic/442#post-2414</link>
			<pubDate>Thu, 29 Jul 2010 19:54:29 +0000</pubDate>
			<dc:creator>tankslappa</dc:creator>
			<guid isPermaLink="false">2414@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Well he admits to pinching the images from fritzing under CC, which I don't think permits him to copyright his work in a restrictive way... So in theory as long as I credit him too, I can pinch his... Looks like he's got part of the microcontroller cheat sheet in there already too.&#60;/p&#62;
</description>
		</item>
		<item>
			<title>stef007 on "Arduino/ATmega/JeeNode port/pin diagram"</title>
			<link>http://talk.jeelabs.net/topic/442#post-2413</link>
			<pubDate>Thu, 29 Jul 2010 19:49:39 +0000</pubDate>
			<dc:creator>stef007</dc:creator>
			<guid isPermaLink="false">2413@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Great:-)&#60;/p&#62;

&#60;p&#62;Ok if someone could just integrate this into a JeeNode cheatsheet like this one below for Arduino.... Just kidding, that would be a lot more work and getting the authors permission and hopefully the source document. But still the cheatsheet is usefull also for JeeNode developers so I thought I put the link here.&#60;/p&#62;

&#60;p&#62;&#60;a href=&#34;http://sites.google.com/site/mechatronicsguy/arduinocheatsheet&#34;&#62;http://sites.google.com/site/mechatronicsguy/arduinocheatsheet&#60;/a&#62;&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tankslappa on "Arduino/ATmega/JeeNode port/pin diagram"</title>
			<link>http://talk.jeelabs.net/topic/442#post-2412</link>
			<pubDate>Thu, 29 Jul 2010 19:33:43 +0000</pubDate>
			<dc:creator>tankslappa</dc:creator>
			<guid isPermaLink="false">2412@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Thanks for the input, I've incorporated your suggestions and corrected the mistake! Thanks for the heads up.&#60;/p&#62;

&#60;p&#62;Hopefully the link will remain the same, if not I'll code back and update here.&#60;/p&#62;

&#60;p&#62;&#60;em&#62;update&#60;/em&#62;&#60;/p&#62;

&#60;p&#62;Guess what... URL changed...
I'm going to put it up on my server instead... And PDF it too.
&#60;a href=&#34;http://www.ishootpictures.co.uk/atmega-pins.gif&#34;&#62;http://www.ishootpictures.co.uk/atmega-pins.gif&#60;/a&#62;&#60;/p&#62;

&#60;p&#62;&#60;a href=&#34;http://www.ishootpictures.co.uk/atmega-pins.pdf&#34;&#62;http://www.ishootpictures.co.uk/atmega-pins.pdf&#60;/a&#62;&#60;/p&#62;
</description>
		</item>
		<item>
			<title>stef007 on "Arduino/ATmega/JeeNode port/pin diagram"</title>
			<link>http://talk.jeelabs.net/topic/442#post-2411</link>
			<pubDate>Thu, 29 Jul 2010 19:18:09 +0000</pubDate>
			<dc:creator>stef007</dc:creator>
			<guid isPermaLink="false">2411@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Nice work tankslappa! Something to print and put on the wall;-)&#60;/p&#62;

&#60;p&#62;A small addition usefull for people that want to use the hardware I2C support of the chip:&#60;/p&#62;

&#60;p&#62;Add (SCL) in between PC5 and &#34;Analog 5 PSI5&#34;&#60;/p&#62;

&#60;p&#62;Add (SDA) in between PC4 and &#34;Analog 4 PSI4&#34;&#60;/p&#62;

&#60;p&#62;Personally I would also indicate the SEL0 and SEL1 of the SPI port. They are not known by the atmega as being &#34;SPI device selectors&#34; but JC provided them to add support for additional SPI enabled devices on the SPI port (I presume). BTW you mislabeled those in the drawing: ISP8 should be ISP7 and ISP9 should be ISP8.&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tankslappa on "Arduino/ATmega/JeeNode port/pin diagram"</title>
			<link>http://talk.jeelabs.net/topic/442#post-2410</link>
			<pubDate>Thu, 29 Jul 2010 17:34:18 +0000</pubDate>
			<dc:creator>tankslappa</dc:creator>
			<guid isPermaLink="false">2410@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;After seeing a few questions and comments about putting non JeeLabs bits onto JeeNodes, and having done it myself a few times, I thought one of these might be useful...&#60;/p&#62;

&#60;p&#62;Basically it's a pin diagram of an ATmega. All the pins are labelled with all their known names. The Arduino names, the JeeNode names, and anything else I could think of whilst I was doing it!&#60;/p&#62;

&#60;p&#62;Thanks to Stef007 for his fantastic link &#60;a href=&#34;http://tinkerlog.com/2009/06/18/microcontroller-cheat-sheet/&#34;&#62;http://tinkerlog.com/2009/06/18/microcontroller-cheat-sheet/&#60;/a&#62;&#60;/p&#62;

&#60;p&#62;I combined this with info from &#60;a href=&#34;http://cafe.jeelabs.net/lab/jn4/JeeNode-v4.pdf&#34;&#62;JC's Jeenode V4 PDF&#60;/a&#62;...&#60;/p&#62;

&#60;p&#62;&#60;a href=&#34;http://farm5.static.flickr.com/4087/4840782367_224bfea12b_o.gif&#34;&#62;http://farm5.static.flickr.com/4087/4840782367_224bfea12b_o.gif&#60;/a&#62;&#60;/p&#62;

&#60;p&#62;The ports are labelled JP followed by the port number, then A for analogue or D for digital. The interrupt pin is shared across all the ports so labelled JPint.
The pins to the ISP are labelled, which are common to all the ATmega based board. The JeeNode then added two extra pins, 8 and 9 which give access to the Arduino digital 8 and 9.&#60;/p&#62;

&#60;p&#62;Hope this is helpful.&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tankslappa on "Upload to JeeNode v4 fails"</title>
			<link>http://talk.jeelabs.net/topic/440#post-2409</link>
			<pubDate>Thu, 29 Jul 2010 17:25:29 +0000</pubDate>
			<dc:creator>tankslappa</dc:creator>
			<guid isPermaLink="false">2409@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;@gregor - Now &#60;em&#62;that&#60;/em&#62; does sound like one of the misconfigured ATmegas!&#60;/p&#62;

&#60;p&#62;Have you had these for a few months by any chance?&#60;/p&#62;
</description>
		</item>
		<item>
			<title>gregor on "Upload to JeeNode v4 fails"</title>
			<link>http://talk.jeelabs.net/topic/440#post-2408</link>
			<pubDate>Thu, 29 Jul 2010 16:33:38 +0000</pubDate>
			<dc:creator>gregor</dc:creator>
			<guid isPermaLink="false">2408@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Thank you all very much, I will try all suggestions and let you know.
The strange thing is, I get exactly the same upload errors when there is no JeeNode attached to the USB-BUB.&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tankslappa on "Upload to JeeNode v4 fails"</title>
			<link>http://talk.jeelabs.net/topic/440#post-2407</link>
			<pubDate>Thu, 29 Jul 2010 13:18:05 +0000</pubDate>
			<dc:creator>tankslappa</dc:creator>
			<guid isPermaLink="false">2407@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;It could be that you've got one of the ATmega's that had the fuses set incorrectly from a month or two back.
Luckily as you have a working JeenodeUSB there is an easy way to fix it.&#60;/p&#62;

&#60;p&#62;http://news.jeelabs.org/2010/06/09/repairing-a-faulty-atmega/&#60;/p&#62;
</description>
		</item>
		<item>
			<title>szac on "how to get rf12_recvDone to pause long enough to actually get good data"</title>
			<link>http://talk.jeelabs.net/topic/441#post-2406</link>
			<pubDate>Thu, 29 Jul 2010 03:24:08 +0000</pubDate>
			<dc:creator>szac</dc:creator>
			<guid isPermaLink="false">2406@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Worked! Thanks!&#60;/p&#62;
</description>
		</item>
		<item>
			<title>Rowfast on "polar heart rate monitor"</title>
			<link>http://talk.jeelabs.net/topic/433#post-2405</link>
			<pubDate>Wed, 28 Jul 2010 20:47:31 +0000</pubDate>
			<dc:creator>Rowfast</dc:creator>
			<guid isPermaLink="false">2405@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Would this work? a Step-Up Breakout like this http://www.sparkfun.com/commerce/product_info.php?products_id=8999? anyone experience with it or similar? Thanks!&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tor on "Upload to JeeNode v4 fails"</title>
			<link>http://talk.jeelabs.net/topic/440#post-2404</link>
			<pubDate>Wed, 28 Jul 2010 20:24:55 +0000</pubDate>
			<dc:creator>tor</dc:creator>
			<guid isPermaLink="false">2404@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Try reseating the CPU - fixed my identical problem. If not try swapping the CPU (if you have a spare)&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tor on "Upload to JeeNode v4 fails"</title>
			<link>http://talk.jeelabs.net/topic/440#post-2403</link>
			<pubDate>Wed, 28 Jul 2010 20:22:32 +0000</pubDate>
			<dc:creator>tor</dc:creator>
			<guid isPermaLink="false">2403@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;--deleted&#60;/p&#62;
</description>
		</item>
		<item>
			<title>Rowfast on "polar heart rate monitor"</title>
			<link>http://talk.jeelabs.net/topic/433#post-2402</link>
			<pubDate>Wed, 28 Jul 2010 19:15:20 +0000</pubDate>
			<dc:creator>Rowfast</dc:creator>
			<guid isPermaLink="false">2402@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Thanks, this is also helping my project. http://talk.jeelabs.net/topic/70#post-2333&#60;/p&#62;
</description>
		</item>
		<item>
			<title>stef007 on "Upload to JeeNode v4 fails"</title>
			<link>http://talk.jeelabs.net/topic/440#post-2401</link>
			<pubDate>Wed, 28 Jul 2010 17:33:44 +0000</pubDate>
			<dc:creator>stef007</dc:creator>
			<guid isPermaLink="false">2401@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;I'm probably not the best person to help you. But better something then nothing;-) So your TX and RX lines seem to work. Another important line is the reset/DTR line. Try opening and closing the arduino IDE serial monitor several times. Each time the jeenode should reset and you should see the rf12 demo help output.&#60;/p&#62;
</description>
		</item>
		<item>
			<title>stef007 on "how to get rf12_recvDone to pause long enough to actually get good data"</title>
			<link>http://talk.jeelabs.net/topic/441#post-2400</link>
			<pubDate>Wed, 28 Jul 2010 17:25:57 +0000</pubDate>
			<dc:creator>stef007</dc:creator>
			<guid isPermaLink="false">2400@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Hmmm what if your calls to rf12_recvDone() in your switch statement return true? In other words what if the rf12 did receive something? The next time you call it the rf12 might receive another packet or nothing anymore. Perhaps that way you are loosing packets?&#60;/p&#62;
</description>
		</item>
		<item>
			<title>szac on "how to get rf12_recvDone to pause long enough to actually get good data"</title>
			<link>http://talk.jeelabs.net/topic/441#post-2399</link>
			<pubDate>Wed, 28 Jul 2010 16:27:40 +0000</pubDate>
			<dc:creator>szac</dc:creator>
			<guid isPermaLink="false">2399@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;If I wrap the rf12_recvDone block at the end in while(1), I'm able to skip through the steps remotely. Seems like it's looping too fast for the rf12_recvDone function to get data. Anyone have any suggestions or improvements? Thanks!&#60;/p&#62;

&#60;p&#62;&#60;code&#62;
totalsteps = 3;
while(step&#38;lt;=totalsteps) {
   switch (step) {
     case 1:
      if (!(cyclecount % 1)) { //only update display each 1000th time thru loop  //TODO increase value when process is running fast (ie checking time properly)&#60;/code&#62;&#60;/p&#62;

&#60;pre&#62;&#60;code&#62;    float currenttemp1F = sensors.getTempC(sensor1);
    float currenttemp2F = sensors.getTempC(sensor2);

    stepData buf;
    buf.rfcurrenttemp1F = currenttemp1F;
    buf.rfcurrenttemp2F = currenttemp2F;

    rf12_recvDone();
    if (rf12_canSend()){
        rf12_sendStart(0, &#38;amp;buf, sizeof buf);
    }
    cyclecount++;
  }
  break;
 case 2:
  if (!(cyclecount % 1)) { //only update display each 1000th time thru loop  //TODO increase value when process is running fast (ie checking time properly)

    float currenttemp1F = sensors.getTempC(sensor1);
    float currenttemp2F = sensors.getTempC(sensor2);

    stepData buf;
    buf.rfcurrenttemp1F = currenttemp1F;
    buf.rfcurrenttemp2F = currenttemp2F;

    rf12_recvDone();
    if (rf12_canSend()){
        rf12_sendStart(0, &#38;amp;buf, sizeof buf);
    }
    cyclecount++;
  }
  break;
 case 3:
  if (!(cyclecount % 1)) { //only update display each 1000th time thru loop  //TODO increase value when process is running fast (ie checking time properly)

    float currenttemp1F = sensors.getTempC(sensor1);
    float currenttemp2F = sensors.getTempC(sensor2);

    stepData buf;
    buf.rfcurrenttemp1F = currenttemp1F;
    buf.rfcurrenttemp2F = currenttemp2F;

    rf12_recvDone();
    if (rf12_canSend()){
        rf12_sendStart(0, &#38;amp;buf, sizeof buf);
    }
    cyclecount++;
  }    
}


  if (rf12_recvDone()) {
    //Serial.print(remoteincoming-&#38;gt;jtChooseMenuItem);
    remoteControl* remoteincoming = (remoteControl*) rf12_data;
    Serial.print(&#34;rf12_recDone&#34;);
    if (rf12_crc == 0) {
      if (remoteincoming-&#38;gt;jtChooseMenuItem == '3')
      {
        if (testmode == 1)  /// in testmode this will allow me to skip to the next step and is configured elsewhere
        {
          digitalWrite(PinElementHlt, LOW);
          digitalWrite(PinPumpHlt, LOW);
          digitalWrite(PinPumpMT, LOW);
          digitalWrite(PinMotorMT, LOW);
          step++;
          msgdisplayed=0;
          timercalculated=0; // next step's timer not yet calculated
        }
      }       
    }
  } 
&#60;/code&#62;&#60;/pre&#62;

&#60;p&#62;} //end loop
&#60;/p&#62;
</description>
		</item>
		<item>
			<title>fishy6969 on "Basic Newb Question - Relays"</title>
			<link>http://talk.jeelabs.net/topic/438#post-2398</link>
			<pubDate>Wed, 28 Jul 2010 13:53:00 +0000</pubDate>
			<dc:creator>fishy6969</dc:creator>
			<guid isPermaLink="false">2398@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Epokh - any help would be appreciated!&#60;/p&#62;
</description>
		</item>
		<item>
			<title>gregor on "Upload to JeeNode v4 fails"</title>
			<link>http://talk.jeelabs.net/topic/440#post-2397</link>
			<pubDate>Wed, 28 Jul 2010 11:21:19 +0000</pubDate>
			<dc:creator>gregor</dc:creator>
			<guid isPermaLink="false">2397@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;I built the JeeNode v4 from the wireless starter pack. 
It appears to work: Upon connecting it via the USB-BUB the expected messages (&#34;Available commands: etc...&#34;) are appearing. I can use the preloaded RF12demo and send and receive to/from the JeeNode.&#60;/p&#62;

&#60;p&#62;However, I cannot upload a new sketch to the JeeNode v4: I uploaded the &#34;JeeNodeIoCommander&#34; sketch to the JeeLink and the JeeNodeUSB without problems, but not to the JeeNode v4.&#60;/p&#62;

&#60;p&#62;Additional info:&#60;/p&#62;

&#60;p&#62;I'm trying to upload to the JeeNode v4 via USB-BUB (set to 3.3V), the JeeNode is &#60;em&#62;not&#60;/em&#62; connected to an additional power source (this should work, correct?).&#60;/p&#62;

&#60;p&#62;I'm using Arduino IDE, &#34;Board&#34; is set to &#34;Arduino Duemilanove or Nano w/ Atmega328&#34;&#60;/p&#62;

&#60;p&#62;The upload command is 
&#34;[path]avrdude -C[path]avrdude.conf -v -v -v -v -pm328p -cstk500v1 -P/dev/ttyUSB0 -b57600 -D -Uflash:w:[path]nodeIO.cpp.hex:i &#34;&#60;/p&#62;

&#60;p&#62;Error messages (in the IDE and in a terminal):
avrdude: ser_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding&#60;/p&#62;

&#60;p&#62;Chances are I messed something up during soldering. Keeping in mind that the JeeNode v4 appears to work, can anybody give me hints to narrow down or localize the reason why an upload fails?
For example, checking certain connections on the board, measuring voltage on specific points?&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tankslappa on "RF12 range seems OK for me"</title>
			<link>http://talk.jeelabs.net/topic/435/page/2#post-2396</link>
			<pubDate>Wed, 28 Jul 2010 09:24:21 +0000</pubDate>
			<dc:creator>tankslappa</dc:creator>
			<guid isPermaLink="false">2396@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;@stef007&#60;/p&#62;

&#60;p&#62;22uA now you are showing off!
I didn't mean go purely solar. Use solar to top up a battery. Then you wouldn't need to remember to charge it come the end of the decade :-)&#60;/p&#62;

&#60;p&#62;With that level of consumption you could even do it with a capacitor, although it will have to be a posh one to prevent it leaking all the charge internally over night.&#60;/p&#62;

&#60;p&#62;A 12v panel however might generate enough to get the charger working (I just checked one here, and sitting on the table out of direct light, it was generating 5.6v - all be it to no load). It really depends on how much light your room gets and what colour it's painted!&#60;/p&#62;

&#60;p&#62;Don't worry, I'm just thinking random thoughts aloud! If you live in some crazy Northern place like North Norway it probably wouldn't survive those winter nights that last weeks/months! Maybe wind power might be an idea... :o)&#60;/p&#62;
</description>
		</item>
		<item>
			<title>stef007 on "RF12 range seems OK for me"</title>
			<link>http://talk.jeelabs.net/topic/435/page/2#post-2395</link>
			<pubDate>Wed, 28 Jul 2010 07:06:18 +0000</pubDate>
			<dc:creator>stef007</dc:creator>
			<guid isPermaLink="false">2395@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;@tankslappa,&#60;/p&#62;

&#60;p&#62;27,3 microAmps is the average power usage: most of the time power consumption is that of sleep/powerdown of the atmega at 22 microAmps. Then there are peaks of 7-9 mA (atmega alive) and 25 mAmps (transmitting). So not sure that a little solar panel with indirect light could pull that off?&#60;/p&#62;

&#60;p&#62;Also, what at night? My sensors must keep running so that I can pull nice graphs in the morning;-)&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tankslappa on "RF12 range seems OK for me"</title>
			<link>http://talk.jeelabs.net/topic/435/page/2#post-2394</link>
			<pubDate>Tue, 27 Jul 2010 23:47:32 +0000</pubDate>
			<dc:creator>tankslappa</dc:creator>
			<guid isPermaLink="false">2394@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;With consumption levels that low due to good power management you could put a little solar panel on there and receive enough charge from indirect light to never go flat.&#60;/p&#62;
</description>
		</item>
		<item>
			<title>stef007 on "RF12 range seems OK for me"</title>
			<link>http://talk.jeelabs.net/topic/435/page/2#post-2393</link>
			<pubDate>Tue, 27 Jul 2010 23:03:32 +0000</pubDate>
			<dc:creator>stef007</dc:creator>
			<guid isPermaLink="false">2393@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;@edwardhorsford,&#60;/p&#62;

&#60;p&#62;it's just the temperature of a room in my house. You're right that I don't need so many readings. I just try to get the most use out of the battery: the shelf life of the 3.6V 2400mAh omnicell I'm using is 10 years. So calculating a bit I can consume about 27.3 microAmps for 10 years. If I consume more than this then the battery will not last 10 years. If I consume less than this the battery might self-discharge anyway and finish at or before 10 years (the estimated shelf life). That's why I target 10 years and increment the frequency of tranmissions if I've got room.&#60;/p&#62;

&#60;p&#62;I'm using the ds1820 like in the rooms node. But don't worry: JC's demo code has a delay in there when waiting for the temperature calc/fetch. I've put a powerdown/sleep there instead.&#60;/p&#62;

&#60;p&#62;About caching temperature readings: in my case I don't necessarily want each and every reading. I just want to have a value in my server/NAS which is very up-to-date or at least as fresh as possible (when battery life allows it).&#60;/p&#62;
</description>
		</item>
		<item>
			<title>edwardhorsford on "RF12 range seems OK for me"</title>
			<link>http://talk.jeelabs.net/topic/435/page/2#post-2392</link>
			<pubDate>Tue, 27 Jul 2010 22:07:26 +0000</pubDate>
			<dc:creator>edwardhorsford</dc:creator>
			<guid isPermaLink="false">2392@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;@stef007 - What's this application for? Environmental temperature won't change all that often to make it worth reading too frequently.&#60;/p&#62;

&#60;p&#62;Some other thoughts:
What kind of temperature sensor are you using? Is it optimised so that the microcontroller isn't on whilst it's taking readings.
Since most of the cost is in the overhead and in waiting for the radio to power up, is there anything stopping you caching several temperature readings for 500 seconds, then sending a single transmission far less regularly?&#60;/p&#62;
</description>
		</item>
		<item>
			<title>stef007 on "RF12 range seems OK for me"</title>
			<link>http://talk.jeelabs.net/topic/435#post-2391</link>
			<pubDate>Tue, 27 Jul 2010 21:49:34 +0000</pubDate>
			<dc:creator>stef007</dc:creator>
			<guid isPermaLink="false">2391@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;@edwardhorsford,&#60;/p&#62;

&#60;p&#62;I've tested your rf12 control commands for lower bitrate: it seems that the total transmission time (rf12wakeup-send-rf12sleep) increases by a factor 2. For example:&#60;/p&#62;

&#60;p&#62;payload of 2 bytes (thus excluding overhead): it takes 4 milis on regular rf12 mode and 7 to 8 milis with your rf12 control codes active. I'm measuring using the global milis counter so it's not super precise but good enough for me.&#60;/p&#62;

&#60;p&#62;When I incremented the payload to 8 bytes the normal mode took 5 milis and the &#34;slow-but-extended-range&#34; mode took 10 milis. So that seems to be consistent.&#60;/p&#62;

&#60;p&#62;In practice this meant my temp sensor running on a 2400mAh omnicell would run 8.4 years instead of the 10 years I optimized the &#34;alive&#34; time for. By halving the temperature measure and transmission frequency I got back to my 10 years lifespan.&#60;/p&#62;

&#60;p&#62;My sensor would wake-up every 37 secs, measure and transmit its payload. Now I let it sleep for double the amount of time, 74 secs. Extending my range costs me either more batteries or less frequent sensor readings.&#60;/p&#62;

&#60;p&#62;Now I only need to find some time to confirm your findings: is the range effectively extended and, more subjectively, is it worth the less frequent readings.&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tankslappa on "433 mhz AM retransmitter question"</title>
			<link>http://talk.jeelabs.net/topic/439#post-2390</link>
			<pubDate>Tue, 27 Jul 2010 21:24:47 +0000</pubDate>
			<dc:creator>tankslappa</dc:creator>
			<guid isPermaLink="false">2390@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;Arduino Digital 11 is a PWM enabled pin, maybe the code is using the bit shifting ability of the pin. If so then you'll need to use the right port on the jeenode as only two of them have digital pins which can do PWM. Ports 2 and 3.&#60;/p&#62;

&#60;p&#62;Port 2 is Arduino digital 5 (ATmega pin 11). Port 3 is Arduino Digital 6 (ATmega pin 12).&#60;/p&#62;
</description>
		</item>
		<item>
			<title>jeroen on "433 mhz AM retransmitter question"</title>
			<link>http://talk.jeelabs.net/topic/439#post-2389</link>
			<pubDate>Tue, 27 Jul 2010 21:13:11 +0000</pubDate>
			<dc:creator>jeroen</dc:creator>
			<guid isPermaLink="false">2389@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;thx guys, I tried one of the jeenode digital pins for the transmitter. That did not work.
I will have to dive deeper in the code.
(even without JC here the response is great)&#60;/p&#62;
</description>
		</item>
		<item>
			<title>tankslappa on "RF12 range seems OK for me"</title>
			<link>http://talk.jeelabs.net/topic/435#post-2388</link>
			<pubDate>Tue, 27 Jul 2010 20:51:49 +0000</pubDate>
			<dc:creator>tankslappa</dc:creator>
			<guid isPermaLink="false">2388@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;My payload isn't very optimised really. I send two bytes. The first is the command to say &#34;fire&#34; the second is a group/channel number which all the flashes belong to. This is purely to allow multiple systems to work side by side without cross triggering. At the moment that isn't an issue as I'm the only one with it, but I thought it was something I really should include.&#60;/p&#62;

&#60;p&#62;The actual power settings for each flash is sent in advance when you change the levels on the controller. The remotes store this in a variable and in their Eeproms so it's retained through battery changes, power cycles etc.&#60;/p&#62;

&#60;p&#62;Given I'm still using the standard RF12 library calls to send the message, complete with its 9 byte overhead, optimising my message from 2 bytes to 1 really didn't seem worth it.&#60;/p&#62;

&#60;p&#62;I really am going to have to bite the bullet and take control of the entire message and not just leave it all down to the RF12 library!&#60;/p&#62;
</description>
		</item>
		<item>
			<title>edwardhorsford on "RF12 range seems OK for me"</title>
			<link>http://talk.jeelabs.net/topic/435#post-2387</link>
			<pubDate>Tue, 27 Jul 2010 20:23:21 +0000</pubDate>
			<dc:creator>edwardhorsford</dc:creator>
			<guid isPermaLink="false">2387@http://talk.jeelabs.net/</guid>
			<description>&#60;p&#62;As mentioned in this thread: http://talk.jeelabs.net/topic/191 I did do a bit of work at increasing speed. There's a fair amount of optimisation that can go on, but not much that doesn't require significant mods to the RF12 library.&#60;/p&#62;

&#60;p&#62;I might get around to looking at the RF12 library again from the speed perspective, as the needs of a photographic trigger are quite different than it's default use case.&#60;/p&#62;

&#60;p&#62;Tankslappa - out of interest, what size of payload are you sending? What's in your payload?&#60;/p&#62;
</description>
		</item>

	</channel>
</rss>
