10 Essential Securit..> 18-Sep-2013 20:46 107k
101 Excel 2013 Tips ..> 14-Aug-2013 07:39 45.6M
802.11 Wireless Netw..> 30-Jul-2013 11:02 9.7M
802.11ac A Survival ..> 14-Aug-2013 07:39 11.1M
A Guide to Troublesh..> 18-Aug-2013 08:58 13.3M
A Peek at Computer E..> 30-Jul-2013 11:02 5.7M
A Practical Guide to..> 30-Jul-2013 11:03 21.5M
A Windows Registry Q..> 18-Sep-2013 20:49 68k
A+Network+Security+E..> 30-Jul-2013 11:02 5.8M
Access 2007 vba Bibl..> 09-Aug-2013 12:44 24.1M
Access 2013 for Dumm..> 30-Jul-2013 11:03 41.7M
Active Directory Coo..> 05-Aug-2013 20:40 9.1M
Administering Window..> 30-Jul-2013 11:03 35.0M
Adobe Photoshop Bibl..> 09-Aug-2013 12:46 71.1M
Advanced Windows Deb..> 11-Aug-2013 14:28 10.2M
Autocad lt 2007 Bibl..> 09-Aug-2013 12:44 16.9M
Beginning Red Hat Li..> 30-Jul-2013 11:03 10.4M
Beginning SQL.pdf 30-Jul-2013 11:03 9.5M
Beginning Ubuntu Lin..> 30-Jul-2013 11:03 19.6M
Beginning VB 2008.pdf 30-Jul-2013 11:03 11.7M
Beginning Windows 8.pdf 11-Aug-2013 14:29 22.3M
Big Book of Windows ..> 11-Aug-2013 14:30 73.8M
Broadband Bible, Des..> 01-Sep-2013 13:06 17.2M
C Pocket Reference.pdf 05-Aug-2013 20:40 1.3M
Chrome Productivity ..> 29-Oct-2013 09:08 9.2M
Computer Viruses For..> 01-Sep-2013 13:06 3.8M
Deploying Windows 7 ..> 06-Aug-2013 05:46 6.5M
Deploying Windows 7 ..> 06-Aug-2013 05:47 530k
Diagnosing & Fixing ..> 30-Jul-2013 11:03 103k
Electronics for Dumm..> 30-Jul-2013 11:03 8.6M
Evernote For Windows..> 30-Jul-2013 11:03 243k
Exam 70-640 Configur..> 11-Aug-2013 14:29 23.5M
Exam 77-418 MOS 2013..> 30-Jul-2013 11:03 9.7M
Exam 77-424 MOS 2013..> 30-Jul-2013 11:03 13.5M
Excel 2013 Bible.pdf 09-Aug-2013 12:50 216M
Excel 2013 The Missi..> 14-Aug-2013 07:39 34.1M
Excel 2013 all in on..> 30-Jul-2013 11:05 90.4M
Excel Dashboards and..> 14-Aug-2013 07:40 52.1M
Excel Formulas and F..> 30-Jul-2013 11:04 31.0M
Expert Shell Scripti..> 07-Aug-2013 18:11 1.7M
Fedora 10 and Red Ha..> 30-Jul-2013 11:03 16.5M
Free NAS8.0.1_Guide.pdf 30-Jul-2013 11:03 4.4M
Getting Active Direc..> 30-Jul-2013 11:03 75k
Google Power Search.pdf 30-Jul-2013 11:03 7.1M
Google Search Rescue..> 30-Jul-2013 11:04 18.7M
Google Sites and Chr..> 30-Jul-2013 11:04 14.1M
Google for Dummies P..> 30-Jul-2013 11:03 3.9M
Google the Missing M..> 30-Jul-2013 11:04 17.9M
HTML 5 Pocket Refere..> 05-Aug-2013 20:42 33.8M
HTML a Beginners Gui..> 30-Jul-2013 11:04 11.3M
Hacking Exposed Comp..> 30-Jul-2013 11:04 12.2M
Hacking Exposed Malw..> 30-Jul-2013 11:04 11.0M
Hacking Exposed Wind..> 11-Aug-2013 14:28 9.7M
Hacking Exposed Wire..> 30-Jul-2013 11:04 11.2M
Hacking for Dummies ..> 30-Jul-2013 11:05 33.3M
Head First Networkin..> 11-Aug-2013 14:29 38.3M
Home Networking All ..> 11-Aug-2013 14:29 19.2M
Home Networking all ..> 30-Jul-2013 11:05 19.2M
How to Implement OSP..> 30-Jul-2013 11:04 72k
IPv6 Tutorial.pdf 30-Jul-2013 11:04 154k
IT Essentials PC Har..> 30-Jul-2013 11:05 29.2M
Inside Windows Debug..> 30-Jul-2013 11:05 35.6M
Installing and Confi..> 11-Aug-2013 14:29 7.5M
Introducing Azure.pdf 24-Oct-2013 03:19 8.0M
Introducing Windows ..> 24-Oct-2013 03:19 9.3M
Introducing Windows ..> 11-Aug-2013 14:29 6.7M
Introducing Windows ..> 11-Aug-2013 14:29 25.1M
Introduction to Micr..> 18-Sep-2013 20:49 220k
Java 7 Pocket Guide.pdf 05-Aug-2013 20:45 87.4M
LAN troubleshooting ..> 30-Jul-2013 23:08 2.6M
Learn Windows Powers..> 30-Jul-2013 11:05 9.7M
Learning Oracle plsq..> 30-Jul-2013 11:05 5.9M
Learning SQL Second ..> 30-Jul-2013 11:05 1.5M
Linux Bible 2010.pdf 09-Aug-2013 12:44 11.5M
Linux Bible.pdf 30-Jul-2013 11:05 19.3M
Linux Command line a..> 30-Jul-2013 11:05 14.4M
Linux Command line a..> 30-Jul-2013 11:05 8.6M
Linux Cookbook Secon..> 30-Jul-2013 11:05 8.1M
Linux Network Admini..> 11-Aug-2013 14:29 5.0M
Linux Networking Coo..> 30-Jul-2013 11:05 4.2M
Linux Pocket Guide 2..> 30-Jul-2013 11:05 6.5M
Linux Server Hacks.pdf 30-Jul-2013 11:06 34.2M
Linux System Adminis..> 30-Jul-2013 11:05 4.3M
Linux System Adminis..> 30-Jul-2013 11:05 3.7M
Linux all in one for..> 30-Jul-2013 11:05 12.8M
Linux-101-Hacks.pdf 30-Jul-2013 23:07 1.6M
Log Analysis Deep Di..> 07-Aug-2013 18:11 323k
Lpi Linux Certificat..> 30-Jul-2013 11:05 5.9M
MCTS Self Paced Trai..> 11-Aug-2013 14:29 20.6M
MOS Study Guide for ..> 30-Jul-2013 11:07 24.2M
MS Access 2013 Insid..> 20-Aug-2013 07:57 30.9M
MS Excel 2013 Inside..> 20-Aug-2013 07:57 40.6M
MS Excel 2013 Plain ..> 20-Aug-2013 07:57 40.7M
MS Office Access 200..> 20-Aug-2013 07:57 10.1M
MS SQL Server 2008 A..> 11-Aug-2013 14:30 9.7M
MS Windows Registry ..> 20-Aug-2013 07:57 5.6M
Managing Raid on Lin..> 30-Jul-2013 11:05 1.6M
Microsoft Access 201..> 30-Jul-2013 11:06 43.5M
Microsoft Excel 2013..> 30-Jul-2013 11:06 39.3M
Microsoft Outlook 20..> 30-Jul-2013 11:07 53.9M
Microsoft Powerpoint..> 30-Jul-2013 11:06 42.4M
Microsoft Virtualiza..> 30-Jul-2013 11:06 44.3M
Microsoft Windows Ho..> 30-Jul-2013 11:06 23.1M
Microsoft Windows Po..> 11-Aug-2013 14:29 6.5M
Microsoft Windows Po..> 11-Aug-2013 14:29 4.3M
Microsoft Windows Sc..> 30-Jul-2013 11:06 5.4M
Microsoft Windows Sc..> 11-Aug-2013 14:30 34.0M
Microsoft Windows Se..> 11-Aug-2013 14:30 23.5M
Microsoft Windows Sm..> 11-Aug-2013 14:30 21.6M
Microsoft Windows XP..> 11-Aug-2013 14:30 19.3M
Microsoft Windows XP..> 30-Jul-2013 11:07 14.3M
Microsoft Windows XP..> 11-Aug-2013 14:30 14.3M
Microsoft Word 2013 ..> 30-Jul-2013 11:08 70.9M
Microsoft Word 2013 ..> 30-Jul-2013 11:08 60.7M
Network Know How.pdf 11-Aug-2013 14:30 11.2M
Network Troubleshoot..> 11-Aug-2013 14:30 2.6M
Network Warrior 2nd ..> 11-Aug-2013 14:30 8.5M
Network Your Compute..> 11-Aug-2013 14:31 28.8M
Networking Fundament..> 30-Jul-2013 11:07 8.4M
Networking all in on..> 30-Jul-2013 11:07 14.3M
Networking all in on..> 11-Aug-2013 14:30 14.3M
Networking for Dummi..> 11-Aug-2013 14:31 41.5M
Office 2007 Bible.pdf 09-Aug-2013 12:45 54.8M
Office 2013 Bible.pdf 09-Aug-2013 12:46 65.3M
Office 2013 all in o..> 30-Jul-2013 11:07 17.6M
Office 2013 for Dumm..> 30-Jul-2013 11:08 48.6M
Outlook 2013 for Dum..> 30-Jul-2013 11:08 32.3M
Perforemance Testing..> 06-Aug-2013 05:48 286k
Photoshop CC The Mis..> 14-Aug-2013 07:40 93.5M
Podcasting Bible.pdf 09-Aug-2013 12:45 18.4M
Powerpoint 2013 Bibl..> 09-Aug-2013 12:47 84.4M
Powerpoint 2013 for ..> 30-Jul-2013 11:08 53.2M
Practical Malware An..> 30-Jul-2013 11:07 10.1M
Pro Windows PowerShe..> 18-Sep-2013 20:49 11.9M
Professional Windows..> 30-Jul-2013 11:08 25.8M
RT Essentials.pdf 30-Jul-2013 11:08 2.7M
Removing Unwanted DL..> 30-Jul-2013 11:08 90k
Running Linux 5th Ed..> 30-Jul-2013 11:08 15.3M
SQL Pocket Guide Thi..> 30-Jul-2013 11:08 2.8M
SQL a Beginners Guid..> 30-Jul-2013 11:08 4.3M
SQL all in one for D..> 30-Jul-2013 11:08 20.1M
SQL for Dummies 7th ..> 30-Jul-2013 11:08 6.2M
SSL 101 Web Security..> 26-Sep-2013 15:00 304k
Smart Home Automatio..> 30-Jul-2013 11:08 17.8M
Spotting the Adversa..> 07-Aug-2013 18:12 1.5M
Start Here Learn Mic..> 30-Jul-2013 11:09 26.3M
TCP-IP Tutorial.pdf 30-Jul-2013 11:08 73k
Teach Yourself Visua..> 18-Aug-2013 21:11 110M
Teach Yourself Visua..> 18-Aug-2013 21:12 159M
The Linux Command Li..> 11-Aug-2013 14:30 6.4M
Training Guide Admin..> 30-Jul-2013 11:09 61.2M
Training Guide Confi..> 11-Aug-2013 14:32 61.6M
Training Guide Insta..> 30-Jul-2013 11:10 70.3M
Troubleshoot and Opt..> 11-Aug-2013 14:31 41.2M
Troubleshooting Moni..> 30-Jul-2013 11:08 94k
Troubleshooting Wind..> 11-Aug-2013 14:31 22.2M
Ubuntu Linux Bible.pdf 01-Sep-2013 13:07 45.5M
Ubuntu_Beginners_Gui..> 30-Jul-2013 11:08 8.8M
Ultimate_Computer_Re..> 18-Sep-2013 20:49 5.8M
Understanding DHCP.pdf 30-Jul-2013 11:08 72k
Understanding Frame ..> 30-Jul-2013 11:08 59k
Understanding JavaSc..> 30-Jul-2013 11:08 80k
Understanding Linux ..> 11-Aug-2013 14:31 11.5M
Understanding NAT.pdf 30-Jul-2013 11:09 52k
Understanding NDS.pdf 30-Jul-2013 11:09 59k
Understanding PHP.pdf 30-Jul-2013 11:09 62k
Understanding RAID.pdf 30-Jul-2013 11:09 66k
Understanding TCP-IP..> 30-Jul-2013 11:09 123k
Understanding VPNs.pdf 30-Jul-2013 11:09 101k
Understanding the OS..> 30-Jul-2013 11:09 75k
Understanding the Wi..> 30-Jul-2013 11:09 64k
Undertanding Microso..> 30-Jul-2013 11:09 62k
Upgrading Your Skill..> 11-Aug-2013 14:31 9.1M
Upgrading and Fixing..> 30-Jul-2013 11:09 11.2M
Virtualization For D..> 01-Sep-2013 13:06 9.2M
Win XP All-in-One De..> 01-Sep-2013 13:06 25.1M
Windows 2000 Command..> 11-Aug-2013 14:31 650k
Windows 7 Annoyances..> 30-Jul-2013 11:09 12.4M
Windows 7 Enterprise..> 30-Jul-2013 11:09 1.6M
Windows 7 Enterprise..> 11-Aug-2013 14:31 1.6M
Windows 7 Inside Out..> 30-Jul-2013 11:10 57.7M
Windows 7 Just the S..> 11-Aug-2013 14:31 8.7M
Windows 7 Plain Simp..> 30-Jul-2013 11:10 28.5M
Windows 7 Pocket Gui..> 10-Dec-2013 11:44 7.0M
Windows 7 Power User..> 30-Jul-2013 11:09 23.3M
Windows 7 The Defini..> 30-Jul-2013 11:09 23.1M
Windows 7 The Missin..> 30-Jul-2013 11:10 14.9M
Windows 7 Up and Run..> 30-Jul-2013 11:10 8.8M
Windows 7 for Dummie..> 30-Jul-2013 11:09 6.5M
Windows 8 Administra..> 30-Jul-2013 11:10 16.9M
Windows 8 Bible.pdf 30-Jul-2013 11:11 67.7M
Windows 8 Five Minut..> 30-Jul-2013 11:11 78.9M
Windows 8 Hacks.pdf 30-Jul-2013 11:11 42.8M
Windows 8 Inside Out..> 30-Jul-2013 11:11 34.0M
Windows 8 Out of the..> 11-Aug-2013 14:31 13.9M
Windows 8 Plain Simp..> 11-Aug-2013 14:32 28.8M
Windows 8 Secrets.pdf 30-Jul-2013 11:12 69.0M
Windows 8 Step by St..> 11-Aug-2013 14:34 91.5M
Windows 8 The Missin..> 11-Aug-2013 14:33 63.2M
Windows 8 Tweaks.pdf 18-Aug-2013 21:09 30.6M
Windows 8 and Office..> 01-Sep-2013 13:07 39.0M
Windows 8 elearning ..> 30-Jul-2013 11:11 43.4M
Windows 8 for Dummie..> 30-Jul-2013 11:10 11.8M
Windows 8_1 Product ..> 24-Oct-2013 03:19 10.2M
Windows Internals 5t..> 30-Jul-2013 11:11 18.1M
Windows Internals Pa..> 30-Jul-2013 11:11 21.7M
Windows Powershell 3..> 06-Aug-2013 07:13 18.1M
Windows Powershell C..> 30-Jul-2013 11:11 16.2M
Windows Powershell P..> 30-Jul-2013 11:11 3.5M
Windows Powershell U..> 30-Jul-2013 11:11 2.7M
Windows Powershell i..> 30-Jul-2013 11:12 20.7M
Windows Registry Tut..> 30-Jul-2013 11:11 109k
Windows Server 2008 ..> 11-Aug-2013 14:32 30.2M
Windows Server 2008 ..> 11-Aug-2013 14:32 14.0M
Windows Server 2012 ..> 30-Jul-2013 11:12 33.0M
Windows Server 2012 ..> 11-Aug-2013 14:32 9.0M
Windows Server 2012 ..> 30-Jul-2013 11:12 15.1M
Windows Services.pdf 30-Jul-2013 11:12 569k
Windows Small Busine..> 11-Aug-2013 14:33 26.7M
Windows Vista Admini..> 11-Aug-2013 14:33 19.7M
Windows Vista Inside..> 30-Jul-2013 11:13 44.0M
Windows Vista for Du..> 30-Jul-2013 11:12 11.9M
Windows XP Bible Des..> 11-Aug-2013 14:33 22.1M
Windows XP for Dummi..> 30-Jul-2013 11:12 5.0M
Windows_Tweaks_Guide..> 30-Jul-2013 11:12 4.2M
Wireless Home Networ..> 30-Jul-2013 11:12 7.5M
Wireshark Starter.pdf 30-Jul-2013 11:12 2.5M
Word 2013 Bible.pdf 09-Aug-2013 12:47 73.6M
grep Pocket Referenc..> 30-Jul-2013 11:04 1.5M
how-to-build-pc.pdf 30-Jul-2013 11:04 1.9M
Saturday, March 22, 2014
Computer network e-books
Wednesday, March 19, 2014
Ethical hacking and ethical hacker
Ethical hacking
Ethical hacking and a ethical hacker
are terms that describe hacking performed to help a company or
individual identify potential threats on the computer or network. An
ethical hacker attempts to hack their way past the system security,
finding any weak points in the security that could be exploited by other
hackers. The organization uses what the ethical hacker finds to improve
the system security, in an effort to minimize, if not eliminate, any
potential hacker attacks.
In order for hacking to be deemed ethical, the hacker must obey the below rules.- You have permission to probe the network and attempt to identify potential security risks. It's recommended that if you are the person performing the tests that you get written consent.
- You respect the individual's or company's privacy and only go looking for security issues.
- You report all security vulnerabilities you detect to the company, not leaving anything open for you or someone else to come in at a later time.
- You let the software developer or hardware manufacturer know of any security vulnerabilities you locate in their software or hardware if not already known by the company.
Tuesday, March 11, 2014
Hack Websites Using SQL Poizon and Havij
Hack Websites Using SQL Poizon and Havij
Requirements:
- A Brain ( Most Important )
- SQL Poizon ( Download )
- Havij 1.6 Pro ( Cracked Version Download )
- Basic Knowledge about Websites and SQL Injection
I
did not make these programs, nor did I most likely download them from
the original source. If you do not trust these, then just sandbox them.
You can download Sandboxie . Also the download to Havij is the pro/full version cracked. Want the regular one from the developers? Download Here
All Right, now that we have whatever we need, let the Tutorial BEGIN !! :)
Step 1 : Open up SQL Poizon
Step 2 : Click the "+" next to “All Dork" or just double click on “All Dorks". Next, select php. In the php section select “page.php?id="
Then, select “Engine:" then in “Engine:" select “Searchqu" you can put “max" whatever you’d like, but I put mine at 300. Note: “max" is the max amount of results your dork search will pull in. Sql poizon searches for websites with that dork that have sql vulnerabilities.
Then, select “Engine:" then in “Engine:" select “Searchqu" you can put “max" whatever you’d like, but I put mine at 300. Note: “max" is the max amount of results your dork search will pull in. Sql poizon searches for websites with that dork that have sql vulnerabilities.
Step 3 : Right
click on one of the links, then hover over “Send to Sqli Crawler".
Next, select “All". After this you will be brought to a screen that
looks like the one below. You will then want to click on crawl. Sql
poizon will crawl through the Searchqu search engine, search your dork,
and find any websites that are vulnerable or could be vulnerable to an
attack.
Step 4 : View a couple of the vulnerable websites in the “Vulnerable Links" box on the bottom half of Sql poizon.
Then, select the website you’d like to hack. Copy the url without the ’
(the apostrophe). Open up Havij and click register. For name enter:
“Cracked@By.Exidous" and for file find you folder location where havij
is and choose “HavijKey.lic". You will now have Havij Pro.
Step 5:
Find “Target:" and paste your vulnerable website in there.
Leave the rest by default and click “Analyze".
In the box at the bottom you will find information on your target such as:
- Host IP (Target website’s ip address)
- Web Server (What web server your target runs on)
- Powered-By (What your target is powered by generally php or asp)
- Keyword Found (A keyword about your target)
- Injection Type (The type of injection that Havij will use)
- DB Server (The type of database your target uses)
- Current DB (The database that havij detected)
Note: You may have more or less things displayed depending on your
target website. You can also find your target info by going to the
“Info" tab.
Step 6 : Click on the “Tables" tab, and hit “Get DBs". Once your target’s databases have loaded go ahead and find a table that looks like it could have interesting information, logins, admin info, or anything you’d like to snoop in.
I’ll be taking some customer info so I am going to my “customer" table.
Once, you select your desired table go ahead and click “Get Columns".
Havij will then proceed to get all of the columns in that table. Once
Havij loads the columns check each column you’d like to collect the data
from. Click “Get Data" and Havij will get information stored in each
column from the table you selected. Since I selected the “customer"
table from my “targets" database, Havij got data that included: ID,
parentName, street, city, state, zip, homephone, workphone, emergphone,
emergname, email, password, newsletter, savelogin, and ageNotice.
Step 7 :
Next I will be finding the admin’s data in an attempt to login in to
his cpanel or admin login. So, find a table that looks like it could
possibly admin or login. Anything of that sort will do. My table’s name
that the login is stored in is called “logins". I then checked “logins"
and pressed “Get Columns". Then, I proceeded to check each column and
hit “Get Data".
Step 8 : Once
I found the username and the password I had to decrypt the md5
encryption. To do this Havij has a built in MD5 Decrypter. Copy the
password, and click “MD5".
Step 9 : Now we need to find the admin login. To do this we need to click on the “Find Admin" tab. After that just click “start". If you need a different program you can use this one with a bigger admin text file, but I still prefer to use Havij’s built in one. But if you want, you can download Admin Finder from HERE
Step 10 : Finally, once you have found the admin login username and password, and the admin login page just go ahead and login! From there do whatever you’d like! Note: If you did not ever find the admin login information you may be able to find it by causing an error in the webpage. You might get an error like the following:
"Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/admin/domains/yourtarget.org/public_html/page.php on line 14But if you are Lucky Enough You might HIT the Jackpot LIKE me ! :)
Monday, March 10, 2014
Quantify Your Canine: A Romp With The Whistle Tracker
Quantify Your Canine: A Romp With The Whistle Tracker
ReadWriteBody is an ongoing series where ReadWrite covers networked fitness and the quantified self.
And so I joined in. A morning run around Telegraph Hill is now part of our daily ritual. On nice days, I walk to the office rather than take the streetcar, so Ramona gets outdoor time. And on weekends, we explore more of San Francisco—destinations like Aquatic Park, Fort Mason or even Crissy Field. It's exercise for me and for her.
But how much exercise is Ramona getting? Is it enough? And is she resting enough to recuperate? A new device from a company called Whistle Labs promises to answer that.
The Quantified Woof
I also set up my brother and sister-in-law with the Whistle app, so they can monitor Ramona’s activity. Whistle even detects the proximity of designated humans, so it knows if Ramona is taking a walk with me or with my husband.
The Tracks Of A Terrier
Before the Whistle, I was already quantifying Ramona in some sense: Most of my runs are with her, and a large part of the reason for my frenetic Foursquare activity is to mark all the spots where Ramona goes.But the Whistle’s reports gave me peace of mind that I was, indeed, being a good human to my dog. A comparison to similar dogs informed me that Ramona was simultaneously getting more exercise—75 minutes a day of activity—while still managing to get more rest than the average pup. Call it the Lake Wobegon effect, but this data pleased me.
I'm keen on using the Whistle to alleviate my separation anxiety when we’re apart for the Thanksgiving holiday. The flight to the East Coast is too long for Ramona, so she stays behind in California with family. I’ll be able to keep an eye on her remotely, and reassure myself that she’s being well-cared for.
The Internet Of Dogs
Is that worth the cost? The Whistle is available for $99.95 for preorders, with shipments arriving later this year; it will go on sale at retail establishments for $129.95 next year. (A similar tracker, the FitBark, starts shipping in January.) While I dote on Ramona, I don't spend a lot on toys or treats for her; she’s pretty happy chasing a tennis ball around the house.For everyday tracking, I don’t think I need to quantify my dog: I can tell with a look that she's well-exercised. (And she lets me know if she’s bored.) But the ability to keep track of her remotely is the real selling point for these devices, I think.
.
The dependence on Wi-Fi for data uploads is the main limitation of
the device. Eidelman tells me an update which lets it transfer data via
Bluetooth to phones, and then up to Whistle’s servers over their
wireless connections, is coming. Longer battery life would help, too, so
you don't have to hand a charger to a host who’s taking care of your
dog and explain how to maintain the Whistle.But those improvements seem inevitable, given the rapid pace of innovation in hardware these days. The Internet of Things is coming to our homes; why shouldn't our pets be a part of it?
Disclosure: Canon, the official camera of Point-of-View Publishing, provided ReadWrite with an EOS Rebel SL1 digital SLR camera and paid to be mentioned in a caption and sidebar in this post.
The Quantified Fish: How My Aquarium Uses Raspberry Pi
cats get a lot of love on ReadWrite. Owen uses a fitness tracker to monitor his terrier. Adriana uses the Internet of Things to keep tabs on her cats while she’s at work.
Clockwise from
center: breadboard, temperature sensor, Pi Cobbler, power source, jumper
wires, 4.7k resistors, Raspberry Pi Model B, and PiBow rainbow case.
A Raspbian installation. It'll take about 20 minutes to get to 100%.
The labels on the sides of the Pi Cobbler show you where to put wires next to it.
Used painter's tape for the first attempt; regular Scotch tape for the second.
Fintan surveying his new high-tech setup.
As the owner of a betta fish, I didn’t think I’d also get a chance to join in on the fun. However, with the help of a Raspberry Pi, I found a way to make the world’s most low-maintenance pet even easier to care for than before.
The solution? A Raspberry Pi waterproof temperature
sensor. With the help of the Pi, the thermometer delivers the exact
real-time temperature to any computer on the local network that queries
for it. The hack can even be set up to deliver the temperature to any
computer on the Internet, provided you have a server configured to
receive its requests.
This project required both hardware and software
tinkering. I’ve never done any hardware hacking before, but I was able
to make it work on the first try with a tutorial from Adafruit.
Here’s how I used a Raspberry Pi to quantify my fish.
Get Ready: Assembling Hardware And Software
I’m kind of a crazy fish person. My pet, Fintan, is the
subject of much aquarium testing, a mathematically calculated diet, and
plenty of photo shoots. No price is too high for making his life better.
In this case, the price was about $50, including the Raspberry Pi. Aside from the Pi, its case, and its power source, I bought:
- A breadboard, which is a construction base for engineering prototypes. It’s great for beginning electrical engineers since there’s no soldering required.
- A pack of jumper wires. Mine came with the breadboard.
- A DS18B20 waterproof digital temperature sensor. This is the one Adafruit recommends. It looks simple, but it can transmit a lot of data.
- A Pi Cobbler, which is Adafruit’s cute name for a 26-pin header. It has abbreviations on the sides that show you where to insert wires into the breadboard.
- A 4.7k resistor. The temperature sensor requires a very low voltage, so I used this to reduce the amount of current that goes through the project.
- A wireless USB adaptor (not pictured), to operate the Pi "headlessly"—without its own monitor, mouse, or keyboard—and get it operating on my local network.
After I took a good shot of the materials for my article,
it was time to actually do some work. I put my Raspberry Pi in its case,
slid my SD card—with its initial setup software NOOBS already installed—into the slot, and connected the Pi to my TV screen and the power outlet.
In my experience, every time you do a new project with
Raspberry Pi, you need to do a fresh install of NOOBS (New Out Of the
Box Software), so in my house we keep a copy of it on an SD card. In
this case, as with every other Pi project I’ve done so far, I used it to
install Raspbian, a version of the Linux operating system Debian
customized especially for the Pi.
Tinker Like A Mad Scientist
It takes 20 minutes for Raspbian to install, so in the
meantime it was time to assemble the hardware parts—the breadboard, Pi
cobbler, wires, and temperature sensor. Fortunately, if you’re using the
Adafruit tutorial, all you have to do is match your wires to the picture.
This is where the Pi Cobbler really came in handy. I don’t
know much about circuits, and I only have a shaky high school
understanding of Ohm’s Law. But the Cobbler shows you where to put the wire for power, the wire for data, and the wire for grounding.
The hardest part, in fact, was taping the wires inside the
temperature sensor to the wires that fit inside the breadboard.
Actually, the tutorial says to just stick the temperature sensor wires
in the breadboard, but I just kept fraying and breaking the copper when I
tried to do that.
I made one attempt one at taping, which you can see in the image nearby. When it later didn’t work, my husband retaped it.
The Software: Or, Why Python Is Basically English
When Raspbian finally installed, it was time to write a
program to tell the temperature sensor how I wanted my data delivered.
Of course, this non-developer just copy-pasted the code from Adafruit.
Here’s the gist of the program: First, it sets variables
for the computer so it knows where the sensor is writing its data and
how to call it up. Next, it tells the computer to read that data into
those variables. Finally, it plugs the temperature value, which is
returned in Celsius, into a conversion formula to get Fahrenheit, and
prints out both those values.
I never learned Python and I could tell that much even
before I asked a Python programmer to spell it out for me. (He said I
already had it right.) It’s English with a funny syntax. This is why
it’s lauded as a language to teach to kids, and also why it’s been
around 23 years.
Python and Raspberry Pi also go great together. Inventor Eben Upton said it was named for Python,
but he thought spelling it like an irrational number was too good to
pass up. Since Raspberry Pi was designed to show kids how to code, it
makes sense that Upton wanted to make sure it would run one of the
easiest languages to teach to anyone.
I saved the program as Fintan.py in the Raspberry Pi’s
home folder. You can name it anything as long as you remember what you
named it.
Putting It All Together: Test, Dunk, And Go
This isn’t part of Adafruit’s tutorial, but it was
important to me to check the aquarium’s temperature remotely. Otherwise,
why set it up?
I began by putting the wireless USB adaptor in the
Raspberry Pi’s USB port in order to connect it to the Internet. The goal
is to be able to query the Raspberry Pi from any computer on the
network, but the computer won’t know where to look until you set a
static IP address for the Pi. You do this through your home router, and
it’s different depending on which brand you have. Look in your router’s
documentation to see how you set static IPs.
My Raspberry Pi’s static IP is 192.168.2.16. So in order
to make sure the Pi would transmit data headlessly, I queried it from my
Mac’s Terminal application. (If you want to do this from a PC, you’ll
need to install PuTTY before trying it out on the command line.)
In order to access the Pi remotely, I first queried it by my username and its IP address.
ssh pi@192.168.2.16
The Pi responds by asking me for user Pi’s password:
pi@192.168.2.16's password:
The password is always “raspberry” by default.
Once logged in, it’s time to access the Python program we
wrote earlier. You need to do this as a superuser, which means you type
“sudo” (short for “super user do”) to tell the computer to do something
that it would otherwise ignore from users with fewer permissions:
sudo python fintan.py
Immediately, I got a line of temperature readings that
updated once per second. I tested it by putting my finger on it to see
it warm up instantly. It was time to set up the Pi:
sudo shutdown now
I unplugged the Pi from my TV monitor and the wall outlet,
and moved it over to Fintan’s aquarium, dunking the waterproof end of
the thermometer in the tank. Now, I can check the temperature from
anywhere on my local wireless connection.
See also: 12 Cool Projects For Your Raspberry Pi
The long term goal is to configure a Web server to receive
requests from the Pi and deliver them to a website, or better yet, an
alert on my phone. I’m still researching how to best do that.
For now, I’m satisfied just having the most high-tech aquarium on the block.
Arduino lcd
LiquidCrystal - "Hello World!"
The LiquidCrystal library allows you to control LCD displays that are compatible with the Hitachi HD44780 driver. There are many of them out there, and you can usually tell them by the 16-pin interface.This example sketch prints "Hello World!" to the LCD and shows the time in seconds since the Arduino was reset.
The LCDs have a parallel interface, meaning that the microcontroller has to manipulate several interface pins at once to control the display. The interface consists of the following pins:
A register select (RS) pin that controls where in the LCD's memory you're writing data to. You can select either the data register, which holds what goes on the screen, or an instruction register, which is where the LCD's controller looks for instructions on what to do next.
A Read/Write (R/W) pin that selects reading mode or writing mode
An Enable pin that enables writing to the registers
8 data pins (D0 -D7). The states of these pins (high or low) are the bits that you're writing to a register when you write, or the values you're reading when you read.
There's also a display constrast pin (Vo), power supply pins (+5V and Gnd) and LED Backlight (Bklt+ and BKlt-) pins that you can use to power the LCD, control the display contrast, and turn on and off the LED backlight, respectively.
The process of controlling the display involves putting the data that form the image of what you want to display into the data registers, then putting instructions in the instruction register. The LiquidCrystal Library simplifies this for you so you don't need to know the low-level instructions.
The Hitachi-compatible LCDs can be controlled in two modes: 4-bit or 8-bit. The 4-bit mode requires seven I/O pins from the Arduino, while the 8-bit mode requires 11 pins. For displaying text on the screen, you can do most everything in 4-bit mode, so example shows how to control a 2x16 LCD in 4-bit mode.
Hardware Required
- Arduino Board
- LCD Screen (compatible with Hitachi HD44780 driver)
- pin headers to solder to the LCD display pins
- 10k Potentiometer
- breadboard
- hook-up wire
Circuit
Before wiring the LCD screen to your Arduino we suggest to solder a
pin header strip to the 14 (or 16) pin count connector of the LCD
screen, as you can see in the image above.
To wire your LCD screen to your Arduino, connect the following pins:
click the images to enlarge
image developed using Fritzing. For more circuit examples, see the Fritzing project page
To wire your LCD screen to your Arduino, connect the following pins:
- LCD RS pin to digital pin 12
- LCD Enable pin to digital pin 11
- LCD D4 pin to digital pin 5
- LCD D5 pin to digital pin 4
- LCD D6 pin to digital pin 3
- LCD D7 pin to digital pin 2
click the images to enlarge
image developed using Fritzing. For more circuit examples, see the Fritzing project page
Code
/*
LiquidCrystal Library - Hello World
Demonstrates the use a 16x2 LCD display. The LiquidCrystal
library works with all LCD displays that are compatible with the
Hitachi HD44780 driver. There are many of them out there, and you
can usually tell them by the 16-pin interface.
This sketch prints "Hello World!" to the LCD
and shows the time.
The circuit:
* LCD RS pin to digital pin 12
* LCD Enable pin to digital pin 11
* LCD D4 pin to digital pin 5
* LCD D5 pin to digital pin 4
* LCD D6 pin to digital pin 3
* LCD D7 pin to digital pin 2
* LCD R/W pin to ground
* 10K resistor:
* ends to +5V and ground
* wiper to LCD VO pin (pin 3)
Library originally added 18 Apr 2008
by David A. Mellis
library modified 5 Jul 2009
by Limor Fried (http://www.ladyada.net)
example added 9 Jul 2009
by Tom Igoe
modified 22 Nov 2010
by Tom Igoe
This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/LiquidCrystal
*/
// include the library code:
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("hello, world!");
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis()/1000);
}
LiquidCrystal Library - Hello World
Demonstrates the use a 16x2 LCD display. The LiquidCrystal
library works with all LCD displays that are compatible with the
Hitachi HD44780 driver. There are many of them out there, and you
can usually tell them by the 16-pin interface.
This sketch prints "Hello World!" to the LCD
and shows the time.
The circuit:
* LCD RS pin to digital pin 12
* LCD Enable pin to digital pin 11
* LCD D4 pin to digital pin 5
* LCD D5 pin to digital pin 4
* LCD D6 pin to digital pin 3
* LCD D7 pin to digital pin 2
* LCD R/W pin to ground
* 10K resistor:
* ends to +5V and ground
* wiper to LCD VO pin (pin 3)
Library originally added 18 Apr 2008
by David A. Mellis
library modified 5 Jul 2009
by Limor Fried (http://www.ladyada.net)
example added 9 Jul 2009
by Tom Igoe
modified 22 Nov 2010
by Tom Igoe
This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/LiquidCrystal
*/
// include the library code:
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("hello, world!");
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis()/1000);
}
Subscribe to:
Posts (Atom)