The chip that I use for ethernet connecticity is the ENC28J60. It is a pretty dumb chip, and does just some basic filtering of incoming packets and helps take care of a few things with ethernet packet construction, so it doesnt have a TCP/IP stack at all.
There is an arduino compatible library, called EtherCard, that handles all of this, but it is very heavy for this application. It does have a really good basic driver for the chip that I can use though. I decided that I will take that and build a TCP stack on top of it. Since the Neptune device can be assumed to always be on a local network, I wont be needing IP, and it will save me a bunch of space and overhead.
I can also use this in my Bootloader (ENCBoot), which will need TCP to self program over the network.
So, it seems that the total current limit from the digital I/O pins on the Arduino is accepted to be 200mA. While that limits the Arduino to directly power 10 LEDs. I've decided to use MOSFETs to limit the current that is being used by the Arduino.
The LEDs still require power, but that power will most likely be supplied by an external power source. The Analog Discovery board offers a 5V, 50mA voltage source, so I'll probably be hooking two of the LEDs (the red one and the yellow one, for consistency sake) to MOSFETs.
Hopefully, you will still be seeing updates throughout the Winter Break. So, while I will not be able to enjoy your physical presence, I hope those of you who are following Observatory during the Winter Break will grace me with your digital presence.
The project is almost done for the semester, with the exception of a few bug fixes here and there. One potential future extension Check Up is porting it over to Linux. Because Check Up relies heavily on the .NET framework and WPF, porting Check Up to Linux would require a complete rewrite of portions of the code. This would be a great way to learn more about Linux, however, and is a potential project for next semester or in our free time.
With the semester coming to a close, we’ve begun thinking about next semester. We’ve finished implementing the complete foosball table, and now we need to make it permanent. Our RA and RD are both on board, saying they’ll support us when we talk to reslife.
However, due to the Pub Safe and ResLife shenanigans, we are going to wait for a better time to propose our solution. We may decide to put the whole thing in a project enclosure so it looks “safe.”
Things we will do next semester: RFID readers. Manual input panel for Handicapped play, errors that will probably never happen, reset… Website with more interesting stats, Teams. 7 segment pin displays on the table. lasers instead of diffuse light for more precision.