I've been using my Rpi B rev.2 256 version for a while and nothing has been more educational for me than figuring stuff out with this trusty little platform, however recently i upgraded and do now own two Rpi2's. This upgrade along with my limited knowledge in coding presented me with several problems:
A little bit hastily, I ordered several RF modules alongside the second rpi2, which i am planning to use for different, hopefully basic tasks, like notifications from my electronic fishing bite alarms and more recently controlling of RF power sockets.
The RF module i am planning to use is a HOPERF RFM24W 433Mhz one, which is probably overkill for my tasks, although i did find some documentation on running it on an Rpi here http://airspayce.com/mikem/arduino/RadioHead/ & https://groups.google.com/forum/#!topic ... pHTPLu1JA/
Due to the advanced nature of this i opted to try the seemingly simpler 2.4 Ghz module HOPERF RFM73 first and found a project fitting my needs here http://freakone.pl/ (use translator).
This is where my problems started - The library RPIO used by this project is seemingly outdated and it took me a while to figure this out. Due to hardware changes from the earlier boards to the Rpi2, addresses had to be changed in the code. There is a (partial) fix available here https://github.com/metachris/RPIO/issues/53 for anyone interested.
This did allow me to at least use RPi.GPIO and RPIO in python, which is where I'm stuck now:
Trying to execute the main.py code from the project at freakone.pl 's github (https://github.com/freakone/NodeNetwork) returns
Code: Select all
pi@raspberrypi2 ~/NodeNetwork/rfm73-rpi_server $ sudo python main.py
/home/pi/NodeNetwork/rfm73-rpi_server/rfm73.py:79: RuntimeWarning: This channel
is already in use, continuing anyway. Use RPIO.setwarnings(False) to disable wa
rnings.
RPIO.setup(CSN, RPIO.OUT) #CSN
/home/pi/NodeNetwork/rfm73-rpi_server/rfm73.py:80: RuntimeWarning: This channel
is already in use, continuing anyway. Use RPIO.setwarnings(False) to disable wa
rnings.
RPIO.setup(CE, RPIO.OUT) #CE
Traceback (most recent call last):
File "main.py", line 15, in <module>
rfm73.init_banks()
File "/home/pi/NodeNetwork/rfm73-rpi_server/rfm73.py", line 27, in init_banks
bank(0)
File "/home/pi/NodeNetwork/rfm73-rpi_server/rfm73.py", line 121, in bank
st = 0x80 & register_read(RFM73_REG_STATUS)
File "/home/pi/NodeNetwork/rfm73-rpi_server/rfm73.py", line 91, in register_re
ad
spi.xfer2([reg])
TypeError: Argument must be a list of at least one, but not more than 4096 integ
ersIs it possible that there need to be hardware addressing changes made to this file as well?
I do have a Rpi b rev.2 available so I can try to run this from there, I would however prefer to make any of the two aforementioned modules, or the third one i have - a RFM12B - work on the Rpi2's.
It is also likely that in the future I might adapt an easier approach with a less sophistiacted module, like I did with receiving data from the fish alarms. That only required an Rx module with way less soldering and coding. But working Rpi's is meant to be about educating oneself, right?
Any help, pointers or sending me in the right directions is very much appreciated!