11. Input devices

Designing in Eagle - Step Response

I pretty much did the same thing that I did in week 7, Electronics Production, but I had a little bit of trouble formating everything correctly. For instance, the layout was much more tangled that some of the other boards I’ve made. Though those boards had more components, they had a pretty easy to follow layout.

The reason I chose to do the Step Response board is because it plays a huge part in my final project. The idea behind my final project is that the volleyball mat would pick up on an input (aka the ball hitting the mat), then send a readable output back to the person (an app or a screen saying whether they got over the alloted height or not).

Milling & Soldering

Milling out my boards was really tough, mainly since I wasn’t really sure how to contour correctly at the time. I did know how to set up most of the stuff in the LPKF, however, so I didn’t have much problem with getting the actual details. I think I may have been a little off on what I wanted milled out and not since some of the parts came out a little scratchy, but that since they weren’t parts of anything I was soldering and were not connected to my pads, I wasn’t to worried. Like I was saying earlier, I had some troubled with contouring, meaning that I wasn’t able to mill out the actual board. I had already accidentally broken a countor bit at LCCC and possibly broke one at home. Just kept eating through them. Thats one of the big things I learned; keep an inventory for the bits that break most! Bits take a long time to order and are super expensive. I just had to look out for bridging. Once I soldered all my parts on, I was ready to code.

Coding and how I failed

So I started coding with terminal. Now, I really hate coding with terminal, especially with Ubuntu. I hate the layout of Ubuntu, the feel, the aesthetic (even though iOS is rip off Ubuntu, later on that), so my morale could have been a bit of reasoning for why I wasn’t able to code it in the terminal environment. Next, I moved to my Mac and tried doing it there. I think I might have made a bad board after testing it with the blink program. After my step response board wouldn’t program, I switched it out for my hello-world board. After I set Arduino up for the hello-world board, I found that my programmer, my usb, and my program were all fine. This leads me to believe I could have fried my ATTiny 44 or some other component.

Redoing my board

Last night, I completely remade my board. I think what I did wrong before was make my traces too close and thin. Now that I did a better rubout, I think it will work. Heres what happened on the LPKF though.

LPKFs are kind of princesses. Like, they’re super useful and can help with a lot of things, but they also break down over the slightest little error. You gotta treat them gently. So what happened last night was an example of that. My machine broke down and we have to boot it back up. We didn’t know exactly what had happened, but we rolled with it and carried on. Next thing you know, we’re almost done with getting the board all set up when blam, the machine doesn’t recognize a single one of our tools. So we had to put them all back in and make sure we have the right ones in (thank goodness we put a little sheet of what goes where on our machine). That took about 45 minutes with us also being confused and tired at 10:50 at night. So we keep on working at it and the machine ends up booting up super slow. When I mean slow, I mean real slow. Slow enough I ended up sharpening one of my dads knives while we were waiting. It wasn’t five minutes, it was 10 minutes for something that usually takes 10 seconds at the most. So we waited around and it finally connected. After that, we started up the machine and the rest is history. The board came out really well too! There wasn’t much wrong with the board other than a tiny bit of it not being milled out completely. Other than that, it was perfect! I’m pretty happy with how it turned out. Tonight (or tomorrow morning) I’ll be soldering my board and I’ll tell you how it turned out!

File

Downloads:

LPKF Mill run file

Soldering Part Two!

So, now that I’m soldering again, I found one of my crucial mistakes. I put a 10M resistor instead of a 1M resistor. It had a little 1005 instead of the need 1004. Now, I got to learn the notations of the resistors through failure so you don’t have to. Lets work our way down from 1M.

If you need…

  • 1M Ohms -> 1004
  • 100K Ohms -> 1003
  • 10K Ohms -> 1002
  • 1K Ohms -> 1001
  • 100 Ohms -> 1000
  • 499 Ohms -> 4990
  • 49.9 Ohms -> 0499

But if you need anything else, you’re just gonna have to rely on why Adafruit sends you. Other than that, this little guide should hopefully help you on your soldering journey! So while you’re hear, why don’t you take a screenshot of the list! It’ll help you out a lot more in the future. So now that you know about what you need to do when it comes to resistors, let me tell you about our lord and savior capacitors. And by lord and savior, I mean a complete pain in the butt to tell which is which. I wish I could make a little guide for people, but I’ve yet to discover myself how to tell the difference! So, just trust whatever Adafruit gives you. It’s important to note now how much organization matters.

Newest Design

For my newest design, I added an LED so I know my programmer is working and that there is power going to my board. I thought this was going to be hard, especially since I’ve never truly designed my own board before, so this part was really difficult for me. I found a super helpful site that kind of taught me how to place LEDS and how to use schematics properly. ( http://www.resistorguide.com/resistor-for-led/ ) To know what resistor I had to put in, I had to use this formula to calculate resistance.

Resistance = Voltage - LEDVoltage -------------------- .003

This is Ohm’s Law. Now, since I planned on using a LED for my board, I chose a 1K resistor. Since my board has a capacity of 5V and the red LED uses 2V, we can put this into Ohms law and get…

Resistance = 5 - 2 3 ----- -> — -> 1000 Ohms! .003 .003

Programming

Programming was one of the hardest things for me to do this week. Even if I had a lot of help with making it all happen, it still didn’t work for a very long time. I had to do a bunch of tests with the ports on my computer and such. It was a real painstaking process, but I nearly got through it! The only trouble I’m having now is setting up my GUI. The GUI is called TKinter and from what I’ve found, is extremely hard to use and terrible to download. One of the trickiest things to ever use in my opinion. First I had to test out what I ports would work for me and what programmer I was using. Having all the settings correct is so important when coding, especially remembering for what you want in the future. If you don’t save your settings correctly, it’ll end up costing you in the long run.

How to program and the program I used.

I used this program to code my board:

I used the same programmer for my week 7 board as this. It powers the board and is honestly super cool. So, when I first went to program my board, I had some serious trouble with actually pushing it through. The main issue I had was not setting my programmer up correctly. It was set as AVRISP when in reality it was a USBTiny