Cats in Motion

To help build a perfect shelter for feral cats and protect them from the harsh climate. To reduce suffering for those who have no voice.

Similar projects worth following
Prince Edward Island is Canada's smallest province and a large feral cat population. Our Cat Action Team (CAT) works with dozens of volunteers to care for stray and feral cats. Shelters in a community with a large population of outdoor cats who aren't spayed or neutered may experience these problems:
- More cats entering shelters as a result of trapping feral kittens young enough to be socialized (tamed) and feral adults
- A rise in euthanasia rates for all cats because adult feral cats can't be adopted
- Euthanasia of adoptable cats when cage space runs out
- Costs associated with trapping and/or caring for and euthanizing feral cats

Who Am I ?

I am an IT analyst/programmer and an Engineering Hobbyist. I started with the Raspberry Pi and moved on to Receivers and Sensors. EnOcean Pi connects energy harvesting wireless devices with Raspberry Pi to help automate networks and automation systems at home or in the workplace. I also completed many Roads Tests and one design competition with Element 14. I am also an animal advocate and speak up for animals welfare issues in my country and the world through social media.

What is Cats in Motion Project ?

The objective of this pilot project is to gather information on feral cats in one or more colonies and their shelters. The question is what type of materials used in constructing a shelter best protects the cats ? Canada indeed has a harsh climate with winter's temperature in my province dipping to –25C. By measuring the air humidity , temperature and precipitation we can maybe evaluate the most cost effective shelter to help these cats. I am proposing a low cost infrared camera to not only measure the temperature of the cats and detect any hot spots for injuries or diseases. Also this has the ability to count the number of cats.

Proposed Hardware

Weather stations can cost hundreds of dollars so I a proposing a weather station and infrared camera for a fraction of the cost.

I will be using the Texas Instrument SimpleLink Sensor Tag supporting Bluetooth Smart, 6LoWPAN and ZigBee. Ten sensors packed on one device ! I have ordered the Sensor Tag and cannot wait to explore the possibilities.

Debug DevPack for Simple Link Sensor Tag
This device will add JTAG debug capability. There is a free license for Cod Composer Studio. I have some experience with using the CC3200. And more exciting is pads for 3 Grove sensors.

Beaglebone or Raspberry Pi 3
You can connect to the sensors using Beagle but now there is the Bluetooth enabled Raspberry Pi 3. But the Pi3 is difficult to order in Canada. I'm hoping that will change as I have completed a few Road Tests and design contests with the Raspberry Pi . But I am curious about the Beagle Bone and will use this as an alternative.

The range of the Zigbee is 100m or 300 feet and can be extended with a mesh network. The maximum number of devices is 200. This would be a pilot project and not involve 200 devices but I could set up a network with maybe two or three colonies.

I have completed projects with the Raspberry Pi camera and its awesome. Given the proper enclosure it can be placed outside. Wireless is not needed as the Raspberry Pi can be interfaced with Dropbox to send images or videos to the cloud and images are available on smart phones or your computer. I also have the Raspberry Noir for night vision. A sensor to detect the change in light may be used to switch the regular camera on or night vision on depending on the readings.
My first choice would be Panasonic's Grid-Eye sensor. This includes a 8x8 (64) pixel array infrared detection sensor. Digital output (I2C) for thermal presence, direction and temperature values. The built-in lens includes a 60 degree viewing angle. This is programmable and has the ability not only to measure the temperature of an animal but also count their presence,

Proposed Software

Raspberry Pi
I would be using the standard tools recommended by the Raspberry Pi Foundation to format and write the image to the micro SD card. I would enable Bluetooth on the Pi and pair it up with the sensor tag. Should I not be able to order the Raspberry Pi 3 in a timely way, then I will use a Bluetooth dongle on my Raspberry Pi 2.

Cloud Development
Texas Instruments has two free applications to connect to the cloud . The applications are for Android and IOS smart phones. But I want to take this further. They are also partners with EvoThings Studio (an open source and free) and Temboo .


More details to come ! This project is to use technology to determine the best materials for a cat shelter and how this may impact of the feral cat's well being. How can we measure...

Read more »

  • 2 × Raspberry Pi 2
  • 1 × Raspberry Pi Camera
  • 1 × Raspberry Pi Camera Noir
  • 1 × TI SimpleLink Sensor Tag
  • 3 × Battery Packs for Raspberry Pi Computers

View all 7 components

  • Testing Node-Red

    Brenda Armour04/06/2016 at 22:48 0 comments

    I am experimenting with my Blackberry Z10, Simple Link Sensor Tag and Node-Red on my laptop. Once I have configured the Sensor Tag Node with its MAC address , I started receiving notification in the debug window. The MAC address was easily obtained from my application on the Blackberry. So now I have set my threshold for Ambient Temperature for 18.0 C. Anything equal to this or above this should send a warning message to the debug window. I can also setup Twitter or Email notifications if the threshold has been exceeded.

    For this testing stage I have my Blackberry connected to the sensor tag and sending sensor data to IBM Bluemix Cloud. This is only phase 1. I need to replace the smart phone with an IoT gateway and build a mesh network using Xbee modules to meet that goal of distance. Before that I would like to test email notification if a defined threshold has been reached. The Ambient Temperature in my room is about 18.2 C

  • SimpleLink Sensor Tags did arrive !

    Brenda Armour04/05/2016 at 22:42 0 comments

    SimpleLink Sensor Tag

    This can be powered with a coin battery for a year and packs 10 sensors on one small form factor. The sensors for this project that I will be focusing on include:

    • IR Thermopile Temp Sensor (TMP007)

    Uses sensitythermopite to measure the infrared energy being emitter from the surface of objects.

    • Humidity Sensor (HDC1000)

    A high accuracy digital Humiditysensor with a temperature sensor.

    • Altimeter Pressure (BMP280)

    Applications for barometric pressure sensors include weather monitoring, elevator / stair case detection, drop detection or indoor-navigation

    • Ambient Light Sensor (OPT3001)

    One can think of luminous flux as a measure of the total "amount" of visible light present. A given amount of light will illuminate a surface more dimly if it is spread over a larger area, so illuminance (lux) is inversely proportional to area when the luminous flux (lumens) is held constant. Measurement can detect if there is a full moon on a clear night, direct sunlight or a very dark overcast day.

    One challenge was to upload the BLE sensor tag on my Blackberry Z10. I was able to find a SDK to install and with the version of Android on the phone there are a few limitations.

    Xbee and ZigBee

    1 XBee Explorer Dongle

    2 XBee modules Series 1

    These are the simplest and apparently plug and play. This is the very popular 2.4GHz XBee module from Digi. These modules take the 802.15.4 stack (the basis for Zigbee) and wrap it into a simple to use serial command set. These modules allow a very reliable and simple communication between microcontrollers, computers, systems, really anything with a serial port! Point to point and multi-point networks are supported. I am hoping to receive these soon.

    Sensor Data to Cloud

    I am leaning towards IBM IoT Foundation service. I created a free account with IBM for BlueMix. The possibilities of creating thresholds to send alerts are limitless. Below is my first test setup using Node-RED.

  • Fast Action to get Your App on Android

    Brenda Armour03/26/2016 at 21:33 0 comments

    EvoThings is pretty cool. Download the workbench to your PC and the viewer to Android and you can quickly prototype your app. Still waiting for my Sensor Tags but this is how quickly the demo shows on my Blackberry.

  • Raspberry Pi Camera and DropBox

    Brenda Armour03/26/2016 at 19:19 0 comments

    Raspberry Pi camera and Dropbox

    I have used the Raspi_Cam_Web_Interface to capture stop motion pictures and videos. But I decided I would like the process to be more automated. I looked at pushing the media to a cloud so I would not have to manually download the images. I decided to try Dropbox and it works well with very little python code.

    You need to set up a DropBox account and then set up an app to link to your Raspberry Pi. You can set up your app at:

    Then choose “Dropbox API app”, “Files and Datastores”, and answer the final question “Can your app be limited to its own, private folder?” – either answer is OK, depending on your needs.

    It supplies an App Key and App Secret. You will be using this to link to your Pi.

    Now we want to install Dropbox for Raspberry Pi:

    git clone

    Once downloaded you can make the script executable by using the following command:

    chmod +x

    The first time you run the script you will be asked to enter the App Key and App Secret.


    HINT:Copy the Keys to a text editor first rather than copy and paste from Putty to DropBox. Otherwise it does not play nice and you may have errors.I used Notepad. Once your Keys are accepted it will ask you to open up a URL to confirm connection.Assuming you are using Putty, copy the contents to your clipboard and paste to a text editor. Now copy the URL to a browser. You may receive a message from Dropbox that the connection is successful but unless you perform the last step in Putty the token may still fail. Some oauth tokens are corrupt so you may have to try a couple of times.

    RaPiCamcoder stores media files in /var/www/media. So I want a script to pull the .jpg files to Dropbox and see the media on my Blackberry and Laptop in real time.I tried a couple of test.jpg and it seemed to work like a charm.

    I used this script to start the downloader:

    pi@raspberrypi ~/Dropbox-Uploader $ ./ upload /var/www/media/ {*.jpg*} /Apps/PiRover

    This was tricky. Most documentation did not include a target file for the upload and failed. I took several scripts and reduced the code to one line and added the target DropBox. The command tells Raspberry Pi to upload all files ending in .jpg in /var/ (location that Raspi_Cam_Web stores the images) and upload to my DropBox App called PiRover.

    I setup a full Dropbox instead for final testing and called it PiRover. When I ran the script the images stored in /var/www/media uploaded to DropBox at a fairly good speed and now is accessible on my Blackberry and Laptop in minutes.

    A cron job is added to run the script every minute and I’m done! I will add a cleanup cron job so the SD card does not fill up too fast.

    The camera in the foreground is the Raspberry Pi camera and the second is the Raspberry Pi Noir. I plan to include a Infrared light for the Raspberry PI Noir for night vision.

    Below is a sample screen shot from DropBox.

    So there is more work on cameras. Enclosures will have to be weather proof .

View all 4 project logs

  • 1
    Step 1

    Sending Sensor Data to IBM Bluemix

    I used this excellent video by Ryan Baxter exclusively to achieve the deployment of sensor motion data to Bluemix The video was made in Nov 12, 2014 and Bluemix has changed. His video can be found here: . He was using a Beaglebone Black as a gateway and I am using a Raspberry Pi B. I had to make some modification to his code to accommodate the changes to Bluemix which I have documented. The screenshots in the video have changed so if you do follow the video than you may have to improvise to get where you need to be. Basically all you are doing is connecting a device and than creating a service. Then you can create a APP. You also need to sign up for a free trial from IBM. If I missed a step please let me know

    At your terminal (I'm using Putty) use Git command to clone the repository . Found here -

    git clone

    Move to the publish directory and execute the command npm install – You may see some warnings but as long as they are not errors it should be okay.

    Now lets set up our Raspberry Pi in Bluemix ;

    Console for IBM. Click on Catalog.

    Select Internet of Things on the left. Now select Internet of Things

    Under Connect you device – click on Launch dashboard

    Select Create Device Type

    Select Create device type:

    Name your Device. Add the MAC address for the Pi. The MAC address can be found using ifconfig. All other fields are not mandatory

    Generate you credentials . This is where I had to modify the code. During the setup you have to create a to store you credentials generated by Bluemix. This screen shot shows what I copied from Bluemix to Notepad. I changed the field names to match his code. My credentials have changed so I'm not concerned about showing them. The device.cfg shows one set of credentials modified to work in the program. If you view his video the syntax has changed to the example in Notepad. Use sudo nano within the publish directory to copy your credentials to that was generated by Bluemix.

    Now we can start the program from the publish directory.

    Node sensor-tag.js

    Make sure your sensor tag is connected and you should see this in Putty.

    Lets go back to Bluemix. Connected to fox tracker

    Sensor data coming in !

    I have created an app for the Fox Tracker .

    Click on view App. I also imported a node red flow from the git repository.

  • 2
    Step 2

    Setting up Node Red Palette

    I have the latest version now of node red (v 15.2) There are 225,000 modules available in their library which can be found here.

    I intend to add a camera for the project. The idea is to measure Indoor Weather conditions vs Outdoor conditions. One of the biggest challenges for feral cats is surviving winter conditions in Canada. I am using Freeboard for the dashboard. Info on Freeboard can be found here. I am using the sensor tag to measue inside conditions and the module Open Weather Maps:

    Install Open Weather Map. This will install two nodes. Two nodes that get the weather report and forecast from OpenWeatherMap. An API key is required to use these nodes. To obtain an API key go to OpenWeatherMap.You must register. Copy the key to Notepad and then copy the key to the node info. I entered my current latitude and longitude to get a current location where I live.

View all instructions

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates