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

Arduino Jacket – Final Project

Question 1

I integrated a computer into my jacket, so that I could play a game on my jacket sleeve!

I used an Adafruit Flora as the computer that controlled the game, and I used sewable circuitry – particularly conductive thread, sewable LEDs and conductive fabric as the inputs and outputs of my game.

A big focus of this project was that this was my only denim jacket – I wear it a lot. I wanted my computer+game design to be robust against the normal usage conditions of the jacket. I roll it up clip it onto my bag, or I wear it on the nasty subway, or I wear it when it is raining. I wanted the computer to be safe from the dangerous environment, and I also wanted to be able to wear the jacket in all the normal situations that I’d wear it in.

I decided that the computer will be positioned inside one of my jacket pockets. That way

  1. it is not exposed to the external environment, AND, 
  2. if it gets loose and falls off, it safely falls into my pocket, and not on the ground.

The computer is still a very delicate item, so despite the pocket safety measure, I wanted the option to remove the computer in a modular fashion. Traditionally, the Flora computer is sewn onto the textile (this would be tough to modularly remove a sewn on item). Instead, I attached the Flora to my jacket with snappable buttons (now its modular, I can unsnap the buttons attaching the item to the fabric).

The way this works is that the LEDs and buttons are sewn onto my fabric with conductive thread. The electricity on these threads is supplied by my computer. so these same threads from the LEDs need to connect to my computer. Instead, the LED threads are attached to the male ends of snappable buttons, which are sewn onto my fabric. The female ends of the buttons are attached to the input/output pins of my Flora computer. When I want to create an electrical connection between the LED thread and my computer, I join the male and female ends of the snappable buttons. The buttons conduct electricity and act as an interface between the computer and the thread sewn into the fabric!

I initially planned to solder the female ends of the buttons onto my computer. The solder would act as a “conductive glue” between the computer and button. This was a hard task, and the force exerted by the button-unsnapping process would always break the solder-connection I had created. I spent a lot of time trying to perfect my soldering process before I gave up. This was the biggest challenge of this project.

I’m most proud of how I solved this problem. Originally, The solder was acting as a “glue”, and a “conductor”. Instead, I used superglue as the glue, and conductive thread as the conductor!

With this method, I circumvent another issue. Some snap buttons can be large, and they run the risk of either touching adjacent buttons or touching adjacent I/O ports. As seen in the above picture, I can glue some buttons far away from their respective I/O port and adjacent button, to ensure there’s no accidental touching of circuitry. I just need to create a longer connection between button and port with the conductive thread.

Question 2

My learning goals were to 1) work with electronic textiles, and 2) also work on a project design that is entirely my own and iterate that design.

I believe I successfully accomplished both goals. I invested a lot of time into understanding how conductive thread and sewable circuitry works, I looked at many different implementations to understand the best practices, and I practiced my sewing technique and improved it majorly also. I hoped to learn how to properly “think” about a sewing project – what are the challenges, what difficult decisions need to be made, how to problem solve on a sewing project. I did learn those things, and I also unintentionally learned how to fix or undo sewing mistakes!

For my second goal, my whole project was my own conception, I borrowed the concept of making the Flora modular with snappable buttons, but I iterated that design by using superglue and conductive thread instead of solder. My design involved 2 types of circuits, so I made sure to sew those circuits into a woodframe and test that my technique would work correctly. After finishing sewing any thread line or snap button or any electric component, I stopped to ensure that the electric connection was still “correct” and worked. This allowed me to catch mistakes early, fix my technique and not repeat those mistakes.

I’m very happy with project, specifically because of how rewarding the learning process was.

I invested a lot more mental, physical, critical effort in the process of learning, and then I felt smart when I applied my new knowledge.

Question 3

What really stands out to me upon re-reading past write-ups is that I was very conservative with my projects. I was afraid of failure, so I tried to structure my projects around the simplest techniques that had the least scope for errors. It shows because I rarely ran into road-blocks and was rarely forced to think laterally and problem solve. I would instead try to change my project to fit the outcomes of my practices.

With this final project, the requirement of formulating a challenging proposal within the structures of the two chosen learning goals was very helpful. It made me iterate my technique and process to fit the project instead of vice versa.

I really feel much more confident as a maker now – I understand now that failure isn’t such a big setback, and that working on sub-samples of the problem will allow me to catch my failures earlier and spend lesser time overall. Because of this, I feel comfortable trying new techniques and incorporating creativity into my problem solving.

Question 4

People often say that your life can turn out completely different than what you plan out of college. You can work on something thats entirely outside your major, and you can be working in a work culture that you didn’t think you’d enjoy. I could not see myself in this position, adapting to my environment and pivoting my life’s direction. Its a little extreme, but I feel differently now.

Working on this project, I’ve shown myself that I can work in a domain outside my expertise (sewing and textile) and adapt and excel. Additionally, I can make a new domain my own by incorporating my expertise in other domains. I didn’t see myself having such flexibility, but now I think my mind has opened to the possibility. I was a little scared about making E-Textile the focus of my project, but I handled it just fine. Now, I wont say “No” based on my prior judgment, because I have the potential to surprise myself. I believe being a “maker” also means not saying “no”.  You have to be able to think on your feet and “find a solution” in the making process.

I learnt the E-textile process by working hands-on on a project that was personally meaningful to me. Both factors really accelerated the rate at which I learned e-textile. I cannot think of another circumstance that would have been more conducive to my learning process. I feel so confident in my abilities to sew circuits into fabric right now.

Continue Reading

The Emulation Station

Concept Emerges.

Our last assignment! This project is supposed to be reflective of what we learned about the design process this semester. We had tasks such as: story boarding, paper prototyping, iterative assessment, and more! The only catch for this assignment was that we had to use a medium/tool that we have never used before. In the past we have always been given or had the option to use tools that we have learned in class, so this was all new. At the beginning, we were given a sheet of possible tools to choose from. Upon scanning the sheet for the first time, I saw “raspberry pi” on the list and immediately snapped into wanting to make a video game console. I have seen this done in the past, so I knew it was possible. I just had literally no idea of how to approach making it. 

For the storyboard, it was simple. I wanted to make a portable device that could play games, play them well, and be able to have more than one players playing. 

Picture 1: Initial Storyboard

Little did I know, this idea was ambitious to the point of being impossible. To start off, the games I wanted to play (gamecube) proved to be fundamentally impossible for the pi to run. Many forum posters say it is due to the pi not having a 64-bit architecture like the gamecube does. This is false because I ended up running N64, “64” for 64-bit architecture, games pretty well. In short, the pi just does not have enough power to run the games making it literally impossible to make a custom game cube out of a raspberry pi. To rectifiy this I went back a generation of game consoles to the Nintendo 64. Emulation for this console would prove sketchy but doable! To continue, I wrote “4 Players!!” completely ignorant to knowing what a “player” actually is. A player is something that is giving input that the console needs to read and execute. This is much more taxing on the cpu than a simple AI that doesn’t have inputs but only executions. So, this project was whittled down to a portable N64 game console that could support up to two players and run at 60 frames. 

Research

One of the first steps I had to take was purchasing a raspberry pi. I took about 30 minutes for me to make a decision between the Raspberry pi 2 B and the pi 3 and went with the 2B in the end. The Pi 3 did offer more processing power for 10 bucks more but many said I could emulate the same with a 2b. I took “the same” as the 2b has enough power to run the game flawlessly. I’m glad this was wrong. If the games ran flawlessly I wouldn’t have much to do. Instead, I learned a bunch about computers along the way. 

The other sect of research I had to do was how to interface with the pi. I quickly found that there was an OS designed to emulate games on the pi called “retropie.” To interface with the pi, I need to load an operating system (OS) onto a micro-SD card and boot the pi from there. Getting the OS loaded was easy. Put the micro-SD into a SD adapter -> Put the SD adapter into my computer’s SD slot -> Unzip a folder containing the OS called “retropie” -> Reinsert the micro-SD back into the pi and boot. Research did not take as much time as I thought it would take so I started to worry about if what I was doing was enough. Luckily the pi I bought was nowhere near perfect. 

The Meat and Potatoes

The meat and potatoes of this project was the optimization of this tiny computer. Many hours were spent within menus tweaking aspects of the pi that would either allot me more power or optimize a process. 

Picture 2: My desk during this whole project!

This amalgamation of cables would be my own little raspberry pi lab for the next week and a half. Two monitors, a laptop, 2 keyboard, 2 mice, 2 usb N64 controllers, my pi, and my desktop. Laptop was for loading software/games to the raspberry pi. Desktop was for debugging research. One monitor to interface with the pi. A keyboard to navigate the pi’s command prompts. Finally, the controllers to test game play. This picture was not necessary, but it was amusing to me! 

Picture 3: The raspberry pi 2 model B

This is the Pi I used for this project. In the middle of the board you can see a big green block of metal and a smaller grey block of metal to the right of the green block. These are heat sinks. Heat sinks act as a form of cooling without the fan. Heat is taken from the processor (green) and the Graphics Processing Unit(GPU, grey) and sent upward thorough the little fins. These fins proved crucial as they reduced the temperature of the pi running N64 games from 70 degrees C (highly dangerous) to around 58 degrees C (not highly dangerous). Outside to that modification, the rest of the board is run-of-the-mill. 32GB micro-SD (middle left), micro-USB power supply (bottom left) HDMI (bottom), Ethernet port (bottom right) and 4 USB 2.0 ports (top right).

Image result for retropie config menuImage result for raspi config advanced options

Pictures 4&5: Raspberry Pi configuration screen (left) Advanced configurations screen (right)

I am going to do a quick run down of each of these screens’ options and how I used them to benefit me or why I didn’t use them.

Raspi config, left

  • Expand File system: This formats the SD to the raspberry Pi, already done on my computer
  • Change Password: Security measure, no password was used doubt someone will hack my pi
  • Boot options: Could choose to boot to this screen or the OS, I did OS
  • Wait for network at boot: Have to be connected to the internet to use the Pi, this was disabled.
  • Internationalization Options: Everything was in English so I did not touch this.
  • Enable Camera: You can connect a camera via ribbon cable to the the pi, cameras are not needed for video games.
  • Add to Rastrack: Online pi data tracking
  • Overclock: I had to enable overclocking on my pi. Bumped the processing power from 900Mhz to 1000Mhz. A 7-10 frame difference in testing.
  • Advanced options: see right
  • About Raspi-config: A READ ME file about what each of these menu options does. 

Advanced options, right 

  • Expand File system: I do not know why they had this twice
  • Over scan: Naturally games have these ugly black bars around the screen. Before messing with this, about half the screen was black bars. Over scan eliminates these bars making the game easier to see 
  • Memory split: Oddly enough, I did not have to touch this option. I had the games running at 60 fps without touching it.
  • Audio: One can either play audio through the 3.5 mm jack on the board or through the HDMI. By default, it was through the jack so I changed it to HDMI.
  • Resolution: For some reason, the resolution was really high out of the box. Old games do not need high res do I bumped it down to 640×480. Doing this would put less stress on the GPU and processor because there is less on screen imaging to process. Also, there is a hertz associated with a resolution. This number of hertz is a hard cap at the amount of frames a game can be outputted to the monitor. There were options for 50hz resolutions but this would hard cap our game play at 50 frames, not ideal. 60 hertz for our desired 60 frame gameplay
  • GL Driver: For experimental versions of pi. Did not use.

Picture 6&7: Game Emulator Menu (left) picture taken of the emulation (right)

Each game on the pi is given its own emulation menu from which to control aspects of that games emulation. Every game is a tad different so they must be emulated different. 

  • Default Emulator: Always picks the most powerful one which is the worst one.
  • Select Emulator: Can choose from 7 emulators. The one I picked, “gles2n64”, prioritizes game play over graphics leading to smoother game play but bad in-game menus and the lack of eyes from smash bros characters (right).
  • Remove emulator: Removes the emulator. I do not understand this option’s purpose.
  • Default video mode: I did this back in the raspi-config menu. CEA-1 is the 640×480 resolution.
  • Remove video mode: Removes the video mode. I do not understand this option’s purpose.
  • Select frame buffer: Having a frame buffer makes it so that input is separated by frames. Once can press four buttons at once and have them all be read or, with a frame buffer, can have the first button pushed be read while the others are not read. They are not read because the frame buffer counter is not up. This can make games seem more fluid. Games already have their own frame buffers so I did not use this option.
  • Launch: launch the game and play it. 
  • Exit: save the settings and do not play the game.

The final thing I did was turn off something called retroarch.h settings. Retroarch was a controller setup program that made it so that one could have a specific set of controls per each game. Turning this off allotting me more cores towards emulation.

Overall:

  • Overclocking to increase processor power
  • Changing resolution to decrease computing stress and give the ability for 60 frames per second
  • Fixing over scan to conform the game to the screen.
  • Audio to HDMI
  • Finding the right emulator to show the game
  • Disabling undesired programs (retroarch.h)
  • Adding heat sinks to my CPU and GPU to decease temperature.  

All lead up to a game console that:

  • Can be played for hours without over heating
  • Supports two players easily
  • Can fit in your pocket
  • Can conform to any TV
  • Can hold 32 GB worth of N64 games (biggest game I saw was 50mb, so 640 games!)
  • And most importantly, run at 60 frames per second.

I could go on about how important to me it was that I managed 60 frames. It just produces the best game play bar-none.

Finishing Up

The last bit I had to do was make a box! For this box I laser cut a press fit box. I could have 3D printed a case but a pressfit box took less time and looked better. 

Picture 8: The pressfit case.

I used an online generator to produce a .svg file of a pressfit box. All I had to do was add holes for the ports. Picture 8 was a little bit too small so I had to reprint, the concept was there tho. The reason I cut holes in the top of the box was to allow for the heat to rise. Don’t want our console to overheat after all the work we had done to it.  

Presentation

Picture 9: Console presentation

The presentation went better than expected! I did not run into any issues testing at home pre-presentation but that doesn’t mean bugs will not creep up! This presentation ran for 90 min and the console maintained quality throughout. I had a couple people that stayed and played for awhile. I defiantly got more praise for it than I thought so needless to say I was proud of myself!

Reflection

At the start of this project, when I had to establish learning goals. I said that my tech learning goal was to be able to use raspberry pi as a prototyping device in the future. As for what I would be prototyping, I do not know, but I have the know how of manipulating the pi to get a desired state. Somthing I just thought of being to prototype, as I’m writing this, would be a smart speaker. There is a ribbon cable spot for a screen so one does not have to use HDMI. Then there is the 3.5mm jack for audio. The micro-SD for storage and USB for a Bluetooth adapter as well as speakers them selves. One could use all these aspects to run Spotify on a tiny LCD and play music over Bluetooth (wifi if you have the pi 3).

It is baby’s first computer is what it is, low barrier to entry. A good place to start if one would like to tinker with computational architecture. Which leads me to my educational learning goal. I really wanted to learn how a computer works. I’ve built my own desktop before but that was all plug and play. I’ve never had to manipulate anything on the back end. Going in, I thought I would be just turning down the resolution and overclocking. What I ended up doing was min-maxing cores of the processor. Working in command prompts was also new to me so navigating those was troubling. It was almost like a text adventure but instead of giving command you are writing codes to change directories and call certain programs. Next time I will have to work with computers on a more intricate level I will think back to this project to see if what I did could help. 

Continue Reading

Final Project

Question 1: Show us what you made for your final project.  Include at least two in-process photos and two final photos (or videos!) of your final project. Include a couple sentences about what challenges you faced and what you are most proud of but do not write a full step-by-step report of what you did.

I developed a fun strategy-based board game that can be played by multiple players. The game is turn-based and contains mechanics such as chess-based movement and attacking other players. The board is a rectangular grid. Players move and can attack other players. There are obstacles which players can use to shield themselves from attacks from other players. Power-ups are used to enhance offensive bonuses.

I faced several challenges along the way. One part was what technologies I would use. I downloaded models from Thingiverse and printed them with the resin printer, which turned out to be very detailed. Another was printing out the barriers, as with 3D printing it took forever and I was on a time crunch. I consulted James and he provided suggestions such as laser-cutting pieces and assembling them together, but I ultimately did not apply this idea because my project would require me to do those prints 30+ times, which was not feasible in my opinion.

Another challenge was the overall design of the game mechanics. I consulted my friend Miguel, a board game specialist, and asked him for his input on the game rules I had devised. One major implementation that he designed was the concept of a counter-play, since before, players would have no method to defend themselves against an attack.

In-progress pictures of the materials:

Question 2: What were your learning goals for your final project? Write at least one paragraph per learning goal about what you hoped to learn as you worked on this final project and what you actually learned.

Some questions to help your thinking: What did you learn that surprised you? Did you meet your goal? If you failed to meet your goal, how did you iterate your plan and what did you learn in that process? Are you happy with your final project? Is your final project meaningful to you? Why?

 

My learning goals for this project were: to use a new technology that I have not used before, and to push my creativity with this project and come up with unique game ideas. This project would essentially build upon the skills I have learned so far in this class, combining multiple areas into one.

I hoped to learn new technologies. I considered using neopixels for a cool effect but due to not having enough time, instead I opted to learn watercolor painting and produce my materials with different technologies, such as resin printing (which produces more detailed prints) and acrylic laser-cutting (which produced a really nice texture).

I also wanted to create a game that was creative and that people enjoyed. This is pretty difficult overall and even though I spent time considering different pros and cons of gameplay and that I like playing my own game, I am unsure if it would appeal to a wider audience. Rules and game play will have to be carefully tuned to ensure that the game makes sense and is playable, and is one that is truly strategy-based.

I think overall I met both of my goals. I like my game and think the outcome turned out decently.

 

Question 3: After rereading your lab assignment write-ups, what is the most significant thing you have learned over the course of these assignments? This is not a question about tool learning, but rather a question about yourself as a learner.

Some questions to help your thinking: Have you become more comfortable with certain kinds of tasks? Have you surprised yourself with what you enjoyed doing? Do you feel you’ve developed your confidence as a maker and what does that look like?

 

This class taught me how to pick up new technologies and how to learn them effectively. I think my TA Emilie accomplished this quite well in her instruction of my section. These assignments would include a short lesson and then building a very simple product, and then creating more complicated versions that would be used in the turned-in lab assignment. Initially I was uncomfortable and wasn’t sure if I should stay enrolled in this class because of the implications of having to force myself to be creative, but I turned out to like it, and so I’m glad I stayed because I’m proud of myself and the things I’ve learned and made.

 

Question(s) 4: Has this course spurred you to think about yourself differently? And/or future goals and interests in life? Do you consider yourself a maker? What does that mean to you now that it didn’t at the beginning of the semester?

Some questions to help your thinking: What does it mean to you to call yourself a maker (or not)? Who do you think should call themselves a maker? Early on you read a quotation from Seymour Papert who suggested the most significant learning is a) hands-on and b) personally meaningful. Does that quotation mean more to you now than it did at the beginning of the semester? What does it mean to you? Did you experience any learning this semester that fit this definition? Did the hands-on nature of the class make your learning more significant? Why and how?

 

Makerspaces encourage the development of both the technical and the creative aspects of people. It’s a very hands-on and practical area and also open toward people. I think one thing this course has changed in me is that it has helped me want to learn about not just why, but also how things work. I guess this means that I’m a maker.

Notwithstanding, ultimately being a maker is up to how you define it. If you make things, does that make you a maker? There are some specific things that people consider a part of makerspaces but I question that they are requirements to be considered a maker. In my opinion, if you can consider yourself a maker, then you are one.

I think making something hands-on and meaningful is definitely important, and I think I’ve accomplished this during the course of this semester. I think understanding makerspaces develops as you do it more. It’s a constant learning experience for everyone and it doesn’t stop.

 

Rules:

Setup

  • Requirements: 2-4 players, game board, barriers, hearts, and power-ups
  • Each player selects one character.
  • Each player receives three hearts (lives).
  • Starting from the youngest player, going clockwise, place a power-up on the board until none.
  • Starting from the youngest player, going clockwise, place a barrier on the board until none.
    • During this process, all players should be able to reach each other at all times.
  • Starting from the youngest player, going clockwise, roll a die until the number 1, 2, 3, or 4 is rolled. Place your character on the spawn point that matches that number.
  • The youngest player starts first, and turns go clockwise.

 

Each turn

  • The player must move one square, either vertically or horizontally. Diagonal movement is not allowed, and players cannot cross barriers.
  • If the player walks into a power-up, pick up that power-up. You can only have one.
  • After moving, the player can then choose to attack a player or a barrier if they are able to, given their power-up.

 

Attacking

  • Unlike chess, you don’t move to the opponent’s square after the attack.
  • A player can attack other players differently depending on their power-ups (see below).
  • If the player chooses to attack another player:
    • The attacker and defender each roll a die.
    • If the attacker’s roll is higher, the attack is successful.
    • During any of these steps, if you roll a tie, both reroll.
    • Else, the attacker rolls a second time. If this roll is higher than the defender’s original roll, the attack is successful.
    • If the attack is successful, the player returns a heart to the bank, forfeits their power-up at the current spot, and is moved to ANY respawn point of their choosing. Discard the attacker’s power-up.
      • If the defender will have 0 hearts, they are eliminated from the game.
    • If the attack is unsuccessful, end the turn.
  • If the player attacks a barrier instead, then just remove the barrier.

 

Power-ups

  • Offensive power-ups:
    • None: Can only attack from any adjacent tile in all directions (like a chess king).
    • Laser gun (x4, GREEN): Can attack a player in any tile in the same X or Y axis. Does not penetrate barriers.
    • Sword (x4, RED): Attacks like no power-up, except you can attack barriers (to remove them) as well.
  • Defensive power-ups:
    • Lucky coin (x2, YELLOW): If this player is attacked at any time, add +1 to the defender’s rolls.
    • Speedy (x2, ORANGE): This player can move two squares instead of one each turn. Lasts until the player dies.
    • Teleporter (x2, BLUE): This player can choose to teleport to a respawn point of their choice during any turn, as a replacement for their movement phase.
  • Power-ups are single-use and most are discarded after they are used, except for the lucky coin and speedy.
  • Players can only have one power-up at a time, but can be swapped (the other one is discarded).
Continue Reading

Final Project

Question 1

For the final project, I have created a turn-signal sweater/jacket. This jacket is designed for bikers to use, especially at night. When it is dark outside, it can be dangerous for those who are in bicycle to bike, since they will not be able to signal if they’re going to turn left or right. With this jacket/sweater, they can give a signal to other vehicles on the road. By pressing the button on the respective sleeve of the sweater, the lights on their back will blink, indicating the direction that they are turning.

Before this project, I thought that making this project is going to be difficult and complicated. That is because I have never used the materials that are required to be used, such as washable LED, conductive threat and Adafruit Flora. Since I’m not experienced with coding or have any experience on the board, I had some difficulties getting the code to the circuit. I looked for helped online, visiting the Adafruit website, YouTube and other tutorial websites, but I still could not get my circuit to work. Fortunately, after seeking help from the Fab Lab staff, I was able to figure the code out. I’m certainly proud for figuring out how to set up the circuit. Certainly, I did get a lot of help from Jess, but I did try to sketch out a circuit that I think would work and to my surprise, I got it almost correct!

initial rough sketch

Circuit was successfully attached!

Overall, I am very satisfied with my sweater! Nevertheless, if I have more time, I would do several things differently. First, I would get a darker jacket. Since the conductive thread is dark grey, I think by using a darker color will hide it, making the sweater even more seamless. Although the flora, conductive thread and the LED lights are washable, I’ve been told that too much wash would erode the conductivity. Thus, to prevent this, I would make an insert that can be taken off and be washed. Alternatively, considering that we’re all college students, moving the circuit to a backpack would be cool too!

Final Design (With pocket to store battery)

Final Design: Video

Question 2

For this final project, I have the following learning goals:

  1. I want to challenge myself to create something that is useful to myself and make it usable in everyday life, instead of just a rough concept.  

After my project is done, I’m quite satisfied with what I have. Surprisingly, the project that I made is pretty useful in real life! However, I do regret using a pink sweater for the base. Initially, my plan was to use a black zip-up hoodie that the user can take on/off easily. However, I do not have any spare zip-up hoodies, nor do I have a black sweater. Because the sweater is so light in color, the conductive thread became so apparent against the fabric. Nevertheless, I still think that the final project is still useful. With Adafruit Flora, conductive thread, and the washable LED lights, the sweater is waterproof and washable. I have also sewed a piece of fabric on it to create a pocket to store the battery. Thus, the battery won’t be dangling out when the user is wearing it.

 

  1. I want to push myself outside of my comfort zone by doing something I’ve never done before, using the Lilypad Arduino/Adafruit Flora and sewable circuits. This means I will have to do research on how they work and how to use them and ask the Fab Lab staff for help. 

While I have learned how to use Arduino Uno, I never actually used a different board before. Being a business student, coding is really out of my comfort zone. Based on a tutorial I found online, I was supposed to use the Lilypad Arduino. However, I found out that this was not available at the Fab Lab but an Adafruit Flora would work perfectly as well. I decided to try using the Adafruit Flora and seek the internet for help. However, I found little to no help at all online. I decided to ask around the Fab Lab staff to help me and found out that Jess from the Fab Lab had done similar projects before. Thus, with her help, I was able to work on the code and the circuit.

 

As I look through my past assignments and my past lab assignment write-ups, I found out that I have certainly stretched my creativity over the past semester. I would never call myself a ‘maker’ before. I have always felt that I am someone who likes to stay in her comfort zone and is someone who would always take the easy way to do stuff. However, the assignments have challenged me to do many things that I have never done before, learning about tools like 3D printing, laser cutting, circuit making and many more! As I learn about these tools, I wonder what other things I can create by using the tools.

 

Question 3

As I looked at the things that I made earlier, I noticed how the things I made started out with things that are really simple and ‘safe’ to do. However, as the semester goes, I started to make things that are more interesting. Sure, I did look at the internet for some inspiration, but I did put on my little touch on it to personalize the result. Although my project might not always look as good as the ones that I try to get inspiration from, I am still very proud of the result. I have also become more confident with what I do and am more willing to try. With that, I often go ahead with my gut and see if it works out. Often when it doesn’t, I would trace back what I did and try again. This is especially true with the pom-pom bot assignment. With this final project, I was also able to show resilience. There were many times during this project where I felt that the project was too difficult and wanted to give up to do something easier. Nevertheless, I managed to push my way through and complete the project. 

 

Question 4

There are certainly other makers out there who are making life-changing innovations or something that no one has seen before. Me, on the other hand, is an amateur who only know how to operate the tools in the most basic way. With that in mind, I often think to myself, “does this make me be a maker?” This is still a debate that I often I have with myself. Evidently, often my ideas are not that original. Considering that I am a business major, I also often think, are any of the things I learned in this class going to be useful? However, just like Seymour Papert suggested, the most significant learning is a) hands-on and b) personally meaningful. In that case, I have learned a lot. It is true that what I’ve learned in this class will not be as beneficial as my other business classes when I enter the corporate world. Nevertheless, throughout the class, I have constantly challenged myself to do things that are outside my comfort zone and things that I never do before. These soft skills are certainly important not only professionally, but personally as well. I also like the fact that being able to create new things, I was able to express myself in the things that I create.

 

 

 

Continue Reading

Final Project: MIDI Controller – Arun Abraham

Question 1:

For my final project, I sought to create a Piano MIDI controller that I could potentially use with a DAW (digital audio workstation) when producing/recording music for myself in the future. MIDI controllers are typically somewhat pricey, so I thought this would be a cool alternative.

Wooden piano board created using Inkscape and the Epilog laser.

Initial Raspberry Pi testing before I switched over to the Arduino.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Some of the challenges I faced when creating this project were with executing on the initial project conception with using a Raspberry Pi. I found a lot of difficulty with setting up the Raspberry Pi and had to continuously get more and more equipment for it to fully work, and even then, I had to scrap the idea because it wouldn’t have worked as smoothly as an Arduino would. I lost a lot of time trying to setup the Raspberry Pi before switching to an Arduino.

The Adafruit MPR121 sensor with wires and metal pins soldered to it,

Example code that combined the MPR121test file that check each of the 12 touch sensors on the board with a tutorial on sending MIDI messages. The results can be seen in the Serial. This was a prototype that had problems because of the overlap of sending data through Serial multiple times.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Another challenge I faced was with soldering, something I was relatively new to. I had soldered once before 7 years ago and had decided at that time that I would never do it again because it was difficult for me. Luckily, it turned out mostly fine this time, but one of the wires that was soldered didn’t have a great connection to the Adafruit MPR121 board. Another challenge I faced was with getting the touch capacitive data from the Adafruit MPR121 to be translated to MIDI messages that would be read by the computer and any MIDI software or DAW. I tried to do this originally all with the Arduino code but found that I needed a Python script to translate the Serial input from the Arduino into MIDI messages instead. In the videos below, you can see how I experimented with MIDI messages apart from the touch sensors, in order to get that working first. In the first video, I was able to get MIDI data to send from the Arduino but it wasn’t connect to the MIDI player. In the second video, it played through the MIDI player by means of a virtual MIDI port created using the LoopMIDI software and Hairless MIDI <-> Serial Bridge to send the Serial data to the port, which was then set as the MIDI input for the MIDI software I used (Virtual MIDI Piano Keyboard). 

The last challenge that I faced was with getting the MIDI messages to go to the MIDI output device of choice. I was easily able to have the computer output sound when I touched the sensors, but it needed to play through the device, where I would see the piano keys on it being pressed down as I touched it. I had to use a variety of different software to get this work, including a virtual MIDI port, but it ended up connecting smoothly after trying out the different settings and figuring out what worked!

The final setup of the Arduino with the wooden board, sensors, alligator clips, and foil for touch.

The final computer setup with virtual MIDI port through LoopMIDI, the Python script running, and the MIDI player open.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I am most proud of the fact that I was able to use my prior programming knowledge in Python to process the data from the Arduino! I found it cool that I could use the skills I learned from this class and combine it with my prior skills to create something that was even useful for my own music projects!

Question 2:

Learning Goal 1: I want to challenge myself to incorporate a Raspberry Pi into my project because even though I am a computer science student, I do not feel comfortable dealing with circuits, wires, and microcontrollers/microcomputers (I avoided hardware and ECE classes).

Unfortunately, I was unable to meet this goal because of unexpected circumstances with the Raspberry Pi and the corresponding equipment for it. However, I was still able to use a microcontroller in the Arduino and used libraries that I had not used before in order to make this project work. Likewise, I was able to face my discomfort with using circuits and wires and even soldering as I used the Adafruit MPR121, a new sensor, with the Arduino. I learned that the Arduino is capable of doing a lot more than I originally thought! While I thought it was a very basic computer simply by the fact that it runs a continuous loop, I was surprised to see the sheer number of libraries for it. It was cool to experiment with the different MIDI libraries and learn more about the Serial library as well. It was definitely for the best that I used the Arduino rather than the Raspberry Pi because I think the Raspberry Pi would have added a complexity that wasn’t really needed for the scope of this project. As a result, I am happy with the outcome and the implementation!

Learning Goal 2: I want to personalize the design by adding my own touches to a standard design so that I can push my creativity.

I feel that I was able to personalize the design by creating the piano keys completely from scratch in Inkscape. It was very simple to design, but it was cool to have used the Epilog Laser to raster the piano keys onto plywood for the MIDI controller. Most designs online used aluminum foil or conductive ink, so they were usually constructed on paper, so it was cool to see how it would look on a piece of engraved wood. I would have liked to add color to it somehow, but likewise, the black keys were done with raster, which would have been covered up if I had included a sticker or cardstock by using the Silhouette cutter. Likewise, the foil covered up most of the wood, but it was necessary in order to have the alligator clips attach to it and have the keys be conductive. Though I had a picture of what the board would ideally look like in my head, I learned that it is near impossible to have it look exactly like a design concept simply because all of the tools and material might not be in place. I learned that there is a great need for flexibility, adaptability, and compromise when it comes to the design process!

 

Question 3:

As I already stated, I think I learned that there is a great need for flexibility and adaptability when it comes to designing and making something. As a computer science student, I’ve seen it as I’ve written code and worked on different projects, but when it has come to this class and the mostly hands-on work, I’ve come to see even more how ideas may need to be scrapped and I have to start over from the beginning when things go awry. It really takes a lot of patience and planning in order to make a good product, and it may even take multiple prototypes to get something working as you originally planned. It may even require tweaks to the original design and omission of things that just aren’t feasible with time, material, or equipment constraints.

One thing that I’ve definitely become more comfortable with is working with hands-on projects. In the past, I steered clear of these projects because I feared the attention to detail that was necessary for these sorts of projects, but I found myself enjoying the projects in these classes (especially the Arduino units) as I became more accustomed to working with my hands. I definitely feel more confident as a maker and feel like my creativity really developed this semester.

 

Question(s) 4:

I think this course definitely has caused me to think about myself and my potential differently. Apart from coding, I was very hesitant with other forms of engineering, but now, I feel more adventurous and willing to try out new things related to making. Likewise, I felt like my creative capacities were always limited to the arena of coding, but now, I see how I can be creative with other things, like when using Inkscape for laser cutting and stickers or the different sensors and outputs for the Arduino. I think I feel a lot more confident when it comes to potential independent projects in the future, and I would be more willing to do craft work in the future as well.

I think I considered myself a maker before because of my computer science background and the numerous projects and apps I worked on before, but I definitely would identify more as maker now after this class because I’ve had the opportunity to work on several different kinds of projects to expand my skill set.

I think that the term maker really can be a broad term to refer to anyone who can create or recreate an item by their own hands, starting at the design process and then progressing to construction and testing until a final product is achieved. I feel like this is definitely in line with Seymour Papert’s quotation as well because being a maker requires a person to do a lot of hands-on work and requires them to be original in their ideas, which usually makes it personally meaningful. This quotation definitely means more to me now in the context of making because having to design my own projects and think about how they would benefit me or be interesting to me was directly correlated with how driven I would be to complete the project. Unlike with required projects in past classes, I found myself much more interested in these projects once I had come up with an idea. The drive to complete the project that came with the idea would prompt me to learn new things in order to complete these projects and do them well, so I feel like I definitely learned a lot as a result of that. The hands-on nature definitely played a big part because it somewhat forced me out of my comfort zone and forced me to experiment with different ideas so that there would be a learning by trial and error.

Continue Reading

Final Project – Motion Sensor Solar Powered Desk Lamp

Question 1:

For this final project, I made a solar powered motion sensor desk lamp controlled by Arduino. The lamp is made by cutting a block of wood into three pieces. Two of the longer blocks are for the stand which is connected to the other block for the head with a screw, winged bolt, and washer to make the head adjustable. I faced a lot of challenges in the project which are to create the solar panel, connecting it to the Arduino, programming the Arduino and doing the woodworking as I have never had any experience whatsoever. I am really proud of building the solar panel with the help of Brandon. Never I would have thought that I would literally build the solar panel circuit myself (thought of buying it at first), but after much experiments, it was done!

 

Question 2:

First, my learning goal was to get more of hands-on experience on building things. I come from Indonesia and woodworking was not something that was really taught to students however, crafting was something that has always intrigued me since childhood. From that, I hoped to gain the basic skills in woodworking and using power tools to create new products from materials such as wood. After doing the project, I have gained the basics in modeling materials such as cutting the wood using an electric saw and drilling using the heavy machine with supervision from the representatives in charge of safety.

 

The next learning goal I had in this project was to do something more on the engineering side and gain more technical skills. Although I initially thought that I am a maker by heart, this ideology does not really translate using the technical skills that I possess and have to apply to the project. So, by the end of the project, I hope to gain knowledge about circuits and power conversion. After doing the project, although not much, I did gain this knowledge such as if you are using a parallel circuit, you will get an even voltage distribution and more current (yeah, this is what worked for my project).

This learning goal also aided me in another personal goal, which is to get closer to the people in the FabLab. Earlier in the semester, I was so mesmerized with what the members of the lab are doing and really wanted to get involved. However, as the semester, I did not have that much time to come to the lab aside from class hours. So, from this project, I vowed to at least to get closer with someone (aside from my awesome instructor Emilie). After doing the project, I did get closer to one person, Brandon. Brandon was really helpful during the entire project. He helped taught me how to create the solar panel power source and how to connect them to the Arduino. Moreover, he also helped me a lot with the coding part to program the motion sensor and the lights.

 

All in all, I think that my project was a huge success in my own metrics. Never would I expect, an accounting student like me to create something that so far away from the education discipline I have been going through for the past 4 years and created something that does not require me to make balance sheets or income statements. Although it is successful according to me, there is definitely room for improvements. First, I should have made the cable to the solar panel longer so that it can be moved more freely. The lamp can be plugged to a portable power source, hence it could be a portable lamp. In regards to that, I would think that making the body of the lamp and the Arduino box waterproof would definitely take my project to the next level. I really think that my project is important as it is definitely a step into the future. I think climate change is destroying our world and finding an alternative power source is a step to a better world. The motion sensor is there to limit the power usage as the lamp will turn off if you do not need it anymore and the lamp is entirely solar powered.

 

Question 3:

This class has taught me a lot in regard to technical skills as well as self-development skills. One thing that I learned from this class is that it is okay to make mistakes. As a business major, we were taught that it is imperative to not make mistakes as it would hinder the efficiency of the whole business process. Although not making mistakes is important, mistakes are valuable experiences that remind us that if one way does not work, you need to find an alternative to it. From mistakes, I learned that although a solution might logical sense, it might not work the same when applied due to other factors. This brings me to another lesson I learned through the whole experience, which is to be resilient. I am not the most efficient and smartest person when it comes to making the projects given in the class. It took more time for me in doing and also designing the projects. However, the class taught me that I have to struggle and stay resilient in finishing the tasks, which actually bore wonderful fruits. I can say that I am proud of the creations I made in the class (although some were really terrible, I know). One thing I found comfortable doing is actually using the Arduino. I was always inclined to this part of the class for its limitless ability. At first, it was hard, but after doing 4 projects with it (2 Arduino projects, 1 iteration project, and final project), I came to enjoy doing it and might I say be decent at it. 

 

Question 4:

Before taking this class, I thought that a maker is someone who makes something from nothing to something. However, this class has taught me that there is no one single definition for a maker as everyone has different and unique making processes. My definition of a maker is someone using tools to add value to something and tells stories using their creations (kinda borrowed the quote from Adam Savage[1]). By that definition, I am definitely a maker. Every learning experience I obtained from the class had been hands-on and meaningful for me in different ways. I definitely think that the quote means more to me now than it had at the beginning of the semester. With the skills, I gained and the understanding of the lessons’ objectives, I can confidently say that the class had given me a more holistic learning approach to making as it encompasses education disciplines as well as backgrounds. The hands-on experience helped me understand the matter at hand as I do not need to visualize the concept, as I can just try it out with the devices that are available in the lab.

 

 

 

[1] https://makezine.com/2016/04/01/what-is-a-maker-you-are/

 

Continue Reading

Jacob Pruiett Final Project

For my final project, I created a board game: Radical Robots! The main idea behind the board game was to create a game that caused players to need to make a lot of decisions and estimations of the odds to succeed. For this game I needed a large board, a number of tokens, trackers, and finally the meat of the game which consisted of almost 200 cards, with around 60 unique ones. A large portion of my time was spent developing the cards, but in terms of the physical product, here are some in progress shots:

Here were the first prototype cards I made

And a play test being setup between me and a few friends

And here are the final iterations of the cards as they are being cut out

Printing out the board proved easier than I’d thought, and it came out perfectly on the first time

Here is the final project all together during presentations

I’d say the most difficult part of the process was, ironically, the parts I’d initially thought would be the easiest, which were the printing of the cards and cutting out the tokens. For the cards, I wanted to originally use a sturdier material than plain copy paper, so I initially tried to find card stock, but we didn’t have any white card stock. I tried to print on black card stock just out of curiosity, but that didn’t work. I also tried photo paper, but that only prints on one side, and thus doesn’t work for cards. Finally, I resigned to using copy paper, with some example mock ups with a piece of card stock sandwiched between two pieces of copy paper. Additionally I had some similar issues using the laser cutter with two sided acrylic, and ended up switching to wood in the interest of time. Overall I’m pretty proud of my work, especially with the design of the art on the board and the back of the cards, and also the fact that, despite the sheer volume of rules and complexity of the game, it’s pretty playable.

 

For this project, my two main learning goals were one: “to learn how to use the poster printer to make a game board, and also how to use/design smaller objects with the laser printer since I’ve only done larger pieces so far.” and two: “to learn about game design and playability from the perspective of a creator instead of a player.”

For my first learning goal, I learned both the goals with ease. The poster printer was far easier to use than I had anticipated, as it turns out it basically functions like a normal printer, just on a larger scale. The smaller objects in and of themselves turned out fine with the laser printer. What the actual issue turned out to be was the material I used, as mentioned previously. Most notably, the settings for the double sided acrylic on the universal cutter are incorrect for 1/8″ material, and it would have required a lot of tinkering to get it right. For printing, ironically enough I learned more about printing cards on normal printers than I did for the poster printer. Most notably I learned how utterly time consuming prepping card pages for printing is, since both back and front pages must be aligned, and to get the right card ratios for balancing, it required almost 50 unique pages to be printed out, some multiple times, others only once or twice. I learned a lot about working with Inkscape as well, since I had to make all of the borders and back art for the cards, and then also all of the design for the poster. One major effect I learned was color correction of external images by overlaying a box over the image and turning down the opacity, allowing me to change the color and visibility of the picture to my liking. As I said previously, I’m especially proud of how these designs came out.

For my second learning goal, I’d say I learned quite a bit, but not as much as I’d hoped. I was only able to play test the game once before presentations, so I wasn’t able to iterate as much as I would’ve liked from a design stand point. However, what I did learn was quite interesting. In my first draft, I was so focused on the complexity of the rules and how interesting the mechanics could be, that I didn’t think about how those mechanics impacted time. The first play test we did took just over two hours, so it was quickly decided that changes needed to be implemented to reduce the amount of time it took to play. In particular, the issue of how quickly players progressed from the start was important, since it seemed to take a while for the game to ramp up. In addition, adjusting the requirements for what you need to fight bosses was also important to change. However, I did receive positive feed back about the core mechanics, so I believe the main thing to do in the future is simply to continue play testing and iterating on that. Overall the process opened my eyes to how easy it is to become overly absorbed in certain aspects of a project, and helped me appreciate just how much work goes into producing a well balanced and fun board game. Despite not being perfect, I do think the game has a solid core, and I’m proud of what I’ve accomplished with it so far. I don’t know if I’ll be able to, but in the future I would like continue working on this game and refining it, maybe even turn it into a proper product if I become confident enough in it.

 

Looking back through my write-ups, I’d say the most significant thing I’ve learned is how to fail. In most classes failure is cut and dry, and as soon as you fail that’s it, you have no chance to try again. In this class it’s been actively encouraged to fail, and then try again so that you can learn from your mistakes. In most courses failure simply results in a feeling of dread and anxiety for your grades. Here it spurs you to improve because you actually have the chance to improve, and I think this has greatly improved how much I’ve learned from this course because of it. Most importantly what this means is that I feel I can more confidently fail and move on from said failure in the future, which will be a very important skill not just in work, but in life too. 

 

This class has definitely spurred me to think about myself differently. Because of this class, I’ve relearned how to enjoy making. Prior to this class, most experience I’ve had with making were in my major, in sterile, grade driven experiences. All my previous experiences in making have been dull and life sucking, but over the course of these assignments I’ve learned that I still have the spark and drive for creativity. It’s been quite a liberating experience for me. On some projects I was not able to do as much as I’d wished, or didn’t fully implement what I’d want, but it wasn’t failure on a points or grade based level, it was failure on a personal level because I was invested in the projects themselves for their own sake, not for the sake of some grade that is supposed to somehow tell an employer my capabilities. 

I look forward to continuing to work as a maker in the future, whether in my work, or simply as a hobby. To be a maker is simple, after all: use your creativity to produce something. Previously I had thought of it in a more bland way, thinking making was just creating a product, but now I think the spark of creativity and the drive of passion are essential to being a maker as well. And I think I’ve gained these thanks over the course of the semester, in no small part thanks to this class.

I feel more confident in myself as a creative thinker, and more passionately about my work as a maker, and for that reason I’m incredibly glad I’ve taken this course.

Continue Reading

Final Project – Grant Johnson

Q1:

For my final project I decided to construct a Bluetooth speaker. Some challenges I faced during this project include: Part shopping for the proper parts that would all work together and create a decent sound. Learning how to solder and using it to help add security to the internal wiring of the speaker. Figuring out how to power the speakers in an efficient/mobile way. Figuring out a well-designed layout for the housing/case that fits properly to help hold everything together. I’m proud of a couple different parts of my final work. I really like the aesthetic and physical design that I landed on for the final version and think that given a second go at it I could create an extremely cool looking exterior to the speaker. I also was just proud that I was able to get everything to work. I’ve never had a lot of experience with working electronics besides computers and it was cool to get a chance to mess with something set up so very differently.

 

Q2:

My learning goal for this project was perseverance – I wanted to try and take this project beyond the point of simply ‘being functional’ and make it visually interesting and finished looking. I think one thing I definitely took away in the making of my speaker was that perseverance takes a ton, ton, ton of time. Trying things out, looking at stuff in different ways, and really finalizing what you want your creation to be takes thinking and experimentation until you can’t take it anymore. I still think that I have yet to hit my peak level of perseverance – I didn’t quite end up with the final product I wanted by the time the showcase rolled around (I would have liked to have had reactive LEDs and button controls. I didn’t necessarily not meet these goals because I lack the skills to be able to take on the challenges I set for myself, it was more because I didn’t actually force myself to take the time and really try everything as much as I could. I think one thing that I could definitely benefit from more is documenting what my construction process will look like before-hand so that I can get a better idea of problems that may crop up in the process. I’ve also come to realize how much this helps you figure out what you can do at different substages and helps identify different problems you can tackle within projects while waiting on other things to get solved or become available. All that said, I’m still insanely happy with my final product. As stated earlier, I’ve never really messed with electronics much besides computers and it was fun to make something that’s more on the ‘analog’ electronic side of things because I think the simplicity of how stuff like that works is very interesting. I was also really happy with my ability to solidify this product in a very short time. I was in a huge time crunch at the end of the semester and the fact I was able to create a finished product within a week or two is crazy to me. My project is also meaningful to me for two different reasons – one, it’s my first ever Bluetooth speaker (I’ve never had one before) and I got to make it myself and decide how everything would work and what functions suit me. Two, this project (as well as the iteration project) has shown me how I can take all the stuff I’ve learned in this class, as well as others, and apply them to solving problems myself as opposed to hoping that a solution is created by someone else. This autonomy is really powerful in my eyes and something that I definitely want to foster in myself.

 

Q3:

I think there are probably two main things that I’ve built in myself over the course of the semester. The first, I would say, is the ability to get over my usual fears of talking to others and trying to have them give advice and/or help when I am trying to figure out an idea/project. The sense of community that gets fostered within a fab lab really is palpable and you realize very quickly how helpful it is to be surrounded by a community of people with similar goals/objectives as you, with skill levels across the spectrum in a broad range of topics. It’s also great to use other people as a way to figure out if what you’re trying to communicate or design is coming across in a way that makes sense or works. The second thing I think that I really gained over the semester is the ability to be unafraid to tackle a variety of different skills/crafts when approaching them from an exploratory place. There’s definitely a huge range of topics we cover in this course and I think that doing that allows people to look to even more varied skills and feel as though they have the ability to at least try something out because they know how to use the resources, tools, and documentation that can point them in the right direction. I think that the openness to at least try to learn different skills (and combine them over time) is something really beneficial that can be taken away from this class. I also think that I have built my confidence in my ability to fabricate and create things significantly. I’m an art minor so I’ve had opportunities to make tons of imaginative stuff, but never to design so thoughtfully and never to create more tangible, interactive objects. This confidence definitely makes me want to come back to making things more often in the future and taking on projects similar to those we did throughout this class.

 

Q4:

I think this course has definitely helped me feel more connected to my STEM side in some ways, which I really appreciated a lot. I first came to UIUC for CS and then switched after realizing I wasn’t nearly as prepared as a lot of people coming in. This class felt like it bridged the gap between that style of thinking and the styles of thinking I see in classes like my advertising classes or my art & design classes. Even before I took this course, I would probably describe myself as a maker – I enjoy creating my own things and realizing my own distinctions and personal needs and design principles. I think it has become harder and harder for people to describe themselves as makers as time has gone on, but that nearly everyone can take on the role should they choose to. Making is something that is totally within the grasp of anyone, you just need a lot of persistence, patience, and passion. I think this class (and this semester for me personally, as well) has spurred a lot of those three things in me. I’ve started to realize that you can easily fall into some role where none of those things are really an importance, but I personally enjoy the personal growth that can come out of trying to achieve these things. I do still agree with Papert that the most significant learning is hands-on and personally meaningful. I think this class has really shown that to me. I’ve created a ton of stuff in a very short time that’s honestly super cool and decently practical. I’ve seen this through other classes as well – the one’s where I’m making stuff that is going to benefit me and personify me definitely catch my attention the most and help me hold onto the things I’ve learned the best. I think that having the chance to just get your hands onto different things can really help you figure out how you feel about different topics and hobbies in a much quicker way than just reading about it or hearing about it. Answering tests is great and all, but actually being able to show the knowledge physically is really great as well. I also think that working with your hands also just allows more nuance to the learning process and gives you a bigger connection to what you’re working on.

Continue Reading

Final Project: Sonar

Final Project

For the final project, I decided to use an arduino and the HC-SR04 ultrasonic sensor. Although the sensor was quite basic, I have not used it before, so I decided to use it for the final project. Another reason I used the ultrasonic sensor is because I wanted to create a sonar system with the arduino, as the sonar does use ultrasonic sounds and sensors. I also decided to create the very familiar sonar visuals we see in movies and tv shows. As I am not really well versed in making visualizations, I thought this would be a nice challenge for me.

 

Process and Finished Product

 

 

The first compromise that I knew that I had to make was to make the sonar a semicircle instead of a full circle, due to the limitation of the servo motor. I also initially tried using d3.js, a visualization engine for javascript. I chose this as it was my TA Dot’s suggestion, and also because I thought that I could use the d3.js skills that I would gain from this project, and apply it to a different project that I was working on at the time. Unfortunately, connecting the arduino to d3.js proved to be very challenging, and after a bit of searching on the internet, I decided to use Processing instead, as getting data from the arduino was more straightforward.

 

My first learning goal was to learn how to use the HC-SR04 ultrasonic sensor. Although it is included in the basic arduino kit in class, I have never thought of using it, and had never felt the need to use it. Using the sensor proved to be fairly straightforward, but synchronising the ultrasonic sensor to the servo movement was a bit challenging. Due to the nature of how the HC-SR04 sensor worked, the time it took to take a measurement varied based on how far the object was from the sensor. Eventually, I discovered a library called NewPing, which allowed me set the maximum distance to scan for, and maintain the same scanning time for each scan.

 

My second learning goal was to challenge myself to create visualizations for data. I have never been a very artistic person, and creating any kind of visuals, whether it be drawings, or UI design, was very difficult for me. However, as I had something to base my design on, I thought that creating the sonar visualization would not be too bad. Furthermore, when creating the visualization, I worked up from tools that I was familiar with. Once I had a rough design and sketch based on what I could find on the internet, I first started with creating a svg file for the acrylic print. As I did not have to worry about colors, I could just focus on the layout of the visualization, and I think it really helped me to get a solid layout that I could utilize in the graphical visualization. Then I moved onto creating the actual screen visualization. My initial attempts with d3.js did not work out, as getting the data proved to be a problem. So, I quickly switched over to Processing. Although I did not know any Processing, I was able to get a basic grasp fairly quickly, and create the visuals. As I already had a layout for the visualization, all I had to do was copy over the design, make color changes, then add dynamic visualization elements, that would interact with the data from the Arduino.

 

As a whole, I am quite satisfied with the project. I was able to achieve my main goals, which were to learn how to use the HC-SR04 ultrasonic sensor, and to create a sonar visualization that would show what the sensor was reading. I was also able to create a physical representation of the sonar visualization, so that any object that was placed on the physical representation could show up in the Processing visualization. Although my final project does not really have a practical use, I am really happy about the way it turned out, especially the visualization.

 

Looking back at this class, I realize that I’ve become to embrace failure and learn from it. I’ve been the model student in most of my classes all the way up to highschool, and even at the University of Illinois, I have never really struggled with academia. That being the case, failure wasn’t really something that I experienced often, or even at all. Throughout this class, however, I was exposed to numerous failures, which was not something that I was used to. For example, during the 3D printing section, I had to reprint, and improve my 3D model, either because the print did not work out well, or because the print did not fit the raspberry pi that I had. Even in the end, I had to file the finished casing, so that it would fit my raspberry pi. Another example is the locomoting pom pom bots. In this assignment, I had to do a complete redesign of the bot, as what I thought would work, ended up not working at all. Even with the new design, I still had to make improvements so that it would actually work.

 

One thing that I was surprised about was how much I enjoyed sewing. I have never used a sewing machine until this class, and honestly, I was not too excited for sewing. However, I ended up really enjoying sewing, and the assignment on sewing took the most time out of all assignments, simply because I enjoyed it. Sadly, the finished project wasn’t perfect, but I was still proud of myself for being able to learn a completely new skill, and being able to apply it in a functional product.

 

This class showed me that with the right tools, and within a reasonable range, I could make anything I wanted. I also learned a lot of tools and software skills to aid me, and that I could usually find them at makerspaces. Furthermore, I learned that when I don’t know how to use a certain tool, people at the makerspaces were very willing to help out. I also think the hands-on learning fits the class very well, as we all had to use what we learned in the class, to make our projects.

 

I had no idea what a maker was, but this class gave me a good definition on what being a maker is like. I don’t think I’d be able to give a concise definition of the word “maker”, but throughout this class, I have experienced to a full extent, what being a maker is all about. Being a maker is doing a lot of hands-on work, creating prototypes and projects that I can think of. Although something might not work out, makers try and try again until it turns out better. Even when you achieve what you set out to be, you then soon think of ways to improve your project. Most importantly, you get to have fun while doing it.

Continue Reading

Final Project

For my final project I wanted to reproduce something similar to this art piece made by Ben Young using computerized machinery:

“Stead” by Ben Young

The original piece was made using cast bronze for the “positive” half and hand cut layers of glass for the “negative”. In order to reproduce this in the FabLab I decided to use the CNC machine for the positive half and layers of laser-engraved acrylic for the negative. I started off by using the laser to cut and engrave the sections of my negative half before gluing them together

Sections of the negative half fresh from the laser

Layers stacked (pre-gluing)

Layers glued

For the CNC milling I used the Manufacture tab builtin to Fusion360 to generate two passes on the model. From there I sent the tool path to the CNC machine and periodically removed sawdust that accumulated.

Result of CNC milling

CNC Toolpath

Once I completed both the negative and the positive halves of the sculpture all I had to do was glue them together and let them cure. You can see results of the final steps below.

Final Sculpture from Above

Final Sculpture from the Front

The hardest part of this process was the gluing together of the acrylic cutouts. The edges of each piece needed to be filed down with sandpaper on both sides in order to make a channel for the glue to enter and increase surface area. Then each cutout needed to cleaned with lens cleaner in order to reduce the amount of particulate stuck in the final model. Each adjacent cutout was then clamped, glued together and allowed to set for three minutes

Through out my making career in this class and prior to it I have noticed that as soon as I finish a project I always have several ideas about how to improve whatever I just made and make it better or more polished. Because of this, I decided to making one of my learning goals to make smaller prototype versions of both components of the sculpture so that I could learn from them and hopefully produce a higher quality final product.

Front View of Prototype

From this first prototype I learned several things that I implemented in the second revision. One of the things I noticed from my first prototype was that the effect was only visible for about half the depth of the model because the middle of the sphere was thicker than everything behind it. In order to address this I decided to use a cone so that the effect would be visible for the entire depth of the model from the front. Other changes included: wider surface area of each level, thinner sheets of acrylic, a new type of glue, additional tool-paths for the CNC, and a revised gluing strategy. Comparing my first prototype and my second iteration side by side I definitely think I achieved my goal of learning through prototyping.

Since this project was more artistic than my previous ones I also wanted to make one of my learning goals to get feedback from friends in order to involve them in the making progress. The majority of people’s comments were in response to the fit and finish of my first prototype. While this feedback was helpful in the sense that it lead me to make revisions before my second prototype it was not exactly the kind of feedback I was looking for. I was hoping they would suggest ways I could improve the artistic component of the project rather than the process of making the project itself. Perhaps their responses would have been different if I had asked more specific questions like “what emotions does this piece bring to mind?”.

After completing all of the projects this year I have noticed that I learn best when I am free to explore topics or area of topics that are most interesting to me. The freedom within each assignment really helped me engage with the tools being used and learn meaningful skills. The simpler and smaller learning projects that we completed in lab sections were very helpful in learning the fundamentals of each tool area, but the projects we completed on our own each week let me explore the component of each tool that most interested me. For example the name tag assignment let me explore use with acrylic even though what we did in lab section was with wood, and the copper tape assignment let me incorporate electronics into origami which was quite different from what we did in lab.

At the beginning of the semester I considered myself a maker. I had worked with 3D printers quite a bit and had other experience modifying electronics in Nerf guns. Looking back though I don’t think I would consider myself a maker back then. To me being a maker is heavily reliant on engaging with some sort of community. Whether it be a physical maker-lab or an online forum, the ability to share what you are doing, help others, and get help for yourself is really at the core of the maker movement. Additionally, I think that cross discipline thinking as well as the incorporation of multiple mediums or tools is another tenet of the maker movement. Throughout this semester I have learned to use a variety of new tools and have worked with other people in the fablab to create some really interesting projects. Although I considered myself a maker at the beginning of the semester I think now more than ever that is true because of my experiences with this class.

Continue Reading

Final Project Reflection – Nicholas Agate

     My idea for the final project was an electric guitar pedal board. I did not previously own a pedal board, and because I play guitar, it is something that I was enthusiastic about making. In all, the project involved utilizing Inkscape, Fusion 360, Tinkercad, Meshmixer, the Universal Laser Cutter, a resin printer (my new tool area), wood conditioner and stain,  plastic primer and pewter spray paint, and a hammer and finishing nails. Please see a few in-progress images below.

     In the beginning, I had a rough idea of what I wanted the board to look like, and I am happy that the final product came out as I had envisioned it. I was planning on making a pedal board that would have dark wood and decorative metal-looking pieces on the side, and the end product definitely fits. I am also proud of the fact that I completely designed all of the pieces for the pedal board myself. I did not use any files from online, and it felt good to design the whole project from start to finish. However, even though I am very happy with my pedal board,  I did run into a couple of issues along the way. The first was that my PDF files of the pedal board were not being read correctly by the Universal Laser. I ended up fixing this by opening up my Inkscape SVGs on the laser’s computer and making sure that the width and color of my lines were correct before saving the files as PDFs. The second problem was due to the strength of the wood glue that I was using. The cross panels that serve as the platforms for the guitar pedals are able to hold up to the stress of pushing the pedals down, however the wood glue that held the panels in place gave out. My fix to this problem was nailing the panels into the sides of the pedal board with finishing nails. Please see the final pedal board below.

     The first learning goal that I had for this project was to incorporate suggestions from those around me, because I think that it is easy to work to your own beat and miss out on valuable input from others. The two parts to this pedal board that came from outside suggestions are the individual cross panels and the metal-looking pieces on the sides of the board. I originally planned to make the board’s top one solid piece of wood, but my roommate, Matt Goodalis, suggested that I use individual strips of wood so that any wiring could be kept out of the way. The second piece of advice came from Duncan Baird, my instructor. He introduced me to the idea of using the resin printers to make objects that I could paint to look like metal. I am grateful for both of these suggestions because they made it into my final product and led it be functional and aesthetically pleasing. By the end of the project, I also learned to further reflect on the design decisions that I make. The input from my roommate especially showed me that some designs can be improved upon if you just spend more time thinking about their practicality.

     My next learning objective was to use a new program that would help me during the design phase of this project. For this I used Autodesk Fusion 360. I found that being able to turn SVG files into 3d objects was very helpful. I was able to take my designs and extrude them, so that I could better understand how the pieces would fit together and look once I had them all cut out. But outside of these benefits that the program afforded, I was also able to develop my planning skills. I have mentioned before that my planning felt week in earlier assignments, so this program allowed me to slow down and consider the shape and measurements of my pieces further. I am glad that I created this goal for myself, because the success of this project has shown me the upsides to extensive planning before making, which I can utilize in the future. Please see an image of two of my pieces in Fusion 360 below.

     Finally, the learning objective of using new materials was satisfied through the use of resin. It was interesting to see how resin was formed in the printers, and the decorative pieces that I created definitely add an interesting dimension to the project. However, if I were to redo this project, I would use a different type of wood. I knew that I wanted to do laser cuts in order to get precise pieces, so I went to CU Woodshop Supply and Home Depot to see if there was any interesting wood that I could use. Unfortunately I could not find any quarter inch pieces that would fit into the Universal Laser, which caused me to go with the plywood staining route. As I said, I am happy with the project’s outcome, but this is something that I would like to have done differently.

     Next, after reviewing my previous posts, I have realized that I tend to push myself more with a tool area once I am familiar with it. I do not necessarily think that this is a bad thing, but I could learn even more by challenging myself earlier on. That being said, I have become a lot more comfortable with making. I am majoring in political science and I am attending law school next fall, and up until this point, I have had very little experience with making because it falls outside of my studies and hobbies. Using machines like the laser cutters and the 3D printers forced me to step out of my comfort zone, and I am glad that I did. I have found that I really enjoy making, and I would like to continue doing it in the future.

     The making area that I enjoyed most in the lab was laser cutting. Besides taking a middle school woodshop class, I have not had a lot of experience with wood working, and I have grown to enjoy it. Most of the staff has a specialty area and if I were to pick one, this would be it. It was exciting to plan out projects and see them take shape while using the laser cutters. And afterwards, I brought the project into my original vision by staining and putting on the final touches. Because of this project, and the class as a whole, I feel comfortable calling myself a maker. It is not something that I would have attributed to myself in the beginning of the semester, but I have learned many new skills in multiple areas, and this final project has especially made me realize that I have the ability to create unique and useful projects. To this end, I hope to continue being a maker by engaging in more woodworking for future projects.

     Lastly, I would again like to thank Duncan Baird and Matt Goodalis, who helped by contributing invaluable ideas to this project. I am also generally happy that I learned a lot in this class while getting the chance to make new friends. Hopefully I am able to stop by the Fablab during future visits to the University of Illinois.

 

 

 

 

 

 

 

Continue Reading