How to setup Arduino to compile FW on a Mac?
 
Notifications
Clear all

How to setup Arduino to compile FW on a Mac?  

  RSS
Jim
 Jim
(@jim-3)
Eminent Member
How to setup Arduino to compile FW on a Mac?

I found the .pdf that has all the steps (delete LiquidCrystal directory and ArduinoAddons stuff), but cannot map the steps on a Mac.

Is it possible to do this on a Mac?

If so anybody got instructions to compile FW for the Prusa i3 MK2 on a Mac?

thanks
kc

Napsal : 11/07/2016 1:02 am
PJR
 PJR
(@pjr)
Antient Member Moderator
Re: How to setup Arduino to compile FW on a Mac?

Hi kc/Jim

I don't think you have to do much in the O/S. Here are my notes:

1. Download the latest Arduino IDE from Arduino.cc
2. Open the IDE, open file/preferences and set additional boards manager to the RAMBo repository: https:// raw.githubusercontent.com/ultimachine/ArduinoAddons/master/package_ultimachine_index.json
3. Open Tools/Boards/Boards Manager and install the RAMBo board.
4. Close the IDE.
5. Unzip the Prusa firmware source code and follow their instructions for your board.
6. Connect printer to PC
7. Double-click the Firmware.ino file - this will open the Arduino IDE
8. Ensure you have the RAMBo selected (Tools/Board)
9. Select the correct port, compile and upload.

Peter

NOTE: at step 2, I had to insert a space after https:// to prevent truncation of the link. You need to remove the space.

Please note: I do not have any affiliation with Prusa Research. Any advices given are offered in good faith. It is your responsibility to ensure that by following my advice you do not suffer or cause injury, damage…

Napsal : 11/07/2016 10:07 am
Omikron
(@omikron)
Estimable Member
Re: How to setup Arduino to compile FW on a Mac?

Hmm, what's the latest version of Arduino this has been tested on?

I'm on 1.6.12 and getting the following compilation error:

Arduino: 1.6.12 (Mac OS X), Board: "RAMBo"

In file included from sketch/SdFile.h:27:0,
from sketch/cardreader.h:8,
from sketch/Marlin_main.cpp:58:
SdBaseFile.h:38: error: using typedef-name 'fpos_t' after 'struct'
struct fpos_t {
^
In file included from sketch/Marlin.h:10:0,
from sketch/Marlin_main.cpp:38:
/Users/user/Library/Arduino15/packages/arduino/tools/avr-gcc/4.9.2-atmel3.5.3-arduino2/avr/include/stdio.h:950:33: note: 'fpos_t' has a previous declaration here
__extension__ typedef long long fpos_t;
^
exit status 1
using typedef-name 'fpos_t' after 'struct'

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

Napsal : 16/10/2016 7:20 am
ayourk
(@ayourk)
Reputable Member
Re: How to setup Arduino to compile FW on a Mac?

PJR, you can't use the "latest" Arduino software to compile the firmware for this printer yet. You have to use v1.6.8 and be sure to NOT update your CPUs to the latest software or you will be in the same mess with not being able to compile.

You do have to add a "board manager" plugin as listed here though so you can compile for RAMBo.

Dimensions PNG

and an 8 inch (200mm) or greater caliper is recommended.

Napsal : 16/10/2016 12:17 pm
PJR
 PJR
(@pjr)
Antient Member Moderator
Re: How to setup Arduino to compile FW on a Mac?

PJR, you can't use the "latest" Arduino software to compile the firmware for this printer yet

Aaron

On July 11th when that post was made, I was using the latest Arduino software to compile the firmware.

Things change...

Peter

Please note: I do not have any affiliation with Prusa Research. Any advices given are offered in good faith. It is your responsibility to ensure that by following my advice you do not suffer or cause injury, damage…

Napsal : 16/10/2016 1:02 pm
ayourk
(@ayourk)
Reputable Member
Re: How to setup Arduino to compile FW on a Mac?

PJR, you can't use the "latest" Arduino software to compile the firmware for this printer yet

Aaron

On July 11th when that post was made, I was using the latest Arduino software to compile the firmware.

Things change...

Peter

Sorry, didn't notice the time lapse.

Dimensions PNG

and an 8 inch (200mm) or greater caliper is recommended.

Napsal : 16/10/2016 1:18 pm
PJR
 PJR
(@pjr)
Antient Member Moderator
Re: How to setup Arduino to compile FW on a Mac?

Aaron

Not a problem. I have been caught out too many times; first thing I look at is the date of the post.

Peter

Please note: I do not have any affiliation with Prusa Research. Any advices given are offered in good faith. It is your responsibility to ensure that by following my advice you do not suffer or cause injury, damage…

Napsal : 16/10/2016 2:29 pm
Omikron
(@omikron)
Estimable Member
Re: How to setup Arduino to compile FW on a Mac?

PJR, you can't use the "latest" Arduino software to compile the firmware for this printer yet. You have to use v1.6.8 and be sure to NOT update your CPUs to the latest software or you will be in the same mess with not being able to compile.

You do have to add a "board manager" plugin as listed here though so you can compile for RAMBo.

Thanks for the tip ayourk!

Unfortunately, now I have a new compile error, even after following the instructions using 1.6.8:

Arduino: 1.6.8 (Mac OS X), Board: "RAMBo"

failed MSpanList_Insert 0x30c0a8 0x9ad6b1864689 0x0
fatal error: MSpanList_Insert

runtime stack:
runtime.MSpanList_Insert(0x2c6e30, 0x30c0a8)
/usr/local/go/src/runtime/mheap.c:692 +0x8f
runtime.MHeap_Free(0x2c6c20, 0x30c0a8, 0xc200000000)
/usr/local/go/src/runtime/mheap.c:500 +0x5b
runtime.MCentral_FreeSpan(0x2d05b8, 0x30c0a8, 0x2, 0xc2080aa000, 0xc2080ab000, 0x1000, 0x64)
/usr/local/go/src/runtime/mcentral.c:181 +0x1bb
runtime.MSpan_Sweep(0x30c0a8, 0x1100000000, 0x1)
/usr/local/go/src/runtime/mgc0.c:1099 +0x477
runtime.MHeap_Alloc(0x2c6c20, 0x1, 0x1000000000a, 0x10359)
/usr/local/go/src/runtime/mheap.c:240 +0x66
runtime.MCentral_CacheSpan(0x2ce098, 0x30c040)
/usr/local/go/src/runtime/mcentral.c:85 +0x167
runtime.MCache_Refill(0x307000, 0x10000000a, 0x30c040)
/usr/local/go/src/runtime/mcache.c:90 +0xa0

goroutine 1 [running]:
runtime.switchtoM()
/usr/local/go/src/runtime/asm_amd64.s:198 fp=0xc2080311c8 sp=0xc2080311c0
runtime.mallocgc(0x90, 0x1bbce0, 0xc200000001, 0xad)
/usr/local/go/src/runtime/malloc.go:178 +0x849 fp=0xc208031278 sp=0xc2080311c8
runtime.newobject(0x1bbce0, 0xc2080313f0)
/usr/local/go/src/runtime/malloc.go:353 +0x49 fp=0xc2080312a0 sp=0xc208031278
os.Stat(0xc20809d740, 0xb6, 0x0, 0x0, 0x0, 0x0)
/usr/local/go/src/os/file_unix.go:133 +0x4e fp=0xc2080312e0 sp=0xc2080312a0
arduino.cc/builder/gohasissues.walk(0xc2080b8a50, 0xad, 0x318c98, 0xc208036960, 0xc208031870, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/gohasissues/go_has_issues.go:69 +0x3b7 fp=0xc208031418 sp=0xc2080312e0
arduino.cc/builder/gohasissues.walk(0xc2080b8790, 0xa9, 0x318c98, 0xc208036870, 0xc208031870, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/gohasissues/go_has_issues.go:75 +0x516 fp=0xc208031550 sp=0xc208031418
arduino.cc/builder/gohasissues.walk(0xc208068840, 0xa1, 0x318c98, 0xc2080363c0, 0xc208031870, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/gohasissues/go_has_issues.go:75 +0x516 fp=0xc208031688 sp=0xc208031550
arduino.cc/builder/gohasissues.walk(0x7fff5fbffa7f, 0x9d, 0x318c98, 0xc208036370, 0xc208031870, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/gohasissues/go_has_issues.go:75 +0x516 fp=0xc2080317c0 sp=0xc208031688
arduino.cc/builder/gohasissues.Walk(0x7fff5fbffa7f, 0x9d, 0xc208031870, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/gohasissues/go_has_issues.go:46 +0xf2 fp=0xc208031828 sp=0xc2080317c0
arduino.cc/builder.findBuiltinToolsVersionsFile(0x7fff5fbffa7f, 0x9d, 0x0, 0x0, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/tools_loader.go:163 +0xa0 fp=0xc208031888 sp=0xc208031828
arduino.cc/builder.(*ToolsLoader).Run(0x2c0908, 0xc20803c570, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/tools_loader.go:50 +0x1ec fp=0xc208031a20 sp=0xc208031888
arduino.cc/builder.(*ContainerSetupHardwareToolsLibsSketchAndProps).Run(0x2c0908, 0xc20803c570, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/container_setup.go:59 +0x6b8 fp=0xc208031c10 sp=0xc208031a20
arduino.cc/builder.runCommands(0xc20803c570, 0xc208031d20, 0x4, 0x4, 0xc207ffcd01, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/builder.go:187 +0x139 fp=0xc208031ca0 sp=0xc208031c10
arduino.cc/builder.(*ParseHardwareAndDumpBuildProperties).Run(0xc208031d88, 0xc20803c570, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/builder.go:176 +0x204 fp=0xc208031d68 sp=0xc208031ca0
arduino.cc/builder.RunParseHardwareAndDumpBuildProperties(0xc20803c570, 0x0, 0x0)
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/src/arduino.cc/builder/builder.go:223 +0x49 fp=0xc208031d90 sp=0xc208031d68
main.main()
/Users/jenkins/jenkins/workspace/arduino-builder-macosx/main.go:310 +0x18b7 fp=0xc208031f98 sp=0xc208031d90
runtime.main()
/usr/local/go/src/runtime/proc.go:63 +0xf3 fp=0xc208031fe0 sp=0xc208031f98
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:2232 +0x1 fp=0xc208031fe8 sp=0xc208031fe0
arduino-builder returned 2

Error compiling for board RAMBo.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

Napsal : 16/10/2016 7:13 pm
Omikron
(@omikron)
Estimable Member
Re: How to setup Arduino to compile FW on a Mac?

Apparently even a renamed LiquidCrystal library such as Adafruit's was causing the new error. Deleting has brought me back to the same "using typedef-name 'fpos_t' after 'struct'" error I was getting before. :-/

Napsal : 16/10/2016 7:37 pm
Omikron
(@omikron)
Estimable Member
Re: How to setup Arduino to compile FW on a Mac?

Got it to compile in 1.6.12 and all others using advice from here: http://forums.reprap.org/read.php?146,691608,699987#msg-699987

Rename fpos_t variables in SdBaseFile.h and SdBaseFile.cpp to another name like fpos_t1 and recompile. Problem is in C++ you can not use typedef and struct for the same varibale name.

Looks like a possible bug/typo in this version of Marlin?

Napsal : 16/10/2016 8:04 pm
david.b14
(@david-b14)
Honorable Member
Re: How to setup Arduino to compile FW on a Mac?

Another approach is install Vagrant on the on the Mac: http://sourabhbajaj.com/mac-setup/Vagrant/README.html

Once vagrant is installed you can download VM that has the Arduino IDE: https://github.com/StefanScherer/arduino-ide

Napsal : 04/11/2016 5:46 pm
Share: