All posts by raudette

Fish Feeder Project – Part 2 – Completed!

After seeing the simple Automatic Fish Feeder on Thingiverse, I immediately ordered the required parts and set about modifying the design for my purposes.

Fish Feeder - Original Model
Fish Feeder – Original Model

I liked this particular design, as we only have a 2 bettas in 2 bowls, and we need to ensure only a couple of very tiny pellets drop with each feeding.  I did want to make a few changes.  It was not clear how the motor was controlled in the original design – I wanted to use an optical slot sensor to detect when to start and stop the rotating disc.

With OpenSCAD and Inkscape, I modified the original design.  I added slots to the rotating disc, which could be detected by the slot sensor, and modified the support to suit my fish bowl.

Completed Fish Feeder
Completed Fish Feeder
Parts and Assembly Notes
  • Arduino Nano
  • 9V DC power supply
  • Optical Slot Sensor (I used an Omron EESX1002-W3A – I just picked one at random from my local electronics store)
  • Geared motor, DealExtreme SKU 214121
  • TIP120 transistor
  • 1N4001 diode
  • Wires, resistors as per schematics
  • Prints of Support-RichardMod.stl, discwslots.stl, Lid_for_motor.stl (files below)

The motor is connected to pin D9, and wired as per https://www.arduino.cc/en/Tutorial/TransistorMotorControl

The slot sensor is connected to pin A0, and wired as per http://www.martyncurrey.com/connecting-an-photo-interrupter-to-an-arduino/
I glued the slot sensor to the side of the support

It took some code tweaking to get the disc to stop at every hole.  I couldn’t control the speed of the motor with pulse width modulation – perhaps because it’s geared, or there was too much friction, it just didn’t move unless I gave it the top speed.  I settled moving the disc in small increments, checking the measurement from the slot sensor, repeating until it sensed it was in the right position.

Demo

Once built, send a ‘1’ over the serial port to the Arduino, and it will advance the rotating disc to the hole.

Source files: http://www.hotelexistence.ca/projects/FishFeederFiles.zip

Primary School Reading Log

My kids are both avid readers, but neither have been good with maintaining a reading log, sometimes requested by their teachers.

I thought if I reduced the effort required to maintain the reading log, they’d be more likely to track the books they read.  I created a website where, using a smart phone, they could just take a picture of the bar code on a given book.  The website would read the bar code, and make a call to the Google Books API to retrieve the book title and author, and add it to the reading log.

Reading Log Website
Reading Log Website

It was used for a month or two, and then the novelty wore off.  We’re back to just reading books, as opposed to tracking what we read, which I guess is the important thing anyway.

In the past, I’ve worked with AWS, but I thought I would use the Google Cloud platform for this project to try something different, and now my free trial has expired, so the site is no longer up.

I wanted to use the QuaggaJS in-browser (Javascript) bar code reader, which would save sending the bar code picture to the server, but, in testing, the Java based Zxing was much better at consistently reading the bar codes, so the website gets the user to take the picture of the bar code, sends the picture to the server, and the bar code is converted to an ISBN server-side.

I haven’t documented it, but source can be found here: https://github.com/raudette/readinglog

How to play the Willowdale game

Belle and Megan
Belle and Megan, characters in the game

Willowdale is a game I made with my kids where you can explore our neighbourhood.  You can read more about how we created it in  Creating A Game.

The Game

You can access the game at
http://willowdale.s3-website-us-east-1.amazonaws.com/

Controls

  • Arrow keys to navigate
  • Enter key to advance dialog
  • Move your character to the ladders to move from one map to the next
Ladder to move to another screen

Hints and Things to See

We’re not gameplay experts – if you want to explore, disregard the following.  However, if you just want to see what we’ve implemented, you can check out the following:

  • Walking into the kitchen at 55 Ellerslie will trigger dialog
  • Walking into the patio stones in the middle room of 55 Ellerslie will take you to Candyland
  • From Candyland, you can walk into Belle the fairy’s home.  Walking near Belle in her home will trigger dialog

Creating a game

The kids are always drawing characters and writing, and I was wondering – could we use this to make a game together?

It turns out, we can.

Scene from Willowdale
Scene from Willowdale

I’d guess in about 30 hours, we’ve put together a small world where:

  • The player can wander around our world
  • The kids have both drawn characters that appear in the game
  • My 7 year old has designed a couple of maps
  • Together with my 7 year old, we have written some dialogue
  • I figured out how to build out some simple logic, connecting scenes

First, I looked into various game making tools.  I ended up using Stencyl, the first one I tried.  I checked it out first because the free version is limited only in that it only allows you to publish your game to the web (as opposed to desktop or mobile versions), and, for me, a big bonus was that it runs in Linux.

I was really impressed, and would recommend it to anyone thinking of doing something similar.  There is a small library of assets you can use in your game, adding logic is similar to logic blocks in Scratch.

I did get stuck in a couple of places:

  • The recommended system for character dialog is not built-in, and instructions for installing it were hard for me to find.  I posted a question to the Stencyl forum, and the extension’s author sent me a link to the Stencyl Dialog Extension installation instructions within a couple of hours
  • I struggled adding the extension to my game – someone has put together a Dialog Extension Youtube Tutorial which helped out
  • Other small things – usually when I create something, with a little searching, I can usually find answers pretty easily on Stack Exchange.  I found it harder to find answers my issues with Stencyl, and spent more time trying different things – I think, largely due to a smaller development community

It wasn’t until we started that I realized how much effort is required to put together the artwork for a game.  It is one thing to scan in a drawing of a character, but another to create drawings of the character from every perspective, such that it is animated as it walks across the screen.

At this time, it’s not much of a game – just a small world to explore.  But it was fun to put together – you can check it out here: http://willowdale.s3-website-us-east-1.amazonaws.com/

 

Fish Feeder Project – Part 1

My 7 year old recently acquired a fish bowl with a betta fish.

Apparently, the PLA plastic used in 3D printers doesn’t degrade significantly in a fish tank, so I started looking for aquarium decorations we could print.  And I came across a design for a fish feeder: https://www.thingiverse.com/thing:1257953

I started modifying it to accommodate our fish bowls.  She asked to help out, so I suggested she do a sketch of her design.

Rachel Fish Feeder Sketch
Rachel Fish Feeder Sketch

Her design has a timer, and uses a suction cup to attach the feeder to the bowl.  I was skeptical, but she found a suction cup and demonstrated it would stick to the curved wall of the bowl.

I then set her up with Tinkercad.  Here’s the 3D model she made of her design:

Rachel Fish Feeder - 3D Model
Rachel Fish Feeder – 3D Model

Our fish feeder is still a work in progress, we’ll post pictures of our project when it is complete.

Toy House with Sound Effects

About a month ago, my youngest daughter borrowed a really neat toy called “Talkative Chick’s House Ppiyak-e House Bird Toy Mimiworld”, who’d brought the toy back with her on a trip from Korea.

Talkative Chick's House Ppiyak-e House Bird Toy Mimiworld
Talkative Chick’s House Ppiyak-e House Bird Toy Mimiworld

The toy consists of a little bird, and a little bird house. The bird house has four activities for the chick. When the chick is placed over one of the play areas, a sound effect is played – the coolest of which was a washroom. You can kind of get the idea from this YouTube video (skip to 7 minute mark).

In any case, this was inspiration for a project I thought would be fun for she and I to work on together. Although I knew this wouldn’t be slick, I thought the quickest and easiest way to do this would be:

  1. Use a hall effect (magnet) sensor as a contactless sensor
  2. Install a magnet in a stuffed toy (not suitable for small children!)
  3. Take readings from the sensor with an Arduino
  4. Interpret the readings and play a selection of sound effects on a PC

We took a shoebox, and she built a home for a small stuffed toy, a “Teany Ty” she named Jelly. I cut open the the stuffed toy, and installed a couple of magnets, and sewed it back up. I picked up some hall effect (magnet) sensors from Creatron, and wired it up to an Arduino nano, and installed the sensors in key areas of the home.

Toy House – Outside View
Toy House - Inside View
Toy House – Inside View

I wrote a few lines of Python to read the data from the Arduino, and play back the samples. I’d never used Python before, and had heard about the PyGame libraries for years – I thought it would be rock solid, but even within a minute of play, with my setup, I had issues with MP3 sound effects that others had encountered as well. I converted them to WAV files and that went away.

We had fun picking and recording samples, eating and slurping water into the microphone. Freesound was a great place to look for sounds, though it didn’t quite have the breadth that my daughter was looking for (“I want a recording of a tiger walking on dry leaves”).

The sensor/magnet combination I chose wasn’t quite sensitive enough – the tiny magnet in the stuffed toy had to be really close to the sensor to trigger the sound.  It does work, and it was a fun build.

Source Code: ProjectBird.zip

 

Toy House Renovation

A while ago, my daughter and I built an outhouse out of Popsicle sticks and a cereal box.  I didn’t think anything of it at the time, but she held on to it and kept it alongside her toys.  She even brought it to school one day when she had to present a craft she had made.

Toy Outhouse

I didn’t think of it again until one day I was reading How Lego clicked: the super brand that reinvented itself in the Guardian:

Lego Friends sets (bakery, amusement park, riding camp, etc) tend to feature something else missing from boys’ sets: a loo. The boys don’t care, the girls’ pragmatism demanded it.

I realized that her Lego Friends sets had washrooms, but her Little Critters house did not.  I asked her about it – and what I saw as a fun project was actually addressing a critical need for her Little Critters.

This weekend, we set about modernizing the facilities.  We printed out a toilet we found on Thingiverse, and now her Little Critters have a modern toilet.

Little Critter Toilet

Copyright extension and NAFTA

I wrote previously about James Bond entering the public domain in Canada.

I love the idea of work in the public domain – I’ve actually read a number of Ian Flemming’s books since they’ve come out of copyright, I’ve read more of George Orwell, and I’m currently reading a book about the history of rocket fuel.

In Canada, a work enters the public domain 50 years after the author’s death – the MPAA is looking to get this extended to 70 years according to a recent article by Michael Geist:

“The MPAA also wants Canada to extend the term of copyright to life of the author plus 70 years from the current standard found in the Berne Convention of life of the author plus 50 years. It argues that the “extension of the term of protection for copyrighted works has a direct benefit to the creators of these works, as well as consumers.” It does not mention that the creators are long since dead, that consumers face higher prices with term extension, and that the change would lock-down the Canadian public domain for two decades.”

The Government of Canada is soliciting views from Canadians by email at NAFTA-Consultations-ALENA@international.gc.ca or on the web.

Here’s what I submitted:

I am opposed to extending copyright to life + 70 years.

At 50 years protection is already ample – a creator’s children, and their children, already directly benefit from royalties collected from a copyrighted work.

The public benefits immensely from work entering the public domain:

  • Consider the works of Shakespeare and Moliere, and their derivative works, that make up so much of the language programs in Canadian schools and our pop culture
  • Consider how our culture benefits from derivative works, and how characters like Sherlock Holmes continue to be adapted for modern audiences
  • When my grandmother spoke of reading the works of Thornton Burgess when she was a child to my children (her great-grandchildren), I can load up their e-readers with all his books. At life+70, there is no way my children could do this with the authors of their generation, like J K Rowling, Melanie Watt, or Mo Willems.

Works locked up in copyright, particularly out of print, remain trapped and inaccessible.

Life +70 will not promote the creation of work – if anything, it will delay the creation of derivative works.

 

Light Up Earrings

My daughter has been making some really impressive earrings using Sculpey clay and earring hooks and studs sourced from Michael’s.  Lighting them up, like these studs, would take it to the next level.  Light up earrings present an interesting challenge, as size and aesthetics constraints conflict with a battery holder, light, and wiring.

We built a simple design we found on YouTube which uses painted googly eyes to hold the battery and a small container with sparkles to diffuse the light.  There is room for improvement, but they turned out OK – they look great in a darker room or from a distance, but crude up-close.  We may refine them further.

LED Earring
LED Earrings

2017 Balcony Crop

We have harvested our 2017 crop.

This is an interesting year, as we had a late start to the season, and less sun than normal.  We’ll have even less sun in future years, as a new condo building is going up in front of us and will certainly reduce the amount of sun received by our balcony.

  • I’m not sure what happened to our corn, but we only had a couple of very sad looking cobs.
  • As the corn didn’t grow very well, the pole beans didn’t have anything to climb, so they didn’t do very well either.
  • The tomato plants did well
  • We grew more carrots this year – they were amazing
  • All the flowers did well
Urban Sunflower
Tomatoes
Pole Beans and Genuine Baby Carrots
Lone Cob
Loads Of Carrots