an ultrasonic cleaner

Ultrasonic cleaners function by bombarding items with sound whose frequency is beyond the range of human hearing. A discussion of the specific mechanism of cleaning is complex and beyond the intent of this post. What follows are some pointers when using a simple ultrasonic cleaner.

Overview

Ultrasonic cleaners will impart their cleaning action to the objects submerged (normally in water) inside them. As such you will only be able to effectively clean items which will fit inside the cleaner. Items with unusual aspect ratios (such as rifle barrels) will likely require a more specialized unit as their shape will not be as common.

Some units will also have heaters for heating the cleaning solution. This is an excellent feature and greatly accelerates the cleaning process. The unit pictured at the top of this page will heat the cleaning solution to about 176F (80C). For comparison most residential water heaters will heat your hot water supply to 120-140F. If you use the heating function some of the cleaning solution may evaporate from the unit and condense on the inside of the lid. Thus care should be taken when removing the lid especially if the condensate may contain corrosives (more on this later).

Cleaners will generally come with some type of wire basket for adding and removing items without getting your hands in the cleaning solution. In addition larger units will have a drain valve for emptying the cleaning solution when it becomes fouled or unusable.

cleaner interior

Usage

Simply place the items inside the cleaner, then turn it on or set the timer. The unit does not need supervision. Certain types of items are more easily cleaned in these cleaners than by other methods. Objects having intricate shape or edges cleaning brushes could get caught on are good candidates for ultrasonic cleaning.

electric razor blade assemblies are easily cleaned in an ultrasonic cleaner

Often cleaning will be more effective if some type of solvent is added to the water to form a more effective cleaning solution. What you can use in your cleaner will depend on what it was designed for. Most cleaners can be used with household detergents.

cleaner drain valve

More corrosive/awesome cleaners like sodium hydroxide should only be used if the unit is intended for use with them. Even if your cleaner is constructed of a metal body resistant to attack by corrosives (like stainless steel) other components, like the drain valve seals, may not be. In addition a single successful use of a cleaner with a powerful solvent does not indicate the unit is not suffering damage. While not immediately destroying the unit some substances may greatly reduce its working lifespan.

Ultrasonic cleaners come in a variety of sizes and prices. The one picture in the article runs about $400. Other smaller units can be less expensive but may not come with a heating function.

NOTE: this will generally pertain to C# but applies to any programming language which uses similar exception handling (for example Java). This article covers a few misconceptions about exceptions and is not intended as a complete reference. In depth study of this important programming aspect is highly recommended. 

Overview

The exceptions a method throws are as important as its parameters or return value. They are part of your contract with the user, even if you are not required to declare them as part of your method definitions (as you are in Java). Too often methods are completely written before any thought is given to the exceptions it should throw. This unfortunate behavior leads to a less than ideal interface for the user.
Many developers believe, and in many cases are taught, exceptions exist to handle rare or infrequent conditions encountered during execution. The truth is as developers we have no control over the circumstances our code is used in beyond the compiler enforcing the existence of our parameters. As such we can never say what the frequency of any use case may be. Thus we can never say if any given case is rare or common.

Usage

The correct use of exceptions is to convey our inability to keep our contract with the user as defined by our method signature. Let us consider the following method signature from the Int32 type:
public static int Parse(string s)
This method takes a string representation of an integer and returns its integer representation. Viewing the documentation reveals it throws the following exceptions:
ArgumentNullException – thrown when s is null.
FormatException – thrown when s cannot be converted to an int.
OverflowException – thrown when the representation of s is beyond the capacity of an Int32 to represent.
Each of these exceptions represents a condition which prevents the method from honoring its contract, returning an integer representation of the string parameter, to the user. There is a different exception for each semantically meaningful mode of failure. That is to say each exception represents a different reason the conversion failed giving the caller the ability to make a meaningful decision about how to proceed. The OverflowException can represent failure due to either a value above or below what can be represented by an Int32. As the user would not take different actions based on whether the value is too big or too small we have just one exception to represent both instead of an OverflowHighException and an OverflowLowException.

Example

Using these ideas let us design our own method. Let us suppose we have a type which represents a temperature probe. We might start by writing a class method with the signature:
public float GetTemperature()
[Note: normally we would use a property here but for demonstration purposes we will make this a method. Also, interestingly enough, the CLR doesn’t know about properties so C# converts them into methods during compilation]
What exceptions should this method throw? Anything which violates our contract with the user should be represented by an exception. In this case any condition which would prevent us from returning a temperature will need an exception. We could start with the following:
TemperatureProbeNotAvailableException – thrown if our connection to the probe is lost.
TemperatureOffScaleException – thrown if the probe provides a value beyond what its specification states it can accurately measure. 
Previously when considering the Parse method we said there was no need to have multiple exceptions to represent the high and low possibilities for the OverflowException. Here we also have a single exception to represent an out of range condition. Considering further is there any action our users might wish to take based on whether the temperature probe is off scale high vs low? In this case there is.
If the probe were attached to a heating or cooling system knowing which direction the temperature is off scale would be very meaningful information. For a more awesome example let us say this was a very high temperature probe in the exhaust of a gas turbine engine. Many such probes do not operate correctly until they reach a minimum temperature well above normal ambient. An off scale low condition might be normal while the engine was offline or idle but an off scale high might indicate the engine was running beyond specification and should be throttled down.
Since the direction of the off scale condition is potentially meaningful to the user we should provide exceptions for these conditions.
public class TemperatureOffScaleHighException : TemperatureOffScaleException
public class TemperatureOffScaleLowException : TemperatureOffScaleException
Though the off scale direction of the temperature probe could be useful to the user this might not always be the case. By extending the high and low exceptions from the TemperatureOffScaleException we give the user a choice  If they do not care about the direction of the off scale condition they can choose to catch the base TemperatureOffScaleException. Otherwise if they have code to handle the high and low conditions differently they may catch these derived exceptions in separate catch blocks and deal with them as they see fit.

Aren’t Exceptions Time Expensive?

Depending on the environment the throwing of exceptions can be time expensive, especially if they repeatedly do so in tight loops. The previously mentioned Int32 type addresses this with the TryParse method. 

public static bool TryParse(string s, out int result)

This method does not throw a FormatException. Instead if will return a boolean indicating if the conversion was successful and if so it will provide the converted value via the result out parameter. By using a boolean instead of an exception this call avoids the cost associated with handling an exception.

Does this method keep its contract with its user? Yes it does.
Whereas the Parse method implies by its signature it will return a converted value TryParse implies it will attempt a conversion. This distinction in naming is important in creating an API your users will be able to easily understand.
A simple look through the FCL will demonstrate the occurrence of TryX is very limited. While the TryX methods seem to match the X method in capacity and excel it in speed it fails in code simplicity. The code necessary to support the TryX method is more cumbersome than the a simple X method.

Conclusion

There are various opinions about the role of exceptions and how they are used. What I would like to convey here is exceptions are an important yet overlooked aspect of development in environments which support them. A more in depth study than what is presented here is recommended though simply considering them at the outset of development instead of as a postscript will help in API design. 
The patient needing attention

The above is my stove. It is an old stove. I think I have used this stove once in five years. I don’t really care much about the stove. Unfortunately someone recently pointed out to me the burners on the stove do not light correctly. So in accordance with my ‘fix ALL the things’ policy it was torn apart until fixed or destroyed, whichever came first. Mercifully this ended in a fixing and what follows is what I discovered.

Overview and Operation

stove with the top removed

Opening the top of this stove is as simple as lifting the top from the front. Once raised the top can be slide off of its hinges exposing the amazingly primitive bits underneath. The gas line comes in from the upper left and travels down the left side to (what I think is) a regulator, a flame arrester, or both. This gas line then takes a 90 degree bend and forms the main fuel rail at the front of the stove.

Each of the four knobs for the burners and the one for the oven all open valves off of this line to supply fuel to their respective elements. When you turn on a burner fuel travels down its supply line, pulls some air in (more on this later), and fills the burner element. Turning the knob on also starts the igniters located in between the burners which share it (both igniters fire regardless of which burner you are lighting).

closeup of the ignition flame ports
Each burner has a set of flame ignition ports on the side facing its igniter. Fuel from these ports travels down a hollow tube to the igniter. Once lit the flame travels up the tube to the ports on the burner. From here the flame travels up to the closest main burner ports and then around until all of the element is lit. 

Problems and how to clean them

Assuming your ingiters are working (you can hear if they are firing and if they are not you have an issue which will not be covered here) the most likely cause of the burner either failing to light or not lighting completely is ash build up in the flame ports. To fix this you simply need to remove and clean the burner element. For my stove the elements can be removed without tools. 
Start by removing the spring clip for the burner. Then rotate the burner until it is free of its supports and then slide it off of its fuel nozzle  With the element free simply clean it with a stiff brush then blast some compressed air through the gas inlet. When cleaning the burner don’t forget to clean the vertical ignition ports on the side in addition to the horizontal main ports at the top. Do not use any tools which could change the shape of the flame ports. Marring the ports on your burner will give you other issues not addressable with cleaning. You will want to use the compressed air outside as it can blast a surprising amount of ash out of the burner. 
Elements can acquire a good deal of grease and other nastiness on them over time. Unless the offending matter is blocking a port it is not necessary to remove it. If you do choose to do a deep cleaning of a burner remember it must be completely rinsed and dry before it is re-installed.

Why is there a slot in the fuel line?

air induction port
These port are intentional. All combustion requires fuel (in this case natural gas) and an oxidizer (normal air). When gas passes through this segment of tubing it creates an area of low pressure around this port (via venturi effect) and pulls in the surrounding air. This fuel air mix is delivered to the burner for combustion. 
Normally these ports are too far from any opening in the stove top to get dirty so you likely will not need to clean them. Just be aware of them when working on the stove as anything blocking or interfering with them will cause issues. 

NOTE: this will be a discussion of fuel based tankless units. Electric units are available but due to the cost of electricity and the massive wiring issues involved with installing one I will not be addressing them here.
Tankless water heaters have been used for many years in other parts of the world but are only recently becoming a more common choice for US residential homes. As the name implies these devices provide hot water without storing it in a tank. They are more energy efficient than tank based heaters but there are some things to consider before installing one.
Traditional 50 Gallon Natural Gas Water Heater

Why tanks were used in the first place

Water has a very high specific heat. This means you need a lot of energy to make its temperature increase. As a comparison the amount of energy needed to raise the temperature of water 60 degrees would raise the temperature of the same weight of aluminum by 279 degrees. This makes water an excellent coolant but also very difficult to make ready for use in showers and dishwashers.
So the tank based water heater was created. These devices store a large amounts of water and heat it up over time. Since you don’t have to heat the water all at once you can use a more modest electric heater or gas burner.
When water is needed you use some from the heated tank. The tank is constantly supplied new cold water to replace the hot water used which is then slowly heated for use.

Tanks have two major issues

First. The tank based water heater cannot heat its supply of water as fast as it will be used in the building. This is why it has the tank, to supply a buffer of hot water so it has time to heat up more. If the usage in the building exceeds the buffer (the water in the tank) then your hot water supply temperature will decrease as the new cold water entering the tank, to replace the hot water used, has not had time to be heated. Most tank based water heaters are rated by there capacity in gallons (the buffer size) and their recovery time (how long it takes to get the buffer back up to temperature).

Second. When you are not using any hot water the tank sits idle. This doesn’t seem like an issue but it is a big energy inefficiency with tank based water heaters. Any time you have something hot sitting in a cool room the heat from the hot object will diffuse into the surrounding room until both are the same temperature. This means the hot water in the tank is constantly loosing its heat to its surroundings (assuming they are cooler) over time. Once the temperature of the water in the tank falls to a certain point its heater will fire to heat it back up. The energy needed to keep the water in the tank warm when no hot water is being used is called stand-by loss.

Manufactures of tank based water heaters try to minimize stand-by losses by slowing the rate at which heat escapes the tank. This is normally done by insulating the tank. This is also why older tanks can benefit from having an insulating ‘blanket’ placed around them.

Why tankless units are more efficient and awesome

Tankless Water Heater 
Since tankless heaters have no tank, they have no stand-by losses.
In addition tankless units can be built with high efficiency heat exchangers which extract more energy from the burning fuel and place it into the water instead of exhausting it to the atmosphere as hot gas. Some high efficiency units have exhaust gas temperature of less than 120F (this leads to condensate issues discussed later).

Since the water is heated in real time the tankless unit can provide hot water so long as you have water to heat and fuel to burn. Tankless systems are rated by the temperature rise they can sustain at a given flow rate. An example might be +40F at 9.3 gallons/minute.
Many tankless systems use electronics to monitor the flow of hot water out of the system. These same electronic may also be used to detect slow leaks in the hot water system. Once detected the system displays an error and shuts a computer controlled valve stopping all hot water flow.
The components of a tankless water heater are serviceable and replaceable. Generally only the burner of a tank based system is ever replaced. Replacement parts for tankless systems include the heat exchangers, electronics and various valve assemblies.

There are some downsides

Since the water is heated in real time the unit will need a lot of fuel. This fuel will be used very efficiently and only when needed but it is still quite a lot. A three or four bathroom house might use a 50 gallon tank based water heater with a heater rated at 40kBTU or a tankless rated at 200kBTU. Because of this need for great quantities of fuel a tankless unit may require larger fuel lines not available where an old tank unit was located. 
Many tankless models use electronics to provide very tight control on the temperature of the out going water. This means you will need a standard electrical outlet in close proximity to the new unit whereas most tank models have no such requirement.
Going tankless will involve a good bit of labor. Tanks rest on the floor and have their water inlet, water outlet, and temperature and pressure relief valves on the top while tankless units attach to the wall and have their water inlet, water outlet, and T&P relief valve on the bottom. So you can expect a fair bit of water line rerouting to get a tankless to take the place of a tank unit.
High efficiency models will produce condensate. In low efficiency heaters combustion waste products ride the hot exhaust gas leaving the unit and exit to the atmosphere. More efficient units produce exhaust gas at a temperature so low some of the combustion products will condense (like dew) and drain from the unit. This condensate is corrosive and local codes will dictate what may be done with it but at the very minimum you likely need more more piping to deal with it.

The bottom line

In my case the tankless unit cost $1150 and comes with a 12 year warranty on its heat exchanger. A comparable tank system would run about $600. At the current price of natural gas in my region the unit will save around $1000 in fuel cost over its warranted lifetime. This more than compensates for the up front cost of the unit but we have not yet considered installation costs.
My unit was installed for $1400. Other vendors in the area quoted as much as $2900. This does not include the cost of the unit just the cost to install it. In my case all of the prerequisites were met such as proximity to an exterior wall, gas supply, and an electrical connection. Even so the tankless unit could not make use of the existing flue duct nor the condensate lines from the AC units which already ran though the exterior wall (both of these restrictions are mentioned in the owners manual for the unit). So even in near ideal conditions there is likely to be a lot of work if you are replacing an old tank unit. Installation took a single technician about 7 hours to complete.
Despite the various advantages of a tankless water heater the economics of installing one may prove to be complicated when all costs are factored. Even if it proves to be a money saving decision it will likely be a long term savings.  
A drywall ceiling

The above is a conventional drywall ceiling. It consists of sheets of drywall screwed directly into the joists of the floor above. This is the most common type of ceiling seen in residential homes and apartments.
Traditional suspended ceiling
This is a suspended ceiling or drop ceiling. It is made of metal railings which form a grid suspended from the joists above by wire (between 18 and 12 gauge) with panels filling the square or rectangular spaces. This image also shows a fluorescent troffer, the most common lighting used in such ceilings. These shallow light fixtures normally hold 2 or 4 florescent tubes whose length is either 24 or 48 inches depending on whether the opening the in grid is 1 or 2 panels wide respectively. The panels used are flat, white, and have a bit of small scale texture to them. These ceilings are commonly found in commercial structures as they are not very attractive but provide good access to the mechanical systems which run through the ceiling.
Awesomeness++ suspended ceiling
This is another, much more awesome, suspended ceiling. Here the panels are beveled so they sit proud of the grid plane. They also have a much larger scale texture which in this case gives the appearance of naturally cloven and weathered stone.
This room makes use of indirect lighting above the bookshelves so there are no light fixtures in the ceiling. The white ports shown are vents attached to the HVAC system ducting. Other options for lighting are also available for these ceilings.
Suspended ceiling with can lights
Above we have another ceiling making use of can lights. These are the kind of lights you commonly see recessed into drywall ceilings. These lights can also be used in suspended ceilings. In fact the standard can lights sold at you local home center may be install into either a drywall or suspended ceiling.

Why don’t more people have suspended ceilings?

People think they are ugly.

Most people associate suspended ceilings with the dull ultra utilitarian ceilings they see in their offices. This prejudice is so intense those who see an excellent suspended ceiling will not even recognize that it is a suspended ceiling. This prevents them from acquiring counter examples to their experience.

Houses do not commonly come with them.

Installing a suspended ceiling in existing construction requires removing the existing drywall ceiling. This is a very messy process. It generates a tremendous amount of fine dust and even a small room will have so much drywall you will want to either hire someone to remove it or rent a dumpster.

It is expensive per square foot. 

While you will spend less on labor to install a suspended ceiling compared to a drywall ceiling you will spend a lot more on materials. Drywall is cheap but ceiling tiles are not. Expect to spend at least triple (or more) on suspended ceiling materials compared to a drywall ceiling.

You will loose some ceiling height. 

Four to six inches is the minimum distance you want between the joists and the grid of the suspended ceiling. Any less and it will be hard to place the tiles. Since drywall ceilings are attached directly to the joists this is ceiling height you will loose from the room. Recessed lights, or can lights, are taller than six inches but are normally installed between joists so their use will not force the ceiling lower. Other type of lights may so advanced planning is important.

Some of the benefits of a suspended ceiling over a drywall
ceiling.

Provides access to the space above the ceiling.

This is very important if you ever have plumbing leaks, electrical problems, need to run new cables (security camera, home theater, networking), or want to remodel. Most contractors which provide these services do not work with drywall. Thus if their work requires making holes in your ceiling (which is very often does) they will either get a subcontractor to do the work or leave it to the homeowner to fix. Drywall work is slow and requires repeated layering, drying, and sanding of drywall compound. This makes it expensive.

The tiles are removable, replaceable, and paintable.

If a tile is damaged, perhaps by gouging it with something you were not careful enough in moving, it can be easily removed and replaced.
The tiles are also easily painted with aerosol (spray) paints. Many restaurants and hotels use suspended ceilings with the tiles and grid painted in combination with crown molding to match their decor. The grid is a bit more troublesome to paint since the existing hard coating needs to be roughed up and is not normally removable once installed.

A huge variety of tiles are available.

Everything from the standard white tile to tiles made to look like stone is available. Some specialty manufactures even make metallic tiles to look like hammered tin or brass, fine cast plaster tiles, or luminescent tiles. 
In the end if you are unable to get an awesome ceiling using a suspended ceiling system then you are doing it wrong.  

People who saw the vacuum chamber video were disappointing I did not actually use the chamber in the video. This should correct that issue. Here I am using my vacuum chamber to degas a small amount of West System epoxy.

The abused 3 light question

There is a popular interview question which claims to make a candidate think ‘outside the box’. It goes something like this.

Suppose there are 3 light switches. There is elsewhere a room with three light bulbs each controlled by one of the aforementioned switches. You cannot see the room from where the switches are located. How do you determine which switch operates which light bulb if you are allowed to visit the room once?

It is answered with the following.

Turn on switches 1 and 2. Wait several minutes. Turn off switch 2. Go into the room. The light which is on is controlled by switch 1. The light which is warm is switch 2 while the room temperature light is switch 3.

While the question may have value in an interview I am not fond of the way it is commonly administered. A typical session with this question might go something like what follows. You can skip this next (somewhat humorous) section if you are familiar with how this question normally runs.

Candidate: Since each light is controlled by one switch I follow the wiring from the switch to the lights.

Interviewer: The wires are covered by walls and ceilings so you can’t see them. Can you think of another solution?

Candidate: I punch holes in the walls and ceilings so I can see the wires.

Interviewer: The walls and ceilings are made of a an indestructible material. Can you think of another solution?

Candidate: I set my cell phone to record video and toss it into the room. I operate each switch in order and then go into the room and review the video on the phone to determine switch order.

Interviewer: But you can only go into the room once.

Candidate: Well you said that I could only visit the room once but never mentioned my phone.

Interviewer: Ok. The room has a door which can only be opened once and shuts immediately once you leave the room never to open again.

Candidate: Hmmm. I disconnect the common wires from the switches and attach signal toners to 2 of them. I then go into the room with a probe and use it to identify which switch goes to which light.

Interviewer: A signal toner?

Candidate: Yeah its a device which transmits a modulating electrical signal over the line which can be detected by a contactless probe. I set the 2 toners to transmit different patterns from each other. The light which does not have a tone is controlled by the switch which doesn’t have a toner on it.

Interviewer: I see. Well lets say the lights and switches do not use wires which transmit electrical signals.

Candidate: Um. Isn’t that is a little bizarre.

Interviewer: Can you think of another solution?

Candidate: I would switch one light and then go outside and look through a window to see which light was on. Since I haven’t visited the room I can do this for each of the switches.

Interviewer: Why do you think this room would have a window?

Candidate: Well most rooms large enough to justify three different lights on three different switches would be too big to fit wholly within the interior volume of a building and most architecture would include windows in any room with an exterior wall. Doing this also helps with fire code.

Interviewer: Well lets say for this example this room has no windows.

Candidate: Alright. I would visit the room first and carefully arrange its furniture to cast specific patterns of shadows based on which light was on.

Interviewer: But the door will close after you leave.

Candidate: That’s fine. The pattern of shadows is oriented so as to be distinguishable from outside the door at ground level. I revisit the outside of the room after operating each of the switches in turn.

Interviewer: But the door is closed.

Candidate: Doors include a gap at the bottom to allow for return ventilation within a building. If the door perfectly sealed it would increase the static pressure experienced in the ducts and place undue stresses on the HVAC’s fan motors. You could have return vents within the room to alleviate this but its more expensive as you need a separate set of ducting to support it.

Interviewer: Why do you think this room wouldn’t have return ducts?

Candidate: Thus far this room is sounding like a terrible place so I am betting it is in a cheaply constructed building.

Interviewer: Well lets say the room has no ducting at all and the door does indeed perfectly seal when closed.

Candidate: Really?

Interviewer: Yes really.

Candidate: <long pause>

Interviewer: Any other ideas?

Candidate: YES! I have it! I am presently engaged in a dungeon crawl in a fantastic world of magic and adventure!

Interviewer: What?

Candidate: Of course, I should have seen it sooner. Where else would you find invincible walls, automatic sealing doors, and lights which don’t use electricity. This must be a challenge I have to solve before advancing. Excellent. I engage my divination powers to search for clues.

Interviewer: No! No! Magic is not the answer either. Its nothing like that.

Candidate: Combat then! You must be the boss fight. Very well I am prepared for battle.

Interviewer: No! You are supposed to use the fact the lights get hot when you run them for a few…

Candidate: SILENCE! Everyone knows magic lights produce no heat. Now, face me you fiend.

Our candidate’s epic fight and acquisition of a quest item which led him to a better job is not the point.
The point is this: If you want a candidate to think outside the box do not build one around him.
Whenever the candidate gives an answer the interviewer responds by restricting the problem space to make the offered solution invalid. The box most interviewers want their candidate to think outside of is being created by the interviewerwith each limit placed to reject a solution which is not the ‘correct’ warm light bulb solution. If you truly want to measure the breath of imaginative thinking a candidate has then you should encourage multiple solutions without restricting the problem.
For example do not say:
“You cannot use a signal toner because of <some restriction> can you think of another solution?”
Simply say:
“Can you think of a different solution?”
This allows the full set of possible solutions to be explored and prevents the interviewer’s biased solution from influencing the candidate.
This is not to say restricting a problem is a bad interview practice. Even in the most broad imaginative thinking exercises some restrictions must exist to provide a context for the answer. These restrictions however should be provided as part of the question in advance and not as a shove in a predetermined direction after an answer is given.
Does this mean there is no place for invalidating a candidates answer via refinement of the question after it is asked? Is there likewise no place for questions with expected answers? No on both counts.
There is a very appropriate place for these questions. If you want to measure a candidates experience in a certain field it is perfectly fine to give a problem for which there is a common industry practice answer. If the candidate responds with a novel solution you may restrict the question to encourage the industry answer. This is done to verify the candidate is familiar with standard practices and not to evaluate creativity. Understanding the differences in the goals of these questions is key to their effective use.
As always feedback is awesome and encouraged.
Pelican 1750 with mounted plate

This was a project for my dad. It is a Pelican 1750 case which has attached to it an aluminum plate water jet cut with his initials. Attaching the plate to the case was a bit more challenging than expected, and by ‘a bit’ I mean I spent almost 2 months worrying over it before I was willing to attempt it.
These Pelican cases are made of polypropylene a plastic which has, among its many properties, a low surface energy. Simply put it is hard to get things to stick to it.
In the past I tried a 2 part epoxy, which sticks to most things, on one of these cases and it did not adhere. Not only did it not adhere the cured resin detached from the case with almost no effort. It detached so easy I could have used the epoxy to make a mold of the case.
Eventually I checked the FAQ on the Pelican website (probably should have done this first) which recommended using 3M Scotch-Weld DP 8005. This product is somewhat pricy. I spent, before shipping, a bit more than $1/mL for this stuff. This turned out to be the least of my issues as the cartridge for the Scotch-Weld requires a special gun to apply which is sold separately.
Dispenser for Scotch-Weld Adhesives
But the gun is just the beginning of your woes. While the gun comes with two plungers (the upper black rods in the photo) neither of them works with the 8005 cartridge. A 10:1 plunger is required (the bottom rod) which also had to be ordered separately. In addition to the gun and the plunger you also need mixing tubes (the clear and red cylinders in the photo). This is the most vexing part. I assumed since the mixing tubes and cartridges are used in a 1:1 ratio and cannot be reused the mixing tube would come with the cartridge. Nope. They are sold separately as well. Maximum vexation achieved.
Mercifully after the scavenger hunt to get the parts it turned out to be easy to use with the only catch being the 8005 has a working time of only 3 minutes. The work area was protected with standard masking tape, the part to be attached was checked and aligned, the adhesive was laid down and then the part was placed and weight applied. It is necessary to support the lid from underneath. When pressure is applied to the plate the force distribution causes the case lid to bow underneath it. This would increase the gap underneath the middle of the plate if the underside of the case lid was not supported.
In the end it worked out well and the adhesive turns out to be rather strong. Hopefully I will have another project for which this 8005 will be necessary. I certainly spent enough on its accouterments so it would be nice to get more than one use from them.  
Basic one color diy screen press

This is my one color screen press. There are many examples of how to build something similar on youtube. The only noteworthy part of this setup is the platen in use.
Keeping the platen in place while printing is rather important. This is occasionally overlooked on one color machines like this one since mostly you will only make one printing pass. In this case I am printing with a discharge ink. For this I will need to alternate printing passes with forced air heating a few times. If the platen moves at any point between these passes the print will be distorted.
The common methods employed to keep a diy platen from moving typically involve using a set screws or lining the inner platen rails with a grippy fabric (which will allow it to move but only with deliberate application of force).
Underside of the quick release platen
Neither of these appealed to me so I built this quick release platen. The basic platen shape has two rails attached on the underside. The one in the left of the photo is attached with a door hings which allows it to move. The right side is fixed (with 9 pocket screws). Connecting the two rails is a quick release skewer. This one came from the junk pile at a bike shop (it was formally part of a ruined hub assembly).
The skewer is placed low enough to clear the arm of the printing press. With the lever (on the right) in the open position the nut (on the left) is tightened just shy of causing the hinged rail to touch the printing arm. In this configuration the platen easily moves up and down the arm. When located in the correct position the lever is closed and the platen is securely held in place by the skewer squeezing the printing arm. This prevents the platen from moving up off of the printing arm as well as from moving up or down the arm.
The (out of focus) lever can be rotated if it is in the way