Basic control


#1

Hey at all,

My BB White working together with a Arduino Mega.

The Cockpit screen is visible, all motor ports working (simulated with servos) but the sidescreen with measuring datas showing nosens and uploading the firmware is not working.



#2

Wow Stefan, that reminds me of the early days with the kickstarter units!

We need some more information. What version of the software your are running?

There were lots of false starts trying to get the firmware to reliably upload over the serial port. The final version that worked on the BBW, I think 2.5.0 had the firmware updates fixed.


#3

Hello Brian,

jep. Each version is increasing the features but i reduce it to minimum. :smile:

Currently i`m running the OpenROV-2.5-29 image on the BBW and the Arduino code taken from the V2.4 cockpit. (The Arduino IDE is not able to compile the V2.5 controller code for some reason…)

The communication is working properly, i am able to switch lasers and beam (just simulated by LED`s) and the camera tilt is working.

Mayby from interest: The Arduino TX LED ist fast flashing while the BBW RX LEX is on without flashing…


#4

Ahoi,

another problem but topic mayby for another forum.

Compiling the arduino code with IDE 1.0.5-r2 works fine, 1.0.6 stops compiling with error mesage.
But how ever my mega 2560 board dont react to the compiler anymore. The old openrov code still work on it but trying to upload the latest version… The TX led starts flashing, RX not. I could leave it for one hour or more but nothing happens. After resetting via unplugging the USB wire, the old openrov code still work.

I assume the bootloader didnt react but if i try to reload the bootloder it happens the same.


#5

DIY Control Unit. :smile:

Of course it will not win any design award but motor, camera tilt and controlling lights and lasers are working.

It is time for “Hull” contructions now. :smile:


#6

Screw that noise!! Wins all types of awards in my book Stefan


#7

Thank you Charlie :smile:


#8

Note:
If you use the Arduino as power source for the BB, dont power up the ardu via USB.
It will work until a camera is connected and one servo. After hitting the keys for servo motion the image freeze. A restart is required.

Supplying the Arduino with 9VDC (Power Jack) all fine :blush:


#9

Strange Friday.

i connected additional the homeplug to the 3,3V rail of the arduino. Only to find out if the power consumption are not to high for the on board power regulator. But it is. Everething plugged and connected draw around 0.85A @ 8.3V Vin out of my power supply. The reg temperature rise up to more than 50degC and the camera shut down.

Ok all fine.

Later i restart the system (BB, Arduino only). while pluggin in cameras usb port my BB shut down. Now he seems to be dead. Power over P9 Pins 2,6; Power jack with 5V; USB… The power led shortly flash and nothing more…

Could somebody imagine what happend?

Stefan


#10

After reading a lot i assume that a voltage drop occures when the webcam was connected during boot up of the beaglebone. This is suspected to corrupt the processor…


#11

update:

i use this type of level shifter -> http://www.watterott.com/de/Level-Shifter
something goes wron with it because today with the BBB cockpit and image works, servos etc not.
I did some measurments and noticed that the 3V3 side rise up to 5.4V wenn connected to the beaglebone. guess that killed the BBW…

Game paused because the TXB0108 are out of stock.


#12

Hi,
strange day. I find this TXB010B level shifter in germany an connect the BBB and the MEGA as it is written in the shematic controller 2.5B Rev:B. After first boot i received some board data but i was not able to controll anything. Eaven when i press the respective keys the values for mtarg and starg not change.

But {and this is strange for me} uploading the arduino firmware via BBB and cockpit works!

undefinedstaging: build dir is /tmp/tmp.ds3PnBzYr9
staged src in to build folder
src/OpenROV.ino
Searching for Arduino lib version file (version.txt) … /usr/share/arduino/lib/version.txt
Detecting Arduino software version … 1.0.5 (1.0.5)
Scanning dependencies of src
Scanning dependencies of arduino
Scanning dependencies of EEPROM
Scanning dependencies of SPI
Scanning dependencies of Wire
src/MPUQuaternion.cpp
src/MinIMU_I2C.cpp
src/MinIMU_Vector.cpp
src/MinIMU9.cpp
src/MinIMU_L3G.cpp
src/CalibrationLaser.cpp
src/Cape.cpp
src/MS5803_14BA.cpp
src/MinIMU_Compass.cpp
src/Thrusters2X1.cpp
src/Motors.cpp
src/Timer.cpp
src/I2Cdev.cpp
src/CalLib.cpp
src/Settings.cpp
src/MPUVector3.cpp
src/Device.cpp
src/Lights.cpp
src/MinIMU9AHRS.cpp
src/inv_mpu.cpp
src/MinIMU_LSM303.cpp
src/FreeMem.cpp
src/CameraMount.cpp
src/MinIMU_Output.cpp
src/Command.cpp
src/Pin.cpp
src/Pilot.cpp
src/MinIMU_matrix.cpp
src/MPU9150Lib.cpp
src/MPU9150.cpp
src/openrov_servo.cpp
src/MinIMU_DCM.cpp
src/inv_mpu_dmp_motion_driver.cpp
src/controllerboard25.cpp
src/OpenROV.cpp
EEPROM/EEPROM.cpp
Linking libEEPROM.a
SPI/SPI.cpp
Linking libSPI.a
Wire/utility/twi.c
Wire/Wire.cpp
Linking libWire.a
arduino/wiring_shift.c
arduino/wiring_pulse.c
arduino/wiring.c
arduino/wiring_analog.c
arduino/wiring_digital.c
arduino/WInterrupts.c
arduino/avr-libc/malloc.c
arduino/avr-libc/realloc.c
arduino/USBCore.cpp
arduino/Tone.cpp
arduino/WString.cpp
arduino/HardwareSerial.cpp
arduino/Print.cpp
arduino/IPAddress.cpp
arduino/HID.cpp
arduino/new.cpp
arduino/main.cpp
arduino/Stream.cpp
arduino/CDC.cpp
arduino/WMath.cpp
Linking libarduino.a
Linking firmware.elf
Converting to firmware.hex
Searching for Board description file (boards.txt) … /usr/share/arduino/hardware/arduino/boards.txt
Searching for Arduino lib version file (version.txt) … /usr/share/arduino/lib/version.txt
Detecting Arduino software version … 1.0.5 (1.0.5)
Searching for Arduino core library … /usr/share/arduino/hardware/arduino/cores/arduino
Searching for Arduino variants directory … /usr/share/arduino/hardware/arduino/variants
Searching for Arduino standard libraries … /usr/share/arduino/libraries
Searching for make … /usr/share/arduino/hardware/tools/avr/bin/make
Searching for avr-gcc … /usr/share/arduino/hardware/tools/avr/bin/avr-gcc
Searching for avr-g++ … /usr/share/arduino/hardware/tools/avr/bin/avr-g++
Searching for avr-ar … /usr/share/arduino/hardware/tools/avr/bin/avr-ar
Searching for avr-objcopy … /usr/share/arduino/hardware/tools/avr/bin/avr-objcopy
Setting up uploader
Initiating arduino reset on pin 30

avrdude: Version 6.1-svn-20130917, compiled on Jun 29 2014 at 14:45:35
Copyright © 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright © 2007-2009 Joerg Wunsch

     System wide configuration file is "/etc/avrdude.conf"

Arduino reset set high, Arduino enabled.
User configuration file is "/root/.avrduderc"
User configuration file does not exist or is not a regular file, skipping

     Using Port                    : /dev/spidev1.0
     Using Programmer              : linuxspi
     AVR Part                      : ATmega2560
     Chip Erase delay              : 9000 us
     PAGEL                         : PD7
     BS2                           : PA0
     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        65    10     8    0 no       4096    8      0  9000  9000 0x00 0x00
                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       flash         65    10   256    0 yes    262144  256   1024  4500  4500 0x00 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  9000  9000 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  9000  9000 0x00 0x00
                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       efuse          0     0     0    0 no          1    0      0  9000  9000 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  9000  9000 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          1    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 : linuxspi
     Description     : Use Linux SPI device in /dev/spidev*

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9801
avrdude: NOTE: “flash” memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file ".build/mega2560/firmware.hex"
avrdude: input file .build/mega2560/firmware.hex auto detected as Intel Hex
avrdude: writing flash (50032 bytes):

Writing | ################################################## | 100% 19.88s

avrdude: 50032 bytes of flash written
avrdude: verifying flash memory against .build/mega2560/firmware.hex:
avrdude: load data flash data from input file .build/mega2560/firmware.hex:
avrdude: input file .build/mega2560/firmware.hex auto detected as Intel Hex
avrdude: input file .build/mega2560/firmware.hex contains 50032 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 38.98s

avrdude: verifying …
avrdude: 50032 bytes of flash verified

avrdude done. Thank you.

upload successfull!