- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,all,
Many days ago I designed the automatically downloading function in my VC application software on the application software running. It was successful everytime.
Yesterday I added many functions in the firmware code, Strangely after the VC application software run the firmware didn't run. To judge which secton the problem is in, I downloaded the .hex file (firmware) by Cyconsole.exe. The firmware was running after the downloading. So the problem was in my automatically downloading function in my VC application software. The firmware is right.
But the strange thing is the automatically downloading function can download the firmware I designed before yesterday. I observe the differences of the .hex files. I found the firmware which can't be downloaded is larger than the others. Its file size is 14KB, the others are about 10KB. So this could be the problem. But I don't know how to solve it. Can anybody help me?
Thanks & Best regards,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
can somebody reply to me
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
What do you meant by autoatically download application? Can you please detail a little what your application does ( Flow chart kind of explanation).
Regards,
Gayathri
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I download the firmware automatically so that i don't need to download the firmware everytime manually. I add the function in my application software so that only one application software can run the 68013, Or it need the application software and the Cyconsole.exe to run the 68013. It's not convenient. Do you get it?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Sorry that I still did not understand what your application does. Can you please give me a flow chart kind of description. Is it something similar to a script download?
Regards,
Gayathri
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,Gayathri,
In my application software, I download the firmware(.hex file) into 68013 with request code 0xa0. The .hex file is generated by Keil. I download the hex file in the function CBmpDlg::OnInitDialog().
If the firmware download succesfully 68013 would turn on the LED light, Then drive the temperature sensor. Then 68013 transfer the temperature data to application software. And the application software receive the temperature data in the main thread. The application software circularly receive, compute the data and display them in the mainthread.
I judge the firmware download fail from the LED light.
Many days ago I designed the automatically downloading function in my VC application software on the application software running. It was successful everytime.
Four days ago I added many functions in the firmware code, Strangely after the VC application software run the firmware didn't run. To judge which secton the problem is in, I downloaded the .hex file (firmware) by Cyconsole.exe. The firmware was running after the downloading. So the problem was in my automatically downloading function in my VC application software. The firmware is right.
But the strange thing is the automatically downloading function can download the firmware I designed before which doesn't add those functions. I observe the differences of the .hex files. I found thehex file which can't be downloaded is larger than the others. Its file size is 14KB, the others are about 10KB. So this could be the problem. But I don't know how to solve it. Can anybody help me?
Best regards & Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
From the problem definition, I think we will have to have a look at both the firmware as well as the application to get to the root of the issue. Please create a tech support case at http://www.cypress.com/ -> Support -> Technical Support -> Create a case.
Regards,
Gayathri
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
thanks for your advice.
But I think it's a waste of time.
And I don't think you read my description of the problem in detail. I even have a sense that you are an intern in Cypress, you are not familiar with debugging.
Here I repeat my problem
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
I downloaded the .hex file (firmware) by Cyconsole.exe. The firmware was running after the downloading. So the problem was in my automatically downloading function in my VC application software. The firmware is right.
But the strange thing is the automatically downloading function can download the firmware I designed before yesterday. I observe the differences of the .hex files. I found the firmware which can't be downloaded is larger than the others. Its file size is 14KB, the others are about 10KB. So this could be the problem.
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
So if I have the source code of the downloading firmware in Cyconsole.exe, the problem would be find out.
so would you please tell me where I can find the source code of the downloading firmware in Cyconsole.exe
Best regards & Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have found the download firmware source code which is provide by Anand.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Guys,
Be friendly on the forum. We're just trying to help each other out. That is all.
Is your new firmware exceeding the 16k internal memory boundary? If so, are you downloading vend_ax and then using 0xA3 vendor request to write to external memory or are you using 0xA0 to write to external memory as well?
Regards,
Anand
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,Anand,
the firmware is only 14KB, I use the request code 0xa0. The downloading code successfully works when the firmware size is about 10KB. so it really puzzled me.
Best regards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Even if firmware size is less than 16KB there can be parts of code located in external memory. If it is completely located in internal memory the same host application code should work properly irrespective of the code being 10k or 14k.
When you download the same firmware using CyConsole do you see A3 Vendor request being used anywhere (The print messages in CyConsole which happen during firmware download will the vendor request being used for each of the transfers, you should be able to find it from there)
Use can use the application provided by me as well, it also outputs this information.
By the way is urs a CyAPI.lib based host app or CyUSB.dll based host app?
Regards,
Anand
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,Anand,
thanks for your immediate reply, I downloaded the firmware with Cyconsole.exe a moment ago. the attachment file is the copy of the output window.
however i didn't find vendor request A3. furthermore i don't use external memmory on my PCB board.
so the thing is more complicated.
I use the Cyapi.lib in my application software.
Best regards & Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Then your application is doing something funny. Please try outputting the data that is being sent and compare it with the CyConsole print output.
Start from "Toggle 8051 Reset (01)" that is in the middle of the output that you attached. That is from where the download of your firmware is happening.
Regards,
Anand
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
ok i will trry it