วันเสาร์ที่ 2 ธันวาคม พ.ศ. 2560

Raspberry Pi IoT Performance Monitor with ThingSpeak




Raspberry Pi IoT Performance Monitor with ThingSpeak

This project you can monitor raspberry pi or other embedded linux or Single Board Computer ( SBC ) such as CPU Temperature , CPU %,Memory and Disk Usage on ThingSpeak Cloud IoT service.
Code is python.

System Diagram






What is ThingSpeak.com?

ThingSpeak  is an Internet of Things (IoT) platform that lets you collect and store sensor data in the cloud and develop IoT applications. The ThingSpeak™ IoT platform provides apps that let you analyze and visualize your data in MATLAB®, and then act on the data. Sensor data can be sent to ThingSpeak from Arduino®, Raspberry Pi™, BeagleBone Black, and other hardware.
https://thingspeak.com/

Source Code and Library ( To install on Raspberry Pi )

PSUtil Python Library 
PSUtil is a cross-platform library for retrieving information on running processes and system utilization (CPU, memory, disks, network) in Python.

Run Command

sudo apt-get install build-essential python-dev python-pip
sudo pip install psutil

Python code on Github

https://github.com/amphancm/RaspberryPi_ThingSpeak


EDIT Code for your own KEY


















#!/usr/bin/env python
import psutil
import httplib, urllib
import time
import os,sys

from PIL import Image
from PIL import ImageDraw
from PIL import ImageFont

disk = os.statvfs("/")
used = disk.f_bsize * (disk.f_blocks - disk.f_bavail)

sleep = 30            # how many seconds to sleep between posts to the channel
key = 'ZG8WMLWF4PBQQVFB'  # Write Key Thingspeak channel to update

# THIS IS MY KEY for ThingSpeak Channel 238835
# YOUR MUST CHANGE to YOUR WRITE KEY


Run Python code

python performance.py

Result on ThingSpeak

Thingspeak Monitor Example  https://thingspeak.com/channels/238835



Option Add OLED Display



Wiring Diagram
You must install OLED Adafriut Library SSD1306
See this Raspberry Pi connect OLED I2C Display and use code performance_oled.py and Font.


Reference

http://www.iotleague.com/d-i-y-how-to-upload-your-raspberry-pi-sensor-data-to-thingspeak-website

https://thingspeak.com/


My Website

email : info@softpowergroup.net  , amphancm@gmail.com  Tel .6681-6452400 

Android Arduino IoT

วันอาทิตย์ที่ 26 พฤศจิกายน พ.ศ. 2560

Raspberry Pi Bitcoin Miner ( Monero XMR )







Raspberry Pi Bitcoin Miner ( Monero XMR )

What is Bitcoin Mining?

With Bitcoin, miners use special software to solve math problems and are issued a certain number of bitcoins in exchange. This provides a smart way to issue the currency and also creates an incentive for more people to mine.

Why is Monero Coin ( XMR ) ?

Unlike many cryptocurrencies that are derivatives of Bitcoin, Monero is based on the CryptoNote protocol and possesses significant algorithmic differences relating to blockchain obfuscation.
By providing a high level of privacy, Monero is fungible, meaning that every unit of the currency can be substituted by another unit. These units are indistinguishable from one another. This makes Monero different from public-ledger cryptocurrencies like Bitcoin, where addresses previously associated with undesired activity can be blacklisted and refused by network members.
https://getmonero.org/

Why use Raspberry Pi?

Raspberry Pi Board is an 32 bit processor and cpu miner software is 64 bit version only.So you must have to recompile it.
This is for education purpose only.


Prepare Raspberry Pi

Hardware
Raspberry Pi 3B Board with heat sink.
SD Card ( we use 16 GB scandisk ) need to format and install software to it.
Power Supply 5V. 2A

Raspberry Pi OS
We use Raspbian Stretch ( Build 2017-09-07 )  How to write image file to SD card


Raspberry Pi Tools
Putty ( SSH and telnet client for windows )  How to install Putty


Let's Start!!!

Do a SSH connection to your  Raspberry Pi.
We use Putty to connect Raspberry Pi and Login Username and password
( default user : pi , password : raspberry )



Become ROOT!!!
Command   sudo -i



Update Your Raspberry Pi
apt-get update -y



Install Some Library
apt-get install autoconf libcurl4-openssl-dev libjansson-dev openssl libssl-dev gcc gawk automake git -y



Clone cpuminer


git clone https://github.com/lucasjones/cpuminer-multi.git



Then Install 



cd cpuminer-multi


./autogen.sh



Optimize Build for Raspberry pi 3B Version

./configure CFLAGS="-Ofast -mtune=cortex-a53 -mcpu=cortex-a53 -mfloat-abi=hard -mfpu=neon-fp-armv8 -mneon-for-64bits -ffast-math" CXXFLAGS="-Ofast -mtune=cortex-a53 -mcpu=cortex-a53 -mfloat-abi=hard -mfpu=neon-fp-armv8 -mneon-for-64bits -ffast-math" make --always-make Now, Software and Library have install to raspberry pi already. Ready for mining.but you need monero wallet and pool in the next step.



Monero Wallet and Pool

As for mining, you’ll need to create a Monero wallet and find a pool to join. Mining in a pool means you get a small part of the reward for the mining you do. In our example we use MinerGate
https://minergate.com/


To start the mining we use the minerd command

./minerd -a cryptonight -o URL.Your.Pool:port -u worker.1 -p password

For My Example

./minerd -a cryptonight -o stratum+tcp://xmr.pool.minergate.com:45560 -u fongwe_a@hotmail.com -p x



The result
accepted 7.13 H/s at diff 500


On Minergate DashBoard


Mining Profit

On Minergate web has mining profitability calculator.
If Raspberry pi has hash rate are 10 H/s see table below.



Option Check CPU Temp
command
vcgencmd measure_temp



Option Check CPU Temp and CPU % on IoT ThingSpeak
http://raspberrypi4u.blogspot.com/2017/12/raspberry-pi-iot-thingspeak.html


Reference

Compile and Run as service Monero (XMR) CPU miner for RaspberryPi 2 and 3

http://awesomeprojectsxyz.blogspot.it/2017/10/tutorial-compile-and-run-as-service.html
https://minergate.com/
https://getmonero.org/


My Website

email : info@softpowergroup.net   Tel .081-6452400

Android Arduino IoT

วันอาทิตย์ที่ 30 กรกฎาคม พ.ศ. 2560

Raspberry Pi Android Things



Raspberry Pi Android Things


What is Android Things?

Android Things are IoT Platform for Android Developer.Use Development tools and ecosystem the same Android App. So you can use Android Studio to develop Android Things.
and without previous knowledge of embedded system design.
Google has partnered with a number of hardware manufacturers to offer solutions based on Intel Edison, NXP Pico and the Raspberry Pi 3.
Android Things ignites development of connected embedded devices by providing the same Android development tools, best-in-class Android framework, and Google APIs making developers successful on mobile.

Understand the Android Things Platform
Android Things has a few key differences compared to the core Android OS, read the Overview to understand key concepts that you'll need to understand.












Android Things SDK Preview!
https://developer.android.com/things/preview/index.html


Android Things Project
https://github.com/amitshekhariitbhu/awesome-android-things#found-this-project-useful-heart


My Website

email : info@softpowergroup.net   Tel .081-6452400

Android Arduino IoT



LINE : adunfong
FaceBook : https://www.facebook.com/adun.nantakaew
email: amphancm@gmail.com

วันพฤหัสบดีที่ 13 เมษายน พ.ศ. 2560

Raspberry Pi Android Things TensorFlow Machine Learning


Raspberry Pi Android Things TensorFlow Machine Learning

Image Classifier Example Code Demo
This example source code are from https://github.com/androidthings . In the details of example code use external GPIO button.but we don't use it. So,we use computer keyboard instead.

This project is based on the TensorFlow Android Camera Demo TF_Classify app. The TensorFlow training was done using Google inception model and the trained data set is used to run inference and generate classification labels via TensorFlow Android Inference APIs.

Hardware

  • Raspberry Pi 3 Board + 16GB SD card
  • Pi camera module
  • Computer keyboard
  • Speaker or ear phone
  • HDMI display or TFT LED display

Software

How to Run Code

First Flash Android Things image onto your Raspberry Pi SD card.

Connect Raspberry Pi to your network using the TCP/IP (LAN) Cable and use adb tool.


use this command to connect Raspberry Pi

use this command to check connection and found android thing device.

Now you can run code on Android Studio.

If you have everything work correctly.


Press ENTER button on keyboard.The current image is captured from attached camera.
The captured image is shown on the screen.Also the result is spoken out on speaker.if any.


My Website


email : info@softpowergroup.net   Tel .081-6452400

Android Arduino IoT



LINE : adunfong
FaceBook : https://www.facebook.com/adun.nantakaew
email: amphancm@gmail.com

วันอังคารที่ 7 มีนาคม พ.ศ. 2560

Raspberry Pi IoT connect CloudMQTT

Raspberry Pi IoT connect CloudMQTT

In Last Article we have made raspberry pi with dht sensor and OLED display. So, in this blog we will use that hardware to connect CloudMQTT.com for IoT application.

What is MQTT?

MQTT (aka MQ Telemetry Transport) is a machine-to-machine or “Internet of Things” connectivity protocol on top of TCP/IP. It allows extremely lightweight publish/subscribe messaging transport.


Broker , Publisher , Subscriber

CloudMQTT are managed Mosquitto servers in the cloud. Mosquitto implements the MQ Telemetry Transport protocol, MQTT, which provides lightweight methods of carrying out messaging using a publish/subscribe message queueing model.
So , you must sign up CloudMQTT

System Diagram

Hardware

  • Raspberry Pi Board ( we use Raspberry Pi3 board ) + SD card (8GB or more) we use 16 GB
  • DHT11 Temperature and Humidity Sensor with Resistor 4.7 K Ohm
  • I2C OLED Display ( 128 x 64 0.96' SSD1306 chip )

Wiring Diagram
Python Library

DHT Sensor
$ git clone https://github.com/adafruit/Adafruit_Python_DHT.git
$ cd Adafruit_Python_DHT
$ sudo apt-get install build-essential python-dev python-openssl
$ sudo python setup.py install

OLED
$ git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git
$ cd Adafruit_Python_SSD1306
$ sudo python setup.py install


Source Code
https://github.com/amphancm/RaspberryPi_CloudMQTT
Reference
CloudMQTT Document https://www.cloudmqtt.com/docs.html
OLED Adafruit Python Library https://github.com/adafruit/Adafruit_Python_SSD1306



My Website
email : info@softpowergroup.net   Tel .081-6452400

Android and Arduino IoT



LINE : adunfong
FaceBook : https://www.facebook.com/adun.nantakaew
email: amphancm@gmail.com

วันพุธที่ 1 มีนาคม พ.ศ. 2560

Raspberry Pi + DHT Sensor and OLED in python code


Raspberry Pi + DHT Sensor and OLED in python code

Last Article we connect raspberry pi with OLED already. ( Raspberry pi OLED )
Now we want to connect some sensor and show on OLED.So we use famous one .It is DHTxx Sensor .it can measure temperature and humidity in one time ( air only ).

Wiring Diagram

Hardware


  • Raspberry Pi Board ( we use Raspberry Pi3 board )
  • DHT11 Temperature and Humidity Sensor with Resistor 4.7 K Ohm
  • I2C OLED Display ( 128 x 64 0.96' SSD1306 chip )

Install DHT Python Library

$  sudo apt-get install build-essential python-dev python-openssl
$  git clone https://github.com/adafruit/Adafruit_Python_DHT.git
$  cd Adafruit_Python_DHT
$  sudo python setup.py install


Source Code in python on Github
https://github.com/amphancm/RaspberryPi_DHT_OLED




Reference Original Code




My Website
email : info@softpowergroup.net   Tel .081-6452400

Android and Arduino IoT



LINE : adunfong
FaceBook : https://www.facebook.com/adun.nantakaew
email: amphancm@gmail.com