showjean/ps2avrU

How to compile the firmware from source?

Closed this issue · 14 comments

Is there a basic guide on how to compile this firmware manually and adjust the key schemes etc.?

Thanks in Advance

Install "WinAVR"
https://www.google.co.kr/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=winavr

Firmware folder : ps2avrU/firmware/ps2avrGB

Command :
prompt> make clean
prompt> make

You will get file "ps2avrGB.hex".

Sorry for my foor english.

I forgot to tell I was on OSX

make fails complaining ps2avrU.elf doesn't exist, to fix this, I renamed bootMapper.h/c to bootmapper.h/c and refactored the references

Then make complained usbconfig.h doesn't exist, so I renamed usbconfig-prototype.h to usbconfig.h of the usbdrv

Then make tried to re-compile usbdrv for usbdrvasm.o - and avr-gcc halts at that point - it just sits there

 Considering target file `../../source/usbdrv/usbdrvasm.o'.

    File `../../source/usbdrv/usbdrvasm.o' does not exist.

     Pruning file `../../source/usbdrv/usbdrvasm.S'.

    Finished prerequisites of target file `../../source/usbdrv/usbdrvasm.o'.

   Must remake target `../../source/usbdrv/usbdrvasm.o'.

avr-gcc -Wa, -gstabs -DF_CPU=12000000 -I../../source -mmcu=atmega32   -c -o ../../source/usbdrv/usbdrvasm.o ../../source/usbdrv/usbdrvasm.S

Putting child 0x7f8878d05ab0 (../../source/usbdrv/usbdrvasm.o) PID 79452 on the chain.

Live child 0x7f8878d05ab0 (../../source/usbdrv/usbdrvasm.o) PID 79452

Any ideas?

This is the original error:

      Trying pattern rule with stem `main'.

      Rejecting impossible implicit prerequisite `../../source/main.w'.

      No implicit rule found for `../../source/main.c'.

      Finished prerequisites of target file `../../source/main.c'.

     No need to remake target `../../source/main.c'.

   Considering target file `../../source/usbdrv/usbdrvasm.o'.

    File `../../source/usbdrv/usbdrvasm.o' does not exist.

     Pruning file `../../source/usbdrv/usbdrvasm.S'.

    Finished prerequisites of target file `../../source/usbdrv/usbdrvasm.o'.

   Must remake target `../../source/usbdrv/usbdrvasm.o'.

avr-gcc -Wa, -gstabs -DF_CPU=12000000 -I../../source -mmcu=atmega32   -c -o ../../source/usbdrv/usbdrvasm.o ../../source/usbdrv/usbdrvasm.S

Putting child 0x7fcaa0f004b0 (../../source/usbdrv/usbdrvasm.o) PID 79611 on the chain.

Live child 0x7fcaa0f004b0 (../../source/usbdrv/usbdrvasm.o) PID 79611 

In file included from ../../source/usbdrv/usbdrvasm.S:19:0:

../../source/usbdrv/usbdrv.h:12:23: fatal error: usbconfig.h: No such file or directory

 #include "usbconfig.h"

                       ^

compilation terminated.

Reaping losing child 0x7fcaa0f004b0 PID 79611 

make: *** [../../source/usbdrv/usbdrvasm.o] Error 1

Removing child 0x7fcaa0f004b0 PID 79611 from chain.

copying usbconfig.h and hardwareconfig.h returns the situation back to the first halting scenario

I don't think the makefile is structured well, as far as I understand, it shouldn't be trying to generate the usbdrvasm.o at all

compile folder : ps2avrU/firmware/ps2avrGB
right?

I don't know about OS X.

Yes, I "make" there, the makefile imports common.mk and others, however, it doesn't seem to resolve issues

Anyway, I give up :)
Going to use the pre-compiled .hex's and see how it goes

Edit: My main intention to compile was to try and extend the feature set a bit, or maybe remove all the extra features and generate a "lite" version etc.

This is from flabbergast over geekhack, he was kind enough to aid me in my quest to compile this firmware: https://freeshell.de/~teatime/make-the-bloody-thing-compile.patch

It turns out the avrlib is too old, doesn't compile with the new avr compilers, his solution was to replace it with: https://github.com/dreamiurg/avr-liberty

Thank you ^^

Excuse me, how to get through the source file “ps2avrGB-split.hex”?

execute ps2avrU/firmware/ps2avrGB/release.bat
You will find "ps2avrGB-split.hex" in "bin" folder.

Thank you very much for your answer to my question. I according to give your method of operation, can not be the bin folder, but could not find "ps2avrGB-split.hex" file, directory, only ps2avrGB.hex "file and brush into ps2avrGB-split master and connected to the computer, Download keymap obtained using Bootmapper clinet is all bad and brush can not write key, updating the firmware. Only RGB lights controlled effectively. Please help.

Excuse me, is it because my operating system is 64bit win10? Or because some settings do not do a good job? Can not directly provide a compilation of the completion of the "ps2avrGB-split.hex" to me? Thank you very much!

Thank you very much. I succeeded in the bread plate. Your design was very good. I like it very much.