Fender rust on 1990-1993 Honda Accord

February 25th, 2007

You may have noticed that most 1990-1993 Honda Accords have significant rust in the rear fenders above the rear tires while the rest of the body is rust free. There are a few causes.

The first cause is road salt and grime being kicked up in between the rubber splash guard and the lip of the fender. Car washes do not get to this salt and grime, and so it begins corroding the fender on the inside. By the time you see the corrosion, the fender has started to significantly rot.

The second cause is the drain hoses from the roof that are behind the upholstery panel in the trunk being clogged and allowing water to collect behind the fender.

If you have immaculate fenders, prevent this problem from occurring by REMOVING the rubber in the rear wheel wells so that there is nowhere for salt and grime to accumulate in a “hidden” place. Also, make sure the drain hoses flow freely.

The root cause is the fact that Honda (cheaply) failed to paint both sides and the underneath of the render, even though it was obvious from the design that the fender would corrode from both sides and underneath. There is nothing that can be done about it now besides to prevent the corrosion from starting. Once it has started, it is extremely difficult to repair. Once a rust hole begins at the fender, water will then leak into the trunk and corrode the inside even more!

Cooling fan runs after motor is shut off

This is perfectly normal. Spooked me though!

Making Windows XP bearable

February 7th, 2007

Powertoys:
Cmd Here
Task Switch
TweakUI

Third party apps:
TXMouse
VirtuaWin
DAEMON Tools
Skype
Privoxy
Java
Flash

Replacements:
Internet Explorer -> Firefox, Opera
Word -> Abiword
Office -> OpenOffice
Outlook -> Thunderbird/Sunbird (unless using shared office calendar and address book)
Windows Media Player -> Media Player Classic, VLC, XP Codec Pack
Windows Messenger -> Gaim, Psi
Paint, Visio -> Inkscape, Dia, GIMP
Acrobat Reader -> Ghostscript & GSview
Notepad/Wordpad -> GVim
WinZip -> 7-Zip
GnuPG -> WinPT

Unixy additions:
MinGW/MSYS
Cygwin
GNUWin32
coLinux/andLinux
Strawberry Perl
PuTTY
WinSCP
Python

Unix interop:
Services for Unix (free from MS)
Xming (X.Org X server)
Cygwin (includes an X server)
mingw32/MSYS (Unix style build environment for Windows)
True X-Mouse (Unix style mouse focus and highlight-copy semantics)
VirtuaWin (Pseudo-virtual desktops)
WinSCP (SCP/SFTP client)
PuTTY (SSH client)
GNU-Win32 (Win32 ports of Unix utilities)
Strawberry Perl (Win32 “Official” Perl port)
coLinux (Linux as Win32 process)
Kerberos for Windows
OpenAFS client (to access AFS fileservers)
LyX (LaTeX technical writing GUI)
TightVNC (VNC client and server for platform independent remote framebuffer access)

Simplification:
gVim (text editor)
AbiWord/OpenOffice (office suites)
Sunbird (Calendar with WebDAV support)
Firefox/Opera (browsers)
ImageMagick (image conversion and viewers)
GIMP (image editing)
GTK for Windows (for Dia/GIMP/etc)
Inkscape/Dia (chart drawing)
Media Player Classic and XP Codec Pack (media player)
7-Zip (file archiver)
Ghostscript/GSview, Foxit Reader (PDF/PS viewer)
Powertoys (enhanced Alt-tab, command line here, TweakUI)
Icon Restore
Psi (Jabber IM client)
Gaim (Multi protocol IM client)
Process Explorer (Task manager replacement)
DAEMON Tools (virtual CD/DVD driver)
Java 2 SE 1.5 or greater (replace Microsoft JVM)
Privoxy (filtering HTTP/HTTPS proxy server)
TortoiseCVS/TortoiseSVN (shell integration for revision control systems)

How to deal with a traffic stop without being arrested, or at least not convicted

February 2nd, 2007

This is not professional legal advice. The best policy is to never carry any sort of contraband in your car. However, sometimes you just can’t remember, or can’t be sure what your passengers are carrying.

Goal

You are trying to avoid two things: reasonable suspicion and probable cause. Reasonable suspicion is what allows the officer to detain or arrest you while a K-9 unit is summoned. Finding any contraband in your car or on your person then allows the officer to charge you. Probable cause is what allows the Prosecutor to use the evidence against you in court. The laws on what constitutes reasonable suspicion and probable cause vary state to state, but following this script is the best way to avoid the possibility of the officer establishing either, both in his own eyes and in the eyes of the court. If the officer does not establish what he believes to be reasonable suspicion, then you cannot be either arrested or charged. If the officer does not establish what the court would believe is reasonable suspicion, consent, or probable cause, then even if you are charged, the Prosecutor has a very weak case and your lawyer has a lot of leverage.

A note on dog sniffs

Once reasonable suspicion is established, it is a small step to then attain probable cause because of the notorious lack of credibility assessment assigned to any particular K-9 unit. The handler can say the dog ‘alerted’ even when the dog is completely disinterested in your car because he can simply cite the special relationship between the dog and handler that allows one to know the other better than anyone else possibly could. The handler can also train the dog to respond to motions that you wouldn’t notice, but that cause the dog to put on a show that appears to be an alert.

Dogs are supposed to be certified to detect various forms of contraband, but those certifications are not objectively tested on a regular basis. A fair system would require the dogs to submit to periodic double blind testing (just like citizens get to pee in a cup on a regular basis) in order for any alerts to be justified as probable cause. Otherwise, the odds could be 50/50 or worse that an “alert” is authentic, which is an unjust situation.

All in all, dog sniffs are rigged in favor of the cops, and everyone in the business seems to like it that way. So the best way to avoid establishing probable cause, which you can consider to be automatic as soon as the K-9 shows up since you would be VERY lucky to get away clean at that point, is to avoid establishing the reasonable suspicion that would cause you to have to submit to a dog sniff.

Strategy

Avoiding reasonable suspicion means you avoid being searched, which could lead to an arrest, which could lead to jail, your car and/or wallet being impounded or seized, a charge being filed against you, and potentially a conviction. A conviction, along with your punishment, means you are from then on considered a second class citizen in terms of getting a job, parenting your kids, driver’s license, voting, carrying firearms, getting insurance, getting student loans, traveling outside the country, and any number of other privileges that politicians have seen fit to strip from citizens in the name of the drug war. Avoiding reasonable suspicion will prevent this chain of events from ever being set into motion!

So our goal is really twofold: first and foremost, avoid reasonable suspicion by using psychology against the officer in a casual and friendly manner. Failing that, adopt a damage control strategy against probable cause, by knowing and non-confrontationally exercising your rights.

If you can avoid reasonable suspicion, you’ll be on your way. If you cannot avoid reasonable suspicion, but still avoid probable cause, you may be arrested, spend the night in jail instead of at your destination, have to pay to have your car impounded, and have to pay a lawyer to either convince the Prosecutor to amend the charge or file a motion to dismiss with the court — but at least you will not have a drug conviction on your record, and thus you won’t be a second class citizen. The difference between the Prosecutor willingly amending the charge and having your lawyer file a motion to dismiss is about quadruple the lawyer fees and a hit or miss outcome, depending on local precedent and whether the judge is having a bad hair day — and you are in control of this difference because it is YOU that decides how weak to make the Prosecutor’s case against yourself!

Follow the rules of engagement! Remember, when you live on the fringe, the system is rigged against you.

The rules of engagement

Your general goal is to put on your best “busy upstanding citizen” theater at the traffic stop.

If you have any contraband, make sure it is not in plain sight (the plain view rule bypasses the requirement for consent), or better, that it is in a closed/zippered backpack or purse that you do not also keep your driver’s license or proof of insurance in, or best of all locked away in a briefcase or similar item that you can carry with you in case your car is impounded. A locked carryable case is the best idea, because then an officer cannot use an odor as probable cause — he cannot search inside the trunk or any other locked receptacle based solely on his sense of smell. Don’t attempt to hide stuff in the engine bay or anywhere outside of the passenger compartment since the officer can inspect it without your consent, and it will be found anyway if the car is impounded. Don’t have any contraband, or anything related to contraband, on your person, because if the officer thinks he has established reasonable suspicion, you will then have to step out of the car and be searched. If anything is found, it then becomes more difficult to convince the court that the officer did not have reasonable suspicion. If nothing is found, this works in your favor because it looks like hassling.

Have a reasonable destination in mind (a business that you know is open, and better yet one that would be expected to have an appointment), a purpose for being there that does not contradict your appearance, and always look at your clock as soon as you are pulled over so that you know approximately how long it would take to get there! As soon as you see the flashing lights, you are to use these bullet points to begin calmly and rationally constructing the excuse you will give the officer. Don’t be nervous and fumble with things or act hurried. If you have to express some sort of emotion, express a slight level of annoyance — be thinking something like “it figures that this would happen on such a busy day”. Have your driver’s license and insurance ready to hand the officer so that you aren’t opening a glove box or purse for access (and the officer’s eyes). Don’t open the window more than is necessary to communicate with the officer. Unfortunately, probable cause can be established by the officer claiming that he smelled an odor of contraband in some jurisidictions, even though human noses have been shown in studies to be utterly unreliable as a contraband detector. (Oddly enough, it seems to help keep the officer from “smelling something funny” if you are not wearing dreadlocks, beads and patchouli oil and if you are clean shaven and well dressed. In other words, another good move would be to save your costume for your destination and dress like you would for your claimed destination.)

The Reasonable Suspicion phase

From the moment the officer pulls you over, unless he is a K-9 unit (which the officer may lie and claim that he is if it is dark outside, hoping you won’t notice – don’t believe the officer unless you can see the dog), you are now in the “reasonable suspicion” phase. At this point, the officer is hoping that a) contraband will be in plain sight, handing him probable cause without having to do any work, b) you don’t know your rights or can be coerced into consenting to a search, still making it really easy on him, or c) you say something contradictory or suspicious that allows him to establish “reasonable suspicion” so that you can be detained while the K-9 unit can be called. The officer is not allowed to detain you to wait for a K-9 unit unless reasonable suspicion is established, and if he does anyway, this will work to your benefit later.

You need to remember that proving that a detention was unreasonable means that the officer’s timeline in the arrest report, if you are arrested, must be correct and show that you were in fact detained for far longer than it should take to write a ticket for whatever he pulled you over for. The best way to ensure that the officer writes an arrest report favorable to you is to be polite and cooperative at all times, except when forced to assert your rights, and to not give him a reason to want to turn the screws on you. The officer will usually not allow you to use a camera to take pictures of the clock (I’m unsure of the legal basis for this), and even if you bring a friend, their testimony is irrelevant unless the case goes to trial, and even then the officer’s word is considered to be ultimately credible. He is in control of the timeline… another reason not to let things progress beyond reasonable suspicion. To a certain extent, the officer is in control of recording whether you consented to the search or not, but officers can be far less liberal with those facts than they can be with the timeline — there is a high probability that his lie will eventually be exposed and cost him his job if he pushes it.

Never Consent To Searches, But Don’t Resist

Don’t EVER consent to a search. This is truly an “idiot test”. You can assume that consenting to a search is equivalent to consenting to a drug conviction. The officer will usually offer you a warning for whatever he pulled you over for (example: a fix-it warning for a tail light, or a warning for speeding or rolling through a stop sign, which you may or may not have even done) in exchange for a search of your car. Simply say, “I’ll take the ticket so I can be on my way.” If the officer continues the dialogue by asking you what you have to hide, simply say, “I don’t have time, I am in a hurry so I can be at REASONABLE DESTINATION by REASONABLE TIME for BELIEVABLE REASON.” If the officer insists that the search won’t take long or that he just wants to check out a few things, say “That’s what they said the last time and they tore my car apart and damaged my possessions.” If the officer continues to pressure you, inform him at last that you are exercising a constitutional right and finally that “I don’t consent to searches”. Never appear agitated (it helps keep you calm that if you follow these rules, you will not be convicted) and never respond to verbal abuse offered by the officer, because agitation can allow the officer to establish reasonable suspicion.

The officer may ask you to step out of the car and search you. While this is not a permissible search in terms of obtaining evidence, DO NOT RESIST! If he is still in his reasonable suspicion phase, resistance will establish it and cause you to be arrested and the K-9 unit called or your car impounded for search. If you don’t resist but simply say “I don’t consent”, then if he finds anything on your person, it can’t be used as evidence. If you have screwed up and for some reason you cannot get out of the car without revealing the contraband, respond with “I’m really in a hurry, can I please be on my way?” Responding in this way does not earn you any brownie points in terms of ending the engagement, but what it tells the officer is that he will need reasonable suspicion before he can search your person.

The officer should go back to his car, run your plates, and write you a ticket at this time. If all went well, you should be on your way.

If the officer is taking an abnormally long time to write the ticket, he may be waiting for a K-9 unit to arrive. Every few minutes, ask him through your window if you are free to leave and remind him that you are in a hurry for the important engagement that you constructed above. If you are female, mentioning that you need to use the bathroom or are having your period may help. If you have been polite, respectful and calm up until this point, it is more likely that the officer may be persuaded to let you be on your way. Once you have the citation(s) in hand, you are legally free to leave even if the officer instructs you to wait. Politely tell the officer to have a nice day and drive away slowly; continuing to wait at this point for any reason can only hurt you later.

The Officer Is Never Your Friend

Remember that the officer’s job is to make an arrest and to assist in your conviction. It is NOT to be your advocate by “putting in a good word for you”, or to “help you if you help him” or “going easy on you”. Even given the knowledge that the officer is your adversary, always be polite, address him as “Officer” or “Sir”, and ensure that your only resistance to his statements or actions is in the form of calmly stated words. It helps prevent you from being detained, and helps prevent a trial or conviction in the case that you are detained and searched.

The Probable Cause Phase

Well, there’s not much to say from this point. Assume always that if the K-9 is called, the contraband will be found. If the contraband is found, you will be arrested and charged and will need to hire a lawyer. So focus on not giving the officer a reason to call the K-9. And for heaven’s sake, never surrender your constitutional right not to be searched, even if your day is going badly to that point.

Friends in your car

Tell them to shut their fat mouths and let you handle everything. If they won’t cooperate with this request, you shouldn’t be giving them a ride. Friends with big mouths, as in the “Busted” video given out by Flex Your Rights, are not friends at all when it comes to a traffic stop.

Protect your SSN, protect your identity

February 2nd, 2007

Since the Social Security system was established, the SSN (Social Security Number, or just “social” to many clerks and telephone operators) has slowly crept its way into becoming the de facto national ID number in the US. For better or for worse, this means that when the Social Security system is abolished due to insolvency, the SSN system will then be coded into law as the national ID number system.

Since the SSN is unique, it is used as a database key whenever information about an individual needs to be aggregated. Since the SSN is obscure, supposedly known only to the individual, the government, and businesses the individual has done business with, it is also used as a password or as a secondary form of identification.

Unfortunately, as it turns out, businesses are the weak link in this system. State and local governments who have a SSN on file will routinely hand it out to anyone who appears to be a reputable business. Businesses will sell your personal information, including SSN, to anyone who is willing to pay enough, even if you have signed a contract to the contrary. You can sue, but then what? How can you prove damages? How do you prevent further downstream dissemination? Once your SSN is copied beyond your sphere of trust, you can very well assume that it is in the wrong hands, and obtaining a new SSN involves convincing the SSA that you have suffered enough stalking and/or identity theft to justify a new SSN, convincing the three credit bureaus to give you a clean slate, and convincing those that the thief has defrauded that you are in fact not the thief. The SSN and your usual personal information (name, address, phone number) is all that is necessary for an unscrupulous individual to order a credit report from the credit bureaus, and using the information there as a kit he can impersonate and defraud you.

When you are dealing with a government that is not the federal government (the federal government is required by law to obtain your SSN for any transaction), or any business or individual, and they ask for your SSN, you should counter by asking them why they need to know your SSN. This is not suspicious behavior, but it is annoying to many clerks. Ignore their annoyance; you have a right to know why they need your SSN. For example, it is likely that the request is legitimate if the request is pursuant to some federal regulation or subsidy such as federal housing, because the federal government uses your SSN as its internal ID number. If they continue to balk, tell them that your identity has been stolen in the past and you would like to know if there is any way you can avoid giving them your SSN.

Unfortunately, thanks to the PATRIOT Act’s assaults on liberty and privacy, opening a bank account requires you to disclose your SSN along with your date of birth and address of residence, even though non-US citizens can use a passport to establish their identity.

Your state driver’s license bureau may want to put your SSN on your driver’s license. Find out if the SSN is required by law, and if not, don’t give it to them; ask them to generate a driver’s license ID number for you. Sometimes you are in a catch-22 situation here; you are moving to another state, and some utility or rental company in the destination state gives you a choice between SSN or state driver’s license; unfortunately, there is no way for you to obtain a driver’s license in that state until you can supply proof of residence at the supplied address in that state. Ask if they will accept a passport instead.

Your SSN is the key to the credit bureau databases, so it will be required whenever someone needs to do a credit or background check on your behalf.

Your SSN is also used as a key for insurers to perform legal and prior insurer background checks on you.

Using a state driver’s license number or a passport number is advantageous because both of those documents contain other information that cannot be as easily replicated.

When NOT to give out your SSN simply because it is requested:

  • When establishing a new periodically billed account with a business. They will claim that they need to run a credit check. Instead, offer to pay a deposit.
  • When the business needs to be assured that you are who you say you are. Offer to use a state driver’s license instead, or to fax several forms of photo ID including a passport.
  • When the business needs a unique identification number (i.e. for their database). Offer to use a state driver’s license or passport number instead.

If the business insists on obtaining your SSN without a federal regulatory excuse, it is your choice to do business with them or to take your business elsewhere. Unfortunately, certain monopolies such as utilities and cable/telephone companies do not respond to market pressure. And if you are applying for credit, you have to remember that the onus is on you to provide the creditor with a reason why they should lend to you. Remember that it reasonable to ask whether your personal information will ever be transferred to a third party. You can’t record this conversation legally unless the company agrees (which they won’t), so the best thing you can do is get a written assurance that your personal information, including your SSN, will be kept confidential. The company will still share it without your permission when it finds a business case to do so, leading to your SSN being disseminated, but at least this way you can pursue action against the company in small claims, and encourage others to do the same — since it is likely that if your information was shared, then others’ information has also been.

It seems obvious by now that the best way to protect your SSN and still be able to do business in the US is to avoid requiring credit whenever possible.

Unfortunately, using a debit card without being physically present (such as online) is a bad idea. Debit card fraud cannot be reversed. But if you want to obtain a credit card to use for online purchases only, even a “secured” credit card where you pay a deposit up front is still considered credit and will require a credit check. There does not seem to be any way to safely purchase goods online without divulging your SSN to somebody along the line.

  • Maintain a positive cash flow from employment and investment so that a credit check is never required.
  • Use a debit or ATM card instead of credit cards.
  • Write “Check ID” on the back of the debit card. If your bank allows you to, disable using the debit card as an ATM card or getting cash back.
  • Carry the ATM card with you when you need access to more cash than you can safely carry with you. Carry the debit card only when traveling out of your bank’s ATM service area.
  • Even if you don’t drive, obtain a state driver’s license that does not use your SSN as the driver’s license number. To obtain this, you will need an existing passport or birth certificate as well as some proof of residence at the given address, the level of which varies state by state.
  • Use your birth certificate — which should always be stored in a location where the only avenues of access besides through yourself would lead to its destruction — and state driver’s license to obtain a federal passport, the strongest form of photo identification.

When your business is rejected because you refuse to disclose your SSN (whether on grounds of identity protection, philosophical or practical objections to a citizen ID number), you should write a letter to the company letting them know that their policies gave you a choice between putting your identity, finances, and credit at risk by doing business with them, or to do business with a competitor who is respectful of your privacy instead, and that you chose the latter.

UNIX malloc() debugging

January 30th, 2007

If you suspect memory leaks or corruption in your program due to the improper use of pointers, here are several things you can use, ordered by simplicity:

  • GNU libc’s malloc check. Set the MALLOC_CHECK_ environment variable to 1 to spam stderr when corruption is detected, or 2 to call abort() when corruption is detected.
  • Dmalloc. A debug malloc library that works as a drop-in replacement for the system malloc(), realloc(), and free() functions.
  • Electric Fence. This is a replacement malloc library similar to Dmalloc. Its manner of operation is to use the hardware memory protection of the processor to cause an immediate segmentation fault if the process attempts to write to memory preceding or following an allocated region.
  • Valgrind‘s memcheck tool. Valgrind runs the program under an emulated CPU, so the execution is quite a bit slower. However, it catches all memory corruption and pointer errors at runtime and prints a backtrace. It also prints memory leak and other statistics at the program exit. Invoke with valgrind –tool=memcheck <program>.

Here is another list I ran across.

AFS file locking with Perl

January 30th, 2007

Recent versions of OpenAFS obey advisory locks. This means that lockf() and fcntl() locking will work properly across the network (flock() will never work since it does not support network filesystems). The historical catch with AFS locking is that attempts to lock a locked file will return EAGAIN in every case, not only in the “try lock” case.

You can use the Fcntl module of Perl to accomplish the locking, but File::lockf (available on CPAN) makes it much simpler if all you need is exclusive locking. The main difference is that lockf will not lock a file that is opened readonly since it only supports exclusive locks. If you need specific reader/writer locks you must use Fcntl instead.

Since lockf won’t function on a file opened readonly, we open read-write, and use O_APPEND and omit O_TRUNC to ensure that we do not accidentally overwrite any part of the file through the file handle used for the locking. You must also ensure that the file’s current position points to 0, otherwise the lock will be placed past the end of the file and be nonfunctional.


use Fcntl ':seek';
use File::lockf;
use IO::File;

my $lockfh = IO::File->new;
#Alternate method:
#sysopen($lockfh, "$fname", O_WRONLY|O_APPEND|O_CREAT) or die "Couldn't open $fname: $!";
$lockfh->open(">>$fname") or die "Couldn't open $fname: $!";
seek $lockfh,0,SEEK_SET or die "Couldn't seek: $!";

my $lock = new File::lockf(\$lockfh);
my $locked = 0;

while (1) {
        my $now_string = localtime;
        if ($lock->tlock == 0) {
                if ($locked) {
                        warn "$now_string: lock on $fname acquired\n";
                }
                last;
        }
        else {
                warn "$now_string: can't immediately write-lock $fname ($!), trying again in 60 seconds...\n";
                $locked++;
                sleep(60);
                next;
        }
        if ($locked > 10) {
                die "$now_string: giving up after $locked tries to lock $fname\n";
        }
}

my $fh = IO::File->new;
$fh->open(">$fname") or die "Couldn't open $fname: $!";

... rest of program here ...

close $fh;
if ($lock->ulock != 0) { warn "Failed to release lock on $fname" };
close $lockfh;
exit 0;


Apache filters, gzip, and WordPress

January 28th, 2007

Don’t enable WordPress’s gzip function unless:

  • you have a good reason not to use mod_deflate instead, such as wanting to compress RSS files
  • you are not using any filters of type AF_FTYPE_RESOURCE or higher in the Apache filter chain to modify the HTML afterwards.

As soon as WordPress has gzipped the content, it is impossible for any other filter to modify it. It will also be very easy to forget that you have set this option, and then you will go nuts like me trying to figure out why mod_deflate seems to be invoked so early in the filter chain — when in fact the content is being compressed by PHP itself.

Why can’t I use Kerberos TGT forwarding when SSH’ing from a remote network?

January 28th, 2007

A few possibilities:

  • Clock skew. Make sure ntp is installed.
  • OpenSSH versions differ too greatly, install the same version on both ends
  • You do not have both ‘GSSAPIAuthentication yes’ and ‘GSSAPIDelegateCredentials yes’ on the client ssh_config
  • The server does not have a /etc/krb5.keytab containing the key for host/server.fqdn.com
  • The server does not have ‘GSSAPIAuthentication yes’ and ‘GSSAPIKeyExchange yes’ in sshd_config
  • The client has a different reverse-DNS idea of the server’s fully-qualified domain name than the server does. Very common if the server is using a private DNS server but the client is using a public one. In this case, the client needs a ticket for host/server.domain.com but due to the reverse DNS lookup, requests one for host/ipaddr.isp.net instead. Either the same name server needs to be used by both server and client, or client needs to add server to his hosts file.
  • The server has an incorrect ordering on the 127.0.0.1 line in the hosts file. It should be 127.0.0.1 followed by FQDN followed by hostname followed by localhost.

Oil pressure versus oil level

January 25th, 2007

Why do many people report a lower oil pressure reading when their crankcase oil level is low?

We have to ignore the possibility of the pump displacing anything but oil in order to have a sound theoretical discussion. But it is possible that there is a large proportion of air trapped in the oil from frothing as it returns to the pan, or that the pickup tube — or its seal to the pump or block — has a pinhole in it that is covered when the oil level is higher (this should produce a relatively sudden change in pressure as the pinhole is uncovered, as opposed to a gradual change).

We also have to assume that the pump is not allowing oil to drain back out. But this is known to be false; an oil pump turned slowly enough will pump nothing but air. So there is not a linear correlation between pump speed and the volume of fluid pumped, because the faster the pump turns, the smaller the time period in each rotation where drainback could occur. The drainback effect will be more severe when the oil that wants to drain back is far above the level of the oil in the pan. So it would be expected that a worn oil pump allowing more drainback will produce lower output pressure when the level of the pan is low.

If we can assume that we are only pumping oil (a non-compressible liquid) and that a fixed volume of oil is pumped per rotation, assuring us that the same volume of oil is pumped through the engine no matter what the oil level is, then we must attribute a change in the oil pressure reading to lower oil viscosity.

What can lower oil viscosity?

  • compositional breakdown.

Compositional breakdown occurs as the oil is contaminated with moisture and hydrocarbons from blow-by, and as the oil polymers themselves break down from heat and shear.

The same amount of blow-by per firing cycle on a hot motor enters the crankcase regardless of the oil level, and the motor relies on being run hot in order to evaporate the moisture (but not the hydrocarbon contamination) from the crankcase. The oil is thus broken down and contaminated by time spent normally driving, and the effect of this contamination is worse when the engine spends a greater proportion of its total operating time warming up from cold. When the oil level is low, a smaller volume of oil must bear the same amount of contamination and thermal/shear stress that causes its breakdown.

It is expected then that a low level of used oil will produce lower oil pressure than a low level of new oil. It is also expected that the effect on oil pressure of being low a certain amount of oil will be more pronounced on engines with a smaller crankcase capacity. But it is also expected then that on any engine, being low on oil will not produce an effect on oil pressure if the oil in the crankcase is new (not contaminated or broken down in any way).

  • Temperature.

Oil viscosity is reduced when its temperature is raised. Circulated oil accumulates heat as it is sprayed on the cylinder walls, but radiates it through the oil cooler and oil pan, until an overall thermal equilibrium is reached. It is important to note that if a particular volume of oil was constantly recirculated, it would reach equilibrium at the temperature of the engine, while if it was seldom recirculated, it would reach equilibrium at the external temperature of the oil pan. Thus, the temperature of the oil has a high negative correlation with the time that the oil spends sitting in the oil pan.

The average time that a just-circulated volume of oil spends in the oil pan is determined by the amount of other oil that is in the pan below it. The other oil is cooler than the oil that has just circulated, so the just-circulated oil radiates its heat through the other oil and through the pan while it waits to be recirculated.

So, it appears safe to state that a low oil level is a causal factor in the increased temperature of the oil, and thus lower overall viscosity and lower oil pressure. This effect, unlike the effect of contamination and breakdown, should be present even if the crankcase is filled with new oil. Again, it should be predictable that the effect will be more pronounced in a smaller crankcase for a given volume of missing oil. But, while it is a causal factor, how much of a factor is it really? After all, the cold pressure and warm pressure in a full crankcase hardly varies enough to register on the needle. It seems like the temperature variance just doesn’t cause that big of a hit on the oil pressure.

Revisiting the air trapped in the oil, we would expect the same proportion of air trapped in the oil if the oil level is low, because the same surface area where air could potentially escape exists no matter what the oil level is. (Of course, if the oil level is far too high, a disproportionate amount of air will be trapped, but that is due to the crankshaft frothing the oil and not due to normal oil circulation.)

So if an engine is filled with a too-low level of new oil, we should expect a lower than normal oil pressure reading at all times due to:

  • Small leaks in the oil pickup that would be masked by a higher oil level
  • An amount of drainback relative to how worn the oil pump is

We should expect a lower than normal oil pressure reading at operating temperature — but possibly a vanishingly small difference — due to:

  • Temperature modification of the oil viscosity

We should expect a lower than normal oil pressure reading after a fixed number of miles of usual driving due to:

  • Accelerated contamination of the total volume of oil (occurring at a rate proportional to the percentage of time that the engine spends running below operating temperature)
  • Accelerated rate of polymer chain breakdown from shear and thermal stress. Thermal stress may not be a major issue. Since a low oil level causes an increased equilibrium oil temperature when the engine is running at operating temperature, we can also predict that the thermal breakdown of the total volume of oil when running at operating temperature will occur at a faster rate when the oil level is low. But as reasoned above, the equilibrium temperature probably will not rise enough to significantly affect the oil viscosity, so the effects of any increased thermal stress on the long-term viscosity of the oil may be negligible.

Selling a lot of IBM / Lexmark Model M keyboards

January 16th, 2007

These keyboards are awesome.
http://www.dansdata.com/ibmkeyboard.htm
http://www.preater.com/modelm/

If you ever see a bunch of them being tossed out as surplus, pick them up. They can be sold $20 apiece on Ebay easily. Shipping is quite easy via USPS Priority Mail: Simply take two of the long type flat rate boxes, and insert one into the other. Surround the keyboard with peanuts and it’s good to go! Use any keyboards which are physically broken or missing lots of keys as donors for key caps, key blocks and controller boards. The spring mechanism itself is difficult to replace properly so don’t sell any keyboards with stuck or mushy springs, use them as parts donors.

They clean up with laundry detergent and a rag. Do not simply put in the dishwasher unless you open it up and allow to completely rinse and dry the controller board. The buyer can be responsible for this.

If they have AT cords, AT-PS2 adapters can be had for $1-2 (http://www.sfcable.com/catalog/wholesalecables/30D5-4A.html) or the buyer can purchase his own PS2 cable (http://pckeyboards.stores.yahoo.net/cabdetmin.html) You could also make your own cord, the weird connector is a SDL “Shielded Data Link” jack and is available at Mouser and friends.

Some Pentium 4 and faster systems require resistors to be added to the data and clock lines: http://www.geocities.com/jszybowski/keyboard/

Unicomp provides warranted repair services: http://www.pckeyboard.com/repair.html and also sells newly manufactured buckling spring keyboards: http://www.pckeyboard.com/

Clickykeyboards sells new old-stock Model M keyboards: http://www.clickykeyboards.com/