Thursday, December 06, 2007
Here are a series of articles pertaining to Verizon Wireless network, Google Android, and the 700MHz Spectrum auction.
Verizon Wireless announces that they are opening their network.
Verizon Wireless Embraces Android
Google Confirms they are bidding on the 700MHz Spectrum.
A look at what Google phones are going to look like.
There is another article somewhere, maybe one of the above that says that Google has a working version of Android on a 700MHz broadband device. I know a lot of people (at least in the tech boards that I read) think that Verizon is a horrible company and that this is just one of their evil ploys. I guess I have had so much trouble with AT&T and Comcast that I don't think as badly of Verizon. I am really glad that they did this. AT&T cannot continue their exclusivity deal with Apple. I hope that Verizon learns that they can get a lot more customers by being open, but in the end it is a business and that's a hard road to walk.
Well, that is about all for this post. Noelle and I are going on a cruise in a week for our 5th Anniversary. It is unreal to think that we are going on the cruise and that we have been married for 5 years. As I tell Noelle, I hope God gives us 50 more years of marriage.
Wednesday, November 14, 2007
On to some cool stuff, I am very intrigued by the Open Handset Alliance. Google is trying to break into the Cellphone industry and I for one am sick from all the crap cellphone companies give you( as well as Telcos and Cable companies).
I have messed around with installing the SDK, it is very easy and they have put a massive amount of energy into providing free tools. There is also a contest. To me providing free tools and an impetus(money WOOT!!) for programing is a great way to foster innovation. I have no idea if this is going to go any where but more competition is never a bad thing.
One prediction: If Google is nominally successful with Android, I believe that they are going to port this over to their Broadband UHF devices when they purchase the 700MHz spectrum. Google almost has to buy the spectrum because if Cable and Telcos start tiering internet services Google is going to be at the ISPs whim. Net Neutrality is a much hyped issue and I am trying to find the balance between the freedom that has made the net great and the financial need for expanding the network, but that is another post.
I enjoy watching the IPTV show CrankyGeeks. What makes me cranky is a question they ask the audience?
Well, I thought it was awesome when the iPhone was cracked and everyone thinks it is the greatest thing since sliced bread. But one thing everyone does not mention is that the hack only works on a GSM network. T-Mobile is the only main US provider that has a GSM network, Sprint and Verizone Wireless are CDMA which means you can't think of moving your phone over to those carriers. With all the hype around this hack it disappoints me that noone really points this out.
Side note: I think most of Europe is GSM so you could take your iPhone to England and put a European SIM card in it and it can be hacked to work there.
Friday, November 09, 2007
Friday, October 19, 2007
Since we have moved I had to give up my laptop back to the Feds. So now we have only one PC and that one is about 5 years old with little upgrades here and there. I have wanted to build a new PC and Noelle has wanted me to as well. She is tired of it crashing during a Kara Raid. So knowing that I wasn't going to be able to make a new PC for myself I talked her into buy the parts for two new PCs. That definitely is a WOOT.
I ordered all the parts on Sunday Night and they got here Yesterday. Here are two pics of the boxes, can you tell that I am excited, hehehehehe.
Monday, February 26, 2007
After a month of messing around, I finally got my act together and started working on my PID heating pad controller. Well, actually it is only a P heating pad controller right now, but I will go into that later.
The Goal: Create a PID controlled heating pad to regulate the temperature of a Bio-Dome.
I got two Arduinos for Christmas, so I had most of the hardware to control the heating pad. I was hoping that I would just be able to modify the pad's circuits, but it is not just an on and off switch and the only IC on it was made in China by some unknown company so I could not find any info on it.
I used to work for a company in SC called Kryotech. They started overclocking PCs (Super G2) in the late 90s, but when that was not commercially viable, they moved to Industrial test equipment. I helped develop a push-pull PID controller for a system we sold to a Japanese company, Advantest. The company was run horribly, and Intel forced us to be sold to one of their buddies in summer 2004.
I got some free samples from Thermistor.com so that was very helpful. Just your basic NTC thermistors.
The next issue was how to control the heating pad since I could not use the built-in system. I asked around, and someone on the Makezine forum suggested hacking an AC light timer. I found one at Target for about $10. It was pretty easy finding out how to switch the relay despite the LCD falling off the second I opened it. Once I figured out the control line, I just ran the GND and the control line to the port that I was switching on the Arduino. The only problem right now with the relay is that it clicks on and off very loudly. It did not seem like it was getting very hot, so I just wrapped a blanket around it to muffle the noise.
Thermistors are non-linear, so I created a piece-wise linear table for temperatures between 50-77F and 77-104F. I don't need very precise termperatures, so that is a simplified version of the actual table. Temperatures below 50F and above 104F turn the controller off.
All my experience is with PIC18s, and we used a commercial compiler so we had plenty of room for code. From what I have heard, the GCC compiler is not very optimized so I ran out of space quickly on the Atmega8.
The other system I worked on was push-pull; it had cooling as well as heating capabilities. That was a little more complicated, but this is pretty easy. I choose a 10hz square wave because the period is 100ms. The duty cycle is the control variable from 0-100ms, 0= GND and 100= ~5v output. The basic equation is duty = P* error. The P is a constant that is input manually to control the behavior of the system. Error in my case is target temperature - current temperature.
setpoint = 80
current temp = 70F
Duty = 5*(80-70)=50% duty cycle(50ms high,50ms low)
Since I ran out of room on the Atmega8, I was not able to put the I in. I have upgraded to a Atmega168 on the other Arduino but there is something wrong with the timing of the square wave so I have yet to implement that.
I is Integral control. It uses the error from the last two readings to boost the performance.
duty = P* error + I*(error + last error)/2
The best example would be in a situation where the proportional cannot get to the setpoint unless the P is changed and this results in a large overshoot. Then I can add just a little to the P so that it can get to the setpoint without overshooting the target.
The Derivative is the opposite of the integral. It measures the dynamic change, and since this system is so slow, it is not going to have those issues. I am probably not going to use it. So in the end, it is a PI system right now with only the P currently working, haha.
Hope you enjoyed this. The next phase is going to be the lighting. Orginally, I wanted to dim the light based on the time of day, but DC control AC dimmers are kind of expensive and/or time consuming. I am working on hacking a motor to an AC dimmer switch, but in the end, I might just buy another AC timer, unhacked this time.
The third phase should be pretty easy to implement. I just have to figure out how to interpret the information. It is going to be a mositure sensor. Three resistors in series with the middle being very large somewhere around 1-2 Mohms. Wires will be placed on either side of the resistor creating an open circut in parellel. The wires with be inserted in the soil and the resistance of the soil will change based on the water content of the soil, i.e. more water = lower resistance. I am going to have to do some tests with how much water I put into the soil to find out what value dictates that I need to water the plants.
Hopefully I will update the blog sooner than in a month.
Tuesday, January 23, 2007
This has definitely been a learning experience. If I had better tools and a little more patience, the work table would be even better, but I am happy so far with what I accomplished...On to the pics!
I made the top here. My original design idea was to have the legs be 4x4s, but I figured that they would be too heavy and a bit too expensive, so I just went with 2x4s and came up with a design to interconnect them. Design- two sets of 2 vertical 2x4s connected and separated by a board on the bottom and the top. I used our current computer desk's height to figure out a good height for the legs. I also had to take into consideration the AC unit against the wall.
The L bench top is made of two pieces: a 6 foot board and a 4 foot board. Ideally, I wanted to have it symmetrical, but that did not work out. I had to attach the 6 foot board to the 4 foot board resulting in a 8 foot x 4 foot "L" on the outside edge and a 6 foot x 2 foot "L" on the inside edge. I wanted to design the bench so that it would not need a pole/support in the middle of the "L". (Don't you just love banging your knees or even worse on those supports??) I built three sets of legs; two sets attach directly while the other set joins the side of those cross beams.
A lot of the table was done on the fly. I placed the top pieces on to see where I had to notch out the beam so they could sit flat. The notches in the middle are from when I thought the 6 foot section was going to be the main structure. I had to notch out a section for the middle beam and a section for where the two edges would come together. Originally, I had made just a big notch so that I would not have to worry about having to cut the notch so precisely, but the second time around, I tried to be a little more careful. In the end that helped because since the notch is so tight the top is more stable and no more bracing was needed. All in all, this has been a good project. I am a bit unsure about the long-term life of the table, but I tried to design it so that it could be taken apart and put back together fairly easily. That is why I used all the bolts as opposed to wood screws. The legs do lean a little bit so if anyone has an idea to make them a little more sturdy then I would be grateful.
Sunday, January 14, 2007
Thursday, January 04, 2007
The next site/web app is Joe's Goals. It is simple little app that lets you create small goals that you need to accomplish every day (i.e. - run) and give them + points or things you wish to avoid (i.e. - drinking soda in my case) and give them - points. Then it adds all your positive and negative points up for you. It is a cute little way to see if you are doing your daily tasks and avoiding your weaknesses. It even has an email reminder than can send you an email if you don't check it after X amount of time.
This one(The Couch-to-5K Running Plan) is more of a guide than an app. I cannot really apply it until my knee is a little more stable, but I hope to use it by February.
The last one is probably going to be the most helpful. Fitday is a site that allows you to log your meals. It calculates the calories and other nutritional information. It has a pretty big library of foods, but you can add your own custom ones. (It is pretty easy to find nutritional information on the web these days.)
I hope that I can keep at least some of these things up, but you know how New Year's resolutions go. Maybe there will be some cooler apps next year.