UK Space Mission - STRaND-1 Plans for Launch on February 25
STRaND-1
A UK mission, jointly developed by the University of Surrey's Sur- rey Space Centre (SSC) and Surrey Satellite Technology Limited (SSTL), to send the world's first smartphone satellite into orbit, is due to launch on February 25 from India on PSLV-C20. This launch will also carry the ocean study spacecraft SARAL as well as satel- lites carrying amateur radio payloads.
STRaND-1 will be the first UK CubeSat to be launched and has been developed by talented space engineers and researchers at Surrey with the majority of the design and developmental work being carried out in their spare time. The build and test phase of the project has been completed in just three months. At the heart of STRaND-1 is a Google Nexus One smartphone with an Android operating system.
During the first phase of the mission, STRaND-1 will use a number of experimental 'Apps' to collect data while a high-speed linux-based CubeSat computer developed by SSC takes care of the satellite. During phase two, the STRaND-1 team plan to switch the satellite's in-orbit operations to the smartphone, testing the capabilities of a number of standard smartphone components for a space environment. The satellite will be commissioned and operated from the Surrey Space Centre's ground station at the University of Surrey.
Being the first smartphone satellite in orbit is just one of many 'firsts' that STRaND-1 is hoping to achieve. It will also fly inno- vative new technologies such as a 'WARP DRiVE' (Water Alcohol Resist- ojet Propulsion Deorbit Re-entry Velocity Experiment) and electric Pulsed Plasma Thrusters (PPTs); both 'firsts' to fly on a nanosatel- lite. It is also flying a 3D printed part - believed to be the first to fly in space!
A software-based speech synthesiser will be included to pay homage to the UOSAT family of satellites OSCAR 9 and 11, that were launched in 1980 & 1982. There will be an amateur radio AX.25 packet radio downlink on 437.575 MHz using data rates of 9k6 or 19k2 bps.
Now install the RTL-2832U USB dongle driver src and compile
git clone git://git.osmocom.org/rtl-sdr.git cd rtl-sdr/ mkdir build cd build cmake ../ make sudo make install sudo ldconfig
if it was successful you should see no return on the previous command. I have been told that the Raspberry crash if you don't reboot before inserting the dongle. With the new Dongles and updated raspberry OS you mite get an error like this. Found 1 device(s): 0: Generic RTL2832U OEM Using device 0: Generic RTL2832U OEM Kernel driver is active, or device is claimed by second instance of librtlsdr. In the first case, please either detach or blacklist the kernel module (dvb_usb_rtl28xxu), or enable automatic detaching at compile time. usb_claim_interface error -6 Failed to open rtlsdr device #0. If you did get this error then edit add the following blacklist text to solve the problem. Edit the following file /etc/modprobe.d/raspi-blacklist.conf use your favourite editor like nano or vi sudo vi /etc/modprobe.d/raspi-blacklist.conf add the following lines in the file. blacklist dvb_usb_rtl28xxu blacklist rtl2832 blacklist rtl2830 Save and exist. You need to reboot.so just run sudo shutdown -r 0
Install the RTL-2832U USB dongle on external powered USB HUB
sudo ldconfig
Run this command sudo rtl_test -t to test the compiled driver
I had to reboot and run the command sudo ldconfig again before the test worked.
If U are using a RTL2832+R820T dongle U will get this error below when running the rtl_test -t command ************************************** Using device 0: ezcap USB 2.0 DVB-T/DAB/FM dongle
Found Rafael Micro R820T tuner
Supported gain values (there was a string of values)
No E4000 tuner found, aborting Just ignore it the normalrtl_tcpcommand will work.
To run the rtl server type rtl_tcp -a and you ip address of your Pi.
sudo rtl_tcp -a 192.168.10.135Found 1 device(s). Found Elonics E4000 tuner Using ezcap USB 2.0 DVB-T/DAB/FM dongle Tuned to 100000000 Hz. listening... Use the device argument 'rtl_tcp=192.168.10.135:1234' in OsmoSDR (gr-osmosdr) source to receive samples in GRC and control rtl_tcp parameters (frequency, gain, ...).
You will have to configer your .asoundrc file (you can read about it in my websdr sound card section)
just use default as alsa device it should work
here is a example of .asoundrc config file content
pcm.!default {
type hw
card 0
}
ctl.!default {
type hw
card 0
}
pcm.usb {
type plug
slave {
pcm "hw:1,0"
}
}
ctl.usb {
type plug
slave {
ctl "hw;1,0"
}
}
Here is how you set your audio level
sudo alsamixer
alsamixer
Some Debugging
if you get this error below you tried to start the server when its already running.
sudo rtl_tcp -a 192.168.10.135
Found 1 device(s).
usb_claim_interface error -6
Failed to open rtlsdr device #0.
There is already running rtl server just kill the server and will now start.
Now to set-up a client to connect to server.
Setting up SDR client on Linux / Raspberry. (multimode.py) or on Windows.
Linux client
1) install subversion 2) install python 3) install gnuradio and compile 3) compile mutimode.py 4) test and run Run the following commands to install and configure multimode.py apt-get install subversion Install python
Setup the python path export PYTHONPATH=/usr/local/lib/python2.7/dist-packages:~/bin cd /home/pi/Download/multimode/trunk (where ever you have checkout your mutimode code with subversion run sudo make install mkdir -p /root/bin cp multimode.py multimode_helper.py /root/bin Please make sure your PYTHONPATH includes /root/bin And also that PATH includes /root/bin this will allow multimode to work correctly Check your python path with the following command. echo $PYTHONPATH /usr/local/lib/python2.7/dist-packages:/home/anton/bin it seems to not include the /root/bin So add it export PYTHONPATH=/usr/local/lib/python2.7/dist-packages:/home/anton/bin:/root/bin Run mutimode.py sudo ./multimode.py Traceback (most recent call last): File "./multimode.py", line 9, in <module> from gnuradio import audio ImportError: No module named gnuradio need to install gnuradio install gnuradio This process will take several ours 12 + on slow CPU(Raspberry or inter < 1.2Ghz ) so go and get some coffee or a bear and switch the TV on ......
Make shore you have sudo privileged be fore you go ahead.
You will be ask if you have sudo privileged in the script say Y.
Proceed?Y
Starting all functions at: Sun Feb 3 11:37:06 SAST 2013
SUDO privileges are required
Do you have SUDO privileges?Y ..................... ...................... [sudo] password for anton: Done building and installing Gnu Radio GRC freedesktop icons install ...Done Done function gnuradio_build at: Sun Feb 3 19:26:13 SAST 2013 Starting function rtl_build at: Sun Feb 3 19:26:13 SAST 2013 Building rtl-sdr...Done building/installing rtl-sdr/gr-osmosdr Done function rtl_build at: Sun Feb 3 19:29:47 SAST 2013 Starting function extras at: Sun Feb 3 19:29:47 SAST 2013 Doing GIT checkout for extra module gr-baz Building extra module gr-baz Doing GIT checkout for extra module grextras Couldnt build module grextras directory not there Done function extras at: Sun Feb 3 19:36:47 SAST 2013 Starting function mod_groups at: Sun Feb 3 19:36:47 SAST 2013 ******************************************************************************** This script has just modified /etc/group to place your userid '('$USER')' into group 'usrp' In order for this change to take effect, you will need to log-out and log back in again. You will not be able to access your USRP1 device until you do this. If you wish to allow others on your system to use the USRP1 device, you will need to use: sudo usermod -a -G usrp userid For each userid you wish to allow access to the usrp ******************************************************************************** Further Done function mod_groups at: Sun Feb 3 19:36:49 SAST 2013 Starting function mod_udev at: Sun Feb 3 19:36:49 SAST 2013 Done function mod_udev at: Sun Feb 3 19:36:53 SAST 2013 Starting function mod_sysctl at: Sun Feb 3 19:36:53 SAST 2013 Applying updates to /etc/sysctl.conf Group 'usrp' now has real-time scheduling privileges You will need to log-out and back in again for this to take effect Done function mod_sysctl at: Sun Feb 3 19:36:53 SAST 2013 Starting function pythonpath at: Sun Feb 3 19:36:53 SAST 2013 ************************************************************ You should probably set your PYTHONPATH to: /usr/local/lib/python2.7/dist-packages Using: export PYTHONPATH=/usr/local/lib/python2.7/dist-packages in your .bashrc or equivalent file prior to attempting to run any Gnu Radio applications or Gnu Radio Companion. ************************************************************* Done function pythonpath at: Sun Feb 3 19:36:53 SAST 2013 Done all functions at: Sun Feb 3 19:36:53 SAST 2013 All Done
sudo gnuradio-companion
My Raspberry ran out of space need bigger SD card (but the process is the same on Ubuntu) I will update this aria when I get my new SD card. Now we are reddy to run the mutimode.py cd to your directory where multimode.py something lie this cd /home/anton/Downloads/multimode/multimode/trunk run sudo ./multimode.py Woila ...
It seems that the Raspberry CPU is to slow to run the mutimode.py
Setting up a Windows Client to connect to rtl server.
Android client connecting to rdl_tcp server (Worked on my Galaxy S2 and Galaxy tab 7')
Screenshots is from Galaxy S2
What you need to install from Google Play
1) SDR Touch from Google play
2) [RTL2832U driver] from Google play
3) And you need to pay for the License app +_ R90 [SDR Touch Key]. (
If you see Demo on left bottom corner the key did not work run it first.
( I had to sometimes stop and start the app to get it working)
I also have plug in the RTL-2832U dongle directly to the phone with a adapter cable and it also works vine via a external powered USB HUB ( I got the adapter cable from local China mole for about R70-00)
Galaxy S2 USB Host Adapter
Samsung Galaxy S2
Run the [Touce Key] app and close it. Then run [SDR Touch] and you should see the screen below.
Select the menu button = on bottom of phone and you should see a menu like this. Enter your RTL_TCP server details as configure above.
Then click on [Spectrum] button and you can then scroll the freq by dragging the spectrum left or write.
You could also pres the[ set Mhz] button and enter the frequency in the menu see screenshot below. Just one problem (selecting the modulator option is a trick) [AM LSB USB NBFM .....] There is a small gap between the [set Mhz] button and the [help] button and you should carefully click the gap to change the mode. I am shore the developer will fix this soon
Debug info:
If you get popups saying you need root just ignore them. I had to sometimes restart the app.