Difference between revisions of "Raspberry Pi"

From YobiWiki
Jump to navigation Jump to search
m
Line 45: Line 45:
 
$ ls /dev/spi*
 
$ ls /dev/spi*
 
/dev/spidev0.0 /dev/spidev0.1
 
/dev/spidev0.0 /dev/spidev0.1
Test:
+
===Test===
 
wget "http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob_plain;f=Documentation/spi/spidev_test.c" -O spidev_test.c
 
wget "http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob_plain;f=Documentation/spi/spidev_test.c" -O spidev_test.c
 
gcc -o spidev_test spidev_test.c
 
gcc -o spidev_test spidev_test.c
Line 58: Line 58:
 
* http://www.brianhensley.net/2012/07/getting-spi-working-on-raspberry-pi.html
 
* http://www.brianhensley.net/2012/07/getting-spi-working-on-raspberry-pi.html
 
* see also [http://mitchtech.net/wp-content/uploads/2012/08/raspi_arduino_spi.png SPI pinout] example with an Arduino
 
* see also [http://mitchtech.net/wp-content/uploads/2012/08/raspi_arduino_spi.png SPI pinout] example with an Arduino
 
===Python===
 
* http://louisthiery.com/spi-python-hardware-spi-for-raspi/
  +
* https://github.com/lthiery/SPI-Py
  +
Warning: at time of writing, functions described in the [https://github.com/lthiery/SPI-Py/wiki/Functions wiki] didn't match code anymore.
 
===SPI-NFC===
 
===SPI-NFC===
 
tests...
 
tests...
Line 70: Line 74:
 
===Untested===
 
===Untested===
 
modprobe spidev??
 
modprobe spidev??
With Python:
 
* http://hackaday.com/2013/01/06/hardware-spi-with-python-on-a-raspberry-pi/
 
* http://louisthiery.com/spi-python-hardware-spi-for-raspi/
 

Revision as of 09:02, 25 April 2013

Links

Startup

Remotely: provide DHCP over Ethernet
Access via ssh, Username: pi Password: raspberry
First time, the device propose to run raspi-config

sudo raspi-config


Then, better to renew SSH server keys, see RPi remote access

sudo rm /etc/ssh/ssh_host_* && sudo dpkg-reconfigure openssh-server

Wi-Fi

Using Wi-Pi
See user manual for Raspbian.
Edit /etc/network/interfaces and add wlan0 section similar to:

auto wlan0
iface wlan0 inet dhcp
wpa-ssid <name of your WiFi network>
wpa-psk <password of your WiFi network>

Then

sudo /etc/init.d/networking restart

NFC

apt-get install git autoconf libtool gcc libusb-dev
apt-get install dpkg-dev debhelper dh-autoreconf
git clone https://code.google.com/p/libnfc/
cd libnfc
dpkg-buildpackage -b -uc -us
cd ..
dpkg -i *deb

For a SCL3711:

modprobe -r pn533
echo blacklist pn533 > /etc/modprobe.d/pn533-blacklist.conf

SPI

Enable

Edit /etc/modprobe.d/raspi-blacklist.conf and comment:

#blacklist spi-bcm2708

Reboot
There should now be some /dev/spi*

$ ls /dev/spi*
/dev/spidev0.0 /dev/spidev0.1

Test

wget "http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob_plain;f=Documentation/spi/spidev_test.c" -O spidev_test.c
gcc -o spidev_test spidev_test.c
sudo ./spidev_test -D /dev/spidev0.0

We should get a bunch of zeroes.
Now, be very careful!!
Shortcut GPIO9(MISO)(pin21) and GPIO10(MOSI)(pin19).
Check on a pinout diagram first...
And run again the command, now we should get some hex dump about dead beef and bad food ;-)

sudo ./spidev_test -D /dev/spidev0.0

If test fails, see here for updating stuffs:

Python

Warning: at time of writing, functions described in the wiki didn't match code anymore.

SPI-NFC

tests...

max speed achieved with debug on: 7.8MHz (PN532 spec says 5MHz)

LIBNFC_DEFAULT_DEVICE=pn532_spi:/dev/spidev0.0:7800000 LIBNFC_LOG_LEVEL=3 utils/nfc-list

max speed achieved without debug: 480kHz

LIBNFC_DEFAULT_DEVICE=pn532_spi:/dev/spidev0.0:480000 LIBNFC_LOG_LEVEL=2 utils/nfc-list

SPI-Facedancer

See Facedancer

Untested

modprobe spidev??