A.D.D. has kicked in

I have been busy with 4 different projects, one done and the rest coming along. I seem to bounce back and forth as I ponder over some design flaws and possible solutions. Which usually leads to a “hey let’s do this too” moment, I like to call it my Shiny Penny Syndrome. It works for me. 

Click on the project title to to the that projects link if you wish. 

Bluetooth Speaker

We need a bluetooth speaker for the outside by the pool and I have also wanted one to use inside the house as well. This one is 90% complete. I still need to find what I am going to use for front and back grills. I may settle for some black material on a frame for the front and some aluminum grill for the back. In the meantime at least it is ready to go!

 

IMG 9806

Volumio Case

While the Volumio is up and working in the family room downstairs, I am still working on the case for the setup. I have the idea firmly in my head. I have the case hollowed out. I need to find a way to get down to the bottom and clean and smooth the bottom. it is too small to work it with any chisel I have. I was thinking of upping the RPMs on my drill press and using the drill bit to clean it out. We’ll see, I still have a little research to do on this one. 

  

IMG 9863

Arduino CNC experiment

My goal here is to have a larger CNC mill, a real one, that can handle wood and soft metal like Al and brass. While I usually like to jump into a project with both feet, I have learned and bit by over enthusiasm in the past. I have read quite a few builds using old DVD drives, the LM293, and an Arduino to make a simple X / Y potter (the Z axis raises and lowers the pencil). I have the X axis works, the Z axis servo works when it feels like it (so much for the cheap micro servos in the intro kit. Time to scavenge from an old RC car tonight). The Y axis just grinds at me, so I need to dig into it here tonight and get it moving, literally. 

IMG 9871

RetroPie

This is one that was downloaded, installed, configured, setup with 2 controllers, an old LCD monitor, and it has been hard to find to time to play with it myself. That is OK it is being well used. I have an audio DAC for the Pi 3 some old monitor speaks to mate with it. I have been searching for a case idea. The cases one can purchase are well – so so, do in a pinch, rather not spend money on one, will the HAT fit? As I pondered and searched, I stumbled upon an old Game Cube for sale on eBay (9 bucks right now, don’t bid on it please) and it looks like it will do the trick quite nicely. Integrated power supply, spaces for controllers / USB ports, and about the right size. I hesitated when I click on bidding for it, but as time goes and I read some, it should work quite nicely. Stay tuned for where this one ends up. 

Tempest Spinner

Since the RetroPie is up and going, I have been playing some Tempest, my ALL time favorite arcade game; but it just isn’t right playing it with a controller, keyboard, or mouse. One really must have a spinner for the real experience. I have looked for them online, but they are rather pricey (upwards of $70.00) so I have been looking into making my own. I have the box of parts and my notes in line. I will find some time one night when nothing else interests me 😉 I guess you will just have to check back on this one to see how it goes. 

 

 

 

Bluetooth Speaker

Bluetooth Speaker Project

We need a bluetooth speaker for the outside by the pool and I have also wanted one to use inside the house as well. This one is 90% complete. I still need to find what I am going to use for front and back grills. I may settle for some black material on a frame for the front and some aluminum grill for the back. In the meantime at least it is ready to go!

IMG 9806

IMG 9665

IMG 9669

IMG 9674

IMG 9711

IMG 9731

IMG 9735

Raspberry Pi Arcade Project

Next on the project list is a Raspberry Pi arcade system. Once again we are starting small with as much stuff as we could from around the Studio. I already had a Pi 3, monitor, keyboard, no controllers (ordered those), and for kicks I got another of the Pi Zero Audio DACs for sound. I will have a speaker leftover from the pool-USB-Streaming-Audio project so it works out well. 

We loaded it up with RetroPie and I have to say I am quite impressed. The software works quite well and while it is easy to setup there are quite a few options to check out later on. Right now the most imperative thing to my son was getting it up and playing on the screen today. 

IMG 9644

Someone has donated some Xbox controllers for the system. We are still going to make some kind of case for it. At this point I am not sure if it will be an all-in-one or keep the console separate from the monitor. Once again I will have to let this one stew and see what comes of it. 

I want to start to put together a real arcade style box for the controls, joysticks and buttons for 2 players while keeping the USB controllers for other games. I doubt I will go the standup route, but I never know where projects take me after a while. My big must have for this phase of the project is a Tempest spinner controller. Tempest has to be one of my all time favorite games! And it really isn’t the same trying to play it with a keyboard or mouse, and most paddle are wheezy at best. I have started digging into them. 

So let me share with you the links and information I have found on making a spinner. I am looking forward to scrounging and finding the right pile of parts for this one. 

BREAKING NEWS – I just found this site today and it seems to have one great manual for making a spinner. 

There is one place I found where you can purchase one, theirs is called the SpinTrak, they are pricey. Maybe when I make my standalone Tempest game. 

I found this setup which is pretty cool. And making a controller was my original and still my preferred idea. 

Below are some of the other links I have found dealing with DIY spinners. 

Made from an old VCR head.

Another excellent example made from the what-the-lab-will-surrender category

A spinner made right inside the mouse. Pretty neat concept.

Divine Muse

I have been dragging around these chunks of cherry for more than I care to remember, but I have been keeping them for a project. I have bee stewing about a case for mi Pi Audio Streamer. 

I had the garage door open a few days ago and pulled these out and started to look at them. Huh, a cherry case would be nice, look classy, and with a custom volume knob and single power light. . . ideas started to flow. How thin to cut the sheets? Joint them? Glue them? 

Fullsizeoutput 99eFullsizeoutput 99f

 

 

 

 

 

I ended up grabbing the skinner of the two. It has some interesting grain to it. 

IMG 9542

I cut three sections from the good end of the chunk. I still have the rest as there is some solid wood hidden in there and it might come in handy yet. Sorry the color is a little off but it was getting to be later in the afternoon. 

Fullsizeoutput 9a0

 

I have my sections of wood and I have the inside of it drawn out. My plan is to hollow out a section for the Pi and knob, I will get the drawing posted up here soon, but until then. . . 

Pi Update

Hold the presses! There has been a change of plans. After playing around with OSMC and some more thinking and drawing, I am going to change course with my Raspberry Pi project. Instead of a fancy pants media center, I am working towards a very nice audio system for the basement living room. My last real stereo was too many years too count and was a very nice Yahmaha system. Tuner, amp, CD, and booming speakers. It has long since gone and have been stuck with my laptop or iPhone with headphones to listen. 

So I have moved in that direction. While working with OSMC I found an inexpensive audio DAC (Digital Audio Converter) HAT, (pizereoaudio.com) for the RPi. 

IMG 9433

When it showed up I heated up the iron and with help of a little hot glue to hold the headers in place was able to solder it in place. 

IMG 9434IMG 9435

Don’t be harsh on some of the joints. While above beginner I am still in amateur phase. 

IMG 9436

I downloaded Volumio2 as the streaming distro. After doing some reading and comparing it seemed like a good package to do with. It supports audio streaming (of course) from local media and network devices. It also supports AirPlay but my first couple of attempts with it haven’t really gone so well. 

The DAC setup was quite easy. In Volumio2, under the menu is the Playback options menu. In there it was as easy as selecting the HiFiBerry DAC. And before I knew it my RPi was singing to me. The Pi Zero Audio DAC is based on the NXP 1334A. A low-power, low-priced DAC. The card was cheap compared to some of the other HATs out there. There is only line out installed on the card, but there are pads on the board is one is so inclined to add RCA jacks. Their documentation is sparse to proceed with caution if take this route. 

Since the pieces and parts are hanging together I whipped up a quick stand for it. 

IMG 9517

It is a piece of sheet metal from something and I superglued 4 standoffs to it. Simple and works for its purpose.

IMG 9516

Here is my proof-of-concept for my streaming player. I tossed on an old set of Altec speakers I had in the Studio. I have to say it really doesn’t sound hateful. Nothing high-end, but working well for what it is. 

Now that I am moving in this direction, I am starting to pick up some parts for the goal of this project, something which has gelled up nicely over the past few days. The end product is to be a single speaker streaming device. The pictures will work better than my words. I will share the drafts of how I want the case for it to look. 

I order the Pi Zero W that will be used for the end product. It came it quickly and I was pretty jazzed to get the headers soldered on and start to set it up as the main streamer.

IMG 9506

Pretty cool huh? And hands to Adafruit for getting it here so quickly. Help me here though, what is wrong with my picture? Where are the headers you ask? Someone forgot to order them. I remember the mini HDMI connector, and the rotary encoder I am going to use for the volume knob, but no headers! DOH! Well, off to eBay and now I am waiting for them to show up. Which is fine, I am still working the my Volumio installation. Songs needs sorted in various directories and playlists, AirPlay needs to be debugged, and I am learning how to add streams for my local radio stations. 

I have found a couple of nice speakers on Amazon from Viston and Dayton. I need to check them out a little more and pick one of them. From Adafruit I have my eye on the 20W amp for the speaker. I am still working on how I want/will power it all. I still have some time for thinking on that one. 

Stay tuned, I will be back to write up on what I have found about the DAC scene for the RPi and a little more about Volumio2. 

Raspberry Pi

Yes, another platform, another project. My Raspberry Pi has been floating around for a couple, three months now. I have been playing around with it, futzing with the OS installing and uninstalling things, all while trying to find a home for it. At first I thought I would use it with Domtiz and monitor various things around the house. After jotting some ideas down on paper the idea just kind of died on the vine. 

IMG 9396

There are a couple of retro gaming distros out there. They look fun, but not sure I want to dedicate this board to another console/computer/gaming system in the house. I downloaded xxx and have it on a SD card so I can pull it out and have some fun, but was still looking for its home, its purpose. 

Recently we got cable back. We had tossed Time Warner save the internet connection and didn’t look back at not having cable. Between not watching as much and Netflix, Hulu, and Amazon there wasn’t much reason to have it back. Then Spectrum bought TW and gave us a deal we couldn’t much pass up. In the process we have a new cable box and a Tivo that won’t much work with it anymore. Oh well. Then I had a spark of an idea, why not use it for a media center! That’s the ticket. 

I went out and started to do my homework on which distro will be best suited for my needs. I figured there has to be more than one of them out there with the popularity for the Raspberry; and there is. After a couple of days of reading and checking them out, I have decided on OSMC. It seems one of the easier ones to setup and use. So I have downloaded it and have it ready on a card. 

During this process, I have given up (temporarily) on getting the Sain Smart 7” LCD on working with the Pi. It is a sharp screen, it worked for a few minutes once, then I changed a setting, nutz! I broke down and bought a cheap, $3.99 HDMI to VGA convertors. It will work as I setup the rig and test it out. Once done I will move it out to the family room with the big screen. 

IMG 9398

For now the convertor works wonderful with my $2.00 monitor find. It might be a bit old and 4:3 not 16:9, but it is clear and works nicely. I am glad to have a spare monitor for the bench. To test it out I made it a third monitor on my Mac. How many do I really need? 

IMG 9397

This is a project that is going to blow out in scope as well. I have the goal of finishing up the audio amp I have on my bench and hooking it up to 2 bookshelf speakers that have been laying around for a while. It should make a nice little media center for the basement family room. 

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.

Flying Weather bits – the ESP-01 and sensors

The last few years I have been helping support an enterprise wireless network of 2,000+ access points. It is an interesting, challenging, nightmarish world wireless/RF is. When I started my Arduino adventure it was nice to be grounded in what I was working on. The wires carried all of the data I needed. I just need to make sure the wire was connected, not like those nasty RF signals that bump into other signals that might mess with this or that.

Alas, during my 1st weather project, while I was running back and forth with my data written to a SD card, I thought how much easier this would be if only I could do this with wireless.

In my research, I found information scattered hither and yon, each yielding news clues. I will try and link to those sites (I have remembered and bookmarked) throughout. I will post, what I thought, are the more important bits and pieces.

Project Goal

My requirements are simple. Use a DHT22 to take temp and humidity readings every 5 minutes. Take that data to a central point and log it with the ability to graph and compare it. Initially using USB and a converter for power, moving to own power supply.

** NOTE: I am going to be also working with a BME/P280 to see how to setup and work with I2C on the ESP-01. There are a couple of methods I will point out later on. 

I have seen where people use cloud services to keep their data. I have taken this into serious consideration, but am leaning towards a local solution. I have seen one that look promising, Domoticz. It is open source and can be run off of multiple platforms. I have recently received my Raspberry Pi 3 so I am going to try and it get it working there, but that is another day and another post.

Down to business

I crawled down into my abyss of a workbench and dug around. I knew that there was this 8266 thing what was supposed to do wireless and that I could hook it up to my Arduino. And in one of my orders I had tossed on a couple of different ESP8266 modules. There are plenty to choose from. I chose these 2 because they seemed pretty popular and I couldn’t beat the price. I have the ESP-01 and ESP-12E. The later is in the form of the NodeMCU v1.0 board with plenty of pins to work with. The ESP-01 is a simple, 8-pin module, yet with all the power of the 12E. After about 20 minutes of digging how to get the Arduino to talk to the EPS, I found out I could just write my code to the ESP and use it as both the processor and wireless device. Jack Pot! A temp sensor is always seems to be laying around somewhere and a DHT22 will work prefect.

A Quick BOM

  • 1 x ESP-01S
  • 1 X DHT22 (or whatever temp sensor you have around – be sure and sure the correct libraries.)
  • 1 x USB – UART convertor

 

The ESP-01

The ESP-01, as I have stated is the lowest, if you will, of the ESP8266 family. There is still plenty that can be done with it. Below is a diagram I found on deviantart of the pinouts.

For programming reference, pins TX and RX are GPIO 1 and 3. I found this useful when trying to get my I2C setup working. See my link at the end.

Also, the ESP-01 is pretty picky about its’ 3.3v limitation on pins. One of my first times working with it went up in the puff of magic smoke. Good thing I always oder at least 2.

Here is one of the sources I found for pin information. It is a very useful Instructable on the ESP-01.

The Plan

Here is a schematic of it from my notes. I was at work and the pencil and paper were quicker. I haven’t had the time to whip it up in Fritz’ yet.

I took to the internet and dug up a wiring diagram for the ESP for programming it. I like to take multiple approaches to this part of the process. There is the quick and dirty, plug it in and get it going and then the old school way I will call it. I did old school first.

** an error was pointed out to me during this project. The CH_PD pin should be pulled high during operation and low for programming. Currently I have mine floating, but will fix it in the next revision. It does work, but I am not sure what impact it may have in extended operation. I will update my documentation when I get it in Fritzing. 

In this example, the ESP is wired to an Arduino Uno. The two buttons are for Reset and Flash. Don’t mind the second ESP in the background, it was for another experiment.

Here is one of the sites I found useful in my quest for an ESP programmer.

*schematic from allaboutcircuits.com Next was the quick and dirty way, which wasn’t so quick an dirty in the end. Even it took some work. The board I got doesn’t have the CH_PD pin set to ground, which is required for programming. No problem since I have two of them, I took one of them and soldered a short wire connecting CH_PD pin to the Ground pin. I have it labeled for quick ID and use it for programming and the other for quick testing.

Coding

Next was how to make this little devil do something. Through my research much of the code can work, along with some of the Arduino libraries. Work has been done so that one can write a sketch and upload it through the Arduino IDE. There are other toolchains one can use as and they work quite well.

I found a couple of quick sketches where I poked around the code, uploaded them to see what and how they worked. I find that between reading the .h file of the library and an short example is the best way to learn what one can get done. I started to work on a sketch that would take a reading every minute and post it to a web page. Pretty simple and straight forward, but that is all I need right now. I only have a temp sensor and ESP.

On one of the forums I found a link to ESP Easy and it aims to be what the name claims. Essentially it is a sketch that one uploads to a ESP module. From there connect to it via wireless to initially set it up for the local wireless and then reconnect to it to control the configuration of devices and the such. Really quite fun to play around with. I need up using this for the time being. I was able to put something together over a couple hours in the lab.

Here is the link to the github for setting up the Arduino IDE for use the the ESP8266 family. The quick and dirty to setting it up is as follows.

  1. Quit the IDE or install the Arduino IDE from the Arduino website.
  2. Launch the Terminal.app.
  3. Enter in the command sudo pip install pyserial and hit return.
  4. Enter in the command sudo pip install esptool and hit return.
  5. Start Arduino and open Preferences window.
  6. Enter http://arduino.esp8266.com/stable/package_esp8266com_index.json into Additional Board Manager URLs field. You can add multiple URLs by separating them with commas.
  7. Open Boards Manager from Tools > Board menu and install esp8266 platform (and don’t forget to select your specific ESP8266 board from Tools > Board menu after installation).

The ESP is wired on the breadboard by the following. This will be the same wiring used on the protoboard final.

ESP

  •         Gnd -> Gnd
  •         Vcc -> 3.3v (from USB converter)
  •        Pin GPIO2 -> Signal from DHT22

DHT22

  •        Gnd -> Gnd
  •        Vcc -> 3.3V
  •        Signal -> GPIO2

Well, it is working on the breadboard and pretty cool for a first time ESP project. It would look pretty silly in it current state hanging from the wall. Time to go digging around in my Sanford and Son section of the lab. I dug up one of the covers that was used in an original Apple Airport. Seems like it will fit the bill. With two brass standoffs and some hot glue I mounted everything neat and orderly.

For this first station I have it mounted outside the door of my lab in the basement. It fires right up and works like a charm.

Here I took a brief fork in my academic travels. I took a day off from the above project. I did a little writing, working with the Nodemcu (but that is another post altogether), and thinking about the next sensor module I wanted to put together. I have it breadboarded and it works, it should be easy enough to put it on a protoboard; so he says.

I start with the basic layout. I think it is nice during this stage to start to think about how one would layout the traces for a PCB. My mind is already thinking that I might get 3-5 made as I need a few more for my project. The connections are as follows:

 

I layout and dry fit all of the components. For this version I didn’t have any female headers laying around so I solder the ESP-01 module directly to the board. I layed out the wire for the programming pins so I can make any changes I might want to it.

I used 24awg solid core wire for the wired connections.

My original plan has my own power supply. It is mostly working, but I have a leak somewhere. The power supply is straight forward. I use a LD1117 to convert 5v down to 3.3v. The capacitors are added to help smooth the power line. And of all times my Fluke is down, so this is on the sidelines right now. In the mean time, I am using the USB-Serial converter for my power supply. It provides an nice, steady 3.3v.

Here is the final product. The ESP comes up and I can connect to it via the web, but the sensor is not providing data. I have check my connections and voltages and the are working, but now it is time to dive deeper into hardware troubleshooting when it is all soldered together.

Well, after a pat on my back when it all powered up and the blue light started to blink, my smile quickly left. I launched the browser and went to the IP address and got nothing from the sensor. I know that it worked on the breadboard, what it up here? It was too late, time to head to slumber and figure it out tomorrow. A second look the next day and it popped out at me pretty quick. I soldered the signal wire at the wrong end of the resistor. Instead of pulling a little power from the Vcc line, it was getting flooded. 

Once I made the change, things are up and going. In the mail today, the charger/battery boards showed up. The last thing is to solder it up and connect the battery. I will be leaving in indoors for a couple of days while I work on a case for it for outside. I am not yet lucky enough for a 3D printer, but plenty creative with what I have buried away.

I also got some feedback on my power supply. There seems to be an issue with one of the caps I am using. Tonight I will replace it and see if that fixes it. I will be sure and update this and let you know.

I2C and the ISP-01

And on an ending note (???) one of my next remote sensors will include an I2C sensor, the BME280. It adds the feature of barometric pressure as well as the temperature and humidity. It is pretty straight forward. I have used it on the Arduino Uno. It was figuring out how to implement I2C on the ESP-01 that had me scratching my head for a spell.

Then I stumbled upon the magic pins web site. This is a great site on using the available pins on the ESP-01. With some creativity there is quite a bit one can pull out of the small module.

My current attempt at getting this to work is using the TX and RX pins for the I2C. I have it drawn up and ready to try. I will be back with more when I have it working.