<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:annotate="http://purl.org/rss/1.0/modules/annotate/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<channel>
<title>Pololu robotics forum</title>
<link>http://forum.pololu.com//index.php</link>
<generator>phpBB3 RSS Builder</generator>
<description>A community of people interested in robotics.</description>
<item>
	<title>Re: power supply</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=59&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;nexisnet&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=6&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Electronics&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-09 &lt;br /&gt;&lt;br /&gt;Glad to hear you solved the problem.&lt;br /&gt;&lt;br /&gt;And don&#039;t feel bad, I know I&#039;ve ruined a bunch of components with my poor breadboard etiquette (including some microcontrollers, h-bridges, and even a nice little sonar sensor!). When I can make myself do it, I find it&#039;s usually worth the time to trim down the component leads so they sit snug to the board. Another tip it took me a while to start following is never make changes to a powered breadboard. Even if you don&#039;t brush contacts against each other, the intermediate partially assembled/disassembled circuit can behave in unexpected and unusual ways. I almost ruined a $55 pressure transducer on a breadboard because I decided to replace a voltage regulator with another that had a different pin order. I started by removing the ground wire from the first voltage regulator, but without a ground connection, a voltage regulator basically becomes a wire from the input pin to the output pin, passing through your source voltage! Fortunately I noticed an LED on the board get much brighter and pulled the power!&lt;br /&gt;&lt;br /&gt;If you really want to make your Orangutan&#039;s timing more accurate you can connect an external crystal oscillator to your AVR (the Orangutan&#039;s even have a place to solder one on the back of the board). In addition to the crystal, you will need two capacitors, specified in the oscillator&#039;s datasheet. To run the microcontroller off of an external clock you will need to change the clock fuses, the ones everyone says never to change, but that&#039;s just because if you make the switch without an external clock connected you&#039;ll need to connect one to be able to switch it back.&lt;br /&gt;&lt;br /&gt;You&#039;re probably fine with just the internal RC oscillator, and there are also some tricks described in the ATMega8 datasheet to calibrate the oscillator to within 1%. I generally don&#039;t even bother with that. For a lot of applications you want faster processing speed, but you don&#039;t necessarily need increased accuracy, and you can use a ceramic resonator instead (the Baby Orangutans come with 20MHz ceramic resonators). They&#039;re not as accurate as crystal oscillators, but they&#039;re cheaper, and you can get them with the capacitors built in, so you don&#039;t have to mess with as many components.&lt;br /&gt;&lt;br /&gt;-Adam</description>
	<link>http://forum.pololu.com//viewtopic.php?f=6&amp;t=945&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

<item>
	<title>Re: timer</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=59&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;nexisnet&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=10&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Orangutan Robot Controllers&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-09 &lt;br /&gt;&lt;br /&gt;Hmm, it&#039;s not clear from just that snippet. This time, could you post a copy of your entire source code?&lt;br /&gt;&lt;br /&gt;-Adam</description>
	<link>http://forum.pololu.com//viewtopic.php?f=10&amp;t=932&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

<item>
	<title>Re: power supply</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=954&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;a.mlw.walker&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=6&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Electronics&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-09 &lt;br /&gt;&lt;br /&gt;Thats annoying lost my whole message.&lt;br /&gt;&lt;br /&gt;So my new regs arrived this morning, and everything is working perfectly! I must have made an error like you said, ruined the old regulator, and then it was never the same again...&lt;br /&gt;&lt;br /&gt;Quick question about the other post, that is relevent to this one. If i manage to get the other one to work with interupts, rather than delays will i need an external crystal to keep ultra accruate time? I have one, just wondered whterh it would be used?&lt;br /&gt;&lt;br /&gt;I can never upload photos here???</description>
	<link>http://forum.pololu.com//viewtopic.php?f=6&amp;t=945&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

<item>
	<title>Re: timer</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=954&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;a.mlw.walker&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=10&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Orangutan Robot Controllers&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-09 &lt;br /&gt;&lt;br /&gt;those all sound good points, and my next question was going to be how to do multiple things at once...&lt;br /&gt;&lt;br /&gt;When i saw though an interupt method:&lt;br /&gt;  &lt;br /&gt;while (PINC&amp;amp;(1&amp;lt;&amp;lt;PC5))  // loop here until first button press&lt;br /&gt;  ;&lt;br /&gt;//initialize timer 0&lt;br /&gt;TCNT0=~(124);//preload counter to overflow after 1 ms (125 counts)&lt;br /&gt;TIMSK=(1&amp;lt;&amp;lt;TOIE0);//enable interrupt on timer0 overflow&lt;br /&gt;TCCR0=(1&amp;lt;&amp;lt;CS01)|(1&amp;lt;&amp;lt;CS00);//set timer to normal mode with CPU clock/64 (125 kHz)&lt;br /&gt;&lt;br /&gt;sei();//enable all interrupts&lt;br /&gt;&lt;br /&gt;// time an event&#58;&lt;br /&gt;   timer_tick=0;            //start timer, clear global millisecond counter&lt;br /&gt;TCNT0 = ~(124);&lt;br /&gt;&lt;br /&gt;while (1)  // loop forever&lt;br /&gt;{&lt;br /&gt;  _delay_ms(10);  // delay for 10 ms to debounce the press&lt;br /&gt;&lt;br /&gt;  while (!(PINC&amp;amp;(1&amp;lt;&amp;lt;PC5)))  // loop here until button is released&lt;br /&gt;   ;&lt;br /&gt;  _delay_ms(10);  // delay for 10 ms to debounce button release&lt;br /&gt;&lt;br /&gt;  time_ms1 = 0;  // here is where we start timing&lt;br /&gt;  time_ms2 = 0;&lt;br /&gt;  TCNT0 = 10;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;  while (PINC&amp;amp;(1&amp;lt;&amp;lt;PC5))  // loop here until second button press&lt;br /&gt;  {    &lt;br /&gt;   }&lt;br /&gt;   time_ms1 = timer_tick;      //get the value of the millisecond counter&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  while (!(PINC&amp;amp;(1&amp;lt;&amp;lt;PC5)))  // loop here until button is released&lt;br /&gt;   ;&lt;br /&gt;  _delay_ms(10);  // delay for 10 ms to debounce button release&lt;br /&gt;  &lt;br /&gt;  TCNT0 = 10;&lt;br /&gt;while (PINC&amp;amp;(1&amp;lt;&amp;lt;PC5))  // loop here until 3rd button press&lt;br /&gt;  {&lt;br /&gt;  }&lt;br /&gt; time_ms2 = timer_tick;      //get the value of the millisecond counter&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;  lcd_line1();// display the times&lt;br /&gt;  lcd_time(time_ms1);&lt;br /&gt;  lcd_line2();&lt;br /&gt;  lcd_time(time_ms2);  &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;     &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/*&lt;br /&gt;TIMER 0 overflow interrupt service routine&lt;br /&gt;This routine is called every millisecond&lt;br /&gt;Operation&#58; increment global variable timer_tick, reload TCNT0 to count 125 clock cycles&lt;br /&gt;*/&lt;br /&gt;&lt;br /&gt;ISR(TIMER0_OVF_vect)&lt;br /&gt;{&lt;br /&gt;   timer_tick++;&lt;br /&gt;   TCNT0 = ~(125);         //preload counter to overflow after 1 ms (125 counts)&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;I couldnt get it to work the same way, as i have just done with delays. If the above code is using interupts properly, and I managed to somehow get it to work so that it would time between two button presses, could i then do other things at the same time?&lt;br /&gt;&lt;br /&gt;Can you see the mistake in my code above?</description>
	<link>http://forum.pololu.com//viewtopic.php?f=10&amp;t=932&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

<item>
	<title>Re: Strange problem with 8 Port Servo Controller</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=1034&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;sir_c&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=16&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Servo Controllers&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-09 &lt;br /&gt;&lt;br /&gt;Hello again,&lt;br /&gt;i just wrote a simple function to send the commands you posted a few lines earlier to the controller:&lt;br /&gt;the result is just the same...the servo motor moves forward until low-byte is 0xB ..then goes back one step at 0xC and moves forward again&lt;br /&gt;with 0xD...&lt;br /&gt;what is going wrong there?  &lt;br /&gt;&lt;br /&gt;here is the source code:&lt;br /&gt;void send_test(struct sc *sc, char servo)&lt;br /&gt;{&lt;br /&gt;  int i;&lt;br /&gt;  unsigned char buf&#91;6&#93;;&lt;br /&gt;  &lt;br /&gt;  buf&#91;0&#93;=0x80;//start byte&lt;br /&gt;  buf&#91;1&#93;=0x01;//device id&lt;br /&gt;  buf&#91;2&#93;=0x03;//command number&lt;br /&gt;  buf&#91;3&#93;=servo;//servo number&lt;br /&gt;  buf&#91;4&#93;=0x01;//hi-byte&lt;br /&gt;&lt;br /&gt;  for (i=0; i&amp;lt;5; i++)&lt;br /&gt;    {&lt;br /&gt;      buf&#91;5&#93;=(char) (9+i);//test-data&lt;br /&gt;      printf(&amp;quot;writing %x to the controller\n&amp;quot;,buf&#91;5&#93;);&lt;br /&gt;      write(sc-&amp;gt;fd,buf,6);&lt;br /&gt;      usleep(1000000);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;any ideas?&lt;br /&gt;thank you</description>
	<link>http://forum.pololu.com//viewtopic.php?f=16&amp;t=930&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

<item>
	<title>Tamiya 70168 Gearbox - motor problems</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=1043&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;izua&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=3&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Other Pololu Products&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-09 &lt;br /&gt;&lt;br /&gt;Hi! My order has arrived today. I have assembled the gearbox at the 344.2:1 ratio and it works nicely, but the problem is, applying 2.61V from a 2.8 accus (2.61 under load) makes the motors &amp;quot;sweat&amp;quot; at the bottom of the axle, and after a few seconds I can sense a smell of something similar to burning/overheating. It&#039;s not acute, but it&#039;s there.&lt;br /&gt;&lt;br /&gt;is this normal, like at first use?</description>
	<link>http://forum.pololu.com//viewtopic.php?f=3&amp;t=948&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

<item>
	<title>Re: timer</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=59&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;nexisnet&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=10&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Orangutan Robot Controllers&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-08 &lt;br /&gt;&lt;br /&gt;The timing inaccuracy of your current method isn&#039;t really noticeable, it&#039;s much more of a programming style issue. With delay-based timing your microcontroller is essentially paralyzed during the delays, which makes it very difficult when you want to start doing multiple things at once. Using your microcontrollers peripheral hardware (timers, interrupts) frees up the microcontroller to do useful things while it&#039;s waiting around, as well as accounting for the extra time it takes to do things like check button states or write to the LCD.&lt;br /&gt;&lt;br /&gt;The real thing that makes your stopwatch inaccurate, by orders of magnitude more than delay-based code, is the performance of the internal RC oscillator. The ATMega8&#039;s oscillator is only accurate to within 3%, and that&#039;s at 25 degrees Celsius, and 5V input. Thats plus or minus 1.8 seconds every minute, or imagine if your wrist watch drifted by as much as 43 minutes every day! The frequency wanders with time, and can go outside that margin at different temperatures and input voltages. If you wanted to do real precision timing over periods longer than a few seconds you would need to hook up an external crystal oscillator, like the kind digital watches use.&lt;br /&gt;&lt;br /&gt;I guess the point is it&#039;s not so much about the timing, it&#039;s about figuring out how to make the most of the hardware. Then again, you can do a heck of a lot with just delays.&lt;br /&gt;&lt;br /&gt;-Adam</description>
	<link>http://forum.pololu.com//viewtopic.php?f=10&amp;t=932&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

<item>
	<title>Re: Micro Dual Serial Motor Controller</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=59&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;nexisnet&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=15&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Motor Controllers&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-08 &lt;br /&gt;&lt;br /&gt;The default configuration is two-motor mode with motor numbers 2 and 3, but no matter how it&#039;s been set it should at least respond to commands sent to motor 0, and to motor 1 if it&#039;s still in two motor mode.&lt;br /&gt;&lt;br /&gt;-Adam&lt;br /&gt;&lt;br /&gt;And no, I&#039;ve read a couple of issues of Servo but I don&#039;t have a subscription. How did you end up writing for them?</description>
	<link>http://forum.pololu.com//viewtopic.php?f=15&amp;t=946&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

<item>
	<title>Re: Micro Dual Serial Motor Controller</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=1044&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;basicxman788&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=15&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Motor Controllers&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-08 &lt;br /&gt;&lt;br /&gt;for the sake of it, do you know what the factory default config is (in the state of a line of code)?  because ill put in that line of code and reset then try it, ill desolder the motors and add the LED&#039;s and see what happens, im also gonna pick up a couple regulators when i get the chance&lt;br /&gt;&lt;br /&gt;thanks,&lt;br /&gt;-andy&lt;br /&gt;&lt;br /&gt;p.s. if you subscribe to SERVO make sure to read my June article :D  it&#039;s not on mini robots though, if you dont PM me and i might be able to get an extra copy out to you</description>
	<link>http://forum.pololu.com//viewtopic.php?f=15&amp;t=946&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

<item>
	<title>Re: Micro Dual Serial Motor Controller</title>
	<description>
	Author: &lt;a href=http://forum.pololu.com//memberlist.php?mode=viewprofile&amp;u=1044&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;basicxman788&lt;/a&gt;&lt;br /&gt;
	Forum: &lt;a href=http://forum.pololu.com//viewforum.php?f=15&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39&gt;Motor Controllers&lt;/a&gt; &lt;br /&gt;
	Date: 2008-05-08 &lt;br /&gt;&lt;br /&gt;i will get my exact code here tomorrow, i might be using the #2 where i shouldnt, i dont think so&lt;br /&gt;&lt;br /&gt;i am only sending the motor code once (not the config)&lt;br /&gt;&lt;br /&gt;i am getting a second chip soon , i will not try the config line on that, ill go straight to the motor code line...if that works than your theory will be confirmed&lt;br /&gt;&lt;br /&gt;if this is not a software problem i have no doubt it is ESD or heat from a soldering iron (as you might know that is a tough soldering job...the spacing is off...i burned myself   )</description>
	<link>http://forum.pololu.com//viewtopic.php?f=15&amp;t=946&amp;sid=5b043e7b7ccedd63ce7e6fefba678b39</link>
</item>

</channel>
</rss>