Skip navigation

Category Archives: Hardware

Occasionally, I tinker with hardware. Soldering, Raspberry Pi, PC components, electronics, cool tech toys, stuff like that.

I’ve had my Macbook Pro ever since my wife bought it for me back in 2014 for Christmas. It’s been a great machine for me and has provided years of reliable service. Unfortunately, it has gotten to the point where the battery will only last about an hour while unplugged.

After I started working from home, I moved my office to the space that was previously my wife’s studio. And since I am now separated from the main house by a garage, I need reliable mobile computing to move around the house. Yes, the other macbook works, but it’s SO SLOW.

ifixit.com made this task easy. I bought the appropriate battery replacement kit from them and followed this guide of theirs.

Once I had the parts and the instructions printed out, I got to work on a Saturday morning. First, I drained the battery to the point that the laptop went to sleep to reduce power hazards as much as possible. Then, using the stardriver provided in ifixit’s kit, and under Bandit’s supervision, removed the back plate and was greeted with the laptop’s innards.

No going back now.

After working for a bit, my stomach reminded me that it was lunch time. However, my workspace was a mess of tiny screws, disassembled components, and tools. I could just see Bandit jumping down and causing a problem or two while I went in to eat. I couldn’t take him inside with me because he was comfortable and cat law was in effect. Then I realized the incredibly fortuitous fact that my desk is a roll top! I just dropped the cover and my workspace was protected.

Picture of Bandit resting on top of my rolltop desk
Shield’s up!

Getting back to the project after eating, the biggest part

Picture of the removed battery
Old malfunctioning battery has finally been removed
picture of the new battery installed in the Macbook Pro
New battery installed

ifixit battery successfully found by MacOS
Post-installation battery details

I am happy to report it has survived it’s first complete power cycle and lasts MUCH longer than previously. Very good investment of time for this project.

I am fortunate to live on an area that I have a few options for Internet Service Providers. Of the Comcast, AT&T, and WOW options that can choose from, I have been a happy WOW customer for years.

Their service is cheap and relatively reliable. They have rolled out some free speed upgrades in my area. I started as a customer back in 2015 paying for 25 Mbps down, and now, still paying roughtly the same rate, give me 200 Mbps down.

That would be great and all, except for the infrastructure upgrades WOW has done over the past year or so resulted in random outages that appear to be localized to my house. Calling tech support only results in wasted troubleshooting time and being told a technician would have to be dispatched to find the problem. Since the problem pretty consistently resolves itself after 3-12 hours, this would be a waste of time and the minimum $50 for a tech visit. Additionally, it only seems to show up when it’s raining outside. So unless I can schedule a technician to show up during a rainstorm, I don’t think they’re going to be able to diagnose the problem.

According to Motorola, my cable modem’s manufacturer, the upstream levels should be 37 to 48 dBmV for my 4 downstream channels. Mine was averaging 55 dBmV! The equivalent of my modem “screaming” at WOW and them just barely hearing it.

Cable modem’s channel info, pre-upgrade

So how do you get those numbers down? The same way you increase volume of your own voice in a noisy situation, an amplifier. Whereas a human voice can use a megaphone or microphone and speakers to increase its volume, a cable modem needs an amplifier with active return to increase its signal back to the ISP. The active return is the important part, that is the bit of tech that actually shouts back to WOW. An amp by itself only increases incoming signal, kind of like only wearing a hearing aid.

A few Youtube videos and web searches later and I’d made up my mind on the PCT-MA-81010-1A. Simple, cheap, and available. The device arrived quickly and without issue, I’d recommend doing business with PCT without hesistation.

The PCT-MA-81010-1A with Active Return

Biggest problem I encountered once I received the device was figuring out what ends to connect to which coax cables. The power coax was pretty self-evident, but the end to connect to my cable modem and the end to connect to the utility were less so. Fortunately I was able to find the answer on some YouTube channel.

Below, you can see that my upstream power levels are a good 10dBmV lower than without the amp.

Success! Ideal Power levels on upstream channels.

A friend recently gave me an old macbook, [from about 2009-ish?]

TL;DR
Linux Mint with it’s Cinnamon desktop resulted in the fewest headaches out of the box for me and my needs.

I’ve been looking for a lightweight PC to serve as a dock for my portable hard drives, kind of functioning as an ugly sort of NAS. I have been using my 2011 Macbook Pro with a USB hub. However, it is a pain to disconnect all the USB drives from it if I need to move. But with another small computer I can permanently untether the Macbook and use it around the house again!

So when I was gifted another old Macbook, I set about finding what Linux distro would work best with it.

TIP: To get to the boot select screen on this version of a Macbook, press and hold the Option key when the machine is first booted until the boot device selection menu appears.

As I dabbled, I came up with a list of features I was looking for.

  • Does it boot without error?
  • Does it resume from sleep?
  • Does it resume from a lid close?
  • Does the bluetooth work?
  • Does the wifi work out of the box?
  • Other notes

These are the distros I ended up trying

  • Manjaro
  • ElementaryOS
  • Pop! OS
  • Ubuntu
  • Deepin
  • Ubuntu with MATE
  • Mint
Boots?Resume from sleep?Resume from lid close?Bluetooth?Wifi OOTB?Notes
Manjaro KDEYes, but with errorsYesNonot testedYes
Manjaro XFCEYesYesYesNo, headphones not recognized as outputNo/Yes, when installed on EthernetNo option to add nVidia drivers from install disc
Wifi works OOB
elementaryOSYesNoNonot testedNo
Pop! OSYesYesNonot testedNo
UbuntuYesYesNoYesNo/Yes, when installed on Ethernet
Linux MintYesYesYesYesNo, but an easy add from discwifi & nVidia drivers easily added from disc
DeepinYes, but slowNoNoYesYestrackpad X-axis input is Y-axis cursor movement & no x-axis cursor movement possible
App Store and default browser don’t work
The test results

The most difficult hurdle for any of these distros to overcome was resuming from sleep due to the lid being closed. All but Mint and Manjaro XFCE failed this test. I imagine this is more of a desktop environment issue than related to any particular underlying Linux distro.

The results of these simple tests put Linux Mint with it’s default Cinnamon desktop as the clear winner for my needs.

Worth noting is the utter failure of the Deepin distro. It was unusable on this Macbook and disappointing to such a degree that I doubt I’ll bother with it ever again.

I discovered Vagrant earlier this week and have become immediately smitten. As I bounce around from my PC to my laptop to my work laptop, I have a lot of dev environments to manage. Vagrant manages all of that business for me now!
The TL;DR of this post is that you need to be sure you are running the most recent version of VirtualBox. Version 4.3.16 as of this post. I was running version 4.3.14 and still had trouble.

I have a Dell Latitude with the usual integrated Intel graphics w/ additional Nvidia or AMD graphics card configuration. In my case, it’s an Nvidia card. I have it docked in a replicator and outputting to 2 monitors and the laptop screen.
Vagrant is supposed to make managing VMs super-easy, so I was a bit confused as to why I couldn’t even boot a vanilla Ubuntu/trusty64 vm. From a DOS prompt, my “vagrant up” would yield:

...everything looks good...
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
The guest machine entered an invalid state while waiting for it
to boot. Valid states are 'starting, running'. The machine is in the
'poweroff' state. Please verify everything is configured
properly and try again.

If the provider you're using has a GUI that comes with it,
it is often helpful to open that and watch the machine, since the
GUI often has more helpful error messages than Vagrant can retrieve.
For example, if you're using VirtualBox, run vagrant up while the
VirtualBox GUI is open.

The error says to try it again with the VirtualBox GUI open, so I do that. But as soon as I open VirtualBox, I get a popup with another error.
VirtualBox.exe - Bad Image
C:\Program Files\NVIDIA Corporation\CoProcManager\detoured.dll is either not designed to run on Windows or it contains an error. Try installing the program again using the original installation media or contact your system administrator or the software vendor for support.

With some quick DuckDuckGo-fu, I find a VirtualBox ticket detailing exactly my issue, specifically comment #3. The last comment has the solution, just update to the newest version of VirtualBox. Just be forewarned, if you are lazy like me, you will try the “Check for Updates” feature inside VirtualBox and find that you are supposedly running the most recent version. But this feature doesn’t take into account tiny sub-dot releases. You will have to go directly to the VirtualBox website to download the latest.

After version 4.3.16 was installed, both issues disappeared. The Nvidia dll error upon opening VirtualBox as well as the command-line issue that was preventing vagrant from starting my VM.

I bought a Raspberry Pi for myself this Fall in order to play around with the minicomputer that is so popular these days as an opportunity to teach myself a little more about Linux, hardware, and networking. I read many many posts about lots of individuals running the Pi as a media server for their first experience with this computer. Seemed like a reasonable place for a Pi noob like myself to start as well…

If this previous paragraph sounds anything like you, consider this post a warning.

TL;DR version: DON’T! Just because you can do something, doesn’t mean you should.

  1. Install RaspBMC to SD card
  2. Boot Pi
  3. Wait for OS to initialize
  4. Realize process is frozen
  5. Reboot Pi
  6. See that installation is corrupted because previous attempt to start failed
  7. Go back to step 1
  8. Continue previous steps until the XBMC interface actually installs all updates without freezing or corrupting itself
  9. Try to do something once interface is loaded
  10. Oops, you moved the mouse too quickly or used the wifi connection and pulled too much power; system is hung
  11. Reboot
  12. Continue this process until you can get to the “Plugins store”
  13. Browse available plugins
  14. Peruse the vast wasteland of useless XBMC plugins
  15. Realize that nothing worth loading runs on an ARM processor (Want Netflix/Hulu/CW/ABC/etc? Too bad!)
  16. Say fuck it all and install something else your SD card. This thing wasn’t meant to run XBMC

If you want a media player, just buy a commercial product like a Roku 3 or Apple TV. By the time you’ve invested enough time, money, and energy in just getting what the Pi needs to run (case, 5V/1A+ PS, USB cable, HDMI cable, powered USB hub, SD card, mouse, keyboard, wifi dongle, etc), you will have spent MORE on an inferior product!

But wait a minute, this was supposed to be a learning exercise for you, right? Didn’t you at least learn something about the hardware or Linux? Well maybe, I did learn how to get my TV tuner working on my laptop, in an attempt to get it working on the Pi. So there’s that. But the time I wasted and frustration I endured was absolutely not worth learning that bit.

I’ve got Raspbian wheezy, a Debian derivative for ARM processors, installed on it now. That is running great so far. Probably just going to keep it there too. I’m still running Mint, also a Debian-derivative. Its easier to keep everything the same for the sake of learning

My laptop has been crawling lately, and not just because Box is running the background. Some damn “Windows Search Indexer” service is chewing up half my CPU cycles.

Windows Search Indexer

Microsoft Windows Search Indexer out of control

My laptop is crippled enough, here’s how I fixed this errant ‘Windows Search Indexer’ service in Windows 8.

First, bring up the right sidebar, and click on the Search button.

Windows 8 Search

Windows 8 Search

We are looking to stop a service, so start typing the word ‘service’.

Search for 'Services'

Once the ‘Services’ button appears, click it to open.

Services

Next, find the “Windows Search” service.

Find the Windows Indexer Search Service

Open this Service and disable it.

Windows Indexer Disabled

After a brief period, the service should be shutdown.

I haven’t had any issues with search or performance since I performed this trick. If there is a downside, I haven’t come across it yet.

My laptop is back up and running thanks to my new AC adapter from newegg.com.

I was operating under the delusion that I needed an OEM adapter for my laptop. Dell thinks that $56 is a fair price for the adapter I need. However, being the cheapskate wise consumer that I am, right before I was about to buy, I took a last look for some alternatives. I am so glad that I did. My trusted source for electronics, newegg.com, bailed me out with an awesome adapter for under $20 ($24 w/ shipping)! They have this superb battery finder tool that I used to find an adapter that they carried that was compatible with my Inspiron 1521. The cheap G Skill RAM I bought from them  back in April for my home PC is still going strong as well.  I had to buy 2 x 2Gb sticks to replace the two stick of mega-shit Super Talent RAM I got from a local computer store here in Greenville that died about a month after I installed. I am just waiting on the other two sticks to fail any day now.

But back to the topic at hand, the laptop has been running for 4 days consistently with this new power supply with no issues. I don’t anticipate any problems, but I’ll let you know if things take a turn for the worse. The ‘worst’ being that my shitty Inspiron electrocutes itself and I get to buy a new laptop. crosses fingers

I started a new job this week.

It is with a startup company here in Greenville, SC called Green Cloud Technologies. I am super-excited to be here and away from that crap company Windstream! I’ve had a few changes in my career growth as a result of this job change. First, they didn’t have any equipment for me when I started so I am currently using my own PC to work on. This is the same PC that I was teaching myself Linux on. However, I couldn’t very well learn and do everything needed for my job AND learn to do it on Linux at the same time. I’d never get anything done. So I purchased a copy of Windows 7, 8 Gb of DDR2 RAM and brought my PC to work.

That said, my focus on learning has shifted. I am no longer concerned with learning Linux, as all the tech at Green Cloud is new to me. Liferay, Glassfish, Vaadin, Git,…as I said before, I don’t have the mental bandwidth (or equipment now) to learn to use those and Linux. So I guess I’m probably going to start posting stuff on here about my findings with my new technology stack.

I’m currently working on an entry on how I got my Eclipse environment set up with Liferay. If you are using the Liferay IDE plugin with anything other than the Tomcat bundle, you are in for some headaches.