Comments (15)
I just plugged an oscilloscope to verify if something was going on between the
FTDI cable and minimosd, the results are :
- green line goes low when I start the firmware update;
- tx starts low and shows some signals (high) going through;
- rx starts high and shows some signals (low) going through;
I did not try to record the signals nor did I tried to figure out their
meaning, I was just trying to find out if something was going on between
osd_config and minimosd.
From what I can tell, the FTDI cable must be good since signals are flowing in
and out. The minimosd electronic must be good also since in appears to be
responding in some ways to what it receives from the FTDI cable. As far as I
can tell, it looks like a software issue but I am really not sure about
anything here. I will continue to investigate to the best of my knowledge (as
little as it is at this point :-()
Original comment by [email protected]
on 11 Oct 2012 at 12:00
from arducam-osd.
I'm not sure what's happening there on your board. Maybe something wrong on the
fuses?
Did you run the whole set of commands below by using your programmer?
avrdude -c usbasp -p m328p -U lfuse:w:0xFF:m
avrdude -c usbasp -p m328p -U hfuse:w:0xDA:m
avrdude -c usbasp -p m328p -U efuse:w:0x05:m
avrdude -c usbasp -p m328p -U flash:w:ATmegaBOOT_168_atmega328.hex
Original comment by [email protected]
on 12 Oct 2012 at 11:04
from arducam-osd.
Hi,
Yes I ran exactly the commands you mention and the all ran successfully.
JL
Original comment by [email protected]
on 12 Oct 2012 at 11:06
from arducam-osd.
Hi again,
Since I was able to flash the bootloader with my USBasp, I guessed that I might
as well try to compile the code and upload it to minimosd with Arduino 1.0.1
through the USBasp programmer. It is my first contact with Arduino, so please
excuse my ignorance.
When I try to compile Arducam and its friends I get the following messages :
In file included from ArduCam_Max7456.cpp:4:
ArduCam_Max7456.h:77: error: expected class-name before '{' token
ArduCam_Max7456.h:83: error: 'uint8_t' has not been declared
ArduCam_Max7456.h:83: error: 'uint8_t' has not been declared
ArduCam_Max7456.h:86: error: 'uint8_t' has not been declared
ArduCam_Max7456.h:89: error: 'uint8_t' has not been declared
ArduCam_Max7456.h:89: error: 'uint8_t' has not been declared
ArduCam_Max7456.h:96: error: 'size_t' does not name a type
ArduCam_Max7456.h:97: error: 'uint8_t' has not been declared
ArduCam_Max7456.h:98: error: 'BetterStream' has not been declared
ArduCam_Max7456.h:100: error: 'uint8_t' does not name a type
ArduCam_Max7456.cpp: In member function 'void OSD::init()':
ArduCam_Max7456.cpp:37: error: 'video_mode' was not declared in this scope
ArduCam_Max7456.cpp: In member function 'void OSD::setMode(int)':
ArduCam_Max7456.cpp:90: error: 'video_mode' was not declared in this scope
ArduCam_Max7456.cpp:91: error: 'video_center' was not declared in this scope
ArduCam_Max7456.cpp: In member function 'int OSD::getMode()':
ArduCam_Max7456.cpp:104: error: 'video_mode' was not declared in this scope
ArduCam_Max7456.cpp: In member function 'int OSD::getCenter()':
ArduCam_Max7456.cpp:119: error: 'video_center' was not declared in this scope
ArduCam_Max7456.cpp: At global scope:
ArduCam_Max7456.cpp:143: error: prototype for 'void OSD::setPanel(uint8_t,
uint8_t)' does not match any in class 'OSD'
ArduCam_Max7456.h:83: error: candidate is: void OSD::setPanel(int, int)
ArduCam_Max7456.cpp: In member function 'void OSD::openPanel()':
ArduCam_Max7456.cpp:158: error: 'row' was not declared in this scope
ArduCam_Max7456.cpp:158: error: 'col' was not declared in this scope
ArduCam_Max7456.cpp: In member function 'void OSD::closePanel()':
ArduCam_Max7456.cpp:187: error: 'row' was not declared in this scope
ArduCam_Max7456.cpp: At global scope:
ArduCam_Max7456.cpp:193: error: prototype for 'void OSD::openSingle(uint8_t,
uint8_t)' does not match any in class 'OSD'
ArduCam_Max7456.h:89: error: candidate is: void OSD::openSingle(int, int)
ArduCam_Max7456.cpp:217: error: no 'size_t OSD::write(uint8_t)' member function
declared in class 'OSD'
ArduCam_Max7456.cpp:232: error: prototype for 'void OSD::control(uint8_t)' does
not match any in class 'OSD'
ArduCam_Max7456.h:86: error: candidate is: void OSD::control(int)
ArduCam_Max7456.cpp:249: error: prototype for 'void OSD::write_NVM(int,
uint8_t*)' does not match any in class 'OSD'
ArduCam_Max7456.h:97: error: candidate is: void OSD::write_NVM(int, int*)
I did not dig deep into it yet, but my feeling is that I must be missing
something obvious to somebody whose more regularily into that, so I take a
chance to ask if somebody quickly sees the cause of those syntax errors.
Otherwise, I will get to know Arduino programming in more details one way or
another.
Thanks,
JL
Original comment by [email protected]
on 18 Oct 2012 at 12:24
from arducam-osd.
Did you get the code by using an SVN client?
Did you copy the libraries from ArduCAM SVN folder to your Arduino's install
libraries folder?
Anyway, if you upload the code by the USBASP programmer you'll lose the
bootloader. After losing the bootloader the OSD Config Tool won't talk to your
board anymore.
Original comment by [email protected]
on 18 Oct 2012 at 5:30
from arducam-osd.
Ok, thanks. I was missing the libraries. Now I will use an SVN client to handle
all the parts.
Original comment by [email protected]
on 20 Oct 2012 at 1:17
from arducam-osd.
Hi again,
I was able to flash the firmware with avrdude and my USBasp on minimosd and it
worked ok, at least I had some text over the video, that was an error meessage
about the EEPROM not being up to date or something like this.
Anyway, this tells me that the board is good for sure. So, to get back to my
initial problem, in issue #28 I believe that the final solution was to press
the reset button on the board after starting the read/write operation. I have
tried that several times with different timings but without success.
I am pretty sure that I have the latest drivers for the ftdi cable (april
2012), for both the com port and the USB serial converter devices in Windows.
The com port is set to 57600 and no other special setup. I have seen that there
are a lot of advanced configuration possible for the ftdi cable
(AN_107_AdvancedDriverOptions_AN_000073.pdf) but I didn't touch anything, I
tought it was supposed to work out of the box.
Finally, I at the point where I doubt that the ftdi cable is working properly.
I ordered an other one but I not sure it is really the cause of the problem.
Any ideas are welcome.
Thanks,
JL
Original comment by [email protected]
on 21 Oct 2012 at 10:27
from arducam-osd.
Jocelyn,
Did you see the advise at the end of my previous comment?
I'm guessing you did it just as a test, because uploading the firmware through
USBASP lead you to the first problem i.e. now your board has no bootloader. The
USBASP did overwrite it.
Like I said before: What you need is: set the fuses correctly and upload the
bootloader. So, you would use an FTDI for updating firmware and charsets and
configuring your OSD like everyone else.
Important question: Why are you're configuring your FTDI's com port at 57600?
Please left it as default: 9600-8-N-1.
Just to reinforce, here goes the needed AVRDude's command sequence:
avrdude -c usbasp -p m328p -U lfuse:w:0xFF:m
avrdude -c usbasp -p m328p -U hfuse:w:0xDA:m
avrdude -c usbasp -p m328p -U efuse:w:0x05:m
avrdude -c usbasp -p m328p -U flash:w:ATmegaBOOT_168_atmega328.hex
Original comment by [email protected]
on 21 Oct 2012 at 11:47
from arducam-osd.
Hi,
You guessed it right, it was just as a test to prove that the board was working
properly.
I followed your previous instructions as well, and I appreciate your involvment
in helping.
For the baud rate, I don't remember for sure, but I tought I saw something
somewhere that said it had to be 57600. I will try later today with 9600.
Thanks again.
JL
Original comment by [email protected]
on 21 Oct 2012 at 12:14
from arducam-osd.
No luck at 9600 either. I wonder how everyone else gets that working with all
the defaults settings since I can hardly figure out what is wrong with it.
To summarize :
- Board is not defective, I know for sure by "hard flashing" the code with
USBasp and trying it on the quad with the video setup;
- Bootloader flashed correctly on the board, according to your instructions
with no error messages during the process;
- Latest FTDI driver (VCP) 2.8.24.0 2012/04/10;
- Latest version of OSD_Config 2.1.2.0;
- Standard FTDI cable from DIYDrones;
- Trying to flash MinimOSD_20.hex;
- COM port set at 9600-8-N-1;
- Tried on different USB ports;
- Tried on different computers;
- Tried pressing the reset button after starting the read/write to the board;
I must be really stupid, but I do not see what is wrong with what I do. The
only thing left might be the cable itself.
Thanks anyway, I will try to see what else might be interfering with the
process.
JL
Original comment by [email protected]
on 21 Oct 2012 at 9:34
from arducam-osd.
Hi,
Just more info about my search for a solution :
I trying on a third computer running XP (my two other ones were Win7) with a
fresh install of the drivers, and I got the same results.
It is not really related, but I just received a 3DR telemetry kit and I got it
to work on my usual Win7 machine. The point is that it uses the exact same FTDI
drivers as the cable required to configure minimosd. So, I have to conclude
that my Windows installation and drivers are good, which brings me back to a
faulty cable as far as I can tell.
I will post more info when I receive the new FTDI cable that I ordered.
Thanks,
JL
Original comment by [email protected]
on 28 Oct 2012 at 11:20
from arducam-osd.
One more update that is worth it :
Since I have to wait for a new cable, I decided to opened the one I am trying
to use rigth now to see if there is something wrong with it. And as a matter of
fact there is !
You see on the picture a solder blob shorting two pins of the FTDI chip. That
would do it. However, this is well beyond my manual and visual abilities to
repair, so I will just wait for the replacement cable.
The bottom line : don't thrust any cable.
Thanks again for your help, you can surely close this issue.
JL
Original comment by [email protected]
on 28 Oct 2012 at 12:13
Attachments:
- [2012-10-28 08-07-23.jpg](https://storage.googleapis.com/google-code-attachments/arducam-osd/issue-30/comment-12/2012-10-28 08-07-23.jpg)
from arducam-osd.
Hi again,
I got the new FTDI cable and it worked on the first try.
Great software by the way !
Thanks.
JL
Original comment by [email protected]
on 31 Oct 2012 at 8:33
from arducam-osd.
Great news! Congratulations for sticking with it until get it working!
Did you fix the old cable too?
It's easy to fix it with an iron and a bit of flux.
Thanks for sharing the result with details. I will close this thread then.
Original comment by [email protected]
on 31 Oct 2012 at 11:35
- Changed state: Done
from arducam-osd.
Hi Beni, are you still monitoring this thread?
If so could you help me with my MinimOSD?
Thanks, Philip
Original comment by [email protected]
on 29 Mar 2014 at 12:24
from arducam-osd.
Related Issues (20)
- Warnings, Armed and Disarmed Notification Glitching on Panel 1
- Without Mavlink
- Load Custom Firmware Doesn't work
- problem compiling with arduino HOT 2
- OSD shows video but no data overlay + video feed shows noise on power up. HOT 1
- New APM modes not displaying on OSD HOT 2
- show decimals like 0.6m for the altitude. HOT 3
- "Update Charset" on power up with PX4
- kv osd with other controlers ? HOT 2
- GPS Time Stamp.
- Call
- Call Signs HOT 1
- MinimOSD - No overlay following EEPROM Flash HOT 1
- Either Video and no overlay OR unplug Fatshark cam and see grey screen with OSD HOT 2
- Support FrSky S.Port Telemetry HOT 3
- OSD displays data but no video
- Step by step guide
- Flight mode not shown for hexa- and octocopters HOT 1
- Hybrid renamed to PosHold
- Reduce the number of decimals on Lat/Lon on Display
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arducam-osd.