I have a RPi and Arduino. I was wondering, if GrovePi uses the same chip as Arduino Uno therefore I can “convert” Arduino to GrovePi. Is there a diagram, or schematics that would show witch pin from RPi goes to witch on ATMega328. That would be so great!
Hi Rok,
The pinouts on both the GrovePi and the Arduino is almost the same. The difficult part is getting the level conversion right. The Raspberry Pi runs at 3.3v and the Arduino at 5V. You’ll need proper level conversion so that both can talk to each other properly otherwise there’s always a danger that you can end up destroying both your boards.
If you just want to access the pins from the Raspberry Pi, then Arduberry( http://www.dexterindustries.com/Arduberry/ ) might be something that you might be interested in.
Hi Rok,
The GPIO pins that are connected to the AT328 are the Serial, I2C and the SPI lines with proper level conversion. Other pins are not connected.
Instead of individually controlling each pins, the Raspberry Pi sends the GrovePi a command to do an operation. The GrovePi receives the command interprets it and performs the action.All this hapopens on the I2C line. We have SPI also connected for uploading the code.
I have seen Arduino Mini 5V 16Mhz being powered at 3V3 and still run smoothly. So instead of a level converter, I can directly power the Arduino Mini from the 3V3 power of the raspi and direct connect all the I/Os between raspi and arduino. Is it possible this way?
Since the arduino is being programmed via ICSP (ISP lines), does it still need the arduino bootloader?
On paper you can run the GrovePi at 3.3V but we have never tried and and don’t recommened it too because the Atmega328 is rated to work at 12Mhz at 3.3V, it might become unreliable after that. Also, all the grove sensors expect 5V, so they might also become unreliable and the Pi 3.3V supply can give max of 50mA which is not a lot.
It does not need the bootloader, though you can still use it if you want, but ISP is much better.
Arduino mini with the GrovePi firmware should work. Be a bit careful wit the pin assignment
Yeah, the GrovePi is similar to firmwata in terms of how it works with the exception that everything is optimized to work on I2C
Yeah, serial is free to use
You can connect any I2C device on the I2C lines which does not use the address 0x04.
I am evaluating the usefulness of GrovePi and wyliodrin in my father’s house to send predermined messages (that one I am still thinking what to use, email or other similar strategy). Also I need to send messages between 2 Rpi to flash a few sets of LED to depending on what button my father pressed (which in this case tells me what kind of problem he is having). Though, flashing LED can b done by Rpi via wyliodrin.
GrovePi is used extensively in Wyliodrin and also useful for kids to learn programming. I am also considering Modkit to teach my kids to learn programming.
I got curious by GrovePi and wanted to build one for my self becoz I want to try the buzzer program in the Wyliodrin example as show below;
=============================
from wyliodrin import *
import os
from time import *
from threading import Timer
if os.getenv (“wyliodrin_board”) == “raspberrypi”:
grove = 300
grovepiSetup (grove, 4)
else:
grove = 0