Tascam CD-500B Button Repair

The Tascam CD-500B is one of a sadly quickly dying breed — a professional grade CD player, with balanced audio output (and AES/EBU digital) as well as RS-232 and contact closure remote control. Unfortunately, it features some very non-professional grade buttons on the front panel. I don’t even understand what on earth they were thinking.

Symptom: Buttons “fall” into front panel. Operation of button is impossible.

Broken off button
Button with broken hinge. Note that the switch is off center and sort of BESIDE the button, not directly under it as it is on Denon players

Problem: Thin plastic hinge section of button has broken.

Solution: Wedge button in place from below so it’s trapped between the front panel, the wedge, and the switch on the circuit board.

Disassembly of the player: This player is truly and sadly built like total BPC (Black Plastic Crap). You have to remove the rack ears, top cover, and the entire front panel. Carefully release the wires going to the front panel and unscrew the one visible grounding jumper. Unplug the two multi pin connectors (they cannot be mixed up – different number of pins). Remove all the silver screws around the front of the player and release the tabs on the right and left sides, then drop the front forward. Remove two screws holding in the LCD, then you can unscrew and remove either button board as needed.

Wedge the broken button(s) from below, then set them into the front panel with it tilted downwards and reassemble.

It is worth noting this player uses what appears to be a standard slotload SATA cd-rom drive as its transport! I have not tried substituting drives yet to see what happens. The buttons break before the transport 🙂

…And any other unspecified duties that may be added as necessary.

From Wm Watt Hairston on the fantastic “I Take Pictures of Transmitter Sites” group:

“Radio Engineer NEEDED ASAP, Duties shall include: Plumbing and toilet repair; Vehicle maintenance and repair; General building and grounds upkeep, modifications and repair; Removal of derelicts and other undesirables from building; Jewelry repair; emergency shoe and garment repair; kitchen appliance repair; office moves and logistics as requested; repair employees electronic equipment; equip, setup and tear down for remote broadcast as requested; install, maintain all phones, computers, as well as associated routers and networks; provide instant desktop support for all running OS and installed applications; Maintenance and upkeep of all FCC related compliance and record keeping matters; repair and maintain towers, transmitters and other broadcast equipment. Must supply own transportation and communications; On-call 24/7 is a must as well as a good attitude and willingness to take direction from anyone who ask….”

When you and your Arduino do not give a fuck

I can say fuck on the Internet, right?

the wiring is

// fucks.ino: Arduino sketch for automatically running out of fucks to give. Should work on any board, wired to an HD44780 based display or compatible. Does it look like I give a fuck?
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
// rs, enable, d4, d5, d6, d7
// on the lcd end these match to:
// 4, 6, 11, 12, 13, 14
// don't forget the 10k pot between gnd/5v with the wiper on lcd pin 3, ground pin 1, and +5 on pin 2,
// or a completely negative number of fucks will be given. this is undesirable but hilarious.
int fucks;
void setup()
fucks=100; // or whatever. watch me give a fuck.
lcd.print("Fucks To Give:");


void loop() {
if (fucks>=1) {
if (fucks=0) {
lcd.print(" Out Of Fucks ");
lcd.print("To Give! Fuck Off.");
delay(30000); // or just go fuck yourself

I could put up an example picture and video but I am out of fucks to give

Problems using older Arduino sketches

This isn’t a comprehensive guide yet, but I’d like it to be: Things You Need To Change For New Arduino Versions.

1: void write(uint8_t x);
The error returned:
…foo.c: error: conflicting return type specified for ‘void foo::bar(uint8_t)’
…foo.c:23: error: overriding ‘virtual size_t Print::write(uint8_t)’
The solution:
size_t write(uint8_t x);

Problem #2: WProgram.h changed to Arduino.h
The error returned: Most common core functions like pinMode, digitalWrite, digitalRead, analogRead, etc, will error out as undefined. At the top of the slough of errors you will find “WProgram.h: No such file or directory”
The solution: Use a preprocessor directive to determine the version and automatically call the proper include.
#if defined(ARDUINO) && ARDUINO >= 100
#include “Arduino.h”

#include “WProgram.h”

Hopefully this will fix your compiling problems.

Avoiding absentee voter tele-hell

Warning: when requesting an absentee ballot in Miami-Dade County, Florida, the request form includes a field for a telephone number.

Do not add one.

If you do, you will receive up to 80 robo-calls a day with political advertisements.

This is the sad voice of experience speaking.

If a phone number is required, do something like setting up a K7 free voicemail box and set it not to bug you, then use its number.

Cleaning your MAF sensor for performance and profit

2012-12-30 19.46.01The MAF sensor is a device that measures the amount of air flowing into your car’s engine air intake and is used to determine the appropriate amount of fuel to shoot in to achieve an optimal fuel/air ratio. Incorrect MAF sensor readings, caused by contamination, can lead to loss of performance, fuel economy, or rough running. That being said, let’s begin! This will take only a few minutes and will most likely save you money on fuel when it’s done.

First, obtain a can of MAF sensor cleaner. Your local auto parts store should have it, and a can is probably good for 5-6 cleanings. Clean it whenever you clean/replace the air filter.

On some vehicles you will have access to the MAF sensor immediately upon opening the air filter housing. On others there will be stuff in the way and you’ll need to remove it from the intake line. It’s usually held in with two screws.

Mazda 6 (2.5 L4) MAF sensor. It's located just beyond the air filter box.
Mazda 6 (2.5 L4) MAF sensor. It’s located just beyond the air filter box.

Step one: Remove the screws holding in the sensor and pull it out CAREFULLY – do not touch or damage any of its parts. Some sensors may have a fine platinum wire that must not be damaged or… well, you’re stuck buying a replacement for something that has a platinum wire in it. Gross. 😀

The pictures shown here are on a Mazda 6 with a 2.5 liter L4 engine; however, I’ve seen the exact same MAF sensor setup on many other import and domestic vehicles including Toyota, Nissan, and *some* Honda vehicles (they only recently started adding MAFs — many Hondas simply do not have one and rely instead on manifold pressure + throttle position to determine the flow rate).

Step two: Spray it down!

The spray can may come with a straw – you can attach that to the nozzle and use that, but do not stick the spray straw into any part of the sensor. Do not touch any small wires on the sensor or expensive problems will result. This sensor appears to simply have none. I’m not totally sure how it works, but the fact is, it doesn’t work well if it’s grungy. 🙂

The cleaner works very quickly but I usually try to spray it, let it stay soaked for a minute, then spray it down again to rinse. Repeat if you still see any visible contamination.

Rub a dub dub, baby.
Rub a dub dub, baby.

Step three: Reinstall the sensor and you’re done!

Now start up the car and drive off, you may notice an improvement immediately. If you don’t, you probably will the next time you fuel up.

A random tip: Track your gas mileage at http://www.fuelly.com and compare it to that reported by others to make sure your vehicle’s running well.