Champaign-Urbana Community Fab Lab
Champaign-Urbana Community Fab Lab

Author Archive

Final Project – Nick Desai

I think the most important skill I’ve developed over the course of all the assignments actually isn’t something that I put in any of the writeups! When I was writing up the results of each project, I was thinking more about the project itself and how I made it than the way I was approaching the planning and execution, but I think planning and execution are the things I improved on most by doing these assignments. For the first few, I jumped into making the final product straight away, without a lot of design beforehand, but later in the semester, I tried more challenging things which required a lot of design to get right, and a lot of rethinking and iteration when they went wrong. I think I got better at figuring out how to approach the process of designing something complicated with multiple parts that have to work together.

I think I’ve also gotten more comfortable asking people for help. It always felt super stressful to ask one of the open hours staff to come help with a project I was working on, since I felt like I was interrupting whatever they were doing, but it’s gotten less stressful as I’ve gotten to know the lab and the people here more.


For my final project, I made a stuffed cat that could connect to wifi to download and display cat facts. I worked on the electronics and sewing parts in parallel for the first couple weeks of the project, and integrated them together in the last week.

Final result!


One of my learning goals for the project was to get more comfortable with iteration by taking on a project that was likely to fail a few times while I was building it. I think I definitely succeeded at doing that, since most of the details I put in the proposal didn’t end up working. Originally, I wanted to use a text to speech library to have the cat actually say the facts it pulled from the internet, but even after spending a long time putting together an amplifier circuit to boost the cat’s speaker as much as possible, the output voice ended up too robotic to understand. I ended up switching to using an LCD screen to display the facts in the next version, and re-used the speaker to play a meowing noise to let people know when the cat recognized it had been touched.

The wifi part also ended up being much harder than I thought, and I had to go through a couple versions of the way the cat would request and receive data to come up with something that worked. I originally wanted to pull cat facts from Twitter, but found the Twitter API very convoluted to use, and dependent on other libraries my wifi module didn’t have, so that avenue was a dead end. I found an alternate site:, which is a website that just gives you cat facts, because of course that exists! But the website requires you access it with TLS, and the firmware built into my wifi module didn’t support HTTPS – which is pretty awful, and if that’s a common practice it might explain why so many IOT devices are so insecure – so I had to figure out how to build and flash new firmware onto it. Even then, the website I was trying to hit refused the connection for some reason, but I talked to Brandon and he suggested creating an AWS Lambda function to act as a proxy, which ended up working (Thanks Brandon!).

All of the revisions of the original design took way more time than I anticipated, so I wasn’t able to achieve the goal I’d set out of learning to use the vacuum former to make a fancy top hat for the cat to wear. I think the main lesson I’m taking from that is that things always take longer than you expect they will, even when you think you’ve factored in all the unexpected delays. If I ever do a project like this in the future, I’ll make sure to add in extra time for things to go wrong in completely random ways – though undoubtedly even that won’t be enough, because Murphy’s Law is cruel and vengeful.

I also wanted to make a project with lots of coordination between different parts. That ended up going pretty well, and the final result involves a lot of mixing different libraries in the Arduino code – serial communication with the wifi module, controlling the LCD display with I2C, using the PWM functions of the digital pins to make sound come out of a speaker. While researching the problems that arose in fitting them all together, I ended up learning a bunch of stuff about the Arduino platform, like how PWM and interrupts work. I think making a reasonably complex project like this is a good way to learn the details of a system, and it’s something I’ll do for other things I work with in the future.

Finally, one of my learning goals was to learn more about sewing. When I think about typical “maker” tools and techniques, I think 3D printing, laser cutting, vinyl stickers, and maybe woodshop tools, since those (especially 3D printing) seem to be the parts everyone focuses on when they promote the maker movement, and those were the things that were available in the other maker space I’ve been to, at the Harold Washington Library in Chicago. The Fab Lab here is the only place I’ve been to that has sewing machines and fabric available for public use. But there’s no reason textile crafts shouldn’t be part of a modern maker environment, and I wanted to make the most of the opportunity to experiment with them while I had the chance during this class.


Pinning down exactly what being a “maker” means is tricky, and while I’ve really enjoyed this class, I don’t think I’m ready to wholeheartedly jump into that identity. Adopting the maker label seems too restrictive, since there are things that are ambiguous in whether they fall under the maker identity or not – things like textile arts, and cooking. For some maker communities (though not this one), I think the label means focusing on the newest technology to make things, which is cool, but it shouldn’t be an exclusive focus. I enjoy things like baking and sewing that are more traditional as well, and I wouldn’t want to label myself with a name that makes some people think I’m putting those interests down.

I do think that the goal self-identified maker communities have of promoting hands-on learning is awesome, and being able to immediately apply stuff we learned in class to make something creative was the best part of this class. I think I worked a lot harder on the assignments and final project than I would have if we were told exactly what to make, since I had a personal investment in having something I thought was cool at the end.


Overall I’ve really enjoyed this class, and I hope the future versions of it continue to be great!

Continue Reading

Iteration Assignment – Nick Desai

The previous project I was least happy with was the vinyl sticker assignment, where I had a lot of trouble with designing the pieces so they would be easy to put together, and with aligning the vinyl layers on top of each other. I had a couple ideas by the end for how to do that better, but ran out of time to re-do the sticker. For this assignment, I used my ideas for improving the design – printing a bottom guide layer to help with alignment, and using the clear transfer tape to more easily see what I was doing – as well as mixing in laser cut acrylic parts and a NeoPixel strip controlled by an Arduino.

Here’s the old sticker, in all its misaligned glory:


For the next iteration, I changed the design so that the sword would be entirely etched onto clear acrylic, and the sticker would sit on top of it. Using a guide layer and clear transfer tape, as well as a couple improvements to the grouping of layers to take advantage of the guide layer and reduce the number of fiddly bits I had to work with, I made the next version of the sticker, which has much better alignment:

After that, I bought some acrylic (since none of the scrap was quite big enough) and cut out the sword piece.

I also figured out how to use a NeoPixel strip – I had to solder wires onto the contacts at the edge of the LED strip, since the strip didn’t have wires built in. The first strip I tested was buggy (even after verifying the connections were good, it had issues displaying on some of the LEDs), but I got a replacement, which worked fine.

Putting the LEDs and the acrylic together:

I really liked the result here, with how the light caught the engraving on the acrylic.

To make the piece stand up on its own, I laser cut some base pieces and glued them together. I also changed the code to cycle quickly through the rainbow, since I liked the visual effect that gave.

Continue Reading

Pom-Pom Bot – Nick Desai

For this assignment we had to make a robot using an Arduino, a couple servo motors, and lots and lots of arts and crafts supplies. In section, I made a kind of tripod-like thing that tried to scoot itself along the ground by scraping a leg across the ground, then lifting it and moving it back to its initial position. I spent so long trying to get the locomotion to work (and even in the end it still didn’t work that well) that I had to rush the decoration at the end.

And the code to drive it, with tons of Moire patterns because I didn’t think to take a screenshot until just now when I was writing this:

The first bot didn’t end up being that stable (notably, not included in these videos are all the times it fell over during testing), so I decided for the actual project I would make something less likely to collapse. I came up with the idea for how the next version would move by thinking about how I would move if I had only one leg. I thought I would kind of push or pull myself along by extending and contracting my knee. So I designed a robot that would have one leg and use it to push itself along.


My first attempt at actually building this went… pretty badly. I was able to get the robot built, but it had absolutely no traction, even with the pom-poms attached it just scraped ineffectively at the ground. And the main body was unbalanced because of the servo motor, so it kept tilting to one side without the Arduino sitting on it.

(This video includes the cross-piece on the leg, but I didn’t replace the pom-poms with it until realizing the design had problems, so it’s more properly part of the second iteration)

For the second iteration, I realized I needed way more traction, and I needed to fix the balance issue. For the balance, I put a bunch of broken popsicle sticks on the lighter side of the base to counter the weight of the “thigh” part pulling it to one side. And I kept the cross-piece on the foot, but I added a bunch of hot glue along the bottom edge to give it more grip on the ground. I also changed the code to make it lift the leg up before bringing it back to the starting position, so it didn’t undo all the hard work of pushing itself forward. I also realized having the Arduino on the bot itself was adding too much weight, so I took it off and balanced the bot with a popsicle stick across the front instead.

The result actually worked really well! Here’s a video, complete with obligatory footage of me messing up the USB cable:

Then came time to decorate. Since this assignment was called “Pom-pom bot”, I thought I would put absolutely no pom-poms on it at all, so instead I covered the main body in felt and put a bunch of feathers everywhere. I think maybe some of the glue I used to affix the felt and feathers might have run to the underside and slowed the bot down a bit, but the increase in style was absolutely worth it:

And the code to run it:

One of the biggest challenges was actually getting the wires not to interfere. I wish I had a longer USB cable, since I think my bot curved to the side a bit because of the wire pulling on it.

Overall, I had a lot of fun with this assignment!


Continue Reading

Arduino Introduction – Nick Desai

This week, we did the introduction to Arduinos and sensors. I’ve used Arduinos a bit before, so I knew the coding part, but I hadn’t used a lot of the sensors that were in the lab before. For the basic intro, we hooked an Arduino Uno up to an LED and an ultrasonic distance sensor:

…and made it blink in various patterns. I made the LED blink faster when the sensor detected something close, and slower when it detected something far away. Rather than using the Arduino “delay” function for this, which can’t be interrupted, I made my own version of delay by checking whether the current time had gone past a certain point. It’s probably a bit less accurate, but it let me increase the blink rate even if someone moved their hand close to the sensor during the period between switching states in a long blink cycle, which it would not be able to do with the usual delay function.

For the week’s assignment, we had to get a sensor working and make a storyboard for a device that might use it. I played with a touch sensor:

And made the Arduino’s built-in LED light up when you touched it:

I also hooked up a tilt sensor that detects the angle it’s resting at with a magnesium drop. This sensor had an LED built into it, so it was easy to get feedback:

For both of these sensors, I figured out how to use them from the website, which had useful code examples I could read.

I decided to storyboard a device using the tilt sensor. At my house, we have a problem with our cat stealing the pillows off our couches, so I designed a device that could help with that:

Continue Reading

Soft Circuits – Nick Desai

After reading the article about e-textiles for the reading response assignment, I was really excited to learn the sewing and embroidery machines, and to create circuits with conductive thread! In lab, we learned how to embroider, and I made a monogram design with a ‘V’ in the middle since it looked like there was only room for one letter between the fancy monogram things, so I just picked a random letter.

After that, we learned how to work with conductive thread. Maybe it’s just the way we wrapped each connection around the pins multiple times, but I feel like the thread is a lot more reliable than the copper tape we used earlier. We sewed a LED to some felt, and placed a battery pack behind it. I put my LED behind the fabric, rather than on top, because I think it looks better that way.

For the bag assignment, we first designed a patch to go on the front of the bag. I made a patch of the character Calamity/Chalchiuhtlicue from the web series No Evil. One of the distinctive features of this character is her gradient hair, which goes from yellowish to green to blue, so I had to figure out how to do a gradient on the embroidery machines. I searched online for tutorials, and found that some embroidery software has a setting called “variable density”, which lets you overlay two colors on top of each other, one fading in and one fading out, to create a smooth transition. PE Design, which we used, doesn’t have exactly this, but it has a “Gradation” feature available for some manual stitch types, which lets you create blends between different colors. I played around with creating gradients in general…

…and found out that the default stitch type creates ugly-looking vertical lines on the gradient from the under-stitching, and it’s better to have the shapes overlap a bit to avoid a gap in the middle where both colors are medium-density. I created my file in Illustrator, exported it to SVG, and imported to PE Design. It turned out that PE Design doesn’t let you apply gradation to layers of imported shapes, so I had to re-draw the hair in PE Design itself. Here are a couple first attempts at the hair:

After the first, I realized I needed to use more dramatic colors, and after the second, I had to adjust the color transition function in the gradation settings to be exponential rather than linear, to give each color a region where it was clearly the strongest. I also moved the middle color – the green – to the top of the stitching order, to better hide the sharp yellow/blue transition in the middle. I finally found a hair design I was happy with, and embroidered the rest of the design!

After it was done (which took about 3 hours of embroidering total), I added LEDs to create an ellipsis above the character.

At first I was skeptical that the embroidery machines could do fine detail, so I modified the design to remove some of the more fiddly elements, like thin shadows. But it turns out it did a great job with the little details on this design, so if I were to do this project or a similar one again, I would include those details.

In the bag-making lab, we learned how to sew together fabric and a zipper to create a bag. It was really cool how we turned the bags inside out to hide the stitching on the inside.

When it came time to put my patch on a bag, I decided I wanted to use the whole scrap of felt the patch was on as the front of the bag, rather than cutting it out, since I thought it would look better that way. Since the character embroidered on it has mostly cool colors and is associated with water, I went with an ocean-themed scrap of tough fabric for the back of the bag, and a lighter blue silky interior with leaf designs. For the LEDs, I put the battery pack between the outer and inner layers, so the inside wouldn’t be too cluttered, which ended up fine because the inner fabric is thin enough that you can flip the switch through it.

I think the final result turned out pretty well! If I’d known at the beginning that the patch would be the whole front of the bag, I would’ve made a design around it, but otherwise I’m pretty happy with how the bag turned out.

Continue Reading

3D Design, Scanning, and Printing – Nick Desai

For the 3D printing project, we learned a variety of different 3D design techniques. The one that was newest to me was scanning, which we did by using Microsoft Kinects to take images of ourselves from different angles, and reconstitute the results into a 3D model. When I got scanned, I tried doing a pose to see how well the Kinect could capture detail. As it turns out, it can get quite a lot! It does seem to miss fine lines, and smooth things over a bit, especially in faces. But overall it was pretty impressive.


We also went over organic modeling with Sculptris. I found this pretty difficult, even more so than working with actual clay. I tried importing the 3D scan of myself into Sculptris and working on it to give myself elf ears and a Pinocchio nose, but it was difficult to get something that looked decent. On the plus side, I got to see what I would look like if I were made entirely of water, so that’s something!

For the actual project, I went with the prompt about designing a new kind of flatware. I kind of merged the first and second prompts, though, because my idea was to incorporate LCD screens into the bottoms and outsides of plates and bowls, so people in restaurants would be able to order things “right off their plate”, and preview what foods would look like sitting on the plate. Since touching the bottom of a plate that had food on it might be gross, I also added a fork that had a button on it, which could act like a Wii remote, letting the user point it at the plate to select things. Finally, taking pictures of your meal seems to be pretty popular for some reason, so I added a feature where a camera attachment could be added to a plate to automatically upload a picture of your food to Instragram (or wherever you upload food pics). Here’s my storyboard for the project:

To design it, I used the last method we covered for making 3D objects – geometric modeling with TinkerCad. Making curved shapes proved very difficult with this software, so my designs ended up being kind of angular, but I think the rough shapes are pretty much what I wanted. I ended up using a lot of techniques with boolean operations on solids, and I wish TinkerCad offered an “intersection” option, which would construct a shape out of the overlap between two other shapes. As it is, I had to fake intersections by copying the first shape, cutting the second shape out of one of the copies, and cutting the result out of the remaining copy. It had the same effect, but was kind of painful to do.


I ended up making a plate model, the fork remote, and the camera attachment. For the printing, I made the plate and camera attachment, and designed them so they could snap together and come apart. I submitted it the models as an online order to the Makerlab in the BIF.

The plate and attachment can be moved around separately, but there’s also a curved groove in the attachment that lets it attach to the plate. I was really happy with how well the camera attachment sat on the plate, and how sturdy it was. I think if I were to do this assignment again, I would try to be more ambitious in the printing, and work more with joints and attachments – since there seem to be a lot of pre-made joint parts on TinkerCad, and I was curious about how to use them.

Continue Reading

Copper Tape Circuits Project – Nick Desai

Our third assignment was to make a 3D paper object with copper tape and LEDs. This was super fun, because I’ve played around with circuits before, but never with these kinds of materials. In the intro class, we had an introduction to circuits, and we made quotes with light-up areas powered by circuits underneath. I chose a quote about a bat by Shel Silverstein, and made the bat’s eyes glow when you pressed the quote. The in-class project was fun – I haven’t worked with crayons in a long time, so it felt like being a kid again!


For our more advanced week project, we had to either make a pop-up card or an origami object that incorporated lights. I always like looking at other people’s origami stuff, so I wanted to make something with origami. To see if that was remotely feasible given the fact that I have very little previous origami experience, I tried my hand at making a paper crane out of an old assignment sheet. It went pretty well, so I got some construction paper from the lab, trimmed it into squares, and made a bunch of different animals. One difficulty I had working with construction paper is that it’s kind of thick, so areas where a lot of layers sit on top of each other tend to be thick, and folds don’t press down quite as nicely as you would want. It would have been nice to work with actual origami paper. Another problem is that construction paper tends to have one direction along which it really likes to tear, so you’ve got to be careful when you’re pressing folds flat that you don’t accidentally ruin your paper (which I did 🙁 ).

After I made the crane, I was thinking about how to incorporate electronics into it, and thought of making a display case for all the different animals, where the case had the lights and the animals themselves acted as switches, so putting an animal on the case would complete the circuit and cause the case to light up. I tried it with the crane first, putting copper tape along the bottom of the model, and it worked well enough that I did it with the rest of the animals too. I then made a box for the animals to sit on, and put the battery on the inside, with tape running to the outside where the LEDs were mounted.

Then I tested the crane on the box.

It worked all right, though I had to press down to get the circuit to complete. That proved to be the case with the rest of the animals too – I had to cover every part of their bottom parts with tape and press them down to get it to work.

In the end, to take the result pictures, I had to kind of cheat and use a bit of extra tape to connect the animals to the circuit. But I like the way the result turned out!

(There’s a stingray, an attempt at a dragon, a butterfly, a crane, and my favorite, the dinosaur)

I like how the light reflects off the folds in the paper, especially on the last one! Though it was kind of a pain to get the circuit to connect, and if I were to do this again, I would have put the switch on the box itself, and weighted the animals down so they pressed a switch flat, which I think would have been more reliable.

Continue Reading

Vinyl Stickers Project – Nick Desai

For the second INFO490 project, we had to make vinyl stickers. I was a bit wary of this one because I know from experience how tough vinyl is to work with, and… well, this wasn’t an exception.

I made a couple more advanced stickers – one that worked pretty well, and one that had a few more issues. The first one was a sticker of Jake the dog from the cartoon Adventure Time. I made the design and cut a test sheet to see if my technique for doing cartoon outlines – using a solid black back layer with all the detail on top – would work.

It ended up looking absolutely terrifying (nightmare fuel, honestly), but the cut came out okay! I cut the rest of the pieces and assembled the Jake sticker.

For my second more complicated sticker, I tried to make Connie from Steven Universe. The design I ended up using for her had a lot of little fiddly bits, and my first attempt failed.

I realized I needed to change the outline method – instead of using a back layer for the outlines, which required all the middle bits to be individual tiny pieces, I would cut all the outlines as one solid piece and put them on top, so that the bits underneath could be bigger, and hopefully, easier to work with. I changed the design to use this method, and tried again.

The result ended up being better than the first time around, but I had a lot of problems getting the layers to align, especially since the transfer tape was semi-opaque, and alignment involved a lot of guesswork. I think in the future I would try to use the clear transfer tape, and print a bottom layer of guide lines to help place the other layers.

Continue Reading

Laser Name Tag Project – Nick Desai

Our first project for the makerspace class was to make custom name tags using the laser cutter. I was pretty excited about this, because the laser is super cool, and who doesn’t want to play with lasers? In section, after the tour where Sara showed us the lab and all the people and equipment there, we sat down to design and make our first round of name tags. I had worked with Inkscape, the program we used, a bit before, so I tried making a design that used Inkscape’s cool path tools.

But I didn’t really know what I wanted to do for the assignment! I looked around for inspiration, and decided I wanted to improve my technical skills with Illustrator by doing something geometrical that would require knowing more about how to use the software. I was also kind of inspired by Captain America’s shield, with its rings of red and blue… and I really liked the mirrored acrylic we saw in the lab. So I made a design that had concentric rings of red and blue mirror, with a geometric flower-petal-style design engraved on them, and my name in the middle.

Here’s the pieces cut out, with my name in black as a test, though later I replaced it with gold. I used pattern brushes to make the engraved pattern, and the Pathfinder panel in Illustrator to make all the pieces fit together.

Here’s the final result from one angle.

Here are both nametags together – the original one on the left, and the fancy one on the right. I tried making a kind of drop shadow for the text in the gold, but I think that makes it look blurry in the picture.

Continue Reading