ArduiPi board working on Odroid-C1

Post Reply
mlinuxguy
Posts: 793
Joined: Thu Feb 28, 2013 10:28 am
languages_spoken: english
ODROIDs: X, X2, XU, XU3, XU4, C1, C1+, C2, N1, USB-IO
Contact:

ArduiPi board working on Odroid-C1

Unread post by mlinuxguy » Mon Feb 16, 2015 11:13 am

The ArduiPi board is a ATMEGA328 on a shield for the RPi
ref: http://hallard.me/arduipi-the-shield-th ... pberry-pi/

It is working perfect on my C1, following his instructions here:
http://hallard.me/arduipi-getting-started/

To get it working on the Odroid-C1 you need to install my port of WiringPi2-python:
https://github.com/mlinuxguy/WiringPi2-odroid-c1

You can reference my forum post here for further details on WiringPi2-python:
http://forum.odroid.com/viewtopic.php?f=115&t=9394

Follow his instructions exactly with the exception of the serial port instructions.
For the serial port use the Odroid-C1's: /dev/ttyS2

I created a simple flash.sh script to upload a blink LED HEX file that I created in the Arduino IDE

Code: Select all

# cat flash.sh
#!/bin/bash
avrdude -v -c arduino -p ATMEGA328P -P /dev/ttyS2 -b 115200 -U flash:w:blink.hex
use verbose mode on compile/upload in the IDE to see where the temporary HEX file is located

The flashing process looks like this:

Code: Select all

# ./flash.sh

avrdude-original: Version 6.0.1, compiled on Oct 21 2013 at 14:25:10
                  Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
                  Copyright (c) 2007-2009 Joerg Wunsch

                  System wide configuration file is "/etc/avrdude.conf"
                  User configuration file is "/root/.avrduderc"
                  User configuration file does not exist or is not a regular file, skipping

                  Using Port                    : /dev/ttyS2
                  Using Programmer              : arduino
                  Overriding Baud Rate          : 115200
strace: |autoreset: Broken pipe
strace: |autoreset: Broken pipe
                  AVR Part                      : ATmega328P
                  Chip Erase delay              : 9000 us
                  PAGEL                         : PD7
                  BS2                           : PC2
                  RESET disposition             : dedicated
                  RETRY pulse                   : SCK
                  serial program mode           : yes
                  parallel program mode         : yes
                  Timeout                       : 200
                  StabDelay                     : 100
                  CmdexeDelay                   : 25
                  SyncLoops                     : 32
                  ByteDelay                     : 0
                  PollIndex                     : 3
                  PollValue                     : 0x53
                  Memory Detail                 :

                                           Block Poll               Page                                           Polled
                    Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   R                    eadBack
                    ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --                    -------
                    eeprom        65    20     4    0 no       1024    4      0  3600  3600 0x                    ff 0xff
                    flash         65     6   128    0 yes     32768  128    256  4500  4500 0x                    ff 0xff
                    lfuse          0     0     0    0 no          1    0      0  4500  4500 0x                    00 0x00
                    hfuse          0     0     0    0 no          1    0      0  4500  4500 0x                    00 0x00
                    efuse          0     0     0    0 no          1    0      0  4500  4500 0x                    00 0x00
                    lock           0     0     0    0 no          1    0      0  4500  4500 0x                    00 0x00
                    calibration    0     0     0    0 no          1    0      0     0     0 0x                    00 0x00
                    signature      0     0     0    0 no          3    0      0     0     0 0x                    00 0x00

                  Programmer Type : Arduino
                  Description     : Arduino
                  Hardware Version: 3
                  Firmware Version: 4.4
                  Vtarget         : 0.3 V
                  Varef           : 0.3 V
                  Oscillator      : 28.800 kHz
                  SCK period      : 3.3 us

avrdude-original: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude-original: Device signature = 0x1e950f
avrdude-original: safemode: lfuse reads as 0
avrdude-original: safemode: hfuse reads as 0
avrdude-original: safemode: efuse reads as 0
avrdude-original: NOTE: "flash" memory has been specified, an erase cycle will be performed
                  To disable this feature, specify the -D option.
avrdude-original: erasing chip
avrdude-original: reading input file "blink.hex"
avrdude-original: input file blink.hex auto detected as Intel Hex
avrdude-original: writing flash (1116 bytes):

Writing | ################################################## | 100% 0.17s

avrdude-original: 1116 bytes of flash written
avrdude-original: verifying flash memory against blink.hex:
avrdude-original: load data flash data from input file blink.hex:
avrdude-original: input file blink.hex auto detected as Intel Hex
avrdude-original: input file blink.hex contains 1116 bytes
avrdude-original: reading on-chip flash data:

Reading | ################################################## | 100% 0.11s

avrdude-original: verifying ...
avrdude-original: 1116 bytes of flash verified

avrdude-original: safemode: lfuse reads as 0
avrdude-original: safemode: hfuse reads as 0
avrdude-original: safemode: efuse reads as 0
avrdude-original: safemode: Fuses OK (H:00, E:00, L:00)
strace: |autoreset: Broken pipe
strace: |autoreset: Broken pipe
strace: |autoreset: Broken pipe
strace: |autoreset: Broken pipe
strace: |autoreset: Broken pipe
avrdude-original done.  Thank you.

You could run the IDE on the Odroid-C1, but will have to manually find the HEX file to flash

I intend to put mine up on a tall pole with my weather gear to track severe storms, the Arduino
monitors the weather gear (speed, direction, humidity, UV) while the C1 acts as a ethernet shield
and weather website.
arduipi-c1.png
ArduiPI on Odroid-C1
arduipi-c1.png (1.22 MiB) Viewed 1105 times
Notes: The yellow wire hooks up DTR <--> pin 12 to reset the ArduiPI for uploading
The red and green wires are for the LED I had to test the "blink" example
I had to stick a plastic card between them to keep from shorting the boards

User avatar
odroid
Site Admin
Posts: 29348
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID
Contact:

Re: ArduiPi board working on Odroid-C1

Unread post by odroid » Mon Feb 16, 2015 12:15 pm

Thank you for the detail information.
I've add this nice board in the list of compatible add-ons.
http://forum.odroid.com/viewtopic.php?f ... 181#p74246

Post Reply

Return to “Hardware and peripherals”

Who is online

Users browsing this forum: No registered users and 2 guests