Thursday, July 20, 2017

Free ebook: Raspberry Pi cookbook for Python Programmers

Over 400 pages of recipes to get the most out of your Raspberry Pi using Python

Stuffed with more than 50 hands-on recipes, this FREE eBook shows you how to get the most out of your Raspberry Pi. Discover what the Raspberry Pi has to offer using detailed Python code examples that you can adapt and extend.

  • Create 3D worlds by using the Raspberry Pi's powerful GPU
  • Discover how to create your own electronic circuits to interact with the Raspberry Pi
  • Use the Raspberry Pi Camera to create animations and timelapses
  • Design and build your own Raspberry Pi controlled robots
  • Take control of the real world and interface with physical hardware, combining hardware and software for your own needs

Download link: https://www.packtpub.com/packt/free-ebook/python-raspberry-pi-cookbook/


Tuesday, June 13, 2017

Download your FREE copy of 'Raspberry Pi Media Center', by Packtpub

Turn your Raspberry Pi into a full-blown media center using Raspbmc! This guide has all the plain language instructions you need to control your TV with a smartphone and create your own media library; no special skills required. Take the time to download this 100 page guide for free and discover something new to turn your Pi into over a weekend!

~ Download your free eBook right here


Monday, June 12, 2017

What’s New in Google’s IoT Platform/Android Things? at Google I/O '17

What’s New in Google’s IoT Platform? Ubiquitous Computing at Google (Google I/O '17)
Google has a wide range of platforms and tools to support the Internet of Things and to bring about the vision of ubiquitous computing so users can interact with services wherever and whenever it makes sense for them. Come to this talk to learn about all of these initiatives at Google, including the Google Assistant, Android Things, Google Cloud, Android TV, Android Wear, and Android Auto. Learn more about how they all fit together as part of an ecosystem, which one is most appropriate for different types of developers and applications, and which talks you should be attending at Google I/O.

Developing for Android Things Using Android Studio (Google I/O '17)
Using Android Studio to develop apps for embedded devices is one of the strengths of the Android Things platform. In this session, demonstrate how easy it is to use Android Studio to quickly get started developing a new IoT project. You will learn how to build an app that interacts with low-level peripherals, deploy it to a developer board, and use the debugger to trace hardware-related issues.

Bringing Device Production to Everyone With Android Things (Google I/O '17)
Android Things is focused on enabling anyone to build professional, mass-market products on a trusted platform. In this session, you will learn about the steps and tools needed to go from your developer kit prototype to fabricating custom boards for your own product. Explore the costs and timelines involved in producing your designs in small and large quantities, and compare the benefits of working with vendors versus managing the process in-house.

From Prototype to Production Devices with Android Things (Google I/O '17)
Android Things is focused on enabling anyone to build professional, mass-market products on a trusted platform. In this session, you will learn about the steps and tools needed to go from your developer kit prototype to fabricating custom boards for your own product. We will explore the costs and timelines involved in producing your designs in small and large quantities, and compare the benefits of working with vendors versus managing the process in-house.

Thursday, June 8, 2017

Mount Raspberry Pi Camera Module to telescope (with sample video of the Moon)

This video show how to connect Raspberry Pi NoIR Camera Module V2 to telescope, with sample video of the Moon at the end of the video.


Parts:
- Raspberry Pi Camera Module (NoIR V2 shown in the video), with original lens removed.
Caution, removing the lens will void your warranty of the camera module.

- CCTV M12 (or S-mount) housing.
Plastic type, have to cut a little bit as shown:


Normally, the center-to-center distance of the mounting holes is 20mm or 22mm, it cannot be installed on Raspberry Pi Camera Module directly. I mount it with one screw on one hole, and fix it with cable tie on the another hole.

- M12 adapter for telescope.
May be it's the most difficult find parts. It have to mach with your telescope.

- Telescope
It's a 10+ years old small telescope (Bosma D = 90mm / f = 1200mm f/13.3)










Related:
Saturn@Raspberry Pi NoIR Camera V2/Nikkor AF 300mm f4
The Moon and Saturn@RPi NoIR Camera V2/Nikkor AF 300mm f4 - 2017-06-08


Wednesday, June 7, 2017

The Moon and Saturn@RPi NoIR Camera V2/Nikkor AF 300mm f4 - 2017-06-08

Videos of The Moon and Saturn, by Raspberry Pi NoIR Camera V2 with Nikkor AF 300mm f4, at 2017-06-08.




For the setup, refer to the post "Saturn@Raspberry Pi NoIR Camera V2/Nikkor AF 300mm f4".

reminder:
Saturn is approaching opposite the Sun, at 15 Jun 2017.

This optimal positioning occurs when Saturn is almost directly opposite the Sun in the sky. Since the Sun reaches its greatest distance below the horizon at midnight, the point opposite to it is highest in the sky at the same time.

At around the same time that Saturn passes opposition, it also makes its closest approach to the Earth – termed its perigee – making it appear at its brightest and largest.

in-the-sky.org - Saturn at opposition


Related:
Mount Raspberry Pi Camera Module to telescope (with sample video of the Moon)

Tuesday, June 6, 2017

Beginning Artificial Intelligence with the Raspberry Pi

Beginning Artificial Intelligence with the Raspberry Pi

Gain a gentle introduction to the world of Artificial Intelligence (AI) using the Raspberry Pi as the computing platform. Most of the major AI topics will be explored, including expert systems, machine learning both shallow and deep, fuzzy logic control, and more!

AI in action will be demonstrated using the Python language on the Raspberry Pi.  The Prolog language will also be introduced and used to demonstrate fundamental AI concepts.  In addition, the Wolfram language will be used as part of the deep machine learning demonstrations.

A series of projects will walk you through how to implement AI concepts with the Raspberry Pi. Minimal expense is needed for the projects as only a few sensors and actuators will be required. Beginners and hobbyists can jump right in to creating AI projects with the Raspberry PI using this book.

What You'll Learn
  • What AI is and―as importantly―what it is not
  • Inference and expert systems
  • Machine learning both shallow and deep
  • Fuzzy logic and how to apply to an actual control system
  • When AI might be appropriate to include in a system
  • Constraints and limitations of the Raspberry Pi AI implementation
Who This Book Is For
Hobbyists, makers, engineers involved in designing autonomous systems and wanting to gain an education in fundamental AI concepts, and non-technical readers who want to understand what AI is and how it might affect their lives.


Saturday, June 3, 2017

Python to get ssid and IP address

Python example to get the ssid of connected network, and my IP address. Work on both Python 2 and 3.

pyWireless.py
import os

#'\' is used to splite pythone line
ipaddress = os.popen("ifconfig wlan0 \
                     | grep 'inet addr' \
                     | awk -F: '{print $2}' \
                     | awk '{print $1}'").read()
ssid = os.popen("iwconfig wlan0 \
                | grep 'ESSID' \
                | awk '{print $4}' \
                | awk -F\\\" '{print $2}'").read()

print("ssid: " + ssid)
print("ipaddress: " + ipaddress)



remark:
The ssid should have no space, otherwise the parts after space will be missed.

Tested on Raspberry Pi 2 with WiFi dongle.

Monday, May 29, 2017

Python to control RGB LED, with tkinter colorchooser/tkColorChooser

Python example to output PWM on GPIO of Raspberry Pi to control RGB LED, with tkinter GUI. Tkinter colorchooser/tkColorChooser is used to select color. Tested on Raspberry Pi 2 running Raspbian Jessie with PIXEL rel. 2017-04-10, work on both Python 2 and 3.


pyGuiPwm.py
#for Python 2
#from Tkinter import *   #for Python 2
#from tkColorChooser import askcolor

#for Python 3
from tkinter import *
from tkinter.colorchooser import *

import platform
import RPi.GPIO as GPIO

r = 0;
g = 0;
b = 0;

def on_closing():
    print("Clean up")
    pwmledR.stop()
    pwmledG.stop()
    pwmledB.stop()
    GPIO.cleanup()
    print("bye")
    master.destroy()

def getColor():
    global r, g, b
    color = askcolor(color=(r, g, b)) 
    print(color)
    rgb = color[0]
    colorVal = color[1]
    if rgb != None:
        r = rgb[0]
        g = rgb[1]
        b = rgb[2]
        print("set RGB LED")
        rVal = r/255.0
        gVal = g/255.0
        bVal = b/255.0
        print((7, gVal, bVal))
        pwmValue.set(colorVal)
        pwmledR.ChangeDutyCycle(rVal)
        pwmledG.ChangeDutyCycle(gVal)
        pwmledB.ChangeDutyCycle(bVal)

#mode = GPIO.BCM
#ledR = 16
#ledG = 20
#ledB = 21

mode = GPIO.BOARD
ledR = 36
ledG = 38
ledB = 40

print("Raspberry Pi board revision: "
      + str(GPIO.RPI_INFO['P1_REVISION']))
print("Machine: "
      + platform.machine())
print("Processor: "
      + platform.processor())
print("System: "
      + platform.system())
print("Version: "
      + platform.version())
print("Uname: "
      + str(platform.uname()))
print("Python version: "
      + platform.python_version())
print("RPi.GPIO version: "
      + str(GPIO.VERSION))

GPIO.setmode(mode)
GPIO.setup(ledR, GPIO.OUT)
GPIO.setup(ledG, GPIO.OUT)
GPIO.setup(ledB, GPIO.OUT)
pwmledR = GPIO.PWM(ledR, 50)
pwmledG = GPIO.PWM(ledG, 50)
pwmledB = GPIO.PWM(ledB, 50)
pwmledR.start(0)
pwmledG.start(0)
pwmledB.start(0)

master = Tk()

pwmValue = StringVar()
label = Label(master, textvariable=pwmValue, relief=RAISED )
label.pack()

Button(text='Select Color', command=getColor).pack()

master.protocol("WM_DELETE_WINDOW", on_closing)
mainloop()



Connection:

Python to output PWM to control LED brightness, with tkinter GUI

Python to generate PWM on GPIO of Raspberry Pi to control brightness of a LED, with tkinter GUI. Tested on Raspberry Pi 2 running Raspbian Jessie with PIXEL rel. 2017-04-10, work on both Python 2 (from Tkinter import *) and 3 (from Tkinter import * ).


pyGuiPwm.py
from Tkinter import *   #for Python 2
#from tkinter import *   #for Python 3

import platform
import RPi.GPIO as GPIO

def setPwm(newvalue):
    pwmValue.set(newvalue)
    pwmled.ChangeDutyCycle(float(newvalue))

def on_closing():
    print("Clean up")
    pwmled.stop()
    GPIO.cleanup()
    print("bye")
    master.destroy()

#mode = GPIO.BCM
#led = 21
mode = GPIO.BOARD
led = 40

print("Raspberry Pi board revision: "
      + str(GPIO.RPI_INFO['P1_REVISION']))
print("Machine: "
      + platform.machine())
print("Processor: "
      + platform.processor())
print("System: "
      + platform.system())
print("Version: "
      + platform.version())
print("Uname: "
      + str(platform.uname()))
print("Python version: "
      + platform.python_version())
print("RPi.GPIO version: "
      + str(GPIO.VERSION))

GPIO.setmode(mode)
GPIO.setup(led, GPIO.OUT)
pwmled = GPIO.PWM(led, 50)
pwmled.start(0)

master = Tk()

pwmValue = StringVar()
label = Label(master, textvariable=pwmValue, relief=RAISED )
label.pack()

slider = Scale(master, from_=0, to=100, orient=HORIZONTAL, command=setPwm)
slider.pack()

master.protocol("WM_DELETE_WINDOW", on_closing)
mainloop()



Next:
Python to control RGB LED, with tkinter colorchooser/tkColorChooser

Python to generate PWM on GPIO of Raspberry Pi


Python to generate PWM on GPIO of Raspberry Pi to control brightness of a LED. Tested on Raspberry Pi 2 running Raspbian Jessie with PIXEL rel. 2017-04-10, work on both Python 2 and 3.


pyGPIO.py
import RPi.GPIO as GPIO
import time
import platform

print("Raspberry Pi board revision: "
      + str(GPIO.RPI_INFO['P1_REVISION']))
print("Machine: "
      + platform.machine())
print("Processor: "
      + platform.processor())
print("System: "
      + platform.system())
print("Version: "
      + platform.version())
print("Uname: "
      + str(platform.uname()))
print("Python version: "
      + platform.python_version())
print("RPi.GPIO version: "
      + str(GPIO.VERSION))
print("Ctrl-C to terminate and clean up GPIO")

#mode = GPIO.BCM
#led = 21
mode = GPIO.BOARD
led = 40

GPIO.setmode(mode)
GPIO.setup(led, GPIO.OUT)
pwmled = GPIO.PWM(led, 50)
pwmled.start(0)

try:
    while True:
        for dc in range(0, 101, 5):
            pwmled.ChangeDutyCycle(dc)
            time.sleep(0.1)
        for dc in range(100, -1, -5):
            pwmled.ChangeDutyCycle(dc)
            time.sleep(0.1)
finally:
    print("Clean up")
    pwmled.stop()
    GPIO.cleanup()


Reference:
raspberry-gpio-python - Using PWM in RPi.GPIO

Connection (same as in the post "Python to control GPIO of Raspberry Pi"):


Next:
Python to output PWM to control LED brightness, with tkinter GUI

Python to get sys info on Raspberry Pi, using platform library

Python code to get system info using platform library. Work on both Python 2 and 3. Tested on Raspberry Pi 2 running Raspbian Jessie with PIXEL rel. 2017-04-10.



pySysInfo.py
import platform

print("architecture: \t\t\t"
      + str(platform.architecture()))
print("machine: \t\t\t"
      + platform.machine())
print("node: \t\t\t\t"
      + platform.node())
print("platform: \t\t\t"
      + platform.platform())
print("processor: \t\t\t"
      + platform.processor())
print("python_build: \t\t\t"
      + str(platform.python_build()))
print("python_compiler: \t\t"
      + platform.python_compiler())
print("python_branch: \t\t\t"
      + platform.python_branch())
print("python_implementation(): \t"
      + platform.python_implementation())
print("python_revision: \t\t"
      + platform.python_revision())
print("python_version: \t\t"
      + platform.python_version())
print("python_version_tuple: \t\t"
      + str(platform.python_version_tuple()))
print("release: \t\t\t"
      + platform.release())
print("system: \t\t\t"
      + platform.system())
print("version: \t\t\t"
      + platform.version())

print("Uname: \n"
      + str(platform.uname()))



Reference:
https://docs.python.org/2/library/platform.html
https://docs.python.org/3/library/platform.html


Sunday, May 28, 2017

Python to control GPIO of Raspberry Pi


It's Python example to control GPIO of Raspberry Pi, tested on Raspberry Pi 2 running Raspbian Jessie with PIXEL rel. 2017-04-10, work on both Python 2 and 3.

pyGPIO.py
import RPi.GPIO as GPIO
import time
import platform

print("Raspberry Pi board revision: "
      + str(GPIO.RPI_INFO['P1_REVISION']))
print("Python version: "
      + platform.python_version())
print("RPi.GPIO version: "
      + str(GPIO.VERSION))
print("Ctrl-C to terminate and clean up GPIO")

#mode = GPIO.BCM
#led = 21
mode = GPIO.BOARD
led = 40

GPIO.setmode(mode)
GPIO.setup(led, GPIO.OUT)

try:
    while True:
        GPIO.output(led, True)
        time.sleep(0.5)
        GPIO.output(led, False)
        time.sleep(0.5)
        GPIO.output(led, True)
        time.sleep(0.5)
        GPIO.output(led, False)
        time.sleep(2)
finally:
    print("Clean up")
    GPIO.cleanup()


Connection:


reference:
raspberry-gpio-python - RPi.GPIO module basics

Next:
Python to generate PWM on GPIO of Raspberry Pi

Wednesday, May 17, 2017

Scan Raspberry Pi IP address from network neighbor computer, by MAC

Raspberry Pi Foundation has their own range of MAC addresses B8-27-EB-00-00-00 to B8-27-EB-FF-FF-FF. You can check it at http://hwaddress.com/company/raspberry-pi-foundation



Such that we can scan neighbor with MAC address start with B8-27-EB, using arp command.

arp (stands for Address Resolution Protocol) is used to find the address of a network neighbor for a given IPv4 address.

From Linux Terminal:
$ arp -a | grep b8:27:eb

or from Windows DOS prompt (Now you can run most Linux command on Bash on Windows directly)
> arp -a | grep b8-27-eb

In the result, 192.168.1.9 is the IP address of my Raspberry Pi.




Monday, May 15, 2017

Install virtual keyboard on Raspberry Pi/Raspbian Jessie with PIXEL


To install virtual keyboard, matchbox-keyboard, on Raspberry Pi/Raspbian Jessie with PIXEL:

Always update apt-get:
$ sudo apt-get update

Install matchbox-keyboard:
$ sudo apt-get install matchbox-keyboard

Then, you can open the matchbox-keyboard by enter:
$ matchbox-keyboard

This video show how to install matchbox-keyboard on Raspberry Pi 3/Raspbian Jessie with PIXEL (2017-04-10).

Raspberry Pi GPS using Python 2.7 or 3.4: For Raspbian Jessie Linux using GPSD gps3

Raspberry Pi GPS using Python 2.7 or 3.4: For Raspbian Jessie Linux using GPSD gps3

Congratulations on selecting the Raspberry Pi! These programs have been developed on the Raspberry Pi 3. They have been tested on the Raspberry Pi Zero W. You are going to have a lot of fun developing programs and inventing new uses. This book will give you the tools to get your PI's GPS up and running. The compete printed Python source code is included. The electronic or digitized code is available for an additional fee and for a limited time. The book takes you in steps through the connection process to the completion of your program. Included are the steps to operate your Pi remotely, or from a hard wire ether-net connection (direct connection) to your Laptop. The process for computing distance using the Haversine Formula is included along with simple examples to provide an understanding of the concept. When you have finished this project I believe you will have greatly increased your knowledge of the Global Positioning System, computer interconnections, and Python. The programs use Python standard modules that are available without cost. Where modules or programs need to be installed information is provided to assist you. The book provides good information and options for your choices on running the programs. For example you can choose to run from a Windows PC or a Ubuntu-Linux PC or from the Pi's console. Also you can run the programs from a wireless remote connection or through a router or over a direct ether-net connection. This book is an updated version of “Raspberry Pi GPS using Python For Windows and Debian-Linux”. There have been numerous changes since the original book was published. Python3 is now supported for the Python module gps3. The inclusion of VNC with the Raspbian OS greatly simplifies remote viewing (running headless). For those of you into Geocaching you will be able to load your desired locations prior to your search. While traveling to them you can easily compute the distance remaining.

Thursday, May 11, 2017

Waveshare 4" 800x480 HDMI IPS Resistive Touch Screen, for Raspberry Pi

It's a 4" 800x480 HDMI IPS display with resistive touch screen, support Raspberry Pi. Product page in Chinese: http://www.waveshare.net/wiki/4inch_HDMI_LCD


It's the Open Box video, with first setup on Raspberry Pi 3/Raspbian Jessie with Pixel release 2017-04-10.



CAUTION: If you have problem on mis-touch detection when using on Raspberry Pi with new Raspbian Jessie after 2017-03-02, most probably you install the old driver come in the bundle CD-ROM. As show in the video below. You are suggested to download the update driver from the product page.


The touch calibration program, xinput_calibrator, can be download from the product page.
- Download Xinput-calibrator_0.7.5-1_armhf
- install:
$ sudo dpkg -i -B xinput-calibrator_0.7.5-1_armhf.deb


Sunday, May 7, 2017

Try RASPBIAN JESSIE WITH PIXEL on x86 PC using VirtualBox/Windows 10


This video show how to download RASPBIAN JESSIE WITH PIXEL for x86, and install on Windows 10 with Oracle VirtualBox.


pixel_x86 image iso can be download here:
http://downloads.raspberrypi.org/pixel_x86/images/

Saturday, May 6, 2017

Introducing AIY Projects: DIY AI for Makers (Voice Kit)

AIY Projects is bringing do-it-yourself artificial intelligence to the Maker community. Go behind the scenes with James, AIY Projects engineer, as he assembles the Voice Kit and uses it to control his own model train. We can’t wait to see the awesome and unexpected ways you will use voice in your own projects.

For more info on AIY Projects and the Voice Kit visit https://aiyprojects.withgoogle.com/.


Sunday, April 30, 2017

Android TV Nougat ROM for Raspberry Pi 3

The AOSP Android TV build can be used to turn Raspberry Pi 3 into a media center. The latest of those is the Nougat Android TV build by “tabp0le”.

This Android TV ROM is built from Android 7.1.2 Nougat AOSP (Android Open Source Project) and is most definitely stock Android in features. The design is compatible for the Raspberry Pi 3, and users can get almost the same feel as with the Nexus Player – the banner device for Android TV.

read more: https://androidcommunity.com/android-tv-nougat-rom-now-available-for-raspberry-pi-3-20170425/


Saturday, April 29, 2017

Introduction to the Google Assistant SDK

Bring voice control, natural language understanding, Google’s smarts, and more to your devices. A developer preview of the Google Assistant SDK is available for everyone interested in tinkering with platforms such as the Raspberry Pi 3. Later this year, commercial device makers will also be able to use the SDK across a wide range of hardware.

- Learn More


Saturday, April 22, 2017

Linux for Makers: Understanding the Operating System That Runs Raspberry Pi and Other Maker SBCs

Linux for Makers: Understanding the Operating System That Runs Raspberry Pi and Other Maker SBCs

Linux is a powerful open-source operating system that has been around for many years and is widely used for running servers and websites. But most students and Makers encounter it for the first time when they are working on projects with their Raspberry Pi or similar single-board computers (SBCs) such as BeagleBone Black or Intel Galileo. Linux for Makers is the first book that explains the Linux operating system specifically for Makers, as opposed to programmers and administrators. By gaining a deeper understanding of Linux, Makers can add another useful tool to their kit that will help them build their projects more easily.

Written with the Maker in mind, this book will focus mostly on Rasbian running on the Raspberry Pi as it is the most prolific in the ecosystem today. However most of the topics covered will apply broadly to other Linux distributions and will be called out when they may differ. Many times users cut and paste from a website tutorial into the Linux command line without understanding what they are actually doing only to be frustrated when they want to modify or tweak something to suit their needs. Also, many Makers shy away from using the Raspberry Pi or similar board because they feel Linux is too foreign and they think using a command line will be more difficult than using a GUI. This book aims to overcome those fears and provide a foundation for further learning and exploration. To that end, this book will focus on the basic principles that a Maker would need to know as opposed to other resources that go into detail that is not particularly relevant to building projects.

Thursday, April 20, 2017

Pair Raspberry Pi with Bluetooth keyboard.


The video show how to pair Bluetooth keyboard to Raspberry Pi 3 with Bluetooth (running Raspbian Jessie with Pixel rel. 2017-04-10).

Tested on Raspberry Pi Zero W, work also.


Wednesday, April 19, 2017

My new board: RASPBERRY PI ZERO W

My new board, Raspberry Pi Zero W, just arrived.









The Raspberry Pi Zero W extends the Pi Zero family. Launched at the end of February 2017, the Pi Zero W has all the functionality of the original Pi Zero but with added connectivity, consisting of:

  • 802.11 b/g/n wireless LAN
  • Bluetooth 4.1
  • Bluetooth Low Energy (BLE)

Like the Pi Zero, it also has:

  • 1GHz, single-core CPU
  • 512MB RAM
  • Mini HDMI and USB On-The-Go ports
  • Micro USB power
  • HAT-compatible 40-pin header
  • Composite video and reset headers
  • CSI camera connector

Product page: https://www.raspberrypi.org/products/pi-zero-w/





Related:
Pair with Bluetooth keyboard.

Tuesday, April 4, 2017

Build Supercomputers with Raspberry Pi 3

Build Supercomputers with Raspberry Pi 3

Key Features
  • Carlos R. Morrison from NASA will teach you to build a supercomputer with Raspberry Pi 3
  • Deepen your understanding of setting up host nodes, configuring networks, and automating mountable drives
  • Learn various math, physics, and engineering applications to solve complex problems
Book Description
Author Carlos R. Morrison (Staff Scientist, NASA) will empower the uninitiated reader to quickly assemble and operate a Pi3 supercomputer in the shortest possible time. The lifeblood of a supercomputer, the MPI code, is introduced early, and sample MPI code provides additional practice opportunities for you to test the effectiveness of your creation. You will learn how to configure various nodes and switches so that they can effectively communicate with each other. By the end of this book, you will have successfully built a supercomputer and the various applications related to it.

What you will learn
  • Understand the concept of the Message Passing Interface (MPI)
  • Understand node networking.
  • Configure nodes so that they can communicate with each other via the network switch
  • Build a Raspberry Pi3 supercomputer.
  • Test the supercluster
  • Use the supercomputer to calculate MPI p codes.
  • Learn various practical supercomputer applications
About the Author
Carlos R. Morrison was born in Kingston, Jamaica, West Indies. He received a B.S. (Hons) degree in physics with a mathematics minor in 1986 from Hofstra University, Hempstead, NY, and an M.S. degree in physics in 1989 from Polytechnic University, Brooklyn, NY.

In 1989, he joined the NASA Glen

Monday, March 27, 2017

ARM University Program launches Embedded Linux Education Kit

ARM University Program announced the launch of the ninth and latest Education Kit: the Embedded Linux Education Kit. This kit provides full courseware on developing embedded Linux products, including Linux kernel configuration and custom peripheral driver development, using low cost yet powerful ARM-based single-board computers.

The courseware is highly modular and includes a rich set of lecture slides with notes, as well as lab manuals with solutions. As with previous Education Kits from the ARM University Program, the courseware covers fundamental theoretical concepts coupled with a hands-on approach that includes real Linux implementations on an ARM Cortex-A9 based i.MX 6Solo SoC, which is available on the low cost UDOO NEO board.


source: https://community.arm.com/iot/embedded/b/embedded-blog/posts/arm-university-program-launches-embedded-linux-education-kit

UDOO NEO Board


Saturday, March 25, 2017

Raspberry Pi Image Processing Programming: Develop Real-Life Examples with Python, Pillow, and SciPy

Raspberry Pi Image Processing Programming: Develop Real-Life Examples with Python, Pillow, and SciPy

Write your own Digital Image Processing programs with the use of pillow, scipy.ndimage, and matplotlib in Python 3 with Raspberry Pi 3 as the hardware platform. This concise quick-start guide provides working code examples and exercises. Learn how to interface Raspberry Pi with various image sensors.

What You'll Learn

•Understand Raspberry Pi concepts and setup
•Understand digital image processing concepts
•Study pillow, the friendly PIL fork
•Explore scipy.ndimage and matplotlib
•Master use of the Pi camera and webcam

Who This Book Is For

Raspberry Pi and IoT enthusiasts, digital image processing enthusiasts, Python and Open Source enthusiasts and professionals

Tuesday, February 28, 2017

Internet of Things Programming with JavaScript

Learn the art of bringing the Internet of Things into your projects with the power of JavaScript

Internet of Things Programming with JavaScript

About This Book
  • This is a practical guide to help you configure and build a complete distributed IoT system from scratch using JavaScript
  • Utilize the power of Node and HTML5 to develop web services and a centralized web server, enabling high-level communication between connected devices
  • Control all your connected devices from the browser by setting up a common dashboard
Who This Book Is For
This book is for developers who are interested in learning how to communicate with connected devices in JavaScript to set up an IoT system. Some basic knowledge of JavaScript is expected. Hobbyists who want to explore the potential of IoT in JavaScript will also find this book useful.

What You Will Learn
  • Develop the skills to connected devices prepared the field to interact with the devices in a network system Internet of Things
  • Find out how to connect sensors and actuators to the devices
  • Send data to a web server connected devices
  • Understand Internet of things using web services and database
  • Configure a dashboard using HTML5 and JavaScript
  • Control devices connected from a dashboard
  • Monitor different devices from the dashboard
  • Build an app for a smartphone to control different devices
In Detail
The Internet of Things (IoT) is an entirely new platform for developers and engineers, but one thing that remains consistent as we move into this new world, are the programming languages. JavaScript is the most widely used language over the Internet, and with IoT gaining momentum, you will learn how to harness the power of JavaScript to interact with connected devices. This book will teach you how to interact with endpoint devices by developing web services in JavaScript and also set up an interface to control all connected devices.

This book begins with setting up a centralized web server that serves as a hub for all connected devices. The book then progresses further towards building web services to facilitate high-level communication between connected devices. Using Arduino and Raspberry Pi Zero as endpoint devices, the book will show you how devices can communicate with each other, perform a wide range of tasks, and also be controlled from a centralized location using JavaScript. The book ends with creating a hybrid app to control the devices that can be run from a browser or installed on a smartphone.

Style and approach
This book offers step-by-step guidance on how to set up a distributed IoT system using JavaScript.

It will teach you how to interact with endpoint devices by developing web services in JavaScript and also set up an interface for controlling all connected devices.

Monday, February 20, 2017

Custom Raspberry Pi Interfaces: Design and build hardware interfaces for the Raspberry Pi

Custom Raspberry Pi Interfaces: Design and build hardware interfaces for the Raspberry Pi

Design and build custom hardware interfaces for the Raspberry Pi and discover low cost display and sensor options for embedded system projects.

With this book you'll master 12C communications using Raspbian Linux in C++ and perform ADC and DAC experiments. You'll experiment with debounce buttons and switches using hardware and software solutions. Develop flywheel rotary encoder effects for ease of tuning and construct a hardware interface to the Music Playing Daemon (MPD) with developed software. Discover how to add your own hardware keypad for remote combination lock applications.

Custom Raspberry Pi Interfaces offers a thorough chapter on interfacing 5-volt systems to 3.3-volt Raspberry Pis designed to expand your choice of peripheral options. Ready to go C++ programs involving GPIO and I2C peripherals are provided. This book also explores ADC, DAC, rotary encoders, CMOS shift registers. I2C I/O extenders.

What you'll learn:
  • Build simple, low cost input/output interfaces including rotary encoders 
  • Interface with 5-volt devices from a 3-volt Raspberry Pi system 
  • Apply analog to digital and digital to analog conversions on the Pi 
  • Read potentiometers (volume control) from the Pi 
  • Determine step, directions, and velocity of a rotary encoder 
  • Perform remote interfacing using the I2 PCF8574 chip
  • Work with external CMOS devices like the 74HC595 (in C++)
Who this book is for:
Students and hobbyists interested in building custom interfaces for their Raspberry Pis.

Thursday, February 16, 2017

VNC Connect, a brand-new version of VNC

VNC Connect, a brand-new version of VNC that allows you not only to make direct connections within your own networks, but also to make secure cloud-brokered connections back to your computer from anywhere in the world, with no specialist networking knowledge needed.

The main change in VNC Connect is the ability to connect back to your Raspberry Pi from anywhere in the world, from a wide range of devices, without any complex port forwarding or IP addressing configuration. The cloud service brokers a secure, end-to-end encrypted connection back to your Pi, letting you take control simply and securely from wherever you happen to be.



A guest post at Raspberry Pi blog, GET ‘BACK TO MY PI’ FROM ANYWHERE WITH VNC CONNECT, Andy Clark, Engineering Manager at RealVNC, introduces VNC Connect: a brand-new, and free, version of VNC that makes it simple to connect securely to your Raspberry Pi from anywhere in the world.


Sunday, February 5, 2017

MotionEyeOS, A Video Surveillance OS For Single-board Computers

motionEyeOS is a Linux distribution that turns a single-board computer (include Raspberry Pi) into a video surveillance system.


To get started:
Check out the list of supported devices and download the OS image file that corresponds to your board.
Then follow the installation instructions to extract and write the image file to the SD card.