Building a box to house your crazy bundle of wires and arduino and the other stuff is kind of annoying. I know this because I did it. It was as heavy as a brick and made entirely by hand (hacksaw, drill, and files). It was made of aluminum and black acrylic and it was stupidly heavy. It weighed more than my camera before I put all the batteries in. Also, it used AA batteries. Next time it is going into a tupperware dish. Seriously.
The move from the breadboard to the case killed my project dead. I have a terrible hobbyist soldering iron and the skills to match. I think I got that LCD too hot when I resoldered it with longer leads. Dead. Since then replaced with a better one. Not so dark. Its all contrasty.
My Arduino cost around twenty bucks. The chip and crystal cost around three bucks. So I decided to ditch the Arduino (i.e. free-up) and write the chip using my Arduino as an ISP. Then I decided that I wanted to avoid removing the atmega every time I needed to upload the code. I then wired it for the Adafruit ftdi cable. Which only worked once. After grinding my head on the floor I learned that you need to have it use the reset pin on the atmega before it will upload. That cable does not have that pin and I couldn't find any instructions on how to interface with the pin it does have, which is probably the same function. It wasn't shown in the datasheet. Growl. I want that magic smoke to stay in there. I'm too new to try things.
I now faced a dilemma in how to upload my sketches? And now we are up to the present. I now have borrowed a AVR Dragon and am using Atmel Studios instead of the Arduino program. I need to research if I can use the MOSI and MISO pins for multiple purposes. Right now they are interfacing with buttons. I have an idea on how to consolidate those to fewer pins as well. My thinking goes, if I read the pin using analogRead instead of digitalRead I should be able to differentiate between them if I use differently valued resistors as pull ups. They would give different values which would be super easy to code for. Any problems I'm not seeing? I'd appreciate any comments.