Andrew Que Sites list Photos
Projects Contact
   We were suppose to continue our role-playing campaign this afternoon, but Xiphos' laptop decided to die instead.  Since all his character information is on this machine we had to postpone.  It may be the laptop requires some solder rework as apparently that is a common mode of failure on that brand.  Latter this week my rework station and inspection microscope should be arriving.  So perhaps we can bring the laptop back from the dead.
   A lot of work was done around the house today.  Xiphos and I cleaned up the garage and reorganized our wood collection.  It is now much easier to access.  I installed some new purple LEDs in my sleeping quarters.  The set I had were in bad shape after having to remove the waterproof covering because the ultraviolet light yellowed the waterproofing material.  I found a set that were double density, having 600 LEDs in a 5 meter strip rather than 300.  I decided to order a set and see how they worked.  So far, so good.  I will need one more set to complete the lighting.
   I also started working on a tool shelve for my primary work bench.  The board was cut, sanded and painted today.  A couple of coats of varnish and it will be ready to install.  This will give me an area to keep tools I normally need at my bench, such as wire strippers, diagonal cutters, ext.  But to do it right will take a couple of days.
   Early in the morning I rearranged my selves above the bench.  I wanted access to all electrical items right by where I would do electrical work, so I moved my bin of resisters and my bin of other electrical parts above my work area.  Once my new solder work station arrives I will likely add an other shelve to this setup, but I want to see about size before I do anything.

September 06, 2014

Design of the solar powered circuit

block diagram

Here is block diagram of the setup for the solar powered web server. It consists of 3 major components: solar panel, battery, and computer. In addition there is a battery charger, power over Ethernet, DC to DC converter, and monitoring circuitry. The monitor feeds current and voltage information back to the computer. In reality all power must go through the monitor so current can be measured.

There is also a source select relay. This relay is normally closed and directs power from the battery charger to the holding capacitor. Should the computer determine the battery voltage is too low, it can engage the source select relay and switch to using the power over Ethernet as it's power source. The source relay feeds a holding capacitor. Should a switch from battery to PoE or vice versa, the holding capacitor will maintain power until the switch over is complete. This time is in the tens of milliseconds which is long enough to need a holding capacitor.

The output of the holding capacitor feeds a DC to DC converter, which in turn powers the computer. The DC-DC converter can take a range of voltages from 8 to 20 VDC and dropping this down to a regulated 5 VDC. This allows the setup to run on whatever voltage comes from the solar/battery/PoE. Currently the PoE is 15 volts, which was required to overcome the current limits of the cheap Ethernet cable. The voltage of the solar panel can range from 12 to 17.5 volts, but will sag when a load is placed on it. With the battery charger I suspect the voltage should never get above 14 VDC.

September 05, 2014

Comparing power of Raspberry Pi vs Odroid

Raspberry Pi and Oroid

Raspberry Pi and Oroid

Now that both the Raspberry Pi and the Odroid are together I thought I'd do a little checking of the power usage between the two. Both run from a 5 VDC power supply, both are driven by an ARM CPU, and run Ubuntu. But how does the current draw of the Pi's single 700 MHz Broadcom BCM2835 (ARM11) compare to the Odroid's four core 1.7 GHz Exynos 4412 (Cortex-A9)?

To test, I setup both the Pi and Odroid with a lab 5 VDC power supply and an amp meter. Both units had a 100 Mbit/sec Ethernet connection and no other devices attached.

Idle conditions: open SSH terminal and default software running.

Heavy ALU usage: a threaded program to count prime numbers. Threads equal to the number of cores in the respective CPU cores being tested. All cores loaded 100%.

Heavy FPU usage: a threaded program preforming FFTs. Threads equal to the number of cores in the respective CPU cores being tested, and programs optimized for CPU. All cores loaded 100%.

Heavy Ethernet usage: a large file copied over SSH, piped to /dev/null (i.e. incoming data ignored).


Raspberry Pi





Heavy ALU usage



Heavy FPU usage



Heavy Ethernet usage



Units are in watts.

Note that during the Ethernet load test, the Raspberry Pi was only able to sustain 29.8 Mbits/sec, where the Odroid was able to sustain 93.1 Mbit/sec. This drop may be due to the Pi not being able to decrypt the data as fast as it arrived.

The Raspberry Pi has a very consistent power draw while idle and under load where the Odroid's power draw varies with activity. CPU usage effected the Odroid the most, but Ethernet traffic did increase power usage.

It is surprising the Raspberry Pi draws more power at idle than the Odroid. The Pi is half the clock speed and a single core. However, the Raspberry Pi's CPU architecture is from 2003, and the Odroid's CPU was released in 2012. Clearly during that time there have been improvements to efficiency, and it shows in the numbers.

When power is considered for a low-traffic solar powered web server the Odroid comes out on top. At idle the Odroid uses only 62% of the power used by the Raspberry Pi. However, it is clear the Odroid consumes far greater energy when under load, which one would expect from a faster machine. As a server such usage should be in short bursts and far more time is spent idle.

   A couple days ago I went in search of some bench lighting.  For typical use the LED reels I use to light by bench work just fine.  However when soldering or examining things I like to have more light available.  In the past I have simply used a clamp light.  I have one with an LED spot light that is quite powerful and it has been very useful.  Yet this isn't the best solution when wanting to wash the entire bench space with bright light.  So I traveled to my favorite home improvement store to see if they had any florescent light like the kind typically installed under cabinets.  What I found was all their LED lighting was on sale and the same price as the florescent lights.  I picked up two lights.  One is about 6 inches in length and dumps out a huge amount of light.  The other is 4 feet long and has output similar to a florescent of equal size.  Both work quite well for my setup and should make projects that much easier.

The other day when painting the outdoor Ethernet cable I made the mistake of waring a new pair of black denim jeans when using white spray paint. Naturally, I got paint all over my nice new pants. I do this sort of thing all the time as I never consider what I am waring when I go to preform a task. I have ruined a good deal of clothing from this, but nothing I wear is too expensive. Nonetheless, my pants were only a couple weeks old and usually are good for a couple years. So I decided to see if I could save them. Spray paint is oil based, and when you want oil based paint out of paint brushes paint thinner is what you use. I really wasn't expecting it to work, but sure enough the paint came right off. After a good washing my new pants look no worse than before I started. Lesson learned: when I don't think about my clothing there is always paint thinner.

September 02, 2014

The Phoenix Rises Yet Again!

ππ lives!

ππ lives!

   After what I thought was certain death, ππ returns.  After the failure that didn't come back after a good brushing with alcohol I decided to try a few more things.  The first was an ultrasonic bath in distilled water.  While the back of the board isn't as dirty now, this didn't help it function any.  So I decided to take the Pi into work and use one of our reflow soldering irons.  The back side of the board look like it had nothing but bad solder joins with everything a dull grey.  I thought maybe the solder had degraded to the point where connections were no longer being made, and that perhaps by adding flux and remelting the solder I might restore the electrical conductivity.  It was a long shot, but the board didn't work so I had nothing to loss.
   The rework station was pretty simple to use.  They had a large magnifying glass next to the station and I was able to inspect the solder joints after the application of heat.  Using a no clean flux pen I wet all the surface mount parts and remelted the solder joints.  After inspection I could see most had returned to being shinny, although they still looked a little ragged.  I spent about 15 minutes working on the back side of the board before deciding that this was as good as it was going to get. 
   I plugged in power and the system began to boot.  Surprised, I decided to add an Ethernet cable.  Sure enough the connection lights turned on shortly after the system powered up, and it looks as though the device was functioning normally.  When I got home I powered the system up and verified everything was running.  I allowed the system to run for over an hour as I did my bike ride.  Just like nothing happened, ππ was powered, running, and serving pages.
   What a device.  Twice it has returned from death now.  It is clear the Pi does not like it's life on the roof in the open-air enclosure I made.  So I have ordered a weatherproof box I plan to adapt for Operation Lux.  Sure, the Odroid is here, but the project still has time before I am ready to actually use a solar panel.  During that time I would like more data, and ππ still wants the job.

September 01, 2014

The Arch Mage, University Tower, and Marv Ale

Marv Smash, the Dragon's Glory Hammer

Marv Smash, the Dragon's Glory Hammer

   Our group had defeated a hoard of zombies and some large undead Void creature, attracting a group of onlookers.  At the end of the battle we met She Who Burrows, the infamous God like creature from the Void.  Now the battle was over.
   As the group stood recuperating we saw the town Constable.  With him were a small army of mages who were destroying the remaining undead creatures with great ease.  He apoligized about not showing up sooner as he had not understood the severity of the problem he sent us to solve.  But after being inundated with pleas from the otherwise tough guys of the neighborhood he brought reinforcements.  Among them was Arch Mage Bertran Graylock of the Southerland Graylocks.  We talked to him and he explained the hole was being used as a portal to the Void using human sacrifices.  The Arch Mage brought with him several of the students of the University Tower school of magic.  There were using Thamterigal Devining Rods to find magic hotspots and were rather interested in our wizard Jo King.  Ellenoria relayed the story of our travels, including information about Gaius Dermious, the ancient Solarian and his labs.  The Arch Mage used the Noitacinummoc stone and talked in technobabble with Gaius for sometime.  We were then invited to come to the University Tower.  The wizards placed a white energy dome over the opening in the ground.  We were told that if three such portals opened it would lead to a permanent pathway from the Void to this world.
   We then talked to Gaius.  He had been setting up his own lab in the Citadel, and spending part of his time correcting religious dogmas and translations.  She Who Burrows is one of the more powerful Void Creatures, yet it is hard to understand her motives.  While others want control, She Who Burrows is somehow related to the Queen's rebellious daughter who is known for doing anything bad.  She Who Burrows has been known to cause entire nations to be swallowed up.  The entire city of desert city Mytanth vanished into the sand dunes.  Mythanth lives in legend as city of excess wealth, great magic, and golems of platinum.  He warned us not to trust any Void Gods.  It was clear we needed to go to Twilight City where it is believed an other portal has been opened.
   The Constable was going to arrange a boat for us to travel.  In the mean time we needed to get back at the Dragon's Glory Inn, but Ankus Lightfoot knew of our adventures even before we returned.  Many had seen our epic battle, and now we were the talk of the town.  That evening the largest crowd that Ankus ever had at his bar, where they served Marv Ale and Ellenoria animated the story of their battle.  Hoodlums were attempting to style themselves in large coats, and codpieces with fairy-like dolls—a clear imitation of Marv.  Crowds gather to see us. 
   That evening, Marv noticed a black mist coming out of the bite wound he received in the battle.  There was magic, some kind of negative void energy, but didn't seem to be spreading or life treating.  The same evening, Annalis woke up with a knife to her threat.  It was then she was told "We've excepted your application to the assign's guild" and given a black business card.
   On the following morning most of the group headed to the University.  The Arch Mage examined Marv and said the black mist was a necrotic energy he had never encountered before.  They were need some time to do research.  The students also tried to examine Jo King, but nothing conclusive was discovered.  We were given some black rings that looked like stone but feel like metal.  We were told when activated they provide us with complete protection from all status effect from Void Creatures for 3 rounds, but only good once.  We each took one.
   The Constable gave us 1500 gold and a boat to Twilight City.  He was there with someone in find clothing, slender, well kept, and dark eyes.  This was the magistrate.  Annalis quickly learned he too was a member of the assign's guild.  The father of the Eniaion Drathan, the thieving leader of the Snowflake Guardians who's life had ended after an interrogation by Marv and Annalis, had a blood oath against us.  He resides in Twilight City and will not be welcoming our coming.
   As we sailed away, crowds of people gathered to see us off.  Marv is now rather popular with the women, and Ellenoria keeps his image as the large silent type.  Away on the River Sprite with Captin Dumall, Twilight City awaits.

Today I tried to check on PiPi but found it wasn't responding. After I power cycled the device I still wasn't getting a response. So I went to the roof with a stiff brush and gave it a cleaning, but to no avail. While the device was booting it had no network connectivity. I had no choice but to bring it down from the roof and see what I could find.

The back side of the board looked bad. It was covered in powdery white patches. So I cleaned it with the alcohol. That didn't help. So I cleaned it was water and dried it right away. I was able to get it to boot once with an Ethernet connection, not often it wouldn't boot at all. After using a magnifying glass to inspect as closely as I could the components of the board, I could see all the solder on the back side of the board was gray and in bad shape. The top side of the board was fine. Clearly PiPi does not like the outdoors. While it has risen from the dead once before, I'm not sure I can bring it back again. For now, it is down.

August 30, 2014

Adventures in Cheap Ethernet Cable

Messy Lab at the End of the Night

Messy Lab at the End of the Night

A lot of work done today. I received the outdoor Ethernet cable that will supply the Odroid with both network conductivity as well as backup power. With my temporary setup I simply allow the cable to lay across the roof, but for the permanent setup I wanted something better. I found a style of Christmas light clips that are designed to hold strings of light to the roof by clipping to shingles. They are just a simple plastic clip and seemed to be exactly what I needed for neatly fasten the Ethernet cable. Turns out the clips I ordered are just the perfect size for the diameter of the Ethernet cable. Cheap, simple, and effective.

In the morning I ran the Ethernet cable and along the roof ridge, down along a vent pipe, along the garage roof, then paired it up with some coaxial cable down the side of the house, and finally into the house. For the run into the house I found the air conditioner compressor lines had a large hole that had been filled in with caulk. There was plenty of room in the caulk seal for my Ethernet cable, so I drilled a hole and pulled the cable through. After inspection I could see the black cable stood out against the white house and gray shingles. So I grabbed a can of white spray paint and a large piece of plastic. After covering an area of the roof with the plastic and placing the Ethernet cable on top, I painted the cable white. It took a bit of time, but now is only noticeable if you are looking for it. The cable has the added benefit of being located on the back side of the house, and only from a small area across the street can you see the cable at all. With a discrete run, and a caulked entry point into the house I think both the neighborhood and the landlord will not object to this cable's presents.

With the cable run it was time to test performance to the Odroid. The Ethernet cable is a really cheap outdoor Cat 6 cable I read many mixed reviews about. However, it was about half the price of all the others. Since the cable was never going to have a large network load (this is a web server that only has a couple megabits/sec to contend with) I figured cheap was worth a shot. I might have attempted my next test before I installed the cable on the roof and painted it. Alas, I didn't.

With the Odroid wired up for Power of Ethernet (PoE) I took setup to the roof. It consists of the Odroid, a 12 VDC to 5 VDC swithing power supply, and a PoE breakout cable. I spent a bit of time in the basement soldering together the pieces with a nice heat shrink covers over all the solder joints and had the setup looking pretty. Everything worked in the basement and it was off to the roof. There I plugged in the Odroid and... it didn't work. The red power LED was light, and the blue status LED blinked twice, but after that: nothing.

So it was time to trace down why things were not working. I started by bringing an external power supply. That did work, and I was able to get a network connection. I thought maybe the switching power supply was introducing noise into the Ethernet signal and tried comping a ferrite bead around the cable. That had no effect. I brought the setup back to the basement and tested the setup with an other 100 foot run of cable. But this cable functioned just fine. So the length of the cable was not the issue. However, the gauge of wire used in my cheap outdoor cable might be an issue. The long run of Ethernet cable might be causing too much resistance for the current draw. With my new power supply I could test this.

The setup was to use my power supply in a current limiting mode and see if I could reproduce the symptoms I saw on the roof. Sure enough I was able to see that if the Odroid was unable to get the necessary current it would function up until it tried to switch on the Ethernet port. This was just after the two flashes of the blue LED. In fact, at the very moment my power supply went into current limit, the red LED on the Odroid flash off briefly. On the oscilloscope I could see the power sage for about 100 ms.

My first solution attempt was to add a capacitor before on the 12 volt side to see if maybe spikes in current were knocking out the system. So I cut up all the nice heat shrink I installed to run a test. I was able to setup a situation with my power supply were a large capacitor did allow the Odroid to boot when it otherwise could not without the capacitor. However on the roof this did not help. I tried placing the capacitor on the 5 volt side, and adding more capacitance. No luck. I could either not supply enough capacitance, or the 100 foot run of cable simply could not handle the current.

Thinking the average current might be the problem, I decided to increase the PoE voltage. I had purchased a cheap 12 volt supply that was basically a cell phone charger but at the higher voltage. However, I had a bench power supply and I already knew the switching DC-DC converter could handle up to 20 volts with no problem. So I decided to power the PoE from my bench supply at a higher voltage to see if that helped. There was one problem though. My Ethernet hub is not near my bench power supply, and I didn't have a good way to bring the two together. My solution was far from elegant, but it was functional. I hooked my lab supply to an extension cord using alligator clips from the supply to the extension cord prongs. On the other side I used paper clips jammed into the outlets and more alligator clips to direct the power into the PoE adapter. Ugly, but functional enough for a test.

The results were a functional Odroid on the roof. While I started at 20 volts I found I all I needed was 14 volts—12 volts just wasn't enough to get the total wattage necessary to the roof. It was not my cheap power supply either. My bench supply could provide plenty of amperage, much more than the cheap 12 volt supply. The cheap Ethernet cable has smaller gauge wire than is allowed for category 6 cable and I had already read that complaint in the review feedback for the cable. I just didn't figure it was going to be an issue like it was.

Nonetheless, I have a solution. I will have to select a new PoE power supply, and it will be harder to find one at this odd voltage. However, the Ethernet cable will function and the PoE will only be used when the setup doesn't have enough stored solar energy to run. It has been a long trying day, but I found a solution.

August 29, 2014

128 micro SD solution

What a Strange Wall?!!

What a Strange Wall?!!

   The forums for the Odroid came back with a solution pretty quick.  After following the directions I soon had the Odroid booting form the eMMC card and using the micro SD for storage.  What it looks like happened was the in /etc/fstab the eMMC card was being mounted as root by using it's /dev/ name.  However, when the micro SD card was installed, it became the first device.  That caused root to be mapped to an empty drive and the boot sequence could not continue.  The solution was to reference the drive by UUID for mounting.
   There is an oddity here that I think I was lucky in overcoming.  After I failed to get the device to boot from the eMMC I decided to install the OS on the micro SD card.  Since this is an image it actually has the same UUID as the eMMC because they are based on the same image.  However, since I installed the OS on both devices, it ended up working.  However this was making it difficult to mount both devices on start up.  I discovered the UUID was stored on the disk and could be regenerated using tune2fs.  That gave the SD card a new UUID and allowed everything to function correctly.
   An electrical engineer at work was nice enough to take time and talked to be about how to do a current measurement circuit and recommended a part by Analog Devices.  Rather than build a more complex op amp circuit where resister tolerances are critical I could just use a ready made part.  When I got home I looked it up and found it was only available in a surface mount package and not through-hole.  Looking around I found an other part that also did current sense but connected directly to the SPI bus.  It too was also only surface mount.  I couldn't find a socket that would convert the surface mount part to through hole either.  So now the question is do I buy the part and try my hand at soldering on leads or not?