Skip to main content

You are here

JeeNode V6 and USB-BUB II - can't upload sketches

43 posts / 0 new
Last post
dobbers
JeeNode V6 and USB-BUB II - can't upload sketches

I am new to JeeNodes and recently bought a JeeNode V6 and USB-BUB II. I made up the boards and connected them to the Arduino 0022 serial monitor which showed the default RFM12B demo sketch working fine with responses to my key presses.

I then came to try and program the JeeNode board with a simple hello world sketch but found when it came to upload to the sketch using Arduino 0022 it came back with error message:

avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

Reading this forum I came across a similar entry: http://forum.jeelabs.net/node/525 so I went down the route of using isp_repair.pde using my Arduino Uno which appeared to do the reprogramming of the Optiboot fine but the error still remains when I try to load the sketch to the JeeNode.

I understand that the isp_repair.pde puts the blink demo sketch onto the JeeNode so would I be right in thinking it should blink an LED connected to B1 and +3v3 as mine does not so worried now that I have blown this JeeNode.

The USB-BUB II (i.e. blue board) comes with some jumpers. I have not jumpered anything here as I could not work out from the Modern Devices blurb how to configure it for a JeeNode - is this right? It seemed to work fine displaying the RFM12 demo output like this so assumed must be okay.

regards,

dobbers

Phaeton

Since I wrote the other topic it looked like I fixed the jeenodev6. But that wasn't the case. I accidently replaced a new jeenode with the broken. Therefore I thought I had fixed the Jeenode v6. But in fact I didn't. I found this out yesterday. I wanted to post this, but now I read you post. It the same problem I have. Conclusion I'm also not able to fix the Jeenode with the isp_repair.pde.

In my opionon you don't have to be worried you broke the Jeenode by uploading the standard sketch. This wont happen.

How are your soldering skills? Could we both have broken the Jeenodes by lousy soldering?

MichelV

Try the "Dumalchuvano" (or something like that :-)) as board type, and see if that works.

The V6 doesn't have the OptiBoot loader as far as I know (but the other one).

Sorry, I'm at work now, so I can't be more precise with the names ;-)

dobbers

@MichelV: I tried the different board types and they made no difference.

@Phaeton: My soldering skills are okay and other boards I have bought and soldered in the past have worked fine.

Phaeton

It occures to me I might have offended you with this question. This wasn't my goal. I just wanted to rule the soldering part out. I'm not a great solderer, but this Jeenode was done in a nice way.

Have you tried the options in my topic?

dobbers

Yes I tried the options in your topic and it made no difference. I tried running the upload again with Shift pressed to get more debug - see attached screen shot. It shows that the baud rate is set to 115200 - is this correct? I thought the jeenode used 57600?

dobbers

AttachmentSize
error_message_debug.jpg196.71 KB
tankslappa

To upload a sketch a JeeNode doesn't need many connections. If RFdemo is working and you can interact with it, change node ID etc, then GND, TX and RX on the FTDI are reaching the ATmega.

So whilst being careful not to insult anyone's soldering here are some quick checks ;-)

With the board component side up, FTDI to the left, antenna top right, with a meter in resistance mode, check the connection of the top pin (RST). It should have 0 ohms to one side of C1, but not the other. On a V5 (and I believe V6) board it is to the bottom of C1, on a V4 board it is to the top.

If you have a connection to both sides, then the reset won't work properly and you should check for a solder whisker shorting it out.

Next, check the connection between the bottom side of the resistor (only one on the board) to C1, it should be 0 ohms to the side of C1 which isn't connected to the RST pin.

Now keep your meter on the bottom leg of the resistor and check its connection to pin 1 (lowest left) of the ATmega chip. Again it should be 0 ohms.

Lastly check between pin 1 of the ATmega and one of the port pins marked + (3.3v). You should see approx 10K.

If any of those fail you might want to have a careful look at the board.

As I said, no insult to anyone's soldering ability. I once spent half an hour wondering why a board wasn't working, only to discover I'd managed to fold one of the ATmega pins under the chip when I pushed it into the socket.

dobbers

I am using Windows 7 32-bit version. Not sure which FTDI driver I am using - how can I check?

dobbers

tankslappa

Damn, you saw that... Sorry, I just deleted my post because I realised I had been a complete idiot! I won't go into what I did, just feel free to laugh at me!

As a completely unrelated comment, I would like to point out that plugging the FTDI plug in upside down gives the same error you saw ;-)
It's very easy to do with a dedicated TTL-232R-5.0V lead which only has a 6 pin female socket on the far end... So I'm told...

Don't worry about the FTDI drivers, you'll have the ones that came with Arduino, which work fine on 32bit versions of windows. It's only 64bit windows that has a problem with them.

Just for completeness, and in case any Win7 64bit user stumbles upon the page via google some point in the future, I used 2.08.14 from http://www.ftdichip.com/Drivers/VCP.htm

You screen grab shows 115200 baud rate, which is the baudrate used by the Optiboot loader. The standard one is 57600. Did you use isp_repair.pde or isp_repair2.pde?

I believe 2 contains Optiboot (I think).

dobbers

I used isp_repair.pde

dobbers

MichelV

FWIW: I did a fresh windows 7 64-bit install this weekend, and am using the current stable arduino (so not the v1.0 RC1 or 2). I did have to download new FTDI drivers, but other than that, it all works fine for me.

@dobbers: Try "demulchivano" with a speed of 57600, see if that works.

tankslappa

Shall I translate ;-)
"Arduino Duemilanove or Nano w/ ATmega328"

dobbers

Tried that and it still does not work :-(

dobbers

AttachmentSize
err_mesg2.jpg272.33 KB
tankslappa

To be honest my next step would be to turn your Arduino into an ISP programmer, then use this to burn the standard Arduino bootloader onto the JeeNode with "burn bootloader" -> "w/ Arduino as ISP"

The sketch to make the Arduino into an ISP programmer is in the ports library examples called isp_flash.pde. Upload this onto the Arduino as normal.

Then connect the boards up as before for the repair, but this time connect the Arduino to your machine, run up the Arduino IDE. Select "Board" -> ""Arduino Duemilanove or Nano w/ ATmega328"" and then select "burn bootloader" -> "w/ Arduino as ISP".

Assuming that works you should then be able to connect up the JeeNode and program it at 57600 baud as "Arduino Duemilanove or Nano w/ ATmega328".

MichelV

@TankSlappa Thank you, I'm not really into these italian names ;-)

tankslappa

No problem. I was just worried as there is also an "Arduino Diecimila, Duemilanove, or Nano w/ ATmega168" option which would be wrong for the JeeNode which is based on the 328 not 168 chip.

tankslappa

Not sure if this helps, but I just sat down with a JeeNode USB (which has Optiboot), but I forgot to change Arduino from a standard 16Mhz 328 board.

The error I got was exp 0x14 resp 0x20.

I've also had occasional problems with uploading when the bootloader was set correctly, but a couple of tries and it works. This is due to my rather old laptop being a bit slow and missing the upload window.

I screen grabbed a "Optibooted chip fail because I said the board was standard" error, and the start of an "Optiboot successful" (have to be quick as it throws a load of text up).

Phaeton

Thanks for the new options! Tomorrow i'll check the connections.

@tankslappa: how did you change this? By selecting a different board?

tankslappa

Yes, by selecting a different board you tell the Arduino IDE which bootloader it should be working with.

This also tells it which bootloader you want to burn onto a chip when you use the "burn bootloader" option.

Everything is read from a file called boards.txt which is in C:\Program Files\arduino\hardware\arduino on windows. It's interesting to look at the file, but don't go editing! You've got enough problems already!

timhoffman

I have had similiar problems under the following circumstances.

I was using ubuntu client under virtualbox (windows 7 64bit host) and a usb wireless mouse was causing problems with the whole usb subssystem and only rarely could I upload sketches, to either new JeeNodes or a Free Ten - Eleven. It would work occasionally and would often require connecting the serial console first at 9600 (even though the RF12Demo sketch is running at 57600), before trying to upload the sketch.

I could upload sketches a bit more reliably from Arduino IDE under WIndows however it was so slow it was unusable as an IDE (i5 dell inspiron). How does anyone do stuff with the Arduino IDE under Windows ?

Once I got rid of the USB mouse and went back to a blue tooth mouse the problem hasn't re-appeared.

dobbers

@Phaeton: Did you manage to get it working? I am away from home this week so won't have the opportunity to test it until I get back at the weekend.

dobbers

Phaeton

Hi dobbers,

no I didn't. I gave up :). I followed the post of TankSlappa and checked my soldering. It all was fine, exactly as described by TankSlappa. After checking if everything was soldered correctly I gave up. I desoldered the RF12 chip and used it on a jeenode I ordered without RF12. It works fine, even with the ATMEGA from the 'broken' jeenode.

My conclusion: I messed the jeenode up.

@JCW: You send me my Jeenode USB back. It now works okay. Have you checked if it has the flaw as described here: http://jeelabs.org/2011/11/07/jeenode-usb-problems/ Or was it the bootloader? I'm curious because I want to know what I was doing wrong or if I could have fixed this myself?

I have de-soldered the RF12 and place the arduino chip on a new jeenode. This works fine.

jcw

The JN USB I sent back to you only had its boot loader re-flashed. The 3.0V issue was not known to me at the time.

dobbers

@jcw Could my problem be the USB-BUB II? It came with some jumpers but I did not know how to use them so left them both off the board. The link on the Jeelabs page sends you off to Modern Devices but I could not work out from their docs which jumper setting is suitable for the JeeNode v6.

regards,

dobbers

Phaeton

Hi dobbers. This shouldn't be a problem. Where do you live? Maybe I can borrow you my spare usb-bub to try? I live near the hague.

jcw

Normally, the BUB should work as is. But if you post some pictures, I can make sure that the settings are right. Hm, wait, maybe it's easier for me to post what works here:

AttachmentSize
DSC_2760.jpg79.4 KB
DSC_2761.jpg73.32 KB
timhoffman

jcw you have the 3v3_out tabs soldered. They aren't on mine and I am able to upload sketches to a JeeNode v6 (all 4 of them) how critical is this ?

dobbers

@jcw - I did spot a difference. I don't have the 3v3_out jumper soldered on my board. Like I said before, was not sure what was required.

regards,

dobbers

AttachmentSize
IMG_0358.jpg270.51 KB
IMG_0359.jpg169.72 KB
Phaeton

Mine aren't soldered either. Can upload though :)

jcw

Yeah, the 3.3V logic level setting works when left unconnected, but I remember hearing about a case where it wouldn't work with OptiBoot. Hm, I need to talk to Modern Device about that. We probably should have it connected by default, just to be safe.

dobbers

When I get home at the weekend I can solder it up and then retest.

regards,

dobbers

Pages

Premium Drupal Themes by Adaptivethemes