New Wireless!!! Linksys Velop Review

Home Wireless Upgrade to the Linksys Velop

A confluence of circumstances recently had me upgrade my home wireless. It has been on my plate the past few months as my connection in the basement is up and down like The Beast, there is no connection at the other end of the house, and standing outside; forget about it!

I have been doing my homework while waiting for the right time. In one of my careers as a Network Engineer, I spent a lot of time supporting wireless; enterprise wireless. 2 controllers and over 900 access points, thousands of devices per day, yet at home it was the dark ages. I tried a couple of remedies such as wireless extenders (worthless) and playing with OpenWRT to see if I could tweak the settings to pull out a little more life from the aged Netgear 600. 

I knew from my quick survey out of iStumbler that the airwaves were getting a little crowded.  

OldNetworkPeek

 

Once iStumbler confirmed what I already knew, I brought out Chanalyzer to take a closer look. Yikes, that is some dirty air out there and 2.4GHz is a wasteland. I already knew from my experience that 5GHz was a necessity!! All of my major devices are Apple and ready for 5GHz. Having AC on board the access point would be a nice addition as it is the up and coming next standard. The 5GHz range is looking quite nice in my area right about now, so it is a great time to move in. 

HomeWiFI Analyzer

Knowing I have to cover my whole house and I also want it to bleed outside by the pool and porch, multiple access points would serve my purpose. Part of the enterprise setup I had my hands in also used a series of access points that didn’t use a main controller per say. There was one that acted as the controller for all the others, creating a MESH network. It was pretty cool and kept the cost down for our remote sites; but the price was still out of range for home. Then last fall I started to read about MESH networks for the home. Now this is something I can get on the band wagon about. 

Reading over the specs for all of them I believe that the Linksys Velop it on top of the stack right now. At least for my wireless upgrade it does. It has 2.4/5GHz (some other brands only work with 2.4, yikes) b/g/n/ac. The setup really is, almost as easy as they claim. 

I am still reading up on how the do their backhaul between the APs. My understanding so far is that 2 of the channels are bonded for speeds to the clients and there is a single 5GHz channel for talking between the two. And after seeing my iStumbler chart from above, I have some other questions as well. 

After unboxing them, I placed the new one, right where the old one sat; right next to the cable modem. I wiped out my phone. side note. at work i actually bothered to download the manual and read it. yes it was the simple users guide, but i was able to make sure i was doing everything right to get it working, i can dink later. oh and i also installed the app so i was ready to go. I fired up the Velop app and just like the screen said it took a couple of minutes for it to find the access point and link up. Once I had the first one up I wandered around the house to see how it was. WOW, I was impressed already and there was only one AP up. I had signal in the kitchen and some outside! A small victory. 

Now to place the second one. I already had a place in mind for it. Velop has other plans and they are kind of hit and miss in my opinion. I first started with the AP in one room over, up on a shelf. So it was going through 2 2×4 drywalled walls, about 40-45 feet away. Nope it complain that I need to try closer. It was during this time, setting up the second one that was most frustrating. The progress bar is honest when it says it will be a few minutes. And it also took out my iPhone a couple of times. By 1:30am I gave up on the second one. It was late and I was frustrated. 

The next day I gave it another try after and fresh cup of joe. This time, the last time, I place it with one wall and about 30 feet between the two. Shazam! The two started talking and doing their thing. 

IMG 2053

Wireless, I am now King of the Hill on my end of the street. The drops in the basement are gone. I can surf from the car, through the house, and out to the pool. The speeds are very nice between devices, especially for backups. After having it up and working now for a little over a week, the whole family is very pleased with the results. 

HomeWiFiPeek

My Valentine’s Dead Bug

*** This was a quick copy and paste. I will be back to edit it soon!

 

This was one of those projects were I had a good idea in hand, but by the end it turned out quite different; and I am quite pleased how it turned out.

I wanted to make my Wife something nice this year for putting up with my various projects. Those on the “list”, those in planning, those in progress, those finished, and some abandon.

My original idea was to cut a heart out of wood, mount the 8×8 matrix in a hole in the middle, and mount the ATTiny on a PCB somewhere. I couldn’t make up my mind in front or back. While those ideas where being pondering and experimented with, I started on the hard part of the project.

I looked in my stock as I had both the ATTiny85 and 8×8 matrix handy. Wow, that seemed like a first, I didn’t have to order anything. I hadn’t really used the matrix before so I downloaded the Adafruit libraries and hooked it up to my Uno clone and started to play around. I used both the Adafruit_LEDbackpack and Adafruit_GFX. The animations are pretty straight forward. You have to create your image with 0 & 1’s, then call each of them as you need them. 

Here is an example from my code that shows part of the heart being drawn, it is the center square.

<span style="box-sizing: border-box;"> heart2_bmp[] = </span><span style="box-sizing: border-box;"> { </span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">B00000000, </span></span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">B00000000, </span></span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">B00000000, </span></span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">B00011000, </span></span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">B00011000, </span></span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">B00000000, </span></span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">B00000000, </span></span>
<span style="box-sizing: border-box; margin-bottom: 0px;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">B00000000, </span>}, </span>

Text scrolling is straightforward, but for those who are new, lets pick it apart a little bit and see what is going on.

<span style="box-sizing: border-box;"> <span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">matrix</span>.setTextWrap(false); </span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672;">matrix</span>.<span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">clear</span>(); </span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672;">for</span> (int8_t x=<span class="hljs-number" style="box-sizing: border-box; color: #ae81ff;">8</span>; x>=<span class="hljs-number" style="box-sizing: border-box; color: #ae81ff; margin-bottom: 0px;">-100</span>; x--){ </span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672;">matrix</span>.<span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">clear</span>(); </span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672;">matrix</span>.setCursor(x - <span class="hljs-number" style="box-sizing: border-box; color: #ae81ff;">8</span>, <span class="hljs-number" style="box-sizing: border-box; color: #ae81ff; margin-bottom: 0px;">0</span>); </span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672;">matrix</span>.<span class="hljs-keyword" style="box-sizing: border-box; color: #f92672;">print</span>(<span class="hljs-string" style="box-sizing: border-box; color: #e6db74; margin-bottom: 0px;">"1 short text"</span>); </span>
<span style="box-sizing: border-box;"><span class="hljs-keyword" style="box-sizing: border-box; color: #f92672; margin-bottom: 0px;">matrix</span>.writeDisplay(); </span><span style="box-sizing: border-box; margin-bottom: 0px;"> delay(<span class="hljs-number" style="box-sizing: border-box; color: #ae81ff; margin-bottom: 0px;">100</span>); </span>

To start, the text shouldn’t wrap as a message will be scrolling across the matrix. The first variable, x=8 is where the text will start to scroll across. This example starts on the right and moves towards the left. x>=-100 is allowing room for the characters. I took the total number of characters in my text message and multiple it by 9 and the text displayed correctly. If you miscalculate you might not see the whole message. This happened to me as the original message was about 4 characters and the value was 96. My message was much longer, but I hadn’t changed the 96. Once it was bumped higher all worked out well.

I was using my Uno clone to do the testing. It is just much quicker to make a change and upload it quickly. Everything was moving along great, but I noticed one thing, the message wasn’t oriented right, it was a bit upside down.

There is another command that comes in useful.

matrix.setRotation(<span class="hljs-number" style="box-sizing: border-box; color: #ae81ff;">1</span>)<span class="hljs-comment" style="box-sizing: border-box; color: #75715e; margin-bottom: 0px;">;</span> 

With it you can rotate the screen in any of the four directions depending on where you need/want the pins to orient. Setting it to one put 0,0 in the upper, left-hand corner, with the pins pointing downward. Or as in one part of my code I use the rotation to spin the heart.

Now is was time to program the ATTiny. I do like working with these little guys. They work quite well in a lot of my projects and can take up a lot less space than an Uno. There are some great guides out on the net on programming the ATTiny family of processors. The only hiccup I had was dealing with the Wire library.

While libraries might be compatible within the ATMel family of chips, there is the space consideration. And the ATTiny85 doesn’t have the room of its big brother. There is a Wire library that was made just for the ATTinys, it is also from Adafruit. WireTinyM. Once I updated that it worked much better. I left in both for when making changes and updates. Depending on which one I am using I can just comment out the other. 

During all of this I am still pondering how to make the mount for all of my little bits. I start to look at the 8×8 and the Tiny and figure what the hay. There are only 4 pins that need hooked up. And this would probably look way cooler than protoboard as there is no time to get a PCB fabricated and delivered. It seemed to so simple, 4 pins to 4 pins. It took a couple of tries in trying to find what might look best and also work the best.

Well, it struck me. It had earlier, but wasn’t too hip on the idea at first and then it just started to grow on me the more I thought about it. I got myself a length of electrical wiring. I had a length of 3-wire left over from a kitchen project. I pulled out the ground wire and bent it in the shape of a heart. I would then just be able to hang the matrix and Tiny from the top of it. Shazaam!

After that it was a matter of finding a base (a birch log part that was from a wedding center piece and some Lake Superior lake shore rocks).

Oh last but not least, I had to power it. I was going to use USB cable, but no, that would be just too much hassle. AA?? Naw, too many and won’t last too long. Hey, I have one of those lipos at 3.7, I wonder if it would work? I know the ATTiny will work at 3.3V and that data sheet states the lowest power the for the matrix is 2.7. What the heck. I wired up a JST battery connector and plugged it it – DONE!

SCHEMATICS 

Img 1853 3hpmbc0wrk

Spare parts Pipe Lamp

Recently I had to replace the hot water heater in our house. Thankfully it was a slow leak from the bottom so major catastrophe. While I was working on it I kept looking around at the pile of parts I have collected from various plumbing projects.

Hey why not one of those pipe lamps one sees all over the place these days. Why not. I was able to use about 90% of what I had. I had to purchase a length of 1/2″ copper tubing for the arms, 3/4″ to 1/2″ threaded adapter, and the switch for the faucet. I used this Instrucable for the faucet switch.

Even though I am pretty much flying by the seat of my pants on this one, I start off by laying things out to get a general idea of where I am heading.

The threaded parts are put together. There wasn’t a way to tighten them all the way up and be in the right directions. As such I took a spot of super glue to the threads. To date it is holding up well. And as seen in the upper right-hand corner I am dry fitting the sleeved parts before sweating them.

And the legs are together and sweated.

The 90% are added to the ends. I really need to cut short sections of copper pipe for the feet. They need to be raised 1/16″ to have the base at true level. I was tired at the time and didn’t fuss with that part. It will be done before it is put at it resting place.

And here is the base of the lamp.

Switch and lamp next. I am still working out how I want the lamp part to flow, this is turing out to be a bit of a pain for me – it just doesn’t look right yet. Hence no pictures. I have a 45 and 2 90’s, plus a short section of already sleeved pipe to hold the light fixture.

I will update this when it is complete. For now I have other projects to attend to. This one was one that hit me one day replacing a hot water heater at noon and made it this far by 2:30am. The tale will continue.

 

Side Project – MacPi Plus

Raspberry Pi Model 3 into a Mac Plus case 

My Raspberry Pi has been sitting on my bench in a little plastic box. It seems so naked and bare; it needed something to spice things up. And I needed another project on my list, like I am not sure what, but it has ended up on my list.

I have had an old Mac Plus case laying around for years. It has served as a desktop bookcase to recently a collecting bin for cables. The face plate was made into a cheesy, but geeky picture frame. It took some time to clean it up a bit. I didn’t go through all of the trouble to really scrub it down. I like a little of the aged, plastic, patina, look to it, but it does look scads better than it did.

My first goal for this project is to see how much I can use that I have laying around. I have rounded up most of the parts I need.

  • Mac Plus Case
  • Raspberry Pi – bought
  • SainSmart 7″ TFT LCD – bought
  • USB hub, powered
  • SD card slot extender
  • Ethernet cable extender

I am sure I will need some more bits and parts as time wears on, but for now this will get me started.

While working on getting the screen working with the Pi (what a pain, but this will be another post later) I have been laying to how to put things together. The first order of business was the screen. I was trying to find a 4:3 aspect monitor, but didn’t like what I found. I started looking at the Raspberry Pi “compatible” screens. I originally wanted to get the larger 8″ screen, but after measuring a couple of times, I was sure it wouldn’t fit. So I decided on the 7″ screen.

I need a way to mount the screen to the inside of the face plate. What to use? It took me a day or so of rummaging around to find something that seemed appropriate to use. Somewhere in my travels I had a rather large pass-through card, but the right size for holding the screen and with a little Dremel work on the connectors it fits in the face plate.

I took a piece of cardboard and traced the outline of the screen opening on the faceplate. I then added another piece of paper representing the screen to help figure out the placement of it and the screws.

I have to drill the holes in the plate to attach it to the face plate as well as 4 more holes to mount the screen.

 

Well, that is it for now. Check back as I will be updating as I keeping plugging along on this one. Like I said it is a side-project. While not pretty, the bare Pi and VNC work fairly well for the work it currently does, but it deserves a nice Macinficantion.