Self-Hosted Again

Bye Bye AWS. So, I decided to come down from AWS EC2 and RDS this month. Mostly over cost. It just didn’t make sense to be spending $50/mo to host EC2 and RDS when I had an Intel NUC laying around with 8GB of ram and a commercial Comcrap internet connection. My IP has been stable for over 6 months so I figured it was safe to host on it. Commercial accounts can host without penalty, but Comcrap likes to overcharge $20 for a static IP. It’s worth pointing out that this used to be much cheaper but a combination of a gouging opportunity, limited availability, and scooping by larger organizations is just too much to pass up for their sales zombies. I call them sales zombies because they aren’t smart enough to screen their mailing list against existing customer names and addresses. Same thing for their call list. I regularly get calls that go like this “His this is Seth Zombie with Comcrap. I’m calling to see if you are stupid enough to talk to me about my over-priced VOIP, Commercial Cable, or high speed internets.” “My manager hates me, please call me back so I can mark you as a victim in my spreadsheet….” Too bad they don’t put the same amount of effort in to customer service. That’s a totally different call. Fortunately I haven’t had to deal with them in a while.

Anyhow, back to AWS. I set up the latest LTS version of Ubuntu. True to form they’ve introduced some annoying new changes to networking that throw everyone’s documentation out the window. Thank goodness they haven’t been acquired like the sellouts known as RedHat. Red is right….. as in red light, like whores that they are. Anyhow, the config was relatively uneventful. Took a few minutes to get the Firewall setup. I’m using a SonicFall (Sonicwall) Pathetic piece of shit firewall. I stopped paying ransom for support last year. No, I will not pay $200/yr for support on a $250 device. Apparently neither will anyone else because they are cheap as hell on fleabay. To their credit, India will help you configure it. Of course wouldn’t it be easier if you didn’t need to ask for help to set the damn thing up? Even Cisco isn’t this difficult to use, and they are notoriously obtuse so that you can pay a CCIE to cut and paste a config into your router. CI$CO can burn in hell.

WordPress Migration is really simple. Tarball your site, download it, unzip it, set permissions and chownership. Export your DB, tarball it, copy it down, un tarball it, import it. Config the DB location and username. Load the page and try your luck.

Between a decent firewall and Wordfence it’s pretty safe to host WordPress on your own server. Of course, the average person shouldn’t do this, but if you are an IT person you should be able to. It helps to also reduce the attack surface on your WP site. Things like using .htaccess to restrict access to certain directories help. I will continue to use Cloudfront for CDN along with Amazon’s DNS service. Both are rediculously cheap and scaleable, which limits the ability of script-kiddies to pull a DOS attack on your site. They might chew up a few $ of data, but no big deal. Good luck trying to crash an Amazon DNS server. lol.

That’s the update for now. I have some stuff in the works for Nanohawk. More to follow eventually.

WordPress Sleeping Database connections solved

I ran into an issue where I had many sleeping database connections that were chewing up server capacity.  It came down to a file called XMLRPC.php which is used for inter-site wordpress communication.  Blocking it disables the sleep commands it was generating.  🙂

adding this to the .htaccess file dealt with it.

<Files “xmlrpc.php”>
Order Allow,Deny
deny from all

That also breaks some trackbacks, etc…. but I can live with that.

Sorting with UV light

2016-04-18 20.42.04

I ordered some 1 Watt and 3 Watt LED’s from AliExpress.  They were cheap, like 10 cents each.  Free shipping.  All good till they showed up mixed in an envelope.  In regular light they are identical in appearance.  Fortunately I had a small UV flashlight I had ordered.  I thought it was interesting and had ordered it for $5.

It turns out that the LED’s are vastly different in appearance under UV light.  This enabled me to quickly sort them.  You can see the 3 Watt LED’s on the left and the 1 Watt on the right.  I know the size based on the quantity I ordered.

no upgrade for Eagle

I licensed Eagle 6.5 in 2013.  When I resumed designing boards this year it started bugging me to upgrade.  Figuring it would be disruptive I put it off.  Well, I went to finally upgrade this week and discovered that the ‘light’ license has no upgrade option.  It’s another $69 if they want me to upgrade.  Hmm, what do I get?  So I read the release notes and couldn’t find any useful improvements.  They certainly don’t seem to have fixed the things that irritate me the most about the program, such as:

  • Annoying habit of not connecting parts to wires if the scale is off just slightly.
  • No way to “fix” such connections.
  • Parts get out of alignment and can’t be “snapped” to alignment.
  • no decent basic parts libraries for stock discrete components.  Forcing one to scrounge for SparkFun and ADAfruit libraries, or make your own.
  • Not being able to “pin” the ground planes to the outline of the board.
  • Having to “smash” parts and manually move the labels

As a bonus, the upgrade is one way for your files.  So if you open something in v 7.5 you “convert” the file and can’t go back to it with an older version.

I decided to stay put on v 6.5.  It works just fine and I haven’t found anything I need in the new version.

The thaw – resuming shipping of kits

I am very happy to announce a return to doing business. For the last 1.5 years I had stopped selling and shipping kits. I originally anticipated it being a shorter pause. I sold one house and bought another. While I’m not done with my new house I am to a point where I can resume building and shipping kits and projects. For anyone who has patiently waited this long, thank you.

Amazon SES – Not ready for primetime

I give up! Amazon SES is a pain in the tail to get running. I understand that security is a compromise between the desire to put something inside of a block of concrete and leaving it in the middle of the street. SES is too deeply embedded by Amazon’s paranoia. Poorly documented sandboxing, no obvious way out, and unreliable performance make it anything but simple.

I’ve tried on and off for a month to deal with it. I went back to SendGrid which is truly simple, reliable, and easy to use. From start to test email delivery from my EC2 instance took under 5 minutes.

Now, in all fairness, I have used Sendgrid before, and I use it at the company where I’m the IT Manager. It is bundled free with Azure hosting. However, Azure is like flying economy class whereas AWS is like flying jumpseat. You have alot more data and alot more control at AWS.

The majority of what I use it for is administrative notifications from my EC2 instance and the wordpress sites I host on it. It’s really a shame, because so much of AWS is well documented and otherwise easy enough to use. However, AWS support is $100/mo and there is no “break glass” option of $10/incident etc for individual developers who need help, but don’t want to subscribe to help.

Fusion 360 material experiment – 3D printing

So I’m on version 24 of my 3D printed unobtanium part….. I keep tweaking the dimensions and re-printing. It occurred to me that Autodesk Fusion 360 thought I was working in Steel, when I’m actually working in plastic. ABS plastic to be precise. Fusion 360 is a really nice CAD/CAM tool that represents the future of software delivery. It’s cloud-connected which means I can work on my project from anywhere, but I still get the power of my 8-core AMD Bulldozer CPU with 3 24″ screens when I’m at my home office.

So I made the inner radius a little smaller. That is the part I’m working on. I then exported the STL 3D model as I always do. And then I went back and changed the part material from Steel to ABS Plastic. I exported that as 16mm ball cap v24-ABS. I put both of them in Simplify3D and we’ll see how it goes. The “steel” one is on the left. The “ABS” one is on the right. The question to be answered is does Fusion 360 compensate when exporting the STL for 3D printing? It’s 3D aware and creates beautiful, defect free STL files.

Here is a screen grab of the Simplify 3D. The thin red lines are the tool paths when not extruding.

And the answer is NO. Both versions are absolutely identical to each other.

Reset powers down my USB Port!

I recently had a question from a customer who had purchased TinyTimer KS and was concerned that when they pressed the reset button it would power down the USB Port on the computer.  This post addresses what is going on and why that happens.

In the Arduino environment reset generates a condition that looks like a short.  Essentially it drops the voltage to the chip and causes a reset.  In the PC environment the USB bus is designed to protect the components connected.  So when a device shorts out its port is powered off by the computer to protect the USB bus.

When the same Arduino compatible device is connected to a “dumb” USB power source such as a wall charger, the reset works as expected.

The takeaway here is that you should avoid using reset while connected to USB on a computer.  Instead, just unplug the device and plug it back in when using a computer for power.


More Azure Headaches

Microsoft Azure is nice, but I’m beginning to doubt it.  I found that the server hosting was unresponsive again.  My fault for not dealing with it sooner. I had gotten an alert from Pingdom a few days ago, but thought it was an anomoly.

It refused to restart via the portal.  I wound up having to stop the server and then start it again.  That’s fine, but it changed my IP which required an update to DNS after trying to figure out why I could not load the webpage or get SSH to respond.  It would have been nice if Azure had warned me I was going to lose the IP address.  I would not have wasted 15 minutes trying to figure out why the machine wasn’t responsive despite the console indications that it should have been.

Amazon Web Services is looking very interesting.  I’m already there for backup and DNS management.  Instances are the same price.  Amazon has great documentation.  Microsoft has documentation written by marketing that rarely contains what I’m looking for.

UniPowerSupply – an LM2576 based design

I ordered boards to test a new power supply design.  It’s based around the National Semiconductor LM2576.  This accepts 7v to 40v as input and uses switching to produce a stable 5v output.

One of the things that became apparent to me as I worked on TinyTimer and TinyPLC is that a USB power input wasn’t always convenient.  I still think it is a great power source for small electronics.  The wall transformers are plentiful, cheap, and have a very easy to find cable that is very durable.  All qualities that are optimal for small embedded projects.

However, in some control applications it would be convenient to use whatever DC power is handy.  A rectifier could be added in some cases to deal with AC sources like 24vac which is very common.

I am also looking at the LNK306PN which is essentially a power supply on a chip.

Here is an image of the prototype / testing board: