Dawn Robotics Forum Support and community forums for Dawn Robotics Ltd 2014-10-05T13:02:29+01:00 http://forum.dawnrobotics.co.uk/feed.php?f=5&t=1285 2014-10-05T13:02:29+01:00 2014-10-05T13:02:29+01:00 http://forum.dawnrobotics.co.uk/viewtopic.php?t=1285&p=1480#p1480 <![CDATA[Re: Problem with mini driver]]>
I send you a PM to confirm that I've got the correct shipping address for you.

Regards

Alan

Statistics: Posted by Alan — Sun Oct 05, 2014 1:02 pm


]]>
2014-10-03T22:59:29+01:00 2014-10-03T22:59:29+01:00 http://forum.dawnrobotics.co.uk/viewtopic.php?t=1285&p=1479#p1479 <![CDATA[Re: Problem with mini driver]]>
Sorry to hear that it sounds like a corrupted bootloader.

Do you have any jumper wires and 1K resistors to hand? I need to run some more tests tomorrow, but I think that I have a good method for flashing the bootloader with the GPIO pins and so if all goes well, I'll put up a tutorial on Sunday. If you don't have wires and resistors then on Monday I'll send out a set of wires with integrated resistors that I've been working on. Sorry you're having to go through this, rather than use the robot, but you will hopefully end up with a nice, low cost ISP programmer. :roll:

Going forward, I'd really like to reduce the instances of this happening. It does seem to be a problem that has become more common with the release of the B+. It's interesting that you say that the Pi complains about too much current to the USB port on bootup. That'll be the initial current draw from the neck servos. On the old model B I could run the Pi from just a wall supply with the mini driver attached and everything would start fine. With the new Model B+, the mini driver constantly resets on start up unless you attach batteries. Googling round now, I've just learnt about the USB current limiter on the Model B+ (thank you for alerting me to it). Looks like it's software controlled so I might try disabling it in our software, although I need to test to make sure there are no downsides to that.

Regards

Alan

Statistics: Posted by Alan — Fri Oct 03, 2014 10:59 pm


]]>
2014-10-03T17:23:44+01:00 2014-10-03T17:23:44+01:00 http://forum.dawnrobotics.co.uk/viewtopic.php?t=1285&p=1478#p1478 <![CDATA[Re: Problem with mini driver]]>
Thanks for your quick response, let me answer your questions first.

Can you please try running the sensor test a couple more time to see if it's a repeated failure?
Yep, quite a few times. The result is the same.

When running the sensor test, please make sure you've shut down the web server with 'sudo service robot_web_server stop' first
Yep, apart from SSH, all other service are turned off

Can you try using a different USB cable?
Yep, someone mentioned long cable can cause problem. Luckily I got a half meter high quality USB cable which I use for audio interface, tried it and tried on different USB port too.

How are you powering the robot? Could you try powering the Pi with a wall adapter whilst we debug this?
I power RPI with computer USB port, separate battery power to mini drive board.

Could you please try programming the Mini Driver from a different PC using the Arduino environment? This blog post gives details.
Yep, tried on Macbook Pro first. Then a PC (win7). With the sample provided in the blog



Actually, I have the same thinking of you about the power voltage could the reason corrupt the bootloader. I did see RPI complains the current on the USB port is too high first time connect mini drive to it without a battery connect to it. I am using B+ mode, which known more efficient of using power, it could be very possible this model of RPI could not provide enough current/voltage to run mini driver without battery at OS booting time. Then it leads to corrupt the bootloader :(.

At the moment, I am pretty stucked as I don't have a programmer nor another Arduino to flash bootloader. I did think using GPIO to upload bootloader however cannot find any useful information on how to do it (or even I am capable do it). Is it possible for me to have a replacement if it is OK please?

Many thanks
Jesse

Statistics: Posted by jesselian — Fri Oct 03, 2014 5:23 pm


]]>
2014-10-03T10:14:36+01:00 2014-10-03T10:14:36+01:00 http://forum.dawnrobotics.co.uk/viewtopic.php?t=1285&p=1477#p1477 <![CDATA[Re: Problem with mini driver]]>
Welcome to the forum. :)

First off, sorry you're having problems with your Mini Driver. We seem to have had an increase of people getting corrupted bootloaders at the moment, which is worrying. All Arduinos can suffer from a corrupted bootloader, for a variety of reasons, but the Mini Driver seems to be a bit more susceptible. I think that this is because the Atmega8 microcontroller used on board has a minimum supply voltage of 4.5V (compared to 1.8V for the Atmega328p used on a lot of other Arduino clones). If the power supply dips below 4.5V then I believe that there's a chance that the Atmega8 can behave aerratically and corrupt the bootloader.

Now, your logs are interesting, because if you look at the avrdude section, it looks as if avrdude was able to make contact with the mini driver, and then start programming the board, but then programming fails at about the 5% mark. I'm wondering if we're seeing bootloader corruption at that point.

It could be another problem however

  • Can you please try running the sensor test a couple more time to see if it's a repeated failure?
  • When running the sensor test, please make sure you've shut down the web server with 'sudo service robot_web_server stop' first
  • Can you try using a different USB cable?
  • How are you powering the robot? Could you try powering the Pi with a wall adapter whilst we debug this?
  • Could you please try programming the Mini Driver from a different PC using the Arduino environment? This blog post gives details.

If it turns out that the bootloader is corrupted then this can be fixed, either with a programmer or with another Arduino if you have one lying around. In extremis, I've been sending people who can't do this a replacement Mini Driver, but I'm also working on a tutorial to show people how they can fix it using the GPIO pins of the Raspberry Pi.

Regards

Alan

Statistics: Posted by Alan — Fri Oct 03, 2014 10:14 am


]]>
2014-10-02T00:58:51+01:00 2014-10-02T00:58:51+01:00 http://forum.dawnrobotics.co.uk/viewtopic.php?t=1285&p=1476#p1476 <![CDATA[Problem with mini driver]]>
I am new to the robot world, however got plenty of experience with computer & linux.

With the recent purchase of your robot kit, I am really struggle to get the mini driver working. By looking the forum, it feels like the common issue other people has.

I am using the SD card image download from website, however I cannot make the robot move. By ssh to the rpi. I found it refused to connect to the mini driver. The following the message when try robot_sensor_test.py (I enabled debug info)

Code:
avrdude: Version 5.11.1, compiled on May 23 2012 at 11:08:25
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "/etc/avrdude.conf"
         User configuration file is "/home/pi/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/ttyUSB0
         Using Programmer              : arduino
         Overriding Baud Rate          : 19200
         AVR Part                      : ATMEGA8
         Chip Erase delay              : 10000 us
         PAGEL                         : PD7
         BS2                           : PC2
         RESET disposition             : dedicated
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom         4    20   128    0 no        512    4      0  9000  9000 0xff 0xff
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           flash         33    10    64    0 yes      8192   64    128  4500  4500 0xff 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           lfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           hfuse          0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           lock           0     0     0    0 no          1    0      0  2000  2000 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           calibration    0     0     0    0 no          4    0      0     0     0 0x00 0x00
                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

         Programmer Type : Arduino
         Description     : Arduino
         Hardware Version: 2
         Firmware Version: 1.18
         Topcard         : Unknown
         Vtarget         : 0.0 V
         Varef           : 0.0 V
         Oscillator      : Off
         SCK period      : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x1e9307
avrdude: safemode read 1, lfuse value: 0
avrdude: safemode read 2, lfuse value: 0
avrdude: safemode read 3, lfuse value: 0
avrdude: safemode: lfuse reads as 0
avrdude: safemode read 1, hfuse value: 0
avrdude: safemode read 2, hfuse value: 0
avrdude: safemode read 3, hfuse value: 0
avrdude: safemode: hfuse reads as 0
avrdude: reading input file "/home/pi/.ino_uploader/mini_driver_firmware/.build/atmega8/firmware.hex"
avrdude: writing flash (6858 bytes):

Writing | ###                                                | 5% 0.22savrdude: ser_recv(): programmer is not responding
avrdude: stk500_recv(): programmer is not responding
DEBUG:root:uploadResult = 1
connected = False


lsusb -v

Code:
pi@raspberrypi ~/raspberry_pi_camera_bot $ lsusb   
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 0951:1665 Kingston Technology
Bus 001 Device 005: ID 0b05:1786 ASUSTek Computer, Inc. USB-N10 802.11n Network Adapter [Realtek RTL8188SU]
Bus 001 Device 011: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART Bridge / myAVR mySmartUSB light


I also tried Arduino IDE on desktop with CP210x UART driver, I got the same error

Code:
stk500_recv(): programmer is not responding


Can you please help?

Many thanks
Jesse

Statistics: Posted by jesselian — Thu Oct 02, 2014 12:58 am


]]>