Hi everyone,
although there are some comparisons between the R820T and the E4000
already [1, 2], I also did some tests with another use-case in mind.
I'm working on a thing similar to RTLSDR-Scanner [3]. I want to
monitor a large part of the spectrum continuously.
So I compared the R820T with the E4000 using RTLSDR-Scanner w/ and w/o
an antenna.
My results are here:
https://docs.google.com/folder/d/0ByDAKwyEiyx_XzZ5ZnpRV1VZWDQ/edit?usp=shar…
There's much more spurs with the E4000 than w/ the R820T. According to
[1, 2] one also would expect a better overall sensivity compared to
the E4000.
However, the GSM900 signals for example seem to be way better with the
E4000 according to the RTLSDR-Scanner. Tuning to a certain channel w/
OsmoSDR Source in GNUradio gives about the same SNR - contrary to the
RTLSDR-Scanner output. Can anyone explain this?
Also, the DVB-T channel at 502MHz is quite weak in the R820T
RTLSDR-Scanner output when compared to the E4000. I had a closer look
at the lower limit of the channel in gnuradio. This can be seen in the
502MHz_*.png pictures. The E4000 produces a nice +20dB step while one
can hardly see the channel in the R820T spectrum. I don't understand
this as well. Is this AGC-related? Manually setting a fixed gain
didn't really help though...
Any explanations?
Thank you!
Best regards,
Hunz
[1] http://steve-m.de/projects/rtl-sdr/tuner_comparison/
[2] http://www.hamradioscience.com/rtl2832u-r820t-vs-rtl2832u-e4000/#more-1852
[3] https://github.com/EarToEarOak/RTLSDR-Scanner
Some of you are probably using multiple dongles with alternating
applications as well.
Regarding the frequency correction, I put a sticker on each dongle and
wrote the ppm value on it.
However manually setting the value in each application is still annoying.
So I used rtl_eeprom to write the value into the product-ID with the
following format: "RTL%+dppm" resulting in sth. like this: RTL+87ppm
I'm not sure if this is the best way to do it, but this approach works
without changing librtlsdr.
Another option might be storing the value in a non-used eeprom
location and adding get/set functions to librtlsdr.
Is it possible to write arbitrary values to unused eeprom locations
without fucking up the realtek eeprom handling? Do you think this
would be a better way?
I'd like to hear your comments on this.
It would be awesome if we could find a solution that many existing
applications could incorporate.
(Of course the ppm value still changes with temperature, but having a
base value is still closer to the truth than 0ppm I'd say.
I measured the offset directly after grabbing samples for 20 minutes
at room-temperature and jitter is <1ppm.)
Best regards,
Hunz
Hi all,
One of the designers of the R820T tuner has recently been posting on the
ultra-cheap-sdr group, and has kindly supplied a map of the R820T registers
for private use only within the SDR community. He has asked that it not be
posted on any website, but only be forwarded around privately.
To that end, if anyone would like a copy of this spreadsheet and would be
willing to likewise not publish it on the web, let me know off-list and I'll
send it to you.
There's not a huge amount in the way of explanations, but it lists all the
registers and a very brief description of what they do.
Cheers,
Adam.
I am also having the rtl_fm scanning bug which was first reported in
http://lists.gnumonks.org/pipermail/osmocom-sdr/2013-February/000485.html
The scanning mode in rtl_fm hangs during the re-tuning process. This
makes it impossible to use rtl_fm in scanning mode. I am using Ubuntu
12.10 with libusb 2:1.0.12-2, the latest git master version of rtl-sdr,
and an Elonics E4000 (Realtek, RTL2838UHIDIR).
Here are the steps to reproduce:
1. Find some frequency FREQ_NOISE that is not in use, and some frequency
FREQ_SIGNAL which is in use constantly (i.e., like a commercial FM
station). Find an appropriate squelch value SQUELCH which will stop
FREQ_NOISE but pass FREQ_SIGNAL.
2. rtl_fm -f ${FREQ_NOISE} -l ${SQUELCH}. The program should not pass
any audio, but it will exit cleanly with ^C.
3. rtl_fm -f ${FREQ_SIGNAL} -l ${SQUELCH}. The program should pass audio
and exit cleanly with ^C
4. rtl_fm -f ${FREQ_SIGNAL} -f ${FREQ_NOISE} -l 0. The scan will pause
on the first channel and pass audio.
5. rtl_fm -f ${FREQ_NOISE} -f ${FREQ_SIGNAL} -l ${SQUELCH}. The program
will not output any audio, even though the first frequency is squelched
out and the scanning function should skip immediately to the second
frequency. Additionally, it will not exit if sent a SIGINT with ^C, and
it must be killed with a SIGKILL.
I've made a stack trace of this behavior. The program hangs very
consistently at the same location each time:
http://pastebin.com/wzE09MCi
Thread 1 (the USB buffer reading thread) hangs while waiting for the
data_write mutex lock in rtl_fm.c:642. I presume the thread has
exhausted its supply of data and isn't getting any more.
Thread 2 is slightly more interesting, because it hangs during the
libusb system calls within the tuning function rtlsdr_set_center_freq()
in librtlsdr.c:796. My guess is that it's making a blocking call that
never returns.
Can anyone else reproduce this bug?
I am attempting to write a program in c++ to transform the output of
RTL_TCP to an audio device as nFM 12500 bandwidth.
The problem is I have no idea where to even start could someone point me in
the right direction to find out what format the out put of RTL_TCP is or
where to find some documentation on how to even start converting it to
audio.
thanks for your time
Hello,
Thank you for your great software!
While building gr-osmosdr yesterday and the day before, I have been
getting this new error while compiling. The compiler is gcc 4.7 under
Os X 10.5.8
I'm also having unexplained crashes.. Applications that use the
library are having issues.
Here is the complete message. It occurs twice,
Linking CXX shared library libgnuradio-osmosdr.dylib
cd /Volumes/xyz/builds/osmocom/gr-osmosdr/build/lib &&
"/Applications/CMake 2.8-7.app/Contents/bin/cmake" -E
cmake_link_script CMakeFiles/gnuradio-osmosdr.dir/link.txt --verbose=1
/opt/local/bin/i386-apple-darwin9-g++-mp-4.7 -O3 -DNDEBUG -arch i386
-isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5
-dynamiclib -Wl,-headerpad_max_install_names -compatibility_version
0.0.1 -o libgnuradio-osmosdr.0.0.1git.dylib -install_name
/Volumes/xyz/builds/osmocom/gr-osmosdr/build/lib/libgnuradio-osmosdr.0.0.1git.dylib
CMakeFiles/gnuradio-osmosdr.dir/osmosdr_source_c_impl.cc.o
CMakeFiles/gnuradio-osmosdr.dir/osmosdr_sink_c_impl.cc.o
CMakeFiles/gnuradio-osmosdr.dir/osmosdr_ranges.cc.o
CMakeFiles/gnuradio-osmosdr.dir/osmosdr_device.cc.o
CMakeFiles/gnuradio-osmosdr.dir/file/file_source_c.cc.o
CMakeFiles/gnuradio-osmosdr.dir/rtl/rtl_source_c.cc.o
CMakeFiles/gnuradio-osmosdr.dir/rtl_tcp/rtl_tcp_source_f.cc.o
CMakeFiles/gnuradio-osmosdr.dir/rtl_tcp/rtl_tcp_source_c.cc.o
-L/opt/local/lib /opt/local/lib/libboost_thread-mt.dylib
/opt/local/lib/libboost_system-mt.dylib /opt/local/lib/libgruel.dylib
/opt/local/lib/libgnuradio-core.dylib
/opt/local/lib/libgnuradio-core.dylib /opt/local/lib/librtlsdr.dylib
/opt/local/lib/libgnuradio-core.dylib /opt/local/lib/librtlsdr.dylib
ld: warning: could not create compact unwind for
rtl_source_c::rtl_source_c(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&): stack subq
instruction is too different from dwarf stack size
ld: warning: could not create compact unwind for
rtl_source_c::rtl_source_c(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&): stack subq
instruction is too different from dwarf stack size
.....
Then a few lines down, it happens a second time..
Linking CXX shared module _osmosdr_swig.so
cd /Volumes/xyz/builds/osmocom/gr-osmosdr/build/swig &&
"/Applications/CMake 2.8-7.app/Contents/bin/cmake" -E
cmake_link_script CMakeFiles/_osmosdr_swig.dir/link.txt --verbose=1
/opt/local/bin/i386-apple-darwin9-g++-mp-4.7 -O3 -DNDEBUG -arch i386
-isysroot /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5
-bundle -Wl,-headerpad_max_install_names -o _osmosdr_swig.so
CMakeFiles/_osmosdr_swig.dir/osmosdr_swigPYTHON_wrap.cxx.o
-L/opt/local/lib
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/libpython2.7.dylib
../lib/libgnuradio-osmosdr.0.0.1git.dylib
/opt/local/lib/libboost_thread-mt.dylib
/opt/local/lib/libboost_system-mt.dylib /opt/local/lib/libgruel.dylib
/opt/local/lib/libgnuradio-core.dylib /opt/local/lib/librtlsdr.dylib
/opt/local/lib/libgnuradio-core.dylib /opt/local/lib/librtlsdr.dylib
ld: warning: could not create compact unwind for
swig::SwigPySequence_Ref<std::basic_string<char,
std::char_traits<char>, std::allocator<char> > >::operator
std::basic_string<char, std::char_traits<char>, std::allocator<char>
>() const: stack subq instruction is too different from dwarf stack
size
ld: warning: could not create compact unwind for
swig::SwigPySequence_Ref<osmosdr::device_t>::operator
osmosdr::device_t() const: stack subq instruction is too different
from dwarf stack size
ld: warning: could not create compact unwind for
swig::SwigPySequence_Ref<std::pair<std::basic_string<char,
std::char_traits<char>, std::allocator<char> >,
std::basic_string<char, std::char_traits<char>, std::allocator<char> >
> >::operator std::pair<std::basic_string<char,
std::char_traits<char>, std::allocator<char> >,
std::basic_string<char, std::char_traits<char>, std::allocator<char> >
>() const: stack subq instruction is too different from dwarf stack
size
ld: warning: could not create compact unwind for
swig::SwigPySequence_Ref<osmosdr::range_t>::operator
osmosdr::range_t() const: stack subq instruction is too different from
dwarf stack size
???
This might be a better question for the Gnuradio list, but for years I've known that some broadcast FM stations actually transmit a second audio program which is somehow modulating a subcarrier in the main transmission. It probably carries mostly elevator music type junk but is rumored to be commercial-free (a rare thing in the US!). I remember seeing dedicated receivers advertised for this, but never actually bought one because I wasn't sure it was active in my area. These date back to Lafayette Electronics days I think and ever since so 40 years or more.
I've noticed (in SdrSharp) that on some FM stations I can see what look like they might be subcarriers on either side of the main signal. Anyone decoded those?
Alan
-----
Radio Astronomy - the ultimate DX
Sending commands to RTL_TCP
What format do the commands need to be in order to change the frequency of
RTL_TCP.
I have tried the following and the frequency will change but no to the
frequency that is expected for example:
This code :
char SET_FREQUENCY[] ={0x01};
string Freq = string(SET_FREQUENCY,1)+"500000000";
answer = send(sConnect,Freq.c_str(),11,0);
Changes the freq to this:
client accepted!
set freq 892350512
ll+, now 1
ll+, now 2
Any help would be greatly appreciated as i have been stuck on this for days.
Thanks
Thank you all for the quick response.
Unfortunately I'm still having some trouble.
This is what I have so far ( Its a lil messy but just for testing it should
work )
This is based on the Client implementation:
http://cgit.osmocom.org/gr-osmosdr/tree/lib/rtl_tcp/rtl_tcp_source_f.cc#n275
#define COMM_SET_FREQ ((unsigned char) 0x01)
struct command{
unsigned char cmd;
unsigned int param;
};
unsigned char cmds;
int iFreq = 500000000;
cmds = COMM_SET_FREQ;
struct command cmd = {cmds, htonl(iFreq)};
answer = send(sConnect, (const char*)&cmd, sizeof(cmd), 0);
and the response is :
client accepted!
set freq -858993635
ll+, now 1
ll+, now 2
ll+, now 3
I'm sure I'm missing something I just don't know what.
Thanks
Hello,
You may be interest by this project from Tipok: http://tipok.org.ua/node/41
It's a simplified and low cost SDR transmission interface using an FX2 USB controller and an AD9957 modulator/DAC.
Here he's using it to create a DAB digital radio transmission using CRC mmbtools DAB multiplexer/modulator.
Mathias
opendigitalradio.org
Hi Hunz,
I've just pushed some updated code up to GitHub, you can now set the
gain in the preferences and tweak the scan settings. There's some info
at http://eartoearoak.com/software/rtlsdr-scanner#tweaking
A 250kHz offset seems to work well with my E4000, 140k with a FC0012 and
100k with a R820T. The FC0012 is the noisiest and the R820T is quietest.
Hope it helps,
Al
On 17/03/2013 11:00, Benedikt Heinz <zn000h(a)gmail.com> wrote:
>> For me the most interesting plots were the "no antenna" ones, showing the LO
>> leakage ;-) If I understood clearly your plots, you have at some places high
>> power ghosts. Maybe you are close to powerful transmitters, but this is more
>> probably a LO to RF isolation problem: the receiver receives himself...
> I did two new measurements with the gain set to 20 in RTLSDR-Scanner.
> The files with the -gain20 in the filename [1] show the new results.
> There are more spikes from the R820T LOs now, but it's still less than
> with the E4000 I'd say.
> The good thing is that the DVB-T stations as well as some other
> signals can be found as expected now.
>
> 2013/3/16 Al <al(a)eartoearoak.com>:
>> I think you've run into a couple of issues, firstly it appears that the AGC
>> isn't fully disabled on the R820T (if you remove the aerial the noise floor
>> increases).
> It looks like gain=0 just was too little for the R820T. gain=20 seems
> to be a good start.
> Maybe exposing the gain-value in the regular UI would make sense?
>
>> Secondly RTLSDR-Scanner averages 2 chunks of bandwidth either side of the DC
>> point, these seem relatively quiet with an E4000 and FC0012 but I haven't
>> had chance to check the R820T yet. This tuner may have a very different
>> noise floor. I was wondering about adding a feature to allow the user to
>> pick their own segments (by terminating the aerial and looking at the noise
>> distribution).
> Ah, that's interesting. I was indeed wondering how you avoid the DC
> spike and my pathon skills are close to zero ;-)
> According to [2], the R820T doesn't use a Zero-IF, so there should be
> no DC-spike at all.
>
>> Has anyone had a chance to test 2 different dongles with the same tuner?
>> I'd be interested to know if it makes a difference to the noise floor, if
>> there is little change, I could vary the scan based on the tuner.
> I do have two E4000 and two R820T dongles, but I haven't yet compared
> the noise floor.
> I'm thinking about a per-dongle baseline file w/o an antenna for
> compensation. This approach should be more robust. Otherwise you need
> to shift the baseline spectrum according to the frequency error.
>
> Best regards,
>
> Hunz
>
> [1] https://docs.google.com/folder/d/0ByDAKwyEiyx_XzZ5ZnpRV1VZWDQ/edit?usp=shar…
> [2] http://lists.osmocom.org/pipermail/osmocom-sdr/2012-September/000253.html
>
Hello,
I am using two of the "usual" RTL2832-USB dongles, with Ubuntu 12.04.
The one with the R820T tuner in it works with both GQRX and SDRSharp
(although driving the laptop temperature beyond 60°C - P-Mobile 1,8 GHz,
with SDRSharp/Mono only!).
The one with E4000 tuner is only accepted by GQRX. SDRSharp says "Array
index is out of range", although in the dropdown menu, for both dongles
"RTL-SDR / USB" is displayed.
Anyone got an idea ...?
Lorenz
Hey all,
Osmocom is such a great community with awesome projects. Why doesn't
Osmocom apply for GSOC 2013? It's a really nice opportunity.
- More students will come to know about osmocom thus greater visibility
- Some great minds will work on the projects so it may lead to something
more awesome
- Osmocom community will get to mentor students which is a very
important experience, because that is how one understands the problems of
new developers
Cheers,
*Hemant *
Hi,
it seems you've triggered an issue recently introduced via gnuradio master:
http://gnuradio.org/cgit/gnuradio.git/commit/?id=9297c84dfdae3002677f759ef2…
Their config.h basically overrides our build-time generated one which not
only effectively disables every single source functionality but also
causes the build error you experienced.
I've just pushed a small workaround for that, please test it & report.
One second issue i've noticed is that in your configuration every single
option seems to be enabled, although not all dependencies have been
detected. Usually a full configuration should look like in the attached
file.
Best regards,
Dimitri
I failed when I " make ".
the make error is :
/tmp/gr-osmosdr/lib/osmosdr_source_c_impl.cc: In constructor
‘osmosdr_source_c_impl::osmosdr_source_c_impl(const string&)’:
/tmp/gr-osmosdr/lib/osmosdr_source_c_impl.cc:117:16: error:
‘GR_OSMOSDR_VERSION’ was not declared in this scope
/tmp/gr-osmosdr/lib/osmosdr_source_c_impl.cc:117:47: error:
‘GR_OSMOSDR_LIBVER’ was not declared in this scope
make[2]: ***
[lib/CMakeFiles/gnuradio-osmosdr.dir/osmosdr_source_c_impl.cc.o] Error 1
make[1]: *** [lib/CMakeFiles/gnuradio-osmosdr.dir/all] Error 2
make: *** [all] Error 2
the cmake output is :
-- Build type not specified: defaulting to release.
-- Extracting version information from git describe...
-- Configuring Boost C++ Libraries...
-- checking for module 'gnuradio-iqbalance'
-- package 'gnuradio-iqbalance' not found
-- Found gnuradio-uhd: /usr/local/include,
/usr/local/lib/libgnuradio-uhd.so
-- Found gnuradio-fcd: /usr/local/include,
/usr/local/lib/libgnuradio-fcd.so
-- Will build with gnuradio iqbalance support.
--
-- The build system will automatically enable all components.
-- Use -DENABLE_DEFAULT=OFF to disable components by default.
--
-- Configuring sysmocom OsmoSDR support...
-- Dependency LIBOSMOSDR_FOUND = TRUE
-- Enabling sysmocom OsmoSDR support.
-- Override with -DENABLE_OSMOSDR=ON/OFF
--
-- Configuring FunCube Dongle support...
-- Dependency GNURADIO_FCD_FOUND = TRUE
-- Enabling FunCube Dongle support.
-- Override with -DENABLE_FCD=ON/OFF
--
-- Configuring IQ File Source support...
-- Dependency GNURADIO_CORE_FOUND = TRUE
-- Enabling IQ File Source support.
-- Override with -DENABLE_FILE=ON/OFF
--
-- Configuring Osmocom RTLSDR support...
-- Dependency LIBRTLSDR_FOUND = TRUE
-- Enabling Osmocom RTLSDR support.
-- Override with -DENABLE_RTL=ON/OFF
--
-- Configuring RTLSDR TCP Client support...
-- Dependency GNURADIO_CORE_FOUND = TRUE
-- Enabling RTLSDR TCP Client support.
-- Override with -DENABLE_RTL_TCP=ON/OFF
--
-- Configuring Ettus UHD support...
-- Dependency UHD_FOUND = TRUE
-- Dependency GNURADIO_UHD_FOUND = TRUE
-- Enabling Ettus UHD support.
-- Override with -DENABLE_UHD=ON/OFF
--
-- Configuring Osmocom MiriSDR support...
-- Dependency LIBMIRISDR_FOUND = TRUE
-- Enabling Osmocom MiriSDR support.
-- Override with -DENABLE_MIRI=ON/OFF
--
-- ######################################################
-- # gr-osmosdr enabled components
-- ######################################################
-- * sysmocom OsmoSDR
-- * FunCube Dongle
-- * IQ File Source
-- * Osmocom RTLSDR
-- * RTLSDR TCP Client
-- * Ettus UHD
-- * Osmocom MiriSDR
--
-- ######################################################
-- # gr-osmosdr disabled components
-- ######################################################
--
-- Building for version: 1eb3af22 / 0.0.1git
-- Using install prefix: /usr/local
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/gr-osmosdr/build
*
*
Hello,
I am running an RTL2832 USB stick (R820T tuner in it) and SDRSharp via
Mono under Ubuntu 12.04 with a Pentium-M 1.5GHz and 1,5 GB RAM.
SDRSharp
With sample rates of 0.25M and 1.024M, I'm "suffering" from 100% CPU
load and temperatures around 70°C - this can't be healthy for the
laptop... Switching the waterfall off and speed etc. to minimum doesn't
help very much. RDS is displayed fine, all functions seem to be OK. RAM
space is not filled up (30%).
Any advice for a "smoother" running on such an "old" machine...?
http://superkuh.com/rtlsdr.html#sdrsharpappnote said "it can even run on
my old 1.8Ghz P4 laptop".
GQRX
GQRX did run using the QtPro way as described in the wiki, but after
recent update of GQRX the DC spike at centre frequency appeared (it
wasn't there before), and massive stuttering of audio and the "OOOOOO"s
in terminal window at a lot of different sample rates made the usage of
GQRX worse. (right, this should be posted in a GQRX forum...)
Anyway, did someone notice that GQRX update (ca. first days of march
2013) lead to problems ?
thanks,
Lorenz
HI All !
Many thanks Salvatore for that very impressive piece of software.
I extended dump1090 to make use of a mysql database:
http://dl6kbg.blogspot.de/2013/03/dump1090-with-mysql-support.html
I will work on the code the next days to improve it for a more easy db
setup.
Some results and a description you may see here:
http://dl6kbg.blogspot.de/2013/03/dump1090-with-mysql-support.html
the forked repo is here:
https://github.com/dl6kbg/dump1090
You need a mysql database called "dump1090" with a table "tracks". You may
easily setup the db using the supplied script "tracks.sql"
Username and password ist coded for now as mysql user: root mysql password:
root.
Run: ./dump1090 --mysql
Have fun !
73 Oliver DL6KBG
Gird you Grid for the next level in Software Definition. We are now stuck in
Software Defined Radio (SDR). Next is Software Defined Instrumentation (SDI)
with intriguing choices like the Vector Signal Transceiver (VST) for Device
Testing.
Hello,Christian
When will you post the schematics and the firmware of the next OsmoSDR of 4MS/s ? I am intersted in them. How do I get them?
best regards
Yi Qu
Dear developers!
I would like to ask the driver for the R820T osdmocom rtlsdr tuner use of
this IFGAIN conrtol was, and if his shirt, the GNU Radio source how to use
it (I think python command)
I'm a hardwer working towards, and it would be important that we have a
value ifgain radio)
thank you
Jakab Szilárd
HUNGARY
HA1003SWL
Hello osmocom-sdr-Team,
i spent some time to get familiar with GNU-Radio and RTL-SDR stuff and
have implemented an decoder for the FS20 wireless home automation
protocol. Maybe this is something for the "Known Apps" section in the
OSMOCOM rtl-sdr wiki.
Since i am a hardware/FPGA/RF guy, my programming skills are not the
best, not at all in python, so i hope the code is not too scary.
Name: rtl_sdr_FS20_decoder
Type: gnuradio app
Author: Thomas Frisch
URL: https://github.com/eT0M/rtl_sdr_FS20_decoder.git
My compliments to the whole OSMOCOM Team, you are doing a great job.
regards
Thomas
Hi guys,
Please add the LEADTEK "WinFast DTV DONGLE MINI D".
EAN code 710918 292751
ARC here in Australia is selling these:
Add to line 234 of "librtlsdr.c"
{ 0x0413, 0x6f0f, "Leadtek RTL2832U + FC0012" },
And to "rtl_eeprom.c" line 179 " LEADTEK,"
And to "rtl_eeprom.c" line 190
case LEADTEK:
fprintf(stderr, "Leadtek default (as without EEPROM)\n");
conf->vendor_id = 0x0413;
conf->product_id = 0x6f0f;
strcpy(conf->manufacturer, "LEADTEK");
strcpy(conf->product, "RTL2832U + FC0012 DVB-T");
strcpy(conf->serial, "0");
conf->have_serial = 1;
conf->enable_ir = 0;
conf->remote_wakeup = 1;
break;
Now to try it.
Thanks guys.
Alan VK2ZIW
---------------------------------------------------------------------------
Alan Beard Unix Support Technician from 1984 to today
70 Wedmore Rd. Sun Solaris, AIX, HP/UX, Linux, SCO OpenServer 5.0.X
Emu Heights N.S.W. 2750 Routers, terminal servers, printers, terminals etc..
+61 2 47353013 (h) Support Programming, shell scripting, "C", assembler
0414 353013 (mobile) After uni, electronics tech.
Man's greatest waste of time: Worshipping the wrong God.
I cannot walk past what Jesus of Nazereth has done.