I must admit I do not spend a lot of time hacking robots, although the Maker space is ripe with opportunities. The Raspberry Pi and Arduino universe is over-run with cool robotic gadgets.
When I was touring the University of Idaho robotics lab with Dr. John Shovic last month, he introduced me to one of the labs’ robots named “Baxter.” (John likes to keep things simple.)
When I asked John what Baxter could do, he said, “He makes a great cup of coffee.” No wait – what? Now I know there are lots of robots that do some cool stuff. There is one that cleans your floors. There are a bunch of Maker robots that can follow a line, back away from walls, and move through obstacle courses. But make coffee? Now this is cool! Exactly the kind of thing a robot should do!
I know you smoke breathers may find this hard to believe, but Ol’ Sopwith is finally going to enter the universe of 3D printing. I have dragged my feet on this technology for a couple of reasons.
I did not want to spend the money. $300 USD 3D printers are cheap and temperamental, and $2500 USD printers are way above what I am willing to pay.
I was afraid it would not be useful. (I do not want to waste time printing toy objects.)
I did not have the time to invest in learning a whole new technology from the ground up.
I did not have space for it.
I did now want a noisy, smelly device in my office or workshop.
Time have changed. I have a couple of projects I am working on that could really use the capabilities of a 3D printer. Plus the cost of really good printers has come down and the capabilities have gone up dramatically.
After extensive research, I decided the best printer on the market for price/performance is the Prusa i3 MKS3. The are built in Czechoslovakia by a company founded by Josef Prusa, one of the innovators in the 3D early days.
I ordered the kit version and am expecting it will take about 4 hours to assemble. It should arrive in a couple of days. I will post blog entries about my assembling, testing, and printing experiences so you can follow along.
I had the great fortune to spend a long Memorial Day weekend in Coeur d’Alene, ID. Anytime I am on the move, I like to check out whom of my acquaintances live in the area so I can buy them a cup of coffee.
On this trip, I struck pay dirt! Dr. John Shovic, the founder of SwitchDoc Labs lives there. I first “met” John virtually, way back in the early Pi days when he wrote for the brand new PiMag.
He wrote a series of articles about his adventures building a Pi based weather station and mounting it on a Ham radio tower in the remote Caribbean island of Curacao. I was fascinated with his story and followed it closely. Only John would be crazy enough to come with this idea – and then act on it.
For those who are interested in reading his articles, I have included the download links to the magazines below:
John was kind enough to meet me at the beautiful Coeur d’Alene Innovation Den and show me around. John has his robotics lab here and he spends most of his time with his students from the University of Idaho where he teaches. Many of you know John by following his endless projects and innovations at SwitchDoc Labs and his many KickStarter projects.
What a privilege it was for me to be able to spend time with this brilliant, fun, and laid-back man. As I was flying back home thinking about my great holiday, I kept trying to figure out how I was going to keep up with John and all of his cool Maker projects.
I will have more to say about John in future blog posts.
A very long time ago I wrote a blog about tracking airplanes. I was living in London at the time very near London City airport. That project was a lot of fun, so I hacked together another Pi setup to track airplanes here in the Los Angeles area.
I decided to install PiAware and provide my tracker feed to FlightAware. Why? Because if you do, you are given an Enterprise level account (value – $89 USD/month). I fly a lot and use the FlightAware app on my Android phone all the time. It is so easy to track my inbound airplane when I am waiting for a flight.
This is part three of the ‘How-To‘ series on leveraging the Zabbix IT monitoring platform using a Raspberry Pi. Part-1 showed how to install the Zabbix server on a Pi. Part-2 showed how to get the Zabbix agent running on a Pi. In this post, I show how to graph the CPU and GPU temperature of a Pi and the temperature/humidity readings from a precision AM2315 temperature sensor.
The Zabbix platform is incredibly flexible. It allows nearly endless possibilities of tracking and graphing data using custom User-Parameters. This is very useful to Makers since it allows the monitoring of sensor data on custom dashboards.
You can download the ‘How-To’ document here. I have also provided a zip file containing the custom scripts and agent configuration user parameter section on the downloads page.
Let me know how you use the Zabbix platform with your Pi fleet to monitor and track sensor data.
In my last post I showed how to install the Zabbix IT monitoring platform on a Raspberry Pi. This highly capable and flexible open-source platform provides the ability to track the status and performance of your Pi fleet.
In this post, I provide the second part of a Zabbix implementation on a Pi: How-to install and configure the Zabbix agent and create dashboards on the server.
You can download the detailed ‘How-To’ document in PDF format here.
I received an interesting Email last week from someone who wanted to know if I knew how to monitor an AM2315 temperature sensor attached to a Raspberry Pi using a Zabbix server.
My response? Ummm… What is Zabbix? After some brief research, I was introduced to another stellar open-source project with terrific documentation.
Zabbix is a platform used by IT professionals all over the world to monitor their infrastructure. The platform consists of a server component and a deployable agent that runs on nearly anything. The agent is used to report back to the server performance metrics such as memory, disk, CPU utilization, and a boatload of other metrics. All in a beautiful and configurable dashboard.
The Zabbix system is very flexible and allows the creation of custom agent commands that allow you to configure and monitor any platform.
I was so intrigued by this newly discovered gem, I downloaded and installed it on a Raspberry Pi3. I have written a ‘How-To’ document that walks through the process.
In upcoming posts I will show how cool this platform really is. In fact, I will even show how to report temperature sensor and other data to a Zabbix server.
For Makers that need an accurate clock for their projects, the Raspberry Pi does not have one. In order to save costs and board space, a hardware clock is missing in all versions of the Pi. Fear not. There are many options available if you need an on-board clock for a project.
I have written a ‘How-To‘ document that walks through the details of getting a real-time clock (RTC) up and running on a Raspberry PI. I know there are plenty of resources on the Web that show how to do this, but I like to take the extra time to write a complete document, not just a list of bullet points.
Makers that are new to the Raspberry Pi and its SBC brethren appreciate having the screen-shots that make it easier to follow along. As long as my ‘How-To’s’ help beginner or intermediate Makers create cool things, I will continue to write documentation.
Hello to all my smoke-eating Maker friends. O’l Sopwith has a story to tell. In my February 1st post, I posted the pure Python source code and updated the implementation documentation for the ever-so-popular AM2315 temperature sensor.
I did this after receiving an Email from a fellow Maker who wanted to know why my sample AM2315 code did not work with Python3. The day after I published that blog entry, a comment was posted stating they could not get their sensor working. The AM2315 was visible in the i2cdetect test, but it would not return any data. The Python code crashed and burned.
About a week of communicating back-and-forth to troubleshoot the problem, this is what we did:
Turned on Debug mode in the python script
Made sure the device was wired correctly
Made sure the correct software was installed
Disconnected all other devices from the Pi
Ran the SwitchDoc Labs test script (same stack trace)
Ensured the Pi had a 2.0 amp power supply
About the same time this was going on, the mate who asked about the Python3 port downloaded and tested the new code. He could not get it to work either. Thinking he had a bad sensor, he set up a test harness and tested his sensor on an Arduino. It worked fine. After some fiddling around, he determined the MAXREADATTEMPT = 3 on line 23 was too small a value. He changed it to 10, and his sensor worked fine.
After more than 5 years, I still get an occasional Email from Makers who ask questions about the Aosong AM2315 temperature/humidity sensor. I got one this week asking why my AM2315 python code did not work with Python3.
This nudged me to take a look at my code and figure out what it would take to get it to work with Python3. Next thing you know, I decided to remove the underlying dependency on any C code libraries and ensure my sample Python code works in both Python2.7 and Python3 without modifications.
To do this, I rely on two Python modules. The first is the great code written by our friends over at Adafruit. They have created a Rapsberry Pi GPIO code module written in pure Python. The second module is from the innovative folks over at SwitchDoc Labs.
I have updated the AM2315 Implementation Guide with the new changes. I also modified the SwitchDoc code so that it will work with Python3.
Now it is time for a rant. If you are a Python programmer, it is time for you to get serious about Python3 if you are still clinging to your Python2.7 worldview. All new code you write should be written in Python3. Python2.7 has an End Of Life date on January 1, 2020. There is a lot of 2.7 code out there that will work in Python3 with just a few changes. In fact, the only changes I made to get the SwitchDoc code to work was putting parenthesis around the print statements. EOR. (End of Rant)
You can download the updated implementation document with a code sample here. Thanks to Adafruit and SwitchDoc Labs for being a part of the Open Source community.