A few weeks ago I came across a part of Sam Goldwassers' Laser FAQ talking about the SONY blu-ray diode that you find in SONY blu-ray DVD players and PS3's. I haven't been paying much attention to the new blu-ray format as I still think standard definition DVDs look pretty good through a good video scaler to a good HD projector... I also wanted to wait for the whole blu-ray / HD-DVD format war to end before I invest in either one. (as of right now it looks like the blu-ray format is winning). But the article I saw on the blu-ray diode really got my attention. What I didn't know about blu-ray diodes was that they actually emit visible blue light! 405nm to be exact. I had assumed them to be in the UV range (my bad assumption), but again, this way from my lack of knowledge on this new media format.
So of course I had to have one. There are a few companies out there that have been buying blu-ray format players, scrapping them for the diode and making laser pointers out of them. Then they charge ridiculous amounts of money for them, even thousands of dollars. But another good source of the blu-ray diode is the SONY ps3... more specifically a SONY replacement pickup assembly for the PS3. I found one on eBay for $50.
I received it yesterday and immediately begin tearing it apart. Here is the complete module:
Inside is a very cool array of lenses and beam-splitters:
Here is a close up of the laser diode pinout. This diode contains a 405nm blue diode, a 650nm red diode and a 780nm IR diode all in one package.
An even closer view of the assembly. The laser diode can be seen on the far right. There are some interesting optics and filters in here. Several of the filters are actually small LCD's.
The laser FAQ lists this diode to be running at safe levels around 4.5v at 30 to 40mA. Just to be safe, I limited my bench supply to 25mA before powering it up. I started the voltage at 0v and began slowly increasing. The first visible blue light was visible at about 3.2v. Brightness increased strongly up until about 4.10v, where my current limiting went into effect.
At this current which is lower than the 30mA to 40mA others had tested it at, the diode was extremely bright!
Now I just have to add a collimating lens to focus the output into a nice spot.
The lens I am using wasn't the best, it came from an old red laser diode module. I need to do a little searching to see if I can find a better lens laying around.
The final step will be to make a small power supply to run the diode off of batteries and mount everything in a small enclosure. Hopefully I will be able to finish it this weekend. More / better pictures will follow.
Thoughts of a computer scientist focused on electronics.
VHDL, RF, DSP, PIC, Digital, Analog, plus anything I find interesting at the moment.
Thursday, January 17, 2008
Wednesday, January 16, 2008
How rediculous...
So one of out at+t T1 circuits was disconnected, and I had to find out why. The following telephone call with at+t support just makes me laugh. I am typing this up after the phone conversation to the best of my memory:
(apparently the ampersand is not an allowed character in blogger... so I will use '+'s instead for a t and t)
me : could you please tell me when the last payment on this circuit was received?
at+t: the last payment was on Dec 12th for $nnnn.
me: what was the previous payment before that?
at+t: Nov 4th for $nnnn.
me: would it be possible for you to send me a list of all the payments we have made last year so I can figure out how we missed a payment?
at+t: well, this information would be on all of your invoices.
me: I understand that, but it would be easier to see a list from you with all of our received payments. this way i wouldn't have to contact our accounting department to request this information.
at+t: well, we do not offer that service.
me: ummm.. ok.
[silence]
me: well, what would i have to do to get this circuit turned back on?
at+t: i could forward you to our services department to re-activate this circuit. would you like me to do that?
me: sure.
at+t: okay, before i forward you to our services department, is there anything else i could help you with?
me: nope.
at+t: and how happy are you with your services with at+t? satisfied? or very satisfied?
me: are those my only two choices?
at+t: yes.
me: just satisfied i guess.
at+t: well, what could we do to make your experience with at+t very satisfied ?
me: you could start by providing me with a list of all our payments received for the past year.
at+t: i'm sorry, but we dont offer that service.
me: well... then i guess i will never be very satisfied with your services.
(apparently the ampersand is not an allowed character in blogger... so I will use '+'s instead for a t and t)
me : could you please tell me when the last payment on this circuit was received?
at+t: the last payment was on Dec 12th for $nnnn.
me: what was the previous payment before that?
at+t: Nov 4th for $nnnn.
me: would it be possible for you to send me a list of all the payments we have made last year so I can figure out how we missed a payment?
at+t: well, this information would be on all of your invoices.
me: I understand that, but it would be easier to see a list from you with all of our received payments. this way i wouldn't have to contact our accounting department to request this information.
at+t: well, we do not offer that service.
me: ummm.. ok.
[silence]
me: well, what would i have to do to get this circuit turned back on?
at+t: i could forward you to our services department to re-activate this circuit. would you like me to do that?
me: sure.
at+t: okay, before i forward you to our services department, is there anything else i could help you with?
me: nope.
at+t: and how happy are you with your services with at+t? satisfied? or very satisfied?
me: are those my only two choices?
at+t: yes.
me: just satisfied i guess.
at+t: well, what could we do to make your experience with at+t very satisfied ?
me: you could start by providing me with a list of all our payments received for the past year.
at+t: i'm sorry, but we dont offer that service.
me: well... then i guess i will never be very satisfied with your services.
Friday, January 11, 2008
Broadcast ping
A really cool feature of the 'ping' implementation under most UNIX and Linux distributions is the ability to ping your subnets broadcast address.
[root@proxy /]# ping -b 10.70.0.255
WARNING: pinging broadcast address
PING 10.70.0.255 (10.70.0.255) 56(84) bytes of data.
64 bytes from 10.70.0.3: icmp_seq=0 ttl=64 time=0.058 ms
64 bytes from 10.70.0.10: icmp_seq=0 ttl=255 time=0.198 ms (DUP!)
64 bytes from 10.70.0.12: icmp_seq=0 ttl=64 time=0.205 ms (DUP!)
64 bytes from 10.70.0.48: icmp_seq=0 ttl=255 time=0.248 ms (DUP!)
64 bytes from 10.70.0.19: icmp_seq=0 ttl=255 time=0.254 ms (DUP!)
64 bytes from 10.70.0.16: icmp_seq=0 ttl=255 time=0.258 ms (DUP!)
64 bytes from 10.70.0.30: icmp_seq=0 ttl=255 time=0.262 ms (DUP!)
64 bytes from 10.70.0.46: icmp_seq=0 ttl=255 time=0.287 ms (DUP!)
64 bytes from 10.70.0.43: icmp_seq=0 ttl=255 time=0.292 ms (DUP!)
64 bytes from 10.70.0.35: icmp_seq=0 ttl=255 time=0.297 ms (DUP!)
64 bytes from 10.70.0.44: icmp_seq=0 ttl=255 time=0.302 ms (DUP!)
64 bytes from 10.70.0.57: icmp_seq=0 ttl=255 time=0.310 ms (DUP!)
64 bytes from 10.70.0.64: icmp_seq=0 ttl=255 time=0.336 ms (DUP!)
64 bytes from 10.70.0.253: icmp_seq=0 ttl=64 time=0.341 ms (DUP!)
64 bytes from 10.70.0.45: icmp_seq=0 ttl=255 time=0.346 ms (DUP!)
64 bytes from 10.70.0.222: icmp_seq=0 ttl=255 time=0.662 ms (DUP!)
64 bytes from 10.70.0.22: icmp_seq=0 ttl=64 time=0.669 ms (DUP!)
64 bytes from 10.70.0.229: icmp_seq=0 ttl=64 time=0.674 ms (DUP!)
64 bytes from 10.70.0.210: icmp_seq=0 ttl=64 time=0.678 ms (DUP!)
64 bytes from 10.70.0.216: icmp_seq=0 ttl=64 time=0.698 ms (DUP!)
64 bytes from 10.70.0.209: icmp_seq=0 ttl=255 time=1.42 ms (DUP!)
64 bytes from 10.70.0.40: icmp_seq=0 ttl=255 time=1.43 ms (DUP!)
64 bytes from 10.70.0.217: icmp_seq=0 ttl=60 time=1.43 ms (DUP!)
64 bytes from 10.70.0.246: icmp_seq=0 ttl=255 time=2.82 ms (DUP!)
64 bytes from 10.70.0.223: icmp_seq=0 ttl=60 time=2.85 ms (DUP!)
64 bytes from 10.70.0.252: icmp_seq=0 ttl=255 time=2.85 ms (DUP!)
64 bytes from 10.70.0.244: icmp_seq=0 ttl=60 time=4.13 ms (DUP!)
64 bytes from 10.70.0.248: icmp_seq=0 ttl=255 time=5.25 ms (DUP!)
64 bytes from 10.70.0.240: icmp_seq=0 ttl=255 time=15.4 ms (DUP!)
--- 10.70.0.255 ping statistics ---
1 packets transmitted, 1 received, +28 duplicates, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.058/1.554/15.486/2.926 ms, pipe 2
A couple interesting things about this. First, the only responding hosts are hosts that are set to reply to ICMP broadcast pings. On this network this includes my UNIX and Linux hosts routers and switches, along with a couple other random hosts such as firewalls and a few network based cameras. Now it would be nice to see all of the windows hosts as well, but as part of the windows TCP/IP stack they are set to not reply to ICMP broadcast pings. This seems unfortunate, as if Microsoft did not implement their TCP/IP stack according to RFC guidelines. But upon further research, in RFC-1122 (Requirements for Internet Hosts) This behavior is allowed:
[root@proxy /]# ping -b 10.70.0.255
WARNING: pinging broadcast address
PING 10.70.0.255 (10.70.0.255) 56(84) bytes of data.
64 bytes from 10.70.0.3: icmp_seq=0 ttl=64 time=0.058 ms
64 bytes from 10.70.0.10: icmp_seq=0 ttl=255 time=0.198 ms (DUP!)
64 bytes from 10.70.0.12: icmp_seq=0 ttl=64 time=0.205 ms (DUP!)
64 bytes from 10.70.0.48: icmp_seq=0 ttl=255 time=0.248 ms (DUP!)
64 bytes from 10.70.0.19: icmp_seq=0 ttl=255 time=0.254 ms (DUP!)
64 bytes from 10.70.0.16: icmp_seq=0 ttl=255 time=0.258 ms (DUP!)
64 bytes from 10.70.0.30: icmp_seq=0 ttl=255 time=0.262 ms (DUP!)
64 bytes from 10.70.0.46: icmp_seq=0 ttl=255 time=0.287 ms (DUP!)
64 bytes from 10.70.0.43: icmp_seq=0 ttl=255 time=0.292 ms (DUP!)
64 bytes from 10.70.0.35: icmp_seq=0 ttl=255 time=0.297 ms (DUP!)
64 bytes from 10.70.0.44: icmp_seq=0 ttl=255 time=0.302 ms (DUP!)
64 bytes from 10.70.0.57: icmp_seq=0 ttl=255 time=0.310 ms (DUP!)
64 bytes from 10.70.0.64: icmp_seq=0 ttl=255 time=0.336 ms (DUP!)
64 bytes from 10.70.0.253: icmp_seq=0 ttl=64 time=0.341 ms (DUP!)
64 bytes from 10.70.0.45: icmp_seq=0 ttl=255 time=0.346 ms (DUP!)
64 bytes from 10.70.0.222: icmp_seq=0 ttl=255 time=0.662 ms (DUP!)
64 bytes from 10.70.0.22: icmp_seq=0 ttl=64 time=0.669 ms (DUP!)
64 bytes from 10.70.0.229: icmp_seq=0 ttl=64 time=0.674 ms (DUP!)
64 bytes from 10.70.0.210: icmp_seq=0 ttl=64 time=0.678 ms (DUP!)
64 bytes from 10.70.0.216: icmp_seq=0 ttl=64 time=0.698 ms (DUP!)
64 bytes from 10.70.0.209: icmp_seq=0 ttl=255 time=1.42 ms (DUP!)
64 bytes from 10.70.0.40: icmp_seq=0 ttl=255 time=1.43 ms (DUP!)
64 bytes from 10.70.0.217: icmp_seq=0 ttl=60 time=1.43 ms (DUP!)
64 bytes from 10.70.0.246: icmp_seq=0 ttl=255 time=2.82 ms (DUP!)
64 bytes from 10.70.0.223: icmp_seq=0 ttl=60 time=2.85 ms (DUP!)
64 bytes from 10.70.0.252: icmp_seq=0 ttl=255 time=2.85 ms (DUP!)
64 bytes from 10.70.0.244: icmp_seq=0 ttl=60 time=4.13 ms (DUP!)
64 bytes from 10.70.0.248: icmp_seq=0 ttl=255 time=5.25 ms (DUP!)
64 bytes from 10.70.0.240: icmp_seq=0 ttl=255 time=15.4 ms (DUP!)
--- 10.70.0.255 ping statistics ---
1 packets transmitted, 1 received, +28 duplicates, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.058/1.554/15.486/2.926 ms, pipe 2
A couple interesting things about this. First, the only responding hosts are hosts that are set to reply to ICMP broadcast pings. On this network this includes my UNIX and Linux hosts routers and switches, along with a couple other random hosts such as firewalls and a few network based cameras. Now it would be nice to see all of the windows hosts as well, but as part of the windows TCP/IP stack they are set to not reply to ICMP broadcast pings. This seems unfortunate, as if Microsoft did not implement their TCP/IP stack according to RFC guidelines. But upon further research, in RFC-1122 (Requirements for Internet Hosts) This behavior is allowed:
The other interesting thing about a broadcast ping is the ordering of replies. The hosts that replied the quickest are the hosts that are the physically closest to the sending host. The hosts that took the longest to reply are the physically farthest away from the sending host. The hosts that have gigabit links, even though physically farther than others appear near the top of the list. It's just cool to see propagation delay at work...
"An ICMP Echo Request destined to an IP broadcast or
IP multicast address MAY be silently discarded."
Monday, January 7, 2008
The network
My home network is a disaster.
When it was originally set up about three years ago everything was nice, clean, labeled and organized. As of today it is a complete mess... I realized this over the weekend when I couldn't get a specific cable to link up to my switch, only to discover that the cable I was using had been pinched in my door a few too many times causing a break. I then looked at the rest of the network and realized that this is really bad.
My home networks primary purpose is an experimentation playground. Want to play with OSPF between two Cisco routers? Sure. Want to play with an 802.1q VLAN on a Cisco Catalyst talking to an Extreme Summit? Ok. Need to do some web / database development? Yep. This type of playing results in a lot of moving equipment and cables around... and the result is this:
Now everything is working and I know what's going on with everything... it just looks like a mess. A lot of equipment is off because of thermal issues... this closet doesn't have the best air circulation so heat can become an issue. I used to have a Catalyst 5000 in here which was capable of heating a good portion of my home. This was great during the winter months, but as soon as summer came around, it had to go to save myself from a ridiculous electric bill.
A couple notes on this equipment:
That is my 4th Linksys router. I have never had one last me more than 2 years before it fails. I have to reset mine about once a week... it works fine until it just stops routing packets. By best guess is just that it get's too hot? It shouldn't be an issue though, this closet doesn't get that warm and nothing else in there fails. Next time I will spend the extra money and get a good Cisco Aironet.
Also, Extreme Networks switches are awesome!
When I finally move, I will dedicate a lot more space to my systems, working on them in such a small space is not so much fun...
When it was originally set up about three years ago everything was nice, clean, labeled and organized. As of today it is a complete mess... I realized this over the weekend when I couldn't get a specific cable to link up to my switch, only to discover that the cable I was using had been pinched in my door a few too many times causing a break. I then looked at the rest of the network and realized that this is really bad.
My home networks primary purpose is an experimentation playground. Want to play with OSPF between two Cisco routers? Sure. Want to play with an 802.1q VLAN on a Cisco Catalyst talking to an Extreme Summit? Ok. Need to do some web / database development? Yep. This type of playing results in a lot of moving equipment and cables around... and the result is this:
Now everything is working and I know what's going on with everything... it just looks like a mess. A lot of equipment is off because of thermal issues... this closet doesn't have the best air circulation so heat can become an issue. I used to have a Catalyst 5000 in here which was capable of heating a good portion of my home. This was great during the winter months, but as soon as summer came around, it had to go to save myself from a ridiculous electric bill.
A couple notes on this equipment:
That is my 4th Linksys router. I have never had one last me more than 2 years before it fails. I have to reset mine about once a week... it works fine until it just stops routing packets. By best guess is just that it get's too hot? It shouldn't be an issue though, this closet doesn't get that warm and nothing else in there fails. Next time I will spend the extra money and get a good Cisco Aironet.
Also, Extreme Networks switches are awesome!
When I finally move, I will dedicate a lot more space to my systems, working on them in such a small space is not so much fun...
Wednesday, January 2, 2008
Analog pathway
I have always wanted a real tube based home audio amplifier. The idea has always intrigued me. With today's high end audio equipment and all it's clean transistor based output power capable of producing hundreds or even thousands of watts per channel, why such a fascination with an old obsolete method of amplification? I had to find out. Just the idea of having an amplifier that is 100% analog based with no DSP and no A/D and D/A conversions going on seems so cool. To hear real tube compression and microphonics instead of the usual digital harsh sound we are so accustomed to with todays electronics. To have an amplifier that only produces 12 watts per channel play just as loud as a MOSFET based amp rated hundreds of watts per channel. To amplify such low level signals by using just these mysterious glowing glass tubes, a few large coils of wire, and a handful of passive components... I have to see what they are all about.
I began my search as usual at lots of audiophile pages with owners talking about such and such amp, why it is so awesome, and how much it cost. My search then turned to eBay (my preferred method of purchasing almost anything) to find one I wanted. After looking at a bunch and reading lots of user reviews on the ones available, I decided on a Harmon Kardon A300. It was clean looking and in good shape, inexpensive, and working with all tubes intact. This was important because a set of new tubes (new old stock that is, tubes that were made 40+ years ago that were never used) could easily cost more than the amp itself. Most tubes are still manufactured by a handful of companies today (mostly Chinese), but most people seem to say that they don't sound anywhere near as good as the old Russian, UK, and US tubes made forever ago.
The A300 is a stereo amp with approximately 10-15 watts of output power per channel. It has 9 tubes, 4 6v6 outputs, two per channel in a class A push-pull configuration, 4 12ax7 tubes and 1 12au7 tube in the preamp section. Upon receiving, I hooked it up to my system, replacing my current MOSFET based amp, turned it on and hoped for the best. As for any vintage electronics, there is always a chance for disaster or death with first power on. I looked it over really well, so luckily there was no smoke and there were no sparks... after about 30 seconds I could see all of the tubes glowing so it was time for a listen.
(what's a pcb?)
Now don't get me wrong, digital based equipment sounds good, really good (with the exception of mp3's. An mp3 compared to a well mastered cd on a good system lets us forget how lossy the compression of mp3's actually are). So when I started listening to music through this amp it was amazing. Did it sound better than a non tube amp? Yes... well maybe. It sounded different. So this is the 'tube warmth' everyone talks about, I can't really explain it but it sounded good.
So the next step is to begin upgrading the amp. Replacing all the 40+ year old caps will be a good start... it will be interesting to see if it changes the sound quality at all...
I began my search as usual at lots of audiophile pages with owners talking about such and such amp, why it is so awesome, and how much it cost. My search then turned to eBay (my preferred method of purchasing almost anything) to find one I wanted. After looking at a bunch and reading lots of user reviews on the ones available, I decided on a Harmon Kardon A300. It was clean looking and in good shape, inexpensive, and working with all tubes intact. This was important because a set of new tubes (new old stock that is, tubes that were made 40+ years ago that were never used) could easily cost more than the amp itself. Most tubes are still manufactured by a handful of companies today (mostly Chinese), but most people seem to say that they don't sound anywhere near as good as the old Russian, UK, and US tubes made forever ago.
The A300 is a stereo amp with approximately 10-15 watts of output power per channel. It has 9 tubes, 4 6v6 outputs, two per channel in a class A push-pull configuration, 4 12ax7 tubes and 1 12au7 tube in the preamp section. Upon receiving, I hooked it up to my system, replacing my current MOSFET based amp, turned it on and hoped for the best. As for any vintage electronics, there is always a chance for disaster or death with first power on. I looked it over really well, so luckily there was no smoke and there were no sparks... after about 30 seconds I could see all of the tubes glowing so it was time for a listen.
(what's a pcb?)
Now don't get me wrong, digital based equipment sounds good, really good (with the exception of mp3's. An mp3 compared to a well mastered cd on a good system lets us forget how lossy the compression of mp3's actually are). So when I started listening to music through this amp it was amazing. Did it sound better than a non tube amp? Yes... well maybe. It sounded different. So this is the 'tube warmth' everyone talks about, I can't really explain it but it sounded good.
So the next step is to begin upgrading the amp. Replacing all the 40+ year old caps will be a good start... it will be interesting to see if it changes the sound quality at all...
In the beginning.
After much thought, I have decided to start a blog once again. I originally had one starting about in 2002 I think... mostly inspired by Jim's neverendingdoom. In it's original form, it was designed to be an electronics blog for myself to keep track of my current projects and ideas. Soon after it's creation it found itself containing random thoughts and ideas which were very not so much electronics based. After about a year or two of this, it became a webcomic (incomingninsense in case anyone remembers) followed by the base site for my photo journals for my trip to Japan. (I believe this site still exists on NS1 somewhere...) I still own the domain, as godaddy kindly reminds me every month that omg my domains are going to expire so renew now!
I have decided to use blogger this time. Previously I would always write my sites from scratch, but instead of sifting through all my old broken code... i'll just use this. I have too many other projects going on at the moment to focus my energy on.
So that's it. My projects will go here along with other thoughts that seem interesting...
I have decided to use blogger this time. Previously I would always write my sites from scratch, but instead of sifting through all my old broken code... i'll just use this. I have too many other projects going on at the moment to focus my energy on.
So that's it. My projects will go here along with other thoughts that seem interesting...