Champaign-Urbana Community Fab Lab
University of Illinois at Urbana-Champaign
Champaign-Urbana Community Fab Lab

Author Archive

Drew Zelac – Final Project Proposal

Makerspace Final Project Proposal – Alarm Pillow v2

Tool Areas:

  • Arduino
  • Sewing
  • Possibly 3D printing
  • Soldering

Learning Goals:

  • Learn how to solder, so that the circuit I create will be (relatively) permanent
    • I think this would be a really good skill to learn, especially since I already know how to program. Having this skill would be useful for creating other permanent devices in my future, instead of using a breadboard every time.
  • I want to be creative with this project and create the physical design on my own, rather than using the internet.
    • I have spent four years at this university and my first project was the original alarm pillow. It took 8 weeks, with a team of four, and a $100 budget to create it last time. I want to make a better version that actually works this time, on my own, in three weeks, for a much lower cost. I want to design it all on my own as a test to see how far I’ve come and what I’ve learned in college.

Short Description:

  • I want to create what I call an alarm pillow, which vibrates to wake the user up. This would consist of some insert that goes inside the pillowcase, between the bottom of the pillow and the pillowcase. This insert would be attached to an Arduino with screen and some form of input, in order for the user to set the current time, the alarm time, and turn the alarm on/off.
  • I would need to use an Arduino and code to program the functionality. I would need sewing skills to create the insert. I would need soldering skills to connect the Arduino to the vibration motors that are inside the insert. I may or may not need to 3D print a box around the Arduino and/or around the vibration motors.
  • This extends my learning past what we’ve done so far, since I would be using multiple areas of what we have learned in class, in combination, to create one cohesive device.
  • I may need some support with soldering.

Continue Reading

Drew Zelac – Arduino2

My initial thought was to create an AT-AT walker from Star Wars. The idea was to build it with an upper rectangular structure and four motors with popsicle sticks attached to act as the legs. The movement would be as follows: front left, back left, front right, back right. This came from the actual movement of an AT-AT.

Upon initially building prototype #1, I found this movement would not be possible with just four motors. The real AT-AT has many joints and re-creating it’s motion would require many more than just four motors and popsicle sticks. In the first prototype above, I tried mimicking the real AT-AT’s movement, but it just kept falling over. As for the software in the first iteration, I tried overcomplicating it at first but then nothing really worked much at all, so I simplified it greatly. It ended up as just the basic servo code, but repeated code for each of the legs to move at different times. I decided that since this still didn’t work, I should take another movement approach. 

For my next prototype, I decided to completely change the movement pattern and add some weights to the upper body to stabilize the robot.

Second Iteration Video

For the movement, I thought of moving the front legs together and the back legs together. If the front legs move forward to a greater angle than the back legs, with a weight above them too, I believed that would cause the robot to move.

One problem that I encountered here was that the legs position was not being updated in the code. I asked a friend for help and we figured that it was because I was passing the position by value and not by reference.

In the case of the first iteration, it did move generally in a direction, but turned at unpredictable angles. I had to find a way to fix that for the final iteration.

Final Iteration Video

For the final iteration, my goals were to:

  • fix the movement so that it moved fairly straight in a direction
  • make it ‘wireless,’ in that the wires and battery would all be inside the upper body
  • cover up as much of the wiring as possible, while still allowing the battery to be connected/disconnected.

To fix the movement in a random direction, I modified the code slightly and added rubber bands to the front two legs. This combined definitely helped it move in a fairly straight direction.

I also added some more popsicles to the top section of the body, so it could hold all of the electronics inside without falling out.

Once I glued that together and stuck the electronics inside, I confirmed that it still worked. It did, so I covered up most of the upper body with painter’s tape, leaving some spaces for battery connection/disconnection.

This project overall was fairly challenging. To move the four motors at the right times and the right amounts, without causing the robot to become off balance and fall over, was quite difficult. At one point it nearly fell off the table. I learned once again, that starting out simple is nearly always the way to go. When the first prototype for anything is overcomplicated, it will not be possible. Starting out with an easier design and working up from there is much more feasible.

Continue Reading

Drew Zelac – Arduino Intro

I already had a couple Arduino Unos and sensors lying around my apartment from an IoT class my apartment-mates and I are taking this semester and from a demo I participated in a couple years ago. I first decided to just go simple and use an ultrasound distance sensor with a multi-colored LED, but then I decided I wanted to do something more interesting.

I went with a ultrasound sensor and a Piezo speaker/buzzer to create a backup alarm for a car. The point of this device is to mimic the backup sensors in most cars in the last decade or so, but with just an Arduino and a couple cheap devices attached instead of the multi hundred dollar sensor array that is installed in the cars.

I found a tutorial online for the Piezo speaker and got that working first. I used a 120ohm resistor and plugged the Piezo speaker into GND and Pin 8. With the code from the tutorial, it worked immediately.

I then added in the ultrasound sensor. I found another tutorial online about how to wire this and some code to get it to work. For this, I attached VCC to 5V, Trig to Pin 11, Echo to Pin 12, and GND to GND. This also went together without any problems. I just combined the code for the Piezo speaker and the ultrasound sensor and it worked.

I added in some conditional statements in the code to play a different frequency sound at different intervals, depending on the distance from the ultrasound sensor to the object it is sensing. After playing around with the frequencies and delay intervals, I thought it was doing a good job or sensing objects and alerting the user of the approximate distance to the object. All that was left was to clean up the code a bit, add in some more comments like how to wire the Arduino and devices, and credit my sources.

For this week’s project, everything seemed to go well. For the setup I did with the Piezo speaker and ultrasound sensor, I don’t think there was anything to be improved with the wiring. Code can almost always be improved, so I could probably clean it up a little bit more. Since I had done this kind of work before, it was fairly simple for this week. I’m looking forward to next week where the requirements will be more challenging and I can learn more!

I then created a storyboard for my invention.

My code is below:

//The ultrasound sensor code is by the Rui Santos
* created by Rui Santos,
* Complete Guide for Ultrasonic Sensor HC-SR04
Ultrasonic sensor Pins:
Trig : Trigger (INPUT) – Pin11
Echo: Echo (OUTPUT) – Pin 12


Piezo Speaker Pins:
Positive – Pin8

int trigPin = 11; // Trigger
int echoPin = 12; // Echo
long duration, cm, inches;


// A sketch to demonstrate the tone() function
// Specify digital pin on the Arduino that the positive lead of piezo buzzer is attached.
int piezoPin = 8;

void setup() {

// Serial Port begin
Serial.begin (9600);
//Define inputs and outputs
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);


void loop() {

// The sensor is triggered by a HIGH pulse of 10 or more microseconds.
// Give a short LOW pulse beforehand to ensure a clean HIGH pulse:
digitalWrite(trigPin, LOW);
digitalWrite(trigPin, HIGH);
digitalWrite(trigPin, LOW);

// Read the signal from the sensor: a HIGH pulse whose
// duration is the time (in microseconds) from the sending
// of the ping to the reception of its echo off of an object.
duration = pulseIn(echoPin, HIGH);

// Convert the time into a distance
inches = (duration/2) / 74; // Divide by 74 or multiply by 0.0135



/* Tone needs 2 arguments, but can take three
1) Pin#
2) Frequency – this is in hertz (cycles per second) which determines the pitch of the noise made
3) Duration – how long teh tone plays
if(inches < 2){
tone(piezoPin, 4500, 100);
else if(inches < 4){
tone(piezoPin, 4000, 100);
else if(inches < 8){
tone(piezoPin, 3000, 100);
else if(inches < 12){
tone(piezoPin, 2500, 100);
tone(piezoPin, 1500, 100);


Continue Reading

Sewing – Drew Zelac

I had only done a little bit of sewing before this project cycle, so it was fun learning how to use a sewing machine again and learning some new ways to hand sew in this lab.

The first thing I did, besides the practice piece during lab, was the small bag.

This really helped me get used to using the sewing machine again and helped me get into the sewing mindset. It was difficult during this to picture how to piece it all together and be able to pull it inside out in the end to form the actual bag, but doing this helped prepare my way of thinking for the actual project later on. I made a couple smaller mistakes on the bag where I needed to rip the thread out with a seam ripper, but overall it went fairly well.


Next up was the embroidery. I needed to embroider an image of at least three colors, including the background. I looked online for some logos to embroider and came across the Shell logo. One of my friends is going to be working there as an intern this summer, so I decided to embroider a patch with the logo on it for her.

If you look closely near the bottom of the yellow section, there is a gap between the yellow and the red. I learned during this that if reinforcement parchment or other material is not used behind the fabric, this stretching of the fabric can occur and result in gaps like the one above. I also learned that embroidering the white background as I did above takes a long time. This was useful to know for the final part of this lab.

Lastly, I decided to create a Chain Chomp. I like Nintendo games and Chain Chomps have always been cool, so this sounded like fun to me.

Due to the design of the Chain Chomp, I had the choice of either creating the chain or the chomp (what I call the head) first. I chose to do the chain first, mostly because I thought it would be easier. It was not.

The end of the chain (in the first picture above) was easiest. It was just two circles and a ring connected together, stuffed with batting. I did have to ask Emilie for help in how to put them together because I still was not sure how to put it together in a way where it would be turned inside out and form the cylinder shape. After this part though, I was able to picture this process in my head much better for the remainder of the project.

The next part of the above images was the actual chain. The first chain was relatively easy. After that though, it all became quite difficult. Having to sew each ring together, while inside of another ring was a pain. I could only end up sewing about half of it or a little more with the sewing machine and had to hand sew the rest after turning it inside out. This resulted in most of the chains not looking great, but a couple of them still turned out good.

Next was the chomp.

I started out by cutting out the materials and brought them home. I then hand sewed the majority of the facial features onto the red and black football shaped cutouts.

This turned out pretty well. I did have to teach myself some new ways to sew, as nearly everything I had sewn in the past had been on edges of material to fix things and I had little experience with sewing in the middle of an object.

Also in the above picture (last one), I have the chain completed. The instructions recommended to sew it with a ladder stitch, so I learned how to do this as well and it came together nicely.

Next was the embroidery. I decided to go with a Nintendo theme and embroidered a colorful logo onto the bottom of the Chain Chomp. Even though Chain Chomp first appeared on the NES, I decided to embroider the Nintendo 64 logo instead, due to the colors and that I liked it better.

Even with the reinforcement for backing, it still stretched out a bit, but overall it looks pretty good. I did get some help from Duncan for this, and he said I would absolutely need reinforcement for the fleece that I was using. Also I decided to use fleece for this whole project partially because the instructions recommended it, but also because I thought it would feel nice for a plushie.


One problems that I encountered was when I accidentally sewed the two black pieces of the face almost completely together. I thought the instructions said to do this, but after turning it inside out through the whole I left, I found this was very wrong. I ended up with a small football with a N64 logo on it. I needed to rip out a lot of stitches here, so that I could connect these pieces to the rest of the face. Since the ripped parts are deep on the inside of the final chomp, it didn’t really matter too much.

Once I connected the rest of the chomp with the sewing machine, I had the chomp and chain to connect to finish the project (plus the small hole on the chomp to hand sew). I did this at home later with my sewing kit, including ladder stitching the chain on, and it was complete.


Continue Reading

3D Printing – Drew Zelac

During class for the castle and alien projects, I created the following:

I decided to make a structurally sound castle with the round corner towers and adjoining walls. I also have a central tower with a giant skull on top to be intimidating to both the residents and outsiders of the castle. The alien that is inside the castle there has some kind of cylindrical body with pointy weapons/swords sticking out of it’s side, and with semi-circle head gear.

For my main designs, I made the following in TinkerCAD:

My first design was a set of flatware type things for people who just really don’t like circles. As such, my flatware is quite square. The bowl below is completely devoid of circular form, to appease any circle-hating people. The only problem this presented was the ability to eat with a spoon. Since a spoon is rounded, it would not fit in the corners of the bowl.

To solve this, I created a squared spoon. This spoon is quite superior to a normal spoon, as it allows the user to eat in the corners of any object, such as the square bowl above.

As a fork and knife and both already devoid of circles, I didn’t design them, as they would look very similar to a normal fork or knife.

I did design a square plate though, as most plates are circular, so it was definitely necessary. It has a square base with slightly raised edges, to more easily keep the food on the plate.

My next design was something that I need. I decided I needed a monitor stand to be placed under my monitor at my apartment, in order to give me some extra desk space.

The monitor stand is designed to be box like and structurally sound enough to support my monitor. I first created a rectangular prism and proceeded to cut out useful holes and slots in it. From the front view I have a lower slot for papers and larger flat items. I also have a thinner slot above that in the middle for pencils, pens, and such. I didn’t create a hole in the back for both of those, because I don’t want things falling through the back. On the upper right, I have a hole from front to back that is large enough to support electronic devices like phones and maybe a smart watch. It has a hole in the back, so wires can be placed through the back without having to awkwardly go around the hole structure. On the top of the stand, I made a small cutout for placing smaller items that I keep on my desk, but don’t want to get lost. On the left side, I placed another slot for anything on my desk that I don’t need often such as USB sticks, a portable battery, or such. I tried to keep the edges large enough that the stand would be able to support a monitor. If I were to actually print this, I would definitely need to double check to make sure it would be thick enough to provide this level of support.

For my third design, which I printed, I decided to create a 3D version of a famous piece of art, Leonardo da Vinci’s The Vitruvian Man.


Da Vinci’s The Vitruvian Man is famous due to both the artist and what it depicts. It portrays the Proportions of Man by inscribing a male figure with two sets of arms and legs in a circle and square. It’s famousness also comes from that the design was based on a famous Roman architect, Vitruvius’s writings that relate the human body proportions to those of architectural designs. This is also how the piece of art got its name.

In order to create this, I needed to scan in my head, torso, an arm, and a leg. I got help from my friends in lab to take scans of these.


Once I had those four, I worked in Meshmixer to combine them into something that represented the Vitruvian Man, but with only the circle and not the square. For each I began by making them solid objects and plane cutting off any unnecessary parts. I cut off my head and attaching it to my torso. I smoothed it out a bit with one of the sculpting brushes and moved on to my arms. I plane cut, made solid, duplicated, and rotated them until they were about where I wanted them and then combined them with my body. One issue I encountered here was that I only had a scan of my right arm. When I went to do the left arm, my thumb was in the wrong place and my arm bent backwards a bit. I had to smooth out the thumb side and tried somewhat successfully to pull out a thumb on the opposite side with the sculpting tools. For the arms bent slightly backwards, I had to do a lot of smoothing and pulling it in the opposite direction to make it look presentable. This was all a huge pain and if I were to do it again, I would definitely just take scans of both of my arms to avoid these problems. 

Next came the circle. I created a circular object in TinkerCAD, exported it from there, and imported it into Meshmixer. I had to rotate it and resize it in multiple dimensions, but I was eventually able to place it in the right spots and in the right size around my body.

Next came the legs. I didn’t have quite as much of an issue here as I did with the arm problems, as it was much easier to make a right foot to look like a left foot. It was just pushing in on one side and pulling out a bit on the other. If I were to do this again, I would get scans of both legs though. I would only really do this to make putting it together without having a slight bend to the leg, which wasn’t able to be fixed too much.

I then created the other legs and changed the sizing and position a bit on everything and it was pretty much done.

I combined it all into one object and exported it as an stl file. Then, since two of the machines at the Fab Lab broke when I went in to print, I went to BIF’s 3D printing lab to print it instead. I was advised to print it flat like below, but I think it may have turned out better if I printed it upright. The supports were extremely difficult to remove as it was, but if I had printed it upright, I think cutting them out in the middle of the object would have been easier and would have left less of a mess on the back.




Continue Reading

Copper Tape – Drew Zelac

For my second part of the lab, which was to create the foldable card with two LEDs, I chose the following quote: “Knowledge is being aware of what you can do. Wisdom is knowing when not to do it.” – Anonymous

The first thing I thought of when I saw this quote was to create a picture on the front of the card that had the image of something bad to do and something good to do and a person considering what they should do. I created two simple circuits on the back and it turned out like this. (Red for bad, green for good)

For the final part of the lab, I chose to do something a bit more complicated. I got the idea for a robot from a friend and just went with it. I found a bunch of things in my recycle bin and decided to make a recycled robot out of them.

I began by putting some of it back together again like the tissue box and by cutting off some parts like in the top of the pringles can (to give it structure on the inside of the tissue box). I then used parts of a paper towel roll for the feet.

The first time I tried a simple circuit in here, the copper tape ripped in too many places and I couldn’t get a current to flow through. So this issue here caused me to have to rip out the circuit and start anew.

Next time I got it and the red light I inserted lit up correctly when the switch was pressed down. I then cut out a heart with the Silhouette cutter using cardstock and put that in front of the LED light to give my robot a heart.

Next came the head with the parallel circuit for the green lights in the eyes. I had an easier time with this one. I placed the leds in the wrong direction, but quickly realized this and corrected it. I did have to ask a friend for help to see exactly how the parallel circuit was set up though.

With the head on, all that was left was attaching it to the body and installing the arms.

And then my Iron Giant (with night vision goggles) was born!

Continue Reading

Stickers – Drew Zelac


For my Griffin part of the lab, I decided to start with a silhouette of a bear and a fish, to try to combine them. I was first thinking of just putting a fish back fin/tail on the bear, but I thought it would be nice to combine more of the fish with the bear, so I added the top fin as well. Then I had some extra time in the lab, so I thought it would be cool to add a third animal in my design, so I found a nice set of reindeer antlers on a silhouette of a reindeer and combined that with the rest. It ended up like this: (and is now on the door in the main area of the fab lab near the bigger sticker cutters)


For my logo, I wanted something that I would like to put on my laptop, and the UIUC logo works well for that purpose. I found a version of the logo that would be fairly simple to create, since this is mostly practice for the main design. I thought about how to create this for a little bit and decided that the best way to do it would be to have two layers. There would be a bottom layer of white and a top layer with the blue and the orange. I thought this would be better than blue on bottom, then white, then orange, since that would really have a layered feel when put together. I wanted to avoid that, so I thought of my two layered method.

Complex Multi-Layered:

From the start of this part of the sticker lab, I knew I wanted another sticker besides my logo to put on my laptop. So for this, I wanted something with a design that I thought would be cool to look at all the time and not too large.

One problem I encountered with the logo design was some bubbles that occurred due to the way I placed the layers on top of one another. I was able to squeegee out some of them, but not all. This became something to improve on for the final design. Duncan was helpful in telling me how to avoid this issue in the final design, by placing the layers down on top of each other more carefully and not all at once.

I have always liked designs with shapes, so one of the first things I thought of was a design with a main feature of some kind of circle with a star inside. When trying this out in Inkscape, I tried manipulating the star shape in different ways until I found a cool design from it. This came when I began changing the roundedness of the star, which after a little bit starts inverting the star in really cool ways. I did this, added a circles above and below it, and eventually got this:

I thought it looked sort of like a sun, so the next thing I thought of was to add solar flares around it, from this photo:

I knew I couldn’t directly use this, as I had to trace the bitmap first. I first tried this though brightness tracing, but it was a mess, so I decided to do it with color tracing. After some adjustments, I realized the best way to accomplish this and be able to easily add it to my design would be if I traced it with very few scans, 3 or 4, so it would only have a few color layers in it for me to deal with. It turned out like this:

From there I wanted to get rid of mostly everything inside of the outer layer, as I only really wanted that to frame my current sun image that I created. To do this, I made a circle that covered most of the inner mess and took the difference of this and the above.

There were still some parts of the black layer in the brown layer, so I wanted to get rid of those to make it a bit smoother. I accomplished this by creating some lines to cut off the parts that stuck out and took the difference of that. Then I deleted those parts that stuck out.

I combined that with my previous layers and got this (then cut it ):

I realized that this would be way too complicated to cut out and combine, so I started peeling back the layers a bit.

I wanted to middle part to be less complicated to start, so I changed it to this:

It was still a bit complicated here, so I decided to peel off one more layer from this:

To this:

I felt like the above would be much more manageable to actually create and put together into the final sticker, so I stuck with it. It would be four layers. A yellow layer on bottom with the black on top of it. The the other two would be a blue circle with the red circle and cut-outs above that. Then I would combine those top two layers with the bottom two for the final sticker.

After trying this I found out I should have done it a bit differently. The yellow and blue layer were very simple, as they were just a square and circle. The black layer was also pretty simple because of the square outline and just a part cut out of the middle. The problems I encountered were all with the red layer. It was a huge pain to take off with the transfer tape, as when I tried getting the blue outer cut-outs all off, the whole outer part of the red circle came with it and I had to try really hard to get it back on the original sticker paper in a circle again, which it really didn’t want to do. Then the tiny cut-outs of the inner part of the circle were too small to easily come out, which just made it take a while to very carefully get them out.

All in all, it turned out fairly well even through all the complications with the red layer and I was able to put it on my laptop.

If I were to try it again, I would definitely make the red and blue layers a different design. It would still be sun-like, but I would make it something combined for the red layer, so it would peel off into separate parts. I would also avoid tiny parts like the inner cut-outs in the red layer. I might change the blue slightly to add ridges or something to add to the design, since I’d be taking away a bit from the red part of the design. Also the red part is already having slight problems with peeling off when taking my laptop in and out of my backpack, so I would try to avoid the pointed triangles or other shapes in an outer layer. Those would have to be hidden below a top layer if they were to be incorporated and meant to last.

Continue Reading

Nametag: Drew Zelac

In the beginning … there was an idea. In the end … there was a very different idea.

Before I began my design in Inkscape, I spent some time coming up with my two ideas. The first idea consisted of a bike with a tennis ball as one of the wheels and a wide tennis racquet somehow embedded in the other wheel. I soon realized that I would not have much space for my name in this design and it wouldn’t be able to incorporate many other of my interests as well.

This led to my second and final idea, which incorporates my fondness of beer and many other interesting details about me. I chose to use an svg image of a beer bottle with a visible crown on the bottle. Then I thought of a bunch of other things I like such as goldfish, popcorn, milk, and bad jokes. I tried to model the design on the beer bottle from other beer bottle designs I have seen previously, but with some modifications.

Creating the design in Inkscape

I looked through the fonts to try to find some nice ones, especially for the name itself and the est date. For the remainder of the text, I thought it best to have one font, to avoid having too many different fonts on the nametag. I also was able to find an image on Wikipedia Commons of my home state with my county highlighted, so I was able to use that as an image to raster on the bottle. I considered adding more in the space between my name and the Assembled at UIUC text as well as between the est and the cap, but I decided that it would be best to leave some white space on the design, as to not overcrowd it.

While I was creating the design, I did get stuck a few times and needed some help. One time in particular was when I was trying to change the original color on the bottle from black to clear, but doing this would change the cap to clear as well. After tinkering with it for a little while, I asked Duncan for help and he showed me the techniques needed in order to accomplish this. I also needed some resizing help, as the original beer bottle that I imported came in at around 13 inches tall.

PDF ready to print

After resizing the image from the original 13 inches, I made a pdf and proceeded to print it out. At this point I thought the design I made had been shortened to around 4 inches, but when I asked someone for help with the laser cutter, he noticed that it was much larger than 4 inches. On my computer, when I checked the height, I actually clicked a different tool, which showed me the height of a certain node in the design, rather than the entire design’s height. The final design in the pdf was actually 10 inches tall.

I decided to print it out at this size anyway, as my original ideal size was around 8 inches, which would be a bit shorter than a normal beer bottle. So I sent the print request to the laser cutter and waited for it to come out.

During the engraving
Finished product

I think it actually turned out pretty well. The only problem during the rastering and vectoring process was when the left edge was being cut out. My design had the red line to be cut on right on the edge of the layout. When the machine was cutting it out, it failed to cut a bit of the wood on the left side due to this and due to the wood that was being cut not completely against the edge of the machine. To fix this I had to sand a bit of the edge off.

If I had to change anything, I would have left a bit of space on the edge of the design, so the above edge problem wouldn’t occur. I would also make the design somewhat smaller. I wouldn’t want to make it too small, but it might have been better if it were around 6 inches instead of 10.

Continue Reading