17 December, 2017

Basic Electronics Refresher

The other day, I signed up with Tinkercad. The site offers some neat tutorials. So far there are two main categories. The first category is 3D Design. Which offers a set of lessons for using their CAD program. The other category is Circuits. In this category, they offer a series which covers the basics of using their tool and building circuits. Their system is based on a simulator in which you build and test a circuit.

I was able to work through the first four lessons (Start Simulating, Editing Components, Wiring Components, and Adding Components) very quickly. It was a nice set of lessons that refreshed some old knowledge that I have not used in awhile.

I then moved to the next set of lessons (Introducing the Breadboard, Ohm's Law, and Series and Parallel Circuits) which are on Circuit Design. It was nice to get a small refresher on Ohm's Law. I enjoyed messing around with the Multimeter Component. I encountered a few places in the lessons where the text did not line up with what was happing on screen. The instructions about how to duplicate a component were wrong.

In digging up some more information about Tinkercad Circuits, there was Electronics Lab. Electronics Lab as moved to being part of Tinkercad Circuits. The blog post about the move can be found here. As far as I can tell Electronics Lab also used the name Autodesk Circuits. On YouTube, the Autodesk 123D channel has the playlist Autodesk Circuits.

08 December, 2017

Starting to close down the Year

YearCompass is a booklet that you print yourself. This booklet is a neat way of closing down a year and get a good start on planning the next year. I came across this booklet just after 2017 started. It took me about two hours to work through the booklet. I felt that it was time well spent. I discovered that 2016 had a lot of highlights that I had forgotten about. The booklet also helped me to put together a plan for 2017. I wish that I have taken the time to revisit the booklet at least once a quarter.

 I am really looking forward to spending the time to working filling out the booklet for 2017/2018. I will be adding reviewing the booklet monthly to my 2018 plan.




22 July, 2017

Resources for OpenSCAD

Recently, I came across the software OpenSCAD. It is a CAD program aimed at programmers. The software runs on Windows, Mac, and Linux/Unix.

In OpenSCAD, you use a functional programming language to define the model. The functional language can be created in any number of text editors or IDEs then rendered. This allows me to use my favorite editor and to store the files in a source control.

Resources for Leaning about OpenSCAD.

After spending a few hours reading, watching YouTube, and playing around, I have come to like OpenSCAD. It is rather straight-forward way to create a 3D model for printing. I really like being able to create complex objects by combining simple objects together. 

01 February, 2017

Keeping Raspbian Current

The other day, I decided to update Raspbian OS on my Raspberry Pi. The process was rather straightforward. After logging into the Raspberry Pi using ssh.

I updated the system's package list using the command:
sudo apt-get update  

To upgrade the installed packages without updating dependencies, I used the command:
sudo apt-get upgrade  

Alternatively, I could have used the following to upgrade the installed packages and change dependencies.
sudo apt-get dist-upgrade  

Upgrade is used to install the newest version of all packages currently installed. Dist-upgrade performs the same functionality as upgrade does plus it changes dependencies.

It is worthwhile to cleanup the local repository. There are few commands to help with this.

sudo apt-get clean  
Clean clears out the local repository.

sudo apt-get autoclean  
Autoclean removes package files that can no longer be downloaded

sudo apt-get autoremove  
Autoremove cleans out dependencies that are not longer needed.

Recently, I got into chaining commands together. I started doing so that I would not have to keep track of which command I had already run and which command needs to be run.
To upgrade the installed packages and change dependencies, I used the command:
sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get clean

19 January, 2017

Updating Node on my Linux box

Recently, I read that Node 7 has been released. I am thinking that it is time to update my Linux box to the newer version.

There are multiple ways to update a Linux box.

One way is to use the package manager that shipped with Ubuntu. This method is good for a system that doesn't already have node installed and for a person who wants to spend minimal effort on keeping Node up to date.

The command to install Node 6 would be
 curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -  
 sudo apt-get install -y nodejs  

The command for Node 7 would be
 curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -  
 sudo apt-get install -y nodejs  

If Node is already installed then the latest release can be installed with
 sudo n latest  

The stable version can be installed with
 sudo n stable  

I am going to give nvm a try for installing the latest version of Node.

I will start by installing nvm with the command
 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash  

Then use the following command find the latest version of Node
 nvm ls-remote  

Once I determined which version I wanted to install, I ran the command
 nvm install v7.4.0  





16 January, 2017

Setting up OctoPrint

I am setting up OctoPrint to give me more flexibility in monitoring and to free up a computer from being connected to the 3D Printer.

High Level Steps

  1. Get the OctoPi image
  2. Burn the image to an SD card. I am using Linux (Ubuntu) to burn the image.
  3. Configure the Raspberry Pi
  4. Test
  5. Move the equipment to the same location as the printer.


Detailed Steps

  1. Download the latest version of OctoPi
  2. Plug in your favorite Memory Card Reader
  3. Plug in your SD Card into the Memory Card Reader
  4. Open the Disks app
  5. Find your SD Card. The device is '/dev/sdd1' on my machine. Save the device info for a later step.
  6. In a terminal issue the following command: sudo dd if={location of image} od={destination} bs=4M
  7. I entered: sudo dd if=~/Downloads/2016-03-18-octopi-jessie-lite-0.13.0.img of=/dev/sdd bs=4M  
    • Warnings and notes about dd command
      • You need to run the command as superuser or use sudo
      • The dd command does not display any feedback while it is running. You need to wait for the command prompt to return
      • If the write fails try using 1M for the bs parameter.
      • The uppercase M in the bs parameter is important.
  8. Eject the SD card
  9. Put the SD Card into the Raspberry Pi.
  10. Plug in the Network Cable
  11. Apply power
  12. Wait for the Raspberry Pi to boot.
  13. In the terminal ssh to the Pi using the command:  ssh pi@octopi.local
  14. You will be prompted that the authenticity of the host can't be established and will need to accept the fingerprint. The default user for OctoPrint is 'pi' and the default password is 'raspberry'.
  15. Change the password of the pi to something that is secure and you can remember. Changing the password is done using the command:  passwd  
  16. Configure the Raspberry PI by issuing the command:  sudo raspi-config
  17. You will want to expand the filesystem, exit and reboot the Raspberry Pi.
  18. Once the Pi has finished rebooting, you can use the URL http://octopi.local. This may take a minute or two for page to display.
  19. You will be prompted to enter user name and password.
  20. Once the site appears, log in with the user name and password from the previous step.
  21. If prompted to update OctoPrint, perform the update. This will take a few minutes. When the update is complete you will be asked to reload the user interface. The update and reload took about 10 minutes for me.
  22. You will be prompted to set up a slicing profile. If you are already a Cura user you can import the profile. I updated my current Cura profile.
You should now have a basic setup for OctoPrint.

Plug your 3D Printer's USB cable into the printer and the Raspberry Pi then test if you can connect. In my case, I couldn't connect using 'Auto' for the Serial Port and Buadrate. I was able to connect once I manually set the values.

Testing that the Web Cam works by going to Settings -> Webcam & Timelapse. I clicked the test button, a dialog box pops up. I don't see the stream. To fix the issue, I used ssh to connect to the Pi, issued 'sudo nano /boot/octopi.txt', changed the camera usb options line to read 'camera_usb_options="-r VGA", saved the file, and rebooted the Pi.

Update 25 March 2017

I got some hardware to add to my OctoPi build out. The first item is 2.8 TFT with Touchscreen from adafruit. I followed the instructions for the Easy Install.

Note: in the scripts folder on the Raspberry Pi that is script named 'enable-adafruit-pitft' that did not work for me. It appears that script tries to install older libraries for the display.

It took some work to get OctoPiPanel running. My first attempt was to use the script included with OctoPi. This did not work for me. I was getting an error about pygame not being installed. What did work was using the instructions from the OctoPiPanel github page.

The second piece of hardware is a Raspberry Pi Camera Module Board. To get the module to work, I modified the file '/boot/octopi.txt', I just removed the # from the line camera_raspi_options="-fps 10"
.









Challenging myself to learn something new

I have recently set a big challenge for myself. I want to know about Machine Learning . To add to the challenge, I am trying out usin...