PIC32-MAXI-WEB v1.03 for MPLABX

Started by MAX, June 21, 2013, 05:58:41 PM

Previous topic - Next topic

MAX

Hello Olimex Team

I am starting to  work with MPLABX IDE on a PIC32-MAXI WEB Board

I have downloaded the sw pack:
DemoSoft PIC32-MAXI-WEB v1.03 for MPLABX 1.80/MPLAB 8.91 and XC32 1.21

I cannot find in it the .x project for the Graphic_lib.x and also for the "Additional Projects"...
Why are they not included such as the others for ex. MainProgram.x, freeRtos.x etc.?
Thanks

Max

LubOlimex

Hey Max,

Thank you for the report.

This is indeed true. Will be fixed soon.

Best regards,
Lub/OLIMEX
Technical support and documentation manager at Olimex

Stanimir5F

Hi Max,

The library project for the graphics was missing indeed and it was fixed. You can download the new zip file on our web. It is a mystery to me how did I miss it. Maybe something related with SVN control... who knows :)
But anyway thank you for your report and please accept my apologize for the inconvenience.

As for the additional projects. They have nothing to do with the demo project. That's why they aren't included among the MainProject libraries. And also they are compiled with different compiler since they are based on much older stack.

Stenli, Olimex
May the Source be with You!

gyula.horvath87

Hello Olimex Team,

I would like to use the PIC32-MAXI-WEB demo 1.03 Prebuilt from the DemoSoft PIC32-MAXI-WEB v1.03 from MPLABX 1.80/MPLAB 8.91 and XC32 1.21 project with my Olimex PIC32 maxi-web panel.
Unfortunately after the programming the hex file with pickit 3 I just got a white screen.
I tried to power the panel from the mini USB port. The power led light, but no mouse movement under WINDOWS 7.

The version 1.01 working fine.

I also tried to compile from MplabX, but I got the same problem after the programming.
Could you please help me to solve the problem?

Many thanks,
Gyula Horvath

Stanimir5F

#4
Hi Gyula,

Thanks for your report!
At first when I read your problem I was shocked because I have tested this demo for a very long time and I was almost sure about its functionality. So when I saw your problem I was really surprised because it is a general problem! Problem which is IMPOSSIBLE to be missed!
But when I start debug it I realize the essence of the problem. We have this board with both ILI9320 and ILI9325 TFT displays which are similar but they have different ID. It seems when I was developing the project I used the board with ILI9325 and I have no problems with it but on the ID checking of ILI9320 the program failed. The fix was easy but finding it was bigger problem.
So thank you very much for this helpful report and once again I have to apologize for my mistake.

Now the new demo on the page is updated so you can download it and see that the only difference is in the "DemoSoft PIC32-MAXI-WEB v1.03\Microchip\Graphics\Drivers\drvTFT001.c" file, line 590:
   if ((DISPLAY_CODE != 0x9325) && (DISPLAY_CODE != 0x9320))
instead of:
   if (DISPLAY_CODE != 0x9325)

Best regards and thank you once again!
Stancho, Olimex
May the Source be with You!

technicano

#5
Hello Stancho / Olimex Team,

I have 3 MAXI-WEB boards, and they do not behave the same.
All 3 worked fine out of the box, with the preloaded firmware.
However when loading them with a new hex file they behave differently.

nr1 : After reflashing with own compiled hex file or with PIC32-MAXI-WEB demo 1.03 Prebuilt.hex it shows a white screen. The usb mouse cursor motion routine works though, so the firmware is sure loaded onto it (i can change the mouse behaviour). Touch also works, i can control the relays by pressing the right positions.
But i cannot see on the display, it is always blank.


nr2 : Reflashing with own compiled hex file or with PIC32-MAXI-WEB demo 1.03 Prebuilt.hex makes it work fine,
i can modify/add gui text and it is displayed OK. This is with exactly the same hex file as i test on nr 1.

nr3 : I did not reflash this unit yet, it is in original state, so it still works with the preloaded demo.


I am using the latest 1.03 firmware from the website, i checked drvTFT001.c and it contains your recent fix :
   if ((DISPLAY_CODE != 0x9325) && (DISPLAY_CODE != 0x9320)) ...

After reading this topic, I wonder if it is possible that i have another incompatible tft display on pcb nr 1 ? I don't see a serial number on the board, please let me know anything i could check.

Thanks a lot !
Technicano   


Stanimir5F

Hi Technicano,

I'm sorry but unfortunately I can't really help you since I can't recreate the problem that you describe. Everything is fine with the boards I tried so I can only suggest you few things but I don't know if it could help you.

First are all of the boards bought together or you bought one first and after that the other two? The idea is to check if they are from the same group. As for your question about the displays... no, there aren't any other kind of displays. Only these two: ILI9320 and ILI9325.

As long as I understand you have a programmer device, so can you read the program memory from the last board (with the original firmware), keep it as a backup and then program with it the problem board (the first one)? Check if it is working as it was in the beginning or it has a problem. Then (after you make the backup hex) try to program the third one with the prebuilt hex and see the effect on it: is it working (like second board) or not (like the first one)?

You can also read the memory from the first two boards that you already programmed with the prebuilt hex and check if they are the same. They should be, but... who knows. if the problem is in the flash memory it might be different the content in the memory.

Also if your programmer has a debugger can you build the project (if it's possible with XC32 v1.21 compiler) and check whether in the code it passes the display functions correctly or there are some kind of errors?

Once again I apologize for the unhelpful answer but I can't solve a problem I don't have so your feedback will be very important.

Stan, Olimex
May the Source be with You!

technicano

Hello Stan,
thanks for following up,
I bought all 3 boards at the same time.

Your suggestion is helpful :
I read out the memory from board nr 3 and programmed it into board nr 1... (using IPE)
and the display of board 1 works again!! The demo is displayed correctly.
So I am sure the board is not broken that is a good thing.
I will test more later on (exchanging firmwares trying to find out what is/was wrong),
and I'll keep you posted in this thread.

Thanks!
Technicano


technicano

Hi Stan,
it is mysterious : board nr1 works ok now ... also when i program my very same my custom code in it !!
Is there any dependency on configuration parameters, that could have been erased
and caused the display interfacing to fail ?
How could my backup from unit 3 repair the situation ?

Anyway the board works fine now :-) Still some mystery remains...
Any ideas for further testing are welcome !

Take care
Technicano

Stanimir5F

#9
Hi again,

I'm glad to hear the problem is solved since I had no more ideas about it :)

About the mystery how it worked (by the way I like very much this word "mystery" :) )? Well the configuration options might cause a problem of course but only if you edit them. By default they are set in the code in the main.c file of MainProgram project line 20-43. If you didn't change them they should be OK.

There is on option the hex wasn't written correct during the loading. It happens very, very rare, but still it's possible. Usually when this is the problem I just reprogram the board and I don't pay attention to it.
It will be bad if this happens again. It will be a sign of some sort of a hardware problem. If so - try to read the hex from the board and compare it with the prebuilt and see if they are same.

Stanimir, Olimex
May the Source be with You!