This FAQ has been developed to get students at IUPUI's ECE487 (senior design) course started on the development of pyeac. If you are not in ECE487 but would like to engage in development of this tool, please feel free to drop me an email at bhimebau@….
1. What is pyeac ?
- Pyeac is a development tool that is used to interface with a uEAC device. It allows manual configuration of pins and visualization of the effects. The tool was developed on Ubuntu linux (8.04). There is ongoing development to develop a windows distribution for the tool.
2. Where is the source code for pyeac ?
- The source code for this project is hosted in a SVN repository that is hosted through the Indiana University Computer Science Department web server. To access the repository from a browser follow this link. All of the ece487 project members have commit privileges to this directory.
- The page that you are viewing right now is hosted by a tool called Trac. Trac has plug-ins that allow users to browse a SVN repository. Here is a link to the same source code source:analog/pyeac/branches/ece487 viewed through Trac's source browser.
3. What is SVN (Subversion) ?
- SVN is the version control system that is used for this project. In a nutshell, it enables the development team to track changes to the project. For a primer on SVN, I would recommend reading the first two chapters of Version Control with Subversion.
4. How should I access the repository ?
- Windows: The best tool for accessing an SVN repository from Windows is TortoisSVN. It allows you to operate on repository files from the normal Windows explorer interface. Once TortoiseSVN is installed (and you have rebooted), you should be able to right click the desktop and see a menu that would allow an SVN checkout. The repository location is as follows:
https://batson.cs.indiana.edu/svn/bhimebau/analog/pyeac/branches/ece487
- Linux: Assuming that you have subversion installed for your distribution of linux, you should be able to use the following command to checkout the entire repository.
svn co https://batson.cs.indiana.edu/svn/bhimebau/analog/pyeac/branches/ece487
5. What areas of the project can I write into ?
- The ECE487 project team has commit privileges to the ece487 branch of the repository.
6. I do not know Python, where do I go to get started learning it ?
- Python is a relatively easy language to learn. I found that The Python Tutorial on the python.org site is a good place to start. Another good reference is Dive Into Python.
7. How do I setup a python development environment on Windows for pyeac ?
- I would recommend installing the following to begin developing pyeac:
- Python 2.5.4 Base python installation
- Numpy Array processing package
- Scipy Mathematical tools package
- Matplotlib Scientific plotter
- Eispice Electrical simulator (Clone of SPICE 3)
- pyWin32 Wrapper for Windows Win32 API
- Pyserial Serial Port Extension
- Pygame Python wrapper for Simple Direct Media Layer (used for pyeac UI)
- PGU Phil's pyGame Utilities Simple Widget Library used by pyeac
8. What editor/IDE should I use ?
- The short answer here is probably the editor that you are already using. I tend to use emacs. I have also tried Eclipse and found it to be a very nice. Most of the better supported editors will provide at least syntax highlighting for Python.
9. Will the end users of pyeac on Windows have to setup a full python development environment ?
a.) No. When we are ready to distribute the pyeac application we will use py2exe to package up all of the dependencies. Following that, we will use Inno Setup to wrap our application package into a Windows installer exe. The end user will not be required to have python or any of the other packages pre-installed.
