IMG_1372

$320 Battlestation/Video Editing PC Build

Around mid-summer, my ThinkPad laptop began to show major signs of wear-and-tare. The screen was slowly, but surely, falling off. The performance was not up to par either. Video editing was a nightmare; pre-rendered clips in Premiere Pro were playing back at a very frustrating 21 frames per second. I needed a major performance boost in order to be able to continue making YouTube videos (and to play videogames), so I decided to build a new desktop PC.

I didn’t want to spend a lot of money on this computer, so I tried to cut as many corners as possible by using parts from old computers I had laying around. The total price came out to about $320 USD, or $420 CAD, with shipping included. Here’s a parts list (of the stuff I had to buy) in CAD:

  • Motherboard: A78M-E35 V2 ($83 from NCIX)
  • Processor: AMD Athlon x4 860K Quad Core ($92 from NCIX)
  • RAM: Corsair Vengeance 8GB DDR3-1600 ($57 from NCIX)
  • Graphics Card: ZOTAC GeForce GT 740 ($88 from eBay)
  • Hard drive: Samsung 830 256GB SSD ($100 from eBay)

These items either had free shipping to my dad’s PO box in Washington, or were picked up in store from NCIX.

Installing the Motherboard and Peripherals:

IMG_1289

Assembling a computer in today’s day and age is as simple as building something with expensive LEGO. I started out this build by putting the AMD processor into the FM2+ socket on the motherboard. The stock cooler that came with the processor already had thermal compound applied, which surprised me since I was used to applying my own thermal compound to all of the old computers I fix.

IMG_1296

For the case, I went with an old HP Compaq case from some d-series desktop. The case had the mounting holes for an m-ATX motherboard, but it also has some mounting supports for an Intel cooler, which prevented me from mounting the motherboard in the case. Since the supports were made from thin recessed steel, I was able to bang them out with a hammer and install the motherboard.

At this point I also connected the motherboard to the 300 watt power supply that came with the old HP case.

IMG_1290

Installing the RAM and Graphics Card:

IMG_1291

Installing the RAM and graphics card was even easier than installing the motherboard, since all I had to do was align the pins and push them into the appropriate slot. The reason I went with a single stick of 8GB RAM is because I really needed 8GB for video editing. Back on my laptop I was peaking 6 or 7 GB of RAM while multitasking in Photoshop and Premiere simultaneously. The single stick also allows me to upgrade the RAM if I were to need more (my motherboard only has two RAM slots).

The graphics card I chose was the GeForce GT 740. I chose it based off its Passmark rating for both performance and value. Performance was about three times better than the Intel HD 3000 graphics in my laptop, and the value was quite high based on the G3D mark/price chart. However, in retrospect I could have gone with the GeForce GTX 750, which offers more than double the performance for about a $20 increase in price. Oh well.

Installing the Fans and Drives:

IMG_1299

I wanted this system to be very quiet and well-ventilated, so I decided to use the best case fans I could find. For the intake fan I went with a 92mm, 2.5 ampere behemoth, which I plugged directly into the motherboard! Well not really; I measured the peak current of the fan to be less than 1 ampere, and the average current to be around 500mA at full speed. So much for the 2.5 ampere rating… The exhaust fan was a smaller 92mm which was about half of the thickness of the intake fan (because the power supply also helps with the exhaust). That’s when I discovered the only downside of this motherboard… the rear fan connector has no PWM, which means that the fan is constantly at full speed. In order to keep the computer quiet, I tried different fans and used the quietest one.

For the storage, I went with a Samsung 830 256GB SSD, and an old Samsung 300GB HDD as a backup/storage drive. I mounted the SSD using a 2.5″ to 3.5″ inch converter that I bought from eBay for $3. The SSD can deliver read/write speeds of 300Mb/s and 500Mb/s, respectively. I used this drive to house the OS and programs, which made the overall computer very snappy when opening up programs.

Monitors/OS:

IMG_1374

Since the graphics card I used has a DVI and VGA port, I was able to utilize an old VGA monitor and a newer BenQ 19:10 monitor in this lopsided dual monitor configuration. The extra-space is super-useful for multi-tasking, even though the monitors aren’t identical.

For the operating system I went with a fresh install of Windows 7 Pro. I’ve tried Windows 8 and Windows 10, and I could never get used to the look and feel of the system. Plus there is no downside of using Windows 7 for the time being, since most programs support it.

Benchmarks:

Passmark

Benchmarks are only useful if you compare them to a result that you already know. Here are the Passmark results for my computer (in red) and my old laptop (in purple). The new $320 PC outperforms the (back then $800) ThinkPad E420 in most categories except the 2D graphics mark. This can be attributed to the Intel HD Graphics in the ThinkPad, which are specifically made for superior performance in Windows, but deliver sup-par performance in video games.

In terms of video-gaming performance, this computer can play Battlefield 3 and 4 at a very decent 40-45 FPS at the “High” preset and Minecraft at 80 FPS on High. These are the only games I have actually tested so far, but games like TF2, Kerbal Space Program, and Left for Dead 2 have no visible lag at the full 1650 x 1050 resolution and on medium settings. Overall, I am extremely satisfied with this computer, and even though the graphics card is not top-of-the-line, this computer should serve me well for the next 5-10 years.

Here are some more benchmark results:

 

Read more

Weather Station: Designing the Circuit

IMG_0194

So now that most of the parts have arrived for my weather station, I have begun designing, testing, and programming the circuits for both the receiver and the transmitter part of the weather station.

So far I have connected the thermometer, barometer, and hygrometer sensors to the Atmega328P-PU chip on the breadboard. I have also connected the MX-FS-03V transmitter to the board and I still have 10 digital inputs left over.

On the top-left you can see an Arduino Uno which has the MX-05V receiver attached. I went through the sample code from the RC Switch and Virtual Wire libraries to figure out what was best for my setup. I eventually went with the Virtual Wire library and my own code. I found this website to be helpful in describing how to connect the modules.

One of the challenges I faced was parsing the code though to the send function which was included in the Virtual Wire library. I eventually found a solution using this code:

float p = getPressure();

char pbuf[7];
dtostrf(p, 7, 2, pbuf);

char msg[21];
sprintf(msg, “%s %s %s”, tbuf, hbuf, pbuf);

vw_send((uint8_t *)msg, strlen(msg));
vw_wait_tx();

This following code takes a float temperature reading, turns it into a char array, then combines it and 2 other readings into a single char array, which then gets passed onto Virtual Wire send. Shorter messages have a lower chance of getting interrupted or lost so I will stick with those in the final program.

IMG_0196

Another challenge I faced was providing the correct voltage to the 3.3v barometer. Since this is a minimalist breadboard design, the voltage actually comes from the 5v USB to Serial adapter; the BMP180 barometer will not work with 5v and it could get damaged.

I remembered that voltage dividers were a thing, so I incorporated one into the design. This is the circuit I used:

resistor3-3

Using a 100 ohm and a 200 ohm resistor (common values) in the circuit above will provide 3.3v to the barometer. Voltage dividers should only be used to power low amperage devices, and will not work with items like motors. It’s a “quick” solution to something that should be handled with a static voltage regulator.

In the image above there is a formula for figuring out the voltage of Vout, as well as the formula for the resistor power dissipation, which is 0.08 watts. 0.08 watts is not a big deal.

Now that everything was hooked up, I wrote a simple little loop which transmitted values across the room.

outputdraft

Easy so far! All I need to do now is hook up a voltage regulator, put all of the components onto a perfboard, and maybe even try some reed switch sensors! The code also needs a bit of work in order to extend the range, but that will come later.

Also, I started building the enclosure for the weather station out of some plywood:

IMG_0031

It looks like a bird-house!

While it’s not the best housing for taking accurate measurements, it should do the trick. In order to protect the wood, I plan to paint, then cover the entire thing with epoxy (or vice versa).

When I am done this project I will release all of the schematics/source files as well as publish some start-to-finish instructions on Instructables!

Read more

Weather Station: Parts

Part # Name Notes Price Shipping Arrival Link
DHT22 Temperature and Humidity Sensor $3.93 Friday, Aug. 1 – Tuesday, Aug. 19 http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=140786274816
BMP180 Barometric Pressure Sensor Also known as BMP085 $2.03 Friday, Aug. 1 – Tuesday, Aug. 19 http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=141343073924
Resistor Pack 600, 30 each Accuracy 1% $4.49 Friday, Aug. 1 – Tuesday, Aug. 19 http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=130999859137
Prototype PCB, 10 each 5 x 7cm, Hole: 2.54, 1mm $1.51 Tuesday, Aug. 5 – Wednesday, Aug. 20 http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=360944797003
Reed Switch, 10 each 2mm x 14mm $1.99 Friday, Aug. 1 – Tuesday, Aug. 19 http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=251569062099
MX-05V Reciever and Transmitter 433Mhz $0.99 Fri. 15 Aug. – Fri. 5 Sep http://cgi.ebay.ca/ws/eBayISAPI.dll?ViewItem&item=181298383528
TO-220 Voltage Regulator, 5 each 5v $1.45 Thu. 14 Aug. – Thu. 4 Sep. http://cgi.ebay.ca/ws/eBayISAPI.dll?ViewItem&item=310918766710
Capacitors, 210 each $3.41 Tue. 5 Aug. – Wed. 20 Aug. http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=131177806493
FV88 USB to Serial adapter Also known as FT232RL $3.20 Tue. 5 Aug. – Wed. 20 Aug. http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=141214272997
AtMega328, 2 With Pinout $2.53 Tue. 5 Aug. – Wed. 20 Aug. http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=271306692456
16Mhz crystal $0.99 Wed. 6 Aug. – Thu. 21 Aug. http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&item=321361180906

Quite recently I’ve ordered all of the electronics to make my own weather station. Why build a weather station? Mainly to share data with other people, improve forecasts, and get some experience building these types of things. The plan is to put it on the roof or someplace within range (20-100m) of the web server (the same one that you are using to view my blog). This range is guided by the transmitter/receiver combo in the list above. Power will be via solar panel and lithium battery. It will be a relatively small device, so I may have to buy a more compact panel rather than building my own. There are several sensors needed for a basic weather station:

  • Thermometer
  • Barometer (for measuring air pressure)
  • Hygrometer (NOT a hydrometer, for measuring humidity)
  • Anemometer (for measuring wind speed)
  • Wind Vane (for wind direction)
  • Rain gauge (for precipitation)

So far I have half of the sensors I need. I ordered the 10 reed switches to fulfill the rest of the sensors. A magnet and 8 switches will measure the wind direction, 1 switch for the wind speed, and one for the rain gauge.

While the parts are being shipped, I am planning to build the rain gauge. It will be a tipping bucket style. Hopefully I will get part of it done by tomorrow.

I’ve also built a schematic for use on the perfboard I ordered.

circuit (3)

I’m a bit worried about the placement of components near the radio and barometer, so this sketch is just temporary.

I’m also planning to make some PC software to go along with the station. I was thinking of a Window app that takes the serial from the receiving Arduino and put it into MYSQL rows for display on my blog. Maybe even the sidebar if the project gets that far!

Read more