Welcome to the community! You can follow the Getting Started Guide using the Edison Mini Breakout Board. Just remember you have to flash the Edison before, see this document for more details: Flashing Edison (wired) - Windows.
In order to identify the pins I'll recommend you to check this other post: Mapping for digital and analog Arduino pins. Check the pdf document attached in the post. There you will find which pin on the Arduino Expansion Board correspond to which GPIO on the Edison Module. Once you have this information, you can check this document: The specified item was not found.. So, with the Edison Module pin name you can find it on the table 2, page 7, and identify which is the pin on the Mini Breakout Board.
Let me know if you have more questions about it. Have a nice day.
You have to consult the Arduino breakout board schematic and identify which GPIO pin is mapped to which Arduino pin. So, for example, GPIO 45 is mapped to A2 IIRC, or something like this. Then check the Mini breakout board schematic and find that GPIO 45 is mapped to J17-4 or something like that (I'm making it up but this is the general idea). Then in your Arduino sketch, when you label and control the A2 pin, you have to connect the A2 jumper to pin J17-4 on the mini breakout board. It's pretty straightforward but tedious to do this triple mapping for several pins, but it works. Note that the Arduino IDE is set up to use I2C6 and not I2C1.
You can solder short headers into the bottom of the Intel mini-breakout board. Then you can use breadboarding wires to connect to peripherals or to a prototyping board. They expose pin rows J17-J20 rows 1-14. The pinouts themselves are listed in the Edison Breakout Board Hardware Guide_331190-003.pdf pp 7-8.
You can access the pins directly via the mraa library from C/C++, Python, or NodeJS:
- mraa source, examples, and docs: intel-iot-devkit/mraa · GitHub
- Breakout board pin codes via MRAA: mraa/edison.md at master · intel-iot-devkit/mraa · GitHub
If you'd rather not mess with the Intel board, Sparkfun has a breakout board coming out (Intel® Edison Block - GPIO - DEV-13038 - SparkFun Electronics) and a few people around these parts have mentioned they are working on their own breakout board designs.
Hello to all and thanks to "raminf" for the hints!
I've got my Edison with mini break outboard yesterday, played around and flashed the latest image, so far all things went well and i'm happy.
Now i also want to start with programming the microcontroller and i prefer coding in C for efficiency. It's not easy to find the relevant things quickly and i have some questions:
I see lots of people here talking about writing/migrating Arduino sketches and until now i thought, the Edison microcontroller runs standalone with a sketch just like in the old Arduino/Atmel world and the communication with Linux is only possible using a serial builtin interface.
What i've seen so far, the Edison concept is different and it makes sense. Am i right when i say Linux may have common memory regions together with the uC and a Linux program can work immediatedly with results from the uC and the uC ports can be easily adjusted from a Linux program ? Can someone acknowledge this please?
And if so, is the "mraa" library the most efficient way to program the uC ?
Together with a sketch, which uses f.e. shared memory with a Linux process (supported by the Intel "Arduino" IDE) ?
Is it possible to compile a sketch on command line (without IDE) on Edison ?
Thanks in advance for your help!
--And if so, is the "mraa" library the most efficient way to program the uC ?
Yes MRAA and UPM on GitHub most example code in C C++ and other.
--Together with a sketch, which uses f.e. shared memory with a Linux process (supported by the Intel "Arduino" IDE) ?
Arduino IDE includes the cross compiler (exactly compiler on Edison Linux System)
Debugging and programming is excelent with Intel XDA. Arduino IDE can only debugging with Serial Port.
--Is it possible to compile a sketch on command line (without IDE) on Edison ?
Yes write you code and compile it with make or cmake on commandline.All header and library are included on system. (see example file on GitHub)
@SkyAndy: Many thanks for the info, that's what i wanted to know.
"Note that the Arduino IDE is set up to use I2C6 and not I2C1." How can I adjust my arduino code to use 12C1? Like Blinky for example?
I don't see any .js files in that repo...? Only .ino and .cpp.
Hi,raminf,i had saw the link:mraa/edison.md at master · intel-iot-devkit/mraa · GitHub.
i use mini-breakout board with newest image and updated libmraa0..but i can drive the sensor with I2C6,but not with I2C1.
and I'm sure that J18_6 -> I2C1_SCL J17_8 -> I2C1_SDA..
but the link tell me that :
Intel(R) breakout board
- Both I2C buses are avaible 1 & 6
so, what's the matter?