Setup a headless Raspberry Pi Zero with Wifi from Windows- Raspbian Stretch

The Raspberry Pi Zero has an unusually sized HDMI port which means it can be hard to hook up to a monitor. If you’re just using it for the terminal you don’t need to see the output anyway. Here’s how to set it up with SSH and Wifi so you’ll just need a power cable to get started.

Download the latest Raspbian Stretch image. Don’t use the noobs installer.

Raspbian

Follow their installation guide to get it onto the SD card. You’ll need to flash the image to the card with Etcher or a similar tool to make sure everything has the correct permissions and boots properly.

https://etcher.io/

Etcher automatically ejects the disk once flashing is completed so remove it from your computer and reinsert it. You’ll probably see a message about needing to format the drive before you can use it. Be sure not to format the drive or you will have to start over.

Open a text editor like Notepad++ and create a file on the drive called “ssh”. The tricky part here is that it need to have no extension. In Windows this is kind of frowned upon but to get it to happen chose save as > change the file type to “all files (*.*)” and then save it as “ssh” with the quotation marks. The quotation marks will be stripped away and no extension will be added. This file can be blank.

Create one more file and save it as “wpa_supplicant.conf” also to the root of the drive so it’s one of the first files that you see. This file needs your wireless network information and be sure it’s correct or you’ll spend a while troubleshooting.

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
network={
    ssid="YOUR_SSID"
    psk="YOUR_WIFI_PASSWORD"
    key_mgmt=WPA-PSK
}

Then eject the drive and put it into your Raspberry Pi. You can power it up but I would recommend pulling up your router admin page now before you do. This should make it easier to spot the new IP address which you’ll need to connect to the Raspberry Pi. By default, it’s called “raspberrypi” on the network but it’s not as reliable in my experience as the IP address.

Default user and password pi and raspberry

Once you have that you’re ready to SSH into the machine with your preferred SSH program. Personally, I use Bitvise SSH which has tons of functionality but still is the easiest to configure correctly. Here’s the website. The download link is “Bitvise SSH Client installer “

How to Install Backend Theme on Odoo 11 Community

Download the theme from the theme store

https://www.odoo.com/apps/themes/11.0/backend_theme_v11/

This will contain 2 files which you need to add into your addon directory. If you installed with Bitnami then it’s in

/apps/odoo/data/addons

You need to copy the 2 files into that directory. The configuration file by default does not include this directly so you need to add it.

/apps/odoo/conf/odoo-server.conf

The first line should say “addons_path.” At the end of that line add a comma (,) and then the full path to your addon directory.

addons_path = /home/ubuntu/odoo-11.0.20171118-2/apps/odoo/lib/odoo-11.0.post20171118-py3.6.egg/odoo/addons, /home/ubuntu/odoo-11.0.20171118-2/apps/odoo/data/addons/

In Odoo go to the settings page and look for “Activate the developer mode” and click that

Then go to “Browse Apps” and remove the “Apps” from the search bar and search for theme. You may need to click “Update Apps List” if it doesn’t show up automatically.

Error Installing Bitnami Package on AWS t2.Nano – Unable to create symbolic link

I was installing the Bitnami Odoo 11 module on my AWS t2.nano. It’s a fresh instance with a 1gb swap partition and 500mb of hardware RAM. This should be enough to run most if not all Bitnami packages. However when I was installing the package ontop of Bitnami LAMP I got error messages.

Unable to create symbolic link

TLDR: You probably need to restart the machine and install from the command line.

I tried a variety of things to resolve the error

confirm that you have enough memory

free

confirm that you have sufficient disk space

df

confirm that the user can create symbolic links in the location mentioned by bitnami

link -s bitnami_source bitnami_target

If you are able to do all these things a simple restart fixed the problem for me. You can run the installed from the command line without giving resources to the GUI which also seems to help. I actually found it a little nicer than the GUI interface.

cd /user/home/directory_of_download
./bitnami-installer-packge.run --mode text

Odoo 10 Install a backend theme from git sources

Specifically, I wanted to install this responsive backend theme so I could get convenient access from my phone.

https://www.odoo.com/apps/themes/10.0/backend_theme_v10/

I found the sources on git : https://github.com/Openworx/backend_theme.git

use git clone to checkout the sources into your /opt/odoo10/custom/addons folder. All themes are addons so they go in this folder. Confirm that this custom folder is part of the addons path in the config file (/etc/odoo/odoo.conf for odoo 10)

cd /opt.odoo10/custom/addons/
git clone --depth 1 https://github.com/Openworx/backend_theme.git

the problem is that git clone doesn’t do the folder structure exactly as Odoo expects it so create a symlink to the proper directory.

ln -s /opt/odoo10/custom/addons/backend_theme/backend_theme_v10 /opt/odoo10/custom/addons/backend_theme_v10

enter developer mode in your Odoo10 interface which is located in Settings on the right-hand side under “share the love.” Click on “Browse Apps” which is automatically filtered to include only “apps” so clear that from the search area and search for the name of the theme you installed. In this example, it’s Material/United Backend Theme.

Click Install on the theme and you’re finished! Now you can use git to check for updates to the theme or have them automatically pulled down with a chron job. You’ll need to hit the upgrade button to apply any pulled updates.

Taulman BluPrint Filament – What’s it like to print with as a real user

Taulman BluPrint is a filament claiming to print strong parts that are very heat resistant.

High heat resistance means high print temperatures for most plastics so this prints at a minimum of 265ºC depending on which website you believe. Taulman’s website says 285C is the recommended Print temp.

They also claim that glass heated to 110C is the right print surface. I find it hard to believe that plain glass will hold onto any plastic so my first attempt was using Wolfbyte for Nylon. The filament was printing well at 265-280ºC but after a few layers (10) promptly removed itself from the print bed and tried to cause a big mess. I was there to cancel before any real harm was done.

Next I’m testing glass with hair spray. Heated to 110ºC and with a fresh generous application of hairspray. It’s held strong much farther along than the Wolfbyte which makes me think it may not be a nylon based material. Perhaps it’s a PC derivative which generally prints at much higher temperatures.

After 1 hr 45min the corners of the 4×4 rectangle are showing noticeable curling. A 3 pass brim was added for the first layer but has pulled up from the bed. The front of the printer is not enclosed for this test and only the front 2 corners are peeling.

The print finished and didn’t completely detach from the build plate after 3hr 41min build time. Although it was close to detaching. Final weight is 3.8 ounces or 108 grams.

2nd part test print adjusted the bed temp to 120ºC. 4×4 square is not extruded as high and should have less issues with warping. Increased the brim to 5 passes roughly 3.5mm. I also closed the front of the printer

The part appeared to be well attached to the print bed for the entire print. Minimal signs or warping on the corners. By the time I checked the printed the build plate had cooled and the part completely released from the glass with hairspray.

Setup Relay Control on a new Raspberry Pi 3 B for OctoPi

Predefined relay numbering
Relay # – GPIO / wPi # – Function – BCM
1 – 21 – Printer Power – 5
2 – 22 – General Lights – 6
3 – 26 – External Fans – 12
4 – 23 –  – 13
5 – 27 –  – 16
6 – 24 –  – 19
7 – 28 –  – 20
8 – 29 –  – 21

Login to Raspberry Pi

sudo su root
cd /usr/local/bin
touch printer_on.sh
touch printer_off.sh
touch lights_on.sh
touch lights_off.sh
touch fans_on.sh
touch fans_off.sh
sudo chmod a+rx *.sh

This creates 6 files and sets them to executable.

The following blocks of code go write into these newly created files.

printf '#!/bin/bash\ngpio mode 21 out\ngpio write 21 0' >> printer_on.sh
printf '#!/bin/bash\ngpio mode 21 out\ngpio write 21 1' >> printer_off.sh
printf '#!/bin/bash\ngpio mode 22 out\ngpio write 22 0' >> lights_on.sh
printf '#!/bin/bash\ngpio mode 22 out\ngpio write 22 1' >> lights_off.sh
printf '#!/bin/bash\ngpio mode 26 out\ngpio write 26 0' >> fans_on.sh
printf '#!/bin/bash\ngpio mode 26 out\ngpio write 26 1' >> fans_off.sh

edit octoPi Config to add some system actions

nano /home/pi/.octoprint/config.yaml
 - action: printer_on
 command: printer_on.sh
 name: Printer On
 - action: printer_off
 command: printer_off.sh
 confirm: Are you sure you want to turn off the printer?
 name: Printer Off
 - action: lights_on
 command: lights_on.sh
 name: Lights On
 - action: lights_off
 command: lights_off.sh
 name: Lights Off
 - action: fans_on
 command: fans_on.sh
 name: Fans On
 - action: fans_off
 command: fans_off.sh
 name: Fans Off
events:
 enabled: true
 subscriptions:
 - command: printer_on.sh
 event: Startup
 type: system
 - command: printer_off.sh
 event: PrintDone
 type: system

Reboot the octoPi server to get all the changes into the system.

If your camera isn’t working correctly open /boot/octopi.txt and adjust the camera_usb_options

for me these are the correct settings camera_usb_options=”-y -r 640×480 -f 15″
more info and settings here https://github.com/foosel/OctoPrint/wiki/Webcams-known-to-work

 

How to Setup Motion (WebCam Streaming) on the Raspberry Pi 3 Model B

it’s always good to start with :

sudo apt-get update
sudo apt-get upgrade

This just makes sure the system is up to date. Then you need to install the actual motion software

sudo apt-get install motion

then I had to change the permissions of a few files so that the pi user could read and write to them. I had seen that motion was going to create a new user for itself but as of today it’s running as the default user. I didn’t go out of my way to change that behavior since it appears to be the default now on a clean install.

sudo chown root:pi /etc/motion/motion.conf
sudo chown root:pi /var/lib/motion
sudo chown root:pi /tmp/motion.log
sudo chmod 774 /etc/motion/motion.conf
sudo chmod 774 /var/lib/motion
sudo chmod 774 /tmp/motion.log

if you’re having trouble try manually starting motion with

sudo motion

This will let you see the output from the startup and check to make sure video is coming through on port 8081. Also take a close look at the motion.conf file. It’s got tons of explanations of the options and everyone’s setup will be a little different.

Once I changed all the permissions and testes just reboot the Pi to get the daemon up and running. It should start automatically from now on which makes it robust to power outages and disruptions.

Side note: My web cam is 1080 but the processor in the pi couldn’t really support more than 640 x 480 streaming resolution. Good luck!

How to Migrate DNS Servers from Old Hosting

When migrating servers it’s best to leave a few months overlap on your old hosting contract. It’s a pain to pay double for a while but it’s critical to preventing downtime.

The first thing to do is get all your files moved over to the new server and test to make sure everything is working the same. Once you are satisfied that your new server is operating properly you can do a “full test run” with the DNS server configurations.

On your old hosting remove the DNS A Records for your old hosting server. It will typically be in there by default. Add a new custom DNS A record pointing to your new server.

This effectively redirects all traffic from your old hosting to the copy on the new hosting. Sometimes it takes as much as 48 hours for these changes to go into effect but in my experience, 15 minutes is more reasonable. Now all the traffic is headed to your new server and since you tested ahead of time (right??) everything is working as it should be.

Now you can migrate your domain names over to the new hosting provider without fear of 48 hours of downtime when your site and apps will be unreachable.

Windows 10 Tips – Get the Most out of your free upgrade

Many people wont remember and maybe never knew about the Aero features in Windows 7. They didn’t add much functionality but they were essentially the beginning of the redesign we saw in Win 8 and has reached a polished state in Win 10.

You probably know of Alt+Tab as a shortcut to switch between active programs. This still works great in Windows 10. The new addition which adds a lot of value is Windows Key + Tab. This shortcut pulls up a new screen highlighting open windows on the screen they are active. If you’re using multiple monitors this could be a life saver! Use your monitors to organize your windows even when switching between tasks. See a Screen Shot Below!

WinTab ScreenShot

Screen shot of the windows view with the new desktop feature

Force your computer to upgrade to Windows 10

It’s actually very trivial for a user to get the Windows 10 update without having to wait for their reservation from microsoft.

To do so simply navigate to this page and follow the prompts.

http://www.microsoft.com/en-us/software-download/windows10

Most Likely you will want to Download the 64 Bit Version. Once you have done so it will as you to select the correct Windows Option. Be sure to do this CORRECTLY. You can only update to the same version as you currently have. If you have Windows 8 Home then you need to stick with Home. Windows 8 Pro can upgrade to Pro. There are also options for  Windows N or KN. If you’re in the US these wont apply to you. They are special versions of Windows because various countries have forced Microsoft to remove features from Windows. Just get the normal Windows 8 Pro or Home and you’re off!