Arachnio Due

30 views
Skip to first unread message

Pierce Nichols

unread,
Sep 1, 2015, 11:59:54 AM9/1/15
to Arduino Developers
Back in the spring, I attempted (and failed) to Kickstart a variant of
the Arduino Micro with an ESP8266 onboard to provide WiFi
connectivity. The most useful piece of feedback I got was repeated
requests to do it again with an ARM.

I redesigned it with a SAM3S, but then Thibaut Viard got in touch with
me and suggested using a SAM4S, and told me that he's been working on
a port of the Arduino to the SAM4S, which a very nice chip, and a
drop-in replacement on the hardware side.

You can read a bit about it on my hackaday.io site for the project,
here: https://hackaday.io/project/5192-arachnio-due. All the pictures
are still for the former version; I hope to get new ones up this
weekend or next.

Thibaut's experimental core is here:
https://github.com/aethaniel/ExperimentalCore-sam. It's definitely a
work in progress, but it's coming along nicely. My working fork is at
https://github.com/logos-electromechanical/ExperimentalCore-sam and
contains pin mappings and the like.

My porting of the WiFi library to work with the ESP is here:
https://github.com/logos-electromechanical/WiFiESP. It's pretty rough
and I have done next to nothing on the UDP front, but the rest of it
is at least roughed out.

-p

PS -- what is the platform.txt variable that points to the current
core directory? I'd like to add some search directories to the compile
using -I and I can't quite figure out how to do it.

--
Pierce Nichols
Principal Engineer
Logos Electromechanical, LLC

Thibaut VIARD

unread,
Sep 1, 2015, 12:11:47 PM9/1/15
to devel...@arduino.cc

Hi Pierce,

Regarding your question in the 'PS', you can add your own -I paths in boards.txt at line [variant].build.extra_flags

Cheers,

Thibaut

--
You received this message because you are subscribed to the Google Groups "Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to developers+...@arduino.cc.

Pierce Nichols

unread,
Sep 1, 2015, 12:23:03 PM9/1/15
to Arduino Developers
Thibaut,

I was wondering how to define paths relative to the cores directory.
IOW, [variant].build.extra_flags = "-I{some_variable}/myFolder"...
what goes in {some_variable} if I want it to point to a subdirectory
of the cores directory?

-p

Thibaut VIARD

unread,
Sep 1, 2015, 12:28:49 PM9/1/15
to devel...@arduino.cc

If I remember well, the IDE looks into all subfolder for compilation but it maybe doesn't add the subfolders to gcc include path.

You can consider using relative path with some ../../my folder in this variable but I would see nicer to use the relative path in the #include lines of your code (if you met the issue in your code and not mine).

I didn't test yet using Arduino IDE as I'm using gdb for some step by step debug but I can do some tests and commits dedicated to that subject before end of week.

Pierce Nichols

unread,
Sep 1, 2015, 1:46:00 PM9/1/15
to Arduino Developers
Thibaut,

That would appear to be the case for IDE 1.6.5. I figured it would be
easier to add some flags to platform.txt rather than re-arrange
everything.

-p

Roger Clark

unread,
Sep 1, 2015, 6:09:42 PM9/1/15
to devel...@arduino.cc
I'm not an expert on the Due, but the way we handle this with the STM32 cores is to have separate linker .ld files, which we select via different board configurations in boards.txt

We use sub menu's to select whether the code is linked at the base address (which for us is 0x800000) or linked to be run in a system with a bootloader in which case the same code is linked to start address 0x8002000

I think there is one other vector that we have to change as well. If you want the details let me know.

Cristian Maglie

unread,
Sep 3, 2015, 5:36:19 AM9/3/15
to devel...@arduino.cc
Il 01/09/2015 17:59, Pierce Nichols ha scritto:
> PS -- what is the platform.txt variable that points to the current
> core directory? I'd like to add some search directories to the compile
> using -I and I can't quite figure out how to do it.

Hi Pierce,

The core path is in {build.core.path} as explained also here:

https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5-3rd-party-Hardware-specification#boardstxt

BTW since the root core folder is already in the {include} paths you can
include headers in subfolders like:

#include <USB/USBCore.h>

as we already do for example for the Due core:
https://github.com/arduino/Arduino/tree/master/hardware/arduino/sam/cores/arduino

This is the preferred method IMHO because it doesn't rely on specific
include paths.

C


--
Cristian Maglie <c.ma...@arduino.cc>

Cristian Maglie

unread,
Sep 3, 2015, 5:40:10 AM9/3/15
to devel...@arduino.cc
Il 01/09/2015 18:28, Thibaut VIARD ha scritto:
> You can consider using relative path with some ../../my folder in this

Hi Thibaut!

from your sentence I don't understand if you are suggesting or
discouraging the use of "../.." in #includes.

To be sure I feel to strongly discourage such usage. :-)

C

Thibaut VIARD

unread,
Sep 3, 2015, 6:02:03 AM9/3/15
to devel...@arduino.cc

Hi Cristian,

I wasn't either suggesting or discouraging but only proposing to test using this method.

As i will soon do the tests of my purely experimental core with IDE, the solution will be found quickly and will certainly be close to what we did for the Due.

Cheers,

Thibaut

Paul Stoffregen

unread,
Sep 3, 2015, 2:45:06 PM9/3/15
to devel...@arduino.cc
On 09/01/2015 08:59 AM, Pierce Nichols wrote:
> I redesigned it with a SAM3S, but then Thibaut Viard got in touch with
> me and suggested using a SAM4S, and told me that he's been working on
> a port of the Arduino to the SAM4S, which a very nice chip, and a
> drop-in replacement on the hardware side.
>
> You can read a bit about it on my hackaday.io site for the project,
> here: https://hackaday.io/project/5192-arachnio-due. All the pictures
> are still for the former version;

Was the prior version a SAM3S chip?

The marking on the chip in your photos sure looks like a ATMEGA32U4...



Pierce Nichols

unread,
Sep 3, 2015, 2:49:53 PM9/3/15
to Arduino Developers
The pictures are from the one I did the Kickstarter with, which is a
32u4, like a standard Arduino Micro.

-p
> --
> You received this message because you are subscribed to the Google Groups
> "Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to developers+...@arduino.cc.



Reply all
Reply to author
Forward
0 new messages