
LCD on a Pi
This is a simple way to use an i2c display on a Pi. the test script prints both “hello world” and the Ip address of the Pi. Save the DRIVER python script in the same […]
This is a simple way to use an i2c display on a Pi. the test script prints both “hello world” and the Ip address of the Pi. Save the DRIVER python script in the same […]
This is the basic code for version 1 of dojo derby vehicle. Version 2 will change the fee tech module with an h bridge, and the code will be modified. Also speed controls need to […]
This is the code I tested with for the H Bridge on the Pi. You can either turn on GPIO pins for full speed, or you can use PWM. Pi support software PWM, and this […]
With this project we create an IoT Environmental control device that uses a MariaDB (MySQL) database as the datastore. This allows you to use database functionality to create log files and be able to corrrelate […]
In this project we are going to use an Arduino to get the room temperature, and be able to turn on a regular house fan. The Arduino sends the temperature value to the Raspberry Pi […]
This project allows you to get a temperature value from the Arduino, pass it to the Raspberry Pi, have a Python Script process that value and store it in a file, then have a PHP […]
You can send data to a Raspberry Pi from an Arduino, have the Pi compute the data and use “intelligence” to send the Arduino a command. This allows you to fully use a Pi as […]
You can send commands to an Arduino from an Raspberry Pi using a USB cable and Serial Communication. Prerequisites: Raspberry Pi – How to Begin Coding Python on Raspberry Pi Arduino – Send Commands with […]
You can connect a Raspberry Pi to your Arduino with a USB cable and read the Serial Output into Variable Values. Prerequisites: Analog Temperature Sensor with Arduino Raspberry Pi – How to Begin Coding Python […]
With the Arduino IDE Serial Monitor you can send commands to your Arduino. Functional Parts in the Project: Arduino Uno – https://store.arduino.cc/usa/arduino-uno-rev3 560 Piece Jumper Wire Kit – https://amzn.to/2MsCLjL 220 Ohm Resistors – https://amzn.to/2RiiMD9 Breadboard Kit – https://amzn.to/2Xih5ei LED […]
Dig allows you to find public DNS information about Domains. So if you need to check MX records for your company, or see if there is an issue with a SaaS provider by finding theer […]
IPinfoDB offers a free IP Geography API that is compatible with basic PHP. This allows you to try to determine location of the cloud servers that you use for your organization. Remember that is basically […]
Nmap allows you to map your network from the Linux Command Line. You can determine IP Addresses, Mac Addresses, Open Ports, and even Operating Systems. This information can be outputted to a human readbale text […]
In this project we parse an nmap XML output file and then add the values to a MySQL Database Table. We then create a basic report that pulls the values out of the database and […]
These are the notes for importing data from XML document into MySQL, and then to print a simple report. parse.php nmapReport.php MySQL Setup nmapTest.xml
This project shows you how to parse (read) the nmap XML output file and turn ip addresses, mac addresses, hostnames, vendors and ports into PHP variable values and then print them out. Prerequisite Classes: Linux […]
This project allows you to create a simple network scanner that is accessible from a web browser on the network. Essentially with this project we use a Cron Job every 10 minutes to trigger nmap […]
The standard Ubuntu Desktop works well on a Raspberry Pi 4 with 4GB of RAM. To get the Desktop Environment simply install the Ubuntu Server and then install the Ubuntu-Desktop on to it. Prerequisite Classes: […]
You can install Ubuntu very easily on the Raspberry Pi. Ubuntu Server and IoT Core versions come preloaded with the Raspberry Pi Imager Software. Note: Ubuntu Server will automatically start an auto update process when […]
SAMBA allows you to use SMB/CIFS to do traditional/ windows type file management over the network. You can access files and folders just like you would on a windows network without needing to install additional […]
You can turn your Raspberry Pi with Raspberry PI OS into a full LAMP web server. We use MariaDB because MySQL is not provided in the main repository and it is a drop in replacement […]
The Pi Hole software allows you to turn your Raspberry Pi into a DNS Security device. After setup your client systems can use the Pi Hole as their DNS server, when websites try to resolve […]
The GPIOzero Python Package allows you to control and read from the GPIO Pins on your Raspberry Pi. GPIOzero is included in the Raspberry Pi Operating System, and can be installed on other distros. GPIOzero […]
With Thonny you can easily begin to code Python Scripts on Raspberry Pi OS. Thonny is a very simple Python IDE that is easy to learn.
The Raspberry Pi OS is a distribution of Debian Linux that is generally used on Raspberry Pi Systems. The GUI is simple, but can be a bit cinfusing when you start to use it. Raspberry […]
Installing an Operating System on a Raspbery Pi is easy, but very different than installing an OS on a standard PC. You download the Imager software from Raspberry Pi, and then you image your Micro […]
The Raspberry Pi is an ARM PC that gives you the ability to use the GPIO pins for sensor inputs and outputs. ARM based PC’s look and act like x86 PC’s, but require specific Operating […]
You can find your Network Settings and assign the values to variables.
This project creates a time lapse camera using a 5MP ArduCam. You can set the lapse interval to however many seconds you want, and then the camera will take a picture at that interval. Note […]
This project logs and alerts when a speed limit value is passed. You can assign a value as a Speed Limit and when that speed is passed the Red LED lights up, and the location […]
This project shows you how to create a tracking device that logs location and speed of the device to an SD card, and also displays the infromation to an LCD Screen. Notes: We use an […]
This project uses the Adafruit Ultimate GPS Module, an Arduino Uno with WiFi and a 20×4 I2C LCD Screen to display your location in Degrees and show your speed of travel. Note: When I did […]
This project uses a PIR to trigger the ArduCam to record a video file and store it as an .AVI on the SD Card. It names the video file based on a random number generation […]
This project allows you to create a Motion Detection Spycam with a PIR Sensor, and ArduCam, and a Data Logging Shield with Real Time Clock. This project takes a pictures when motion is detected, saving […]
This class teaches you to save images from your ArduCam to an SD card using a Unix Timestamp for the name. This is useful not just as a timestamp, but also as a way to […]
The ArduCam can store pictures to an SD for your Arduino projects. Note In memorysaver.h set the ArduCam and module that you are using. ArduCam uses SPI and I2C so the SD Module or Shield […]
This project is a full sensor suite device for a garden or your indoor plants. This has a Moisture Sensor, Temperature/ Humidity Sensor, Light Sensor and Real Time Clock that output to a 20×4 LCD […]
3 Color RGB LED’s allow you to use a single LED to show multiple colors. Functional Parts in the Project: Arduino Uno – https://store.arduino.cc/usa/arduino-uno-rev3 560 Piece Jumper Wire Kit – https://amzn.to/2MsCLjL 220 Ohm Resistors – https://amzn.to/2RiiMD9 Breadboard Kit […]
This project shows the Date, Time, Temperature, Humidity and Alerts you when the temperature breaks a threshold and gives you a timestamp of highest temperature reached. Prerequisite Classes: Arduino – I2C 20 x 4 LCD […]
The DHT11, 21 and 22 Sensors can be used to determine both temperature and humdity. Note: Make sure to comment/ uncomment the right sensor in setup Links: Adafruit DHT Library – https://github.com/adafruit/DHT-sensor-library Functional Parts in […]
A Real Time Clock module gives the ability for an Arduino to keep track of the current time, and be able to track time even when the device loses power. Many libraries for Clock Modules […]
This is an easy to use library to add RTC to an Arduino. http://www.rinkydinkelectronics.com/library.php?id=73
This project shows you how to log Variable Values to an SD Card using a Data Logging Module. Prerequisite Classes: Analog Temperature Sensor with Arduino Functional Parts in the Project: Arduino Uno – https://store.arduino.cc/usa/arduino-uno-rev3 Breadboard Kit […]
This project allows you to use an Arduino Uno with WiFi to scan for wireless networks and print out the results on a 20×4 I2C display. Prerequisite Classes: Arduino – I2C 20 x 4 LCD […]
This uses an Arduino Uno with Wifi and a 20×4 I2C LCD Screen. Plug the LCD into the SCL and SDA ports, NOT into A$ and A5. Make sure to install the Liquid Crystal Library […]
This project shows you how to send commands from one Arduino Uno with WiFo to another without needing a server. This is a simple Analog Temperature Sensor Project that Turns on LEDS on the other […]
This project allows me to send commands directly from one Arduino Wifi to another. The SENSOR Arduino has an analog temp sensor and sends commands to the RECEIVER. The RECEIVER Parses the commands ?red or […]
The IoT Relay from Digital Loggers Inc allows to easily and safely control standard american powered appliances such as fans, dehumidifiers, pumps and such. It is important to realize how the 4 power ports work. […]
You can send commands to your Arduino Uno with WiFi thorough connection URL’s with wget on Linux. This is a simple way to add Arduino Commands to your scripts and web apps. wget https://www.gnu.org/software/wget/ http://manpages.ubuntu.com/manpages/bionic/man1/wget.1.html […]
This project uses a server with PHP to send commands to the Arduino Vehicle. The commands are sent use shell_exec and triggering wget on the command line. wget needs to be installed on your server. […]
I’m working on building a remote control car using the Arduino Uno with WiFi and the FeeTech Vehicle platform.
You can find the Minimum and Maximum values in a column using SQL. min() https://dev.mysql.com/doc/refman/8.0/en/group-by-functions.html https://www.w3schools.com/sql/func_mysql_min.asp max() https://www.w3schools.com/sql/func_mysql_max.asp https://dev.mysql.com/doc/refman/8.0/en/group-by-functions.html
You can pull the average of the numeric values in a column with SQL in MySQL. avg() https://dev.mysql.com/doc/refman/8.0/en/group-by-functions.html https://www.w3schools.com/sql/func_mysql_avg.asp
In MySQL you can list the unique values from a column in a Table. DISTINCT https://dev.mysql.com/doc/refman/8.0/en/distinct-optimization.html https://www.w3schools.com/sql/sql_distinct.asp
The time() and date() functions allow you to add time data to your applications. Time() provides the seconds since Unix Epoch (January 1, 1970) which is useful for basic timing in your application. The date() […]
Text transformation in PHP is useful not just for esthetics, but to also make sure that data is uniform when dealing with databases and such. strtolower() https://www.php.net/manual/en/function.strtolower.php https://www.w3schools.com/php/func_string_strtolower.asp strtoupper() https://www.php.net/manual/en/function.strtoupper.php https://www.w3schools.com/php/func_string_strtoupper.asp ucfirst() https://www.php.net/manual/en/function.ucfirst.php https://www.w3schools.com/php/func_string_ucfirst.asp ucwords() […]
You can use the tool belenaEtcher to create a bootable installation flash drive for Ubuntu. https://www.balena.io/etcher/
The explode() function allows you to turn a String into an Array based on a separator you define. explode() https://www.php.net/manual/en/function.explode.php https://www.w3schools.com/php/func_string_explode.asp explode.php
The var_dump() function allows you to see what a variable’s data type is, and what it’s value is. var_dump() https://www.php.net/manual/en/function.var-dump.php https://www.w3schools.com/php/func_var_var_dump.asp varDump.php
You can have your HTML document auto refresh itself so that d=ynamic information is continuously updated. <meta http-equiv=”refresh” content=”5″> https://www.w3schools.com/tags/att_meta_http_equiv.asp autoUpdate.php
The strpos() function allows you to parse strings in PHP. strpos() https://www.php.net/manual/en/function.strpos.php https://www.w3schools.com/php/func_string_strpos.asp strpos.php
In this example we use exec() to ping domain names and IP addresses and then parses the results so that you can test the results using an If/Else statement. exec() https://www.php.net/manual/en/function.exec.php unset() https://www.php.net/manual/en/function.unset.php https://www.w3schools.com/php/func_var_unset.asp strpos() […]
This is a simple Up/Down network monitor to show what your server is able to see on the network and internet. shell_exec() https://www.php.net/manual/en/function.shell-exec.php shellExecPingArray.php
The shell_exec() function allows you to send commands to the Command Line using PHP. You can use this for everything from pinging websites, to calling installed apps such as FFMPEG. shell_exec() also returns the results […]
The pathinfo() function allows you to turn a filepath into an Array and then interact with the keys of the Array. You can grab the Filename, Extension, Folder Name and Basename. pathinfo() https://www.php.net/manual/en/function.pathinfo.php https://www.w3schools.com/php/func_filesystem_pathinfo.asp pathinfo.php
The in_array() function allows you to check if a value is stored with an Array. This can be used for things such as creating an array of which states a company ships products to. in_array() […]
If you allow you users to upload files to your web server you will probably want to create some restrictions. You can block uploads based off of file size, extension, or if a filename already […]
With an HTML form and PHP you can upload files to your web server. When you use $_FILE in PHP you are able to access information about the file stored in the $_FILE array. Prerequisites: […]
The isset() function in PHP checks to see if the value of a variable has been set. this can be useful in applications that allow users to login, or make sure that variables are actually […]
The glob() function in PHP allows you to search folders and put the results into an array based on basic filtering. glob() https://www.php.net/manual/en/function.glob.php https://www.w3schools.com/php/func_filesystem_glob.asp glob.php glob.php (with Image Embed)
$ Session Variables allow you to set Variable Values that can be accessed across all pages that your user goes to in your PHP Web Application. You must use session_start() on all pages that will […]
You can send Variable Names and Values using hyperlinks to PHP Scripts. This is an easy way to send variable data, but is incredibly insecure. To send a variable to a PHP script add ?variable_name=variable_value […]
In this project we build the ability to search for images based on Tags stored in MySQL. Previous Classes in Series: PHP Project (Simple) – Dynamic Photo Gallery Stream PHP Project (Simple) – Dynamic Photo […]
With this project you will be able to edit the MySQL records that relate to your pictures in your gallery. You use the pic_id identifier to select and update specific MySQL records. Previous Classes in […]
This class shows you how to create a picture gallery app that stores its data in a MySQL database. This allows you to do things such as adding Tags, Description, and even User Ownership so […]
Previous Classes in Series: PHP Project (Simple) – Dynamic Photo Gallery Stream PHP Project (Simple) – Dynamic Photo Gallery Prerequisites: Basic LAMP, or Web Server Administration Verify pictures and folder have READ/WRITE permission for OTHER […]
This project shows you how to create a Picture Gallery App that is dynamically based off of the pictures in a folder. Previous Classes in Series: PHP Project (Simple) – Dynamic Photo Gallery Stream Prerequisites: […]
Using the GLOB function in PHP you can put all of the file names on a folder, and then print them out with additional HTML to create a Dynamic Photo Stream. In this project the […]
FFMPEG allows you to easily convert and resize your video files. FFMPEG: https://www.ffmpeg.org Install FFMPEG Convert Video to Another Format Change Video Size – Manually Input Width and Height Change Video Size – Keep Aspect […]
Jpegoptim allows you to compress/optimize image files from the command line in linux. WARNING: by default Jpegoptim modifies the source file JpegOptim: https://www.mankier.com/1/jpegoptim Install Jpegoptim on Ubuntu Resize Image (overwrites source) Saves Converted Image into […]
By setting the Position Attribute to “Sticky” it will allow the element to stay at the same location as you scroll through an HTML page. stickyStyle.css sticky.html
You can create animations with CSS for everything from alerts to fun widgets on your HTML pages. animationStyle.css animation.html
You can format hyperlinks based on whether you’re hovering over them, actively clicking on them, or have visited them. This can be useful when creating dashboards and control panels. linkStyle.css link.html
You can do some interesting things with color on your HTML pages with color options with CSS. Color Picker: https://www.w3schools.com/colors/colors_picker.asp Color Names: https://www.w3schools.com/colors/colors_names.asp color.html colorStyle.css
With CSS you can create shapes to add visual elements to your HTML documents. Shape Examples: https://www.w3schools.com/howto/howto_css_shapes.asp shapeStyle.css shape.html
Changing the opacity of text or pictures can make them easier to view by users. You can also use :hover to show when an object is being hovered over. opacityStyle.css opacity.html
You can overlay text over images using CSS. To do this you essentially create a DIV as a canvas, add an image, and then code where the Text should start to be printed within the […]
CSS can be used to create basic animations for Web Based Dashboards to attract user attention. alertStyle.css alert.html
You can dynamically modify both text and image formatting when a user hovers over elements in an HTML document. hoverStyle.css hover.html picture700jpg
CSS allows you to do a lot of interesting formatting with images on HTML documents. This class shows 3 simple examples of how to embed images using CSS. imageStyle.css image.html picture700.jpg
You can use Tag Elements with CSS Classes to create text with similar styling. classTagStyle.css classTag.html
nth-of-type allows you to automatically format HTML texts based off of simple rules. nthStyle.css nth.html
You can format Tables using CSS to not just add borders, but also interactive features. tableStyle.css table.html
You can use DIV tags and Borders to group text together in your web page and do things such as create coupons. borderStyle.css divBorder.html
You can assign CSS attributes to HTML features using ID’s like you would with Classes. idStyle.css id.html
Classes allow you to format text in different tags similarly. Classes can be reused numerous times on a page, and they can be combined together. class.html classStyle.css
CSS can be added to an HTML document 3 different ways. You can use an External Style Sheet, dd CSS to the Head of the HTML document, and within the HTML tags themselves. inlineCSS.html onPageCSS.html […]
The basic syntax of CSS is to Assign Values to Properties for Selectors. In CSS “selectors” are synonymous with tags. So the h1 Selector refers to the h1 HTML Tag. CSSsyntax.html
CSS, or Cascading Style Sheets, are the way you can format your HTML to look pretty. CSS and HTML used to be considered separate technologies, but with HTML5 they are now combined as one skill […]
The QNAP QGD-1600P combines a 16port PoE Switch, with a NAS, and Linux Desktop. Beyond this you can run Virtual Servers within the NAS.