Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Duinomite Mega Pinguino32 bootloader
14-02-2012, 06:33 PM,
#1
Duinomite Mega Pinguino32 bootloader
Hi all,
I have Duinomite Mega board from Olimex, and i want to use it with Pinguino IDE. But can't find appropriate bootloader for it.
MCU is PIC32MX795F512H-80I/PT
I tried 32bit loaders from extra directory, but device does not enter bootloader mode.



Thank You in advanceSmile

~Best
Reply
14-02-2012, 10:33 PM,
#2
RE: Duinomite Mega Pinguino32 bootloader
Doesn't it include an appropriate bootloader already?

You'll need to hold down the user button at reset of course.

John
Reply
15-02-2012, 09:28 AM,
#3
RE: Duinomite Mega Pinguino32 bootloader
Hi John,
when i hold down both buttons board enters in bootloader mode , but i cant upload hex to it.
When Pinguino IDE tries to connect to the board , i get this error message :
/root/pinguinoX.2/linux/p32/bin/ubw32 Error: UBW32 not found (is device attached and in Bootloader mode?)
If I execute ubw32 from console with this parameters :
ubw32 -w /root/pinguinoX.2/examples/4.Communication/USB/CDC/usb32.hex -v 15ba -p 0032 -e -r
it writes hex to device, but device didn't react to uploaded hex.
I tested with Blink example and UBW32 795 and Emperor 795 boards from board menu.

~Best
Reply
15-02-2012, 10:49 AM, (This post was last modified: 15-02-2012, 10:51 AM by pingotg.)
#4
RE: Duinomite Mega Pinguino32 bootloader
I was going to say look at dmesg (to make sure the HID device appears and its IDs) but your ubw32 line looks OK (if slightly odd in putting the -e later than the -w; you're relying on ubw32 changing the order!).

As ubw32 runs, does it output anything (such as dots)? If yes, it's working.

In that case, I'd think it's your program source that needs changing (such as LED port bits) or the details of its "linking" (using ld) - in quotes because it's the address allocation I'd focus on rather than what gets linked in. A MAP file may help you. Also, you may need to set the "processor" using -mprocessor (IIRC) or some such magic.

John
Reply
15-02-2012, 12:08 PM,
#5
RE: Duinomite Mega Pinguino32 bootloader
Hi,
PIC32 Pinguino bootloaders have to be build not only for processors but also for boards (in order to manage switches and leds).
The port of the Duinomite Mega board from Olimex has not yet been done.
This is not officially supported by the pinguino team at that moment (too much work).
But it is feasible. A good news is that PIC32MX795 is already supported by Pinguino IDE. Any volunteer ?
Here is what I would do :
1/ download the UBW32 bootloader sources (http://www.schmalzhaus.com/UBW32/) which are based on an old version of the microchip UBS HID bootloader.
2/ edit the hardware profile files and change the leds and switches pins
3/ build the project with mplab or mplabx
4/ upload the new bootloader in the chip with your pickit
5/ add a new board definition in boards.py
6/ update p32/pinguino/include/core/digitalw.c to manage Duinomite pins
As far as I know, it should work.
Good luck !
Régis

(15-02-2012, 10:49 AM)pingotg Wrote: I was going to say look at dmesg (to make sure the HID device appears and its IDs) but your ubw32 line looks OK (if slightly odd in putting the -e later than the -w; you're relying on ubw32 changing the order!).

As ubw32 runs, does it output anything (such as dots)? If yes, it's working.

In that case, I'd think it's your program source that needs changing (such as LED port bits) or the details of its "linking" (using ld) - in quotes because it's the address allocation I'd focus on rather than what gets linked in. A MAP file may help you. Also, you may need to set the "processor" using -mprocessor (IIRC) or some such magic.

John

It is easier to complain than it is to do, but it is better to do than it is to complain.
Reply
15-02-2012, 05:14 PM,
#6
RE: Duinomite Mega Pinguino32 bootloader
Hi regis,
if i understand correctly, DM Bootloader is a modified UBW32 bootloader /i learned that from Olimex support/
I added new board to boards.py, but the syntax of digitalw.c confuses me.

~ Best

(15-02-2012, 12:08 PM)regis Wrote: Hi,
PIC32 Pinguino bootloaders have to be build not only for processors but also for boards (in order to manage switches and leds).
The port of the Duinomite Mega board from Olimex has not yet been done.
This is not officially supported by the pinguino team at that moment (too much work).
But it is feasible. A good news is that PIC32MX795 is already supported by Pinguino IDE. Any volunteer ?
Here is what I would do :
1/ download the UBW32 bootloader sources (http://www.schmalzhaus.com/UBW32/) which are based on an old version of the microchip UBS HID bootloader.
2/ edit the hardware profile files and change the leds and switches pins
3/ build the project with mplab or mplabx
4/ upload the new bootloader in the chip with your pickit
5/ add a new board definition in boards.py
6/ update p32/pinguino/include/core/digitalw.c to manage Duinomite pins
As far as I know, it should work.
Good luck !
Régis

(15-02-2012, 10:49 AM)pingotg Wrote: I was going to say look at dmesg (to make sure the HID device appears and its IDs) but your ubw32 line looks OK (if slightly odd in putting the -e later than the -w; you're relying on ubw32 changing the order!).

As ubw32 runs, does it output anything (such as dots)? If yes, it's working.

In that case, I'd think it's your program source that needs changing (such as LED port bits) or the details of its "linking" (using ld) - in quotes because it's the address allocation I'd focus on rather than what gets linked in. A MAP file may help you. Also, you may need to set the "processor" using -mprocessor (IIRC) or some such magic.

John

Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)