Older blog entries for rkrishnan (starting at number 86)

18 Dec 2004 (updated 18 Dec 2004 at 15:55 UTC) »

I had been postponing (due to various valid reasons), building an Athlon64 box, but today morning I got around to do it. I went to the MG Road and bought an ASUS K8V-SE Deluxe MoBo, 512MB DDR2 ram, a 400W SMPS and an ATI Radeon 9200 SE w/128MB DDR ram AGP8x card. The ATI card is supposedly old, but since I do not care about 3D much, I think this was a good choice. I came back and compiled a new kernel with new drivers. It looks very good now. I need to check whether the cabinet is getting heated up and whether the ventilation is proper.

One of the main motivations to buy the new machine was for mor espeedy GNU Radio compilations and for access to USB2 ports which are essential for USRP/SSRP operations.

In another development related to gnuradio, I got the TI differential amp chip needed for SSRP ADC daughter card. But it looks like Linear Technologies, Inc, do not ship samples to India, so I am stuck at that point.

I hope to update the gnuradio debian packages more regularly and have created an alioth project for gnuradio. Any help in verifying the packaging is welcome.

Here is a wonderful article on the emerging PC Server architectures with an emphasis on the Athlon64 architecture. I had been searching for the data sheet of Athlon64 processors for quite sometime (the one with cycles details etc). Only today I could get hold of the proper one, it is called "functional data sheet" in the AMD documentation.
1 Dec 2004 (updated 10 Dec 2004 at 08:59 UTC) »

I realised recently that it has been almost 10 years since I started serious programming. Looking back, majority of my programming work involved a mixture of assembly and C programming for various Digital Signal Processors. Peter Norvig says, it can take 10 years to master a language. I think this is a very very correct observation. I still learn a bit about C when I browse through a new book. To illustrate, I was recently working with the alsa libraries and found that afew types are defined incompletely, like the snd_pcm_t type. I was encountering such stuff for the first time. This led me to look at various C references and code and I found that incomplete types and opaque types are an excellent way to implement abstractions in C. I hope to put together what I learned into a webpage soon.

I got two copies of the book Free Culture by Larry Lessig, yesterday from the FSF, one for me and one for my wife. If you are not yet an associate member of the FSF, join NOW.

Life

A lot of things happened since my last post. I fell sick for afew days and have now fully recovered though a nagging neck pain remains.

I haven't done much with my Debian work in the last two weeks. I need to catch up on that this weekend.

And on the Amateur Radio License front, I learned that the Police Verification (which is to be initiated by the Home Ministry, Gov of India) has not happened in my case, and I sent the required documents again to the Ministry of Communication. This is getting too tiring. I am not going to pursue this anymore. Life is too short to run after the Govt officials and red tapism.

4 Nov 2004 (updated 4 Nov 2004 at 17:51 UTC) »

Life and hacking

Life had been busy past few days owing to heavy work pressure. I still managed to hack a bit on gnuradio.

I have registered for an alioth project for maintaining gnuradio packages. I also decided to use the excellent tla-buildpackage for keeping an arch repository for the debian packages.

Ham Radio

I am still waiting for my ham radio license to come. It has been moer than a year now since I am waiting for it. Several hams are helping me out to get the status of my license. Here in India, the Police does a verification of the records and gives a report to home ministry. In my case, it looks like clearance is not yet obtained, may be because they came to meet me when I am not at home (most likely), but didn't leave a note behind, or probably they have falsely given a non-clearance just because they couldn't meet me and couldn't take any bribe.. Whatever be the case, I am terribly disappointed by the state of affairs. Amateur Radio operation had been high on my agenda from childhood and my dreams are getting shattered.

I am still hoping for the best, as some hams are helping me out to get the status and secure a license for me. I am hoping that things will fall in place in a month or so. If not, I plan to appear for the exam again, this time for a higher grade one (grade-I or advanced grade) and let me see how long they can deny the license.

I could finally get the alsa modules to work with GNURadio and successfully played out the dialtone generation program. One issue is that it segfaults while exiting. I need to investigate about this. Anyone has tips on debugging hybrid Python/C++ code?

Found this nice webpage of David Carr (designed of SSRP).

24 Oct 2004 (updated 25 Oct 2004 at 05:21 UTC) »

I just completed writing ALSA source/sink modules and python bindings for gnuradio. I would say, it is far from perfect. There are many rough edges, but at the end of the day, one feels so satisfied that the work will be used by many.

21 Oct 2004 (updated 21 Oct 2004 at 19:05 UTC) »

I have finally packaged the 2.x version of GNU Radio for Debian and made this little program to generate the Indian dialtone using python.

from gnuradio import gr
from gnuradio import audio

def build_graph ():

fg = gr.flow_graph () sampling_freq = 8000 ampc = 1 ampm = 0.2

src0 = gr.sig_source_f (sampling_freq, gr.GR_SIN_WAVE, 400, ampc) src1 = gr.sig_source_f (sampling_freq, gr.GR_SIN_WAVE, 25, ampm) add = gr.add_const_ff (0.4)

dst = audio.sink (sampling_freq) multiply = gr.multiply_ff () fg.connect (src0, (multiply, 0)) fg.connect (src1, add) fg.connect (add, (multiply, 1)) fg.connect (multiply, dst)

return fg

def main (): fg = build_graph() fg.start () raw_input ('Press Enter to quit: ') fg.stop()

if __name__ == '__main__': main ()

After many many months of blogging elsewhere, I am coming back to advogato. I plan to keep this a pure technical weblog.

77 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!