Parallel Printer Port Access through Java
Have you ever tried to access the parallel port (printer port) inside a Java program?
Well, if you have, you have probably already downloaded the commapi
package that sun offers to perform this task, or tried using portio
or any other thing that might resolve your problem. The fact that you are here indicates that none of these programs seem to work! And we need a solution... fast! Well folks, here it is [Windows - Linux]. It turns out that you can write code in C and Java can use it through the Java Native Interface (JNI). Take a look at the installation instructions to setup ParallelPort on your PC [Windows - Linux].
ParallelPort is a simple Java class that enables you to read and write bytes to and from the parallel ports on your computer. I have personally tested it on Windows 9x platforms with different types of processors (mainly Intel 486, Pentium MMX, Pentium II), and it presented me with no problems (send me an email if you are having problems). It can also run under Windows NT (and the like) but you need to install a kernel mode driver (see UserPort or DirectIO, below).
- I have programmed parport to be able to access the parallel port on my computer. (new: Linux version now available!)
- API documentation for ParallelPort.
- Example programs that use the parallel port
(SimpleIO.java,
Joystick.java).
- Real life projects that use ParallelPort.
-
UserPort
: a Windwos NT/2000/XP kernel mode driver for direct port I/O. You need
to install UserPort if you plan to use Windows NT based operating
systems.
- DirectIO: another kernel mode driver, in case userPort does not work for you.
- Links to web sites and people that helped me complete this project.
- And that is pretty much it.
-
DynaTour
(by Nasron Cheong):
The DynaTutor is a 5-axis arm robot that was origininally designed to be an
introduction to computer interfacing.
This project aims to rebuild the hardware driver for the robot and
reimplement new software drivers. Finally, the combination of the two, along
with some inverse kinematics, will be used to create a robot that will move
chess pieces.
The hardware is implemented on a prototyping board using a programmable logic
device from Altera and some power drivers. The software is written in Java
and employs a multithreaded mechanism to drive each motor 'concurrently'.
-
The Xobsen
(by Elisha):
The Xobsen is an interface between NES controllers and your PC audio software. It allows one of 6 midi messages to be associated with a button: note on, note off, controlller 00 increment/decrement, controller 01 increment/decrement. The user is able to select the MIDI out device but not the midi channel. Currently, the midi channel is the same as the port number on the xobsen.
-
Legacy Film to DVD Project
(by Jim Carroll):
This project has been ongoing for a year now. In brief it has been my attempt to convert my parents library of legacy super-8 mm film to DVD. I have actually got this working and have scanned several 400 foot rolls of film. If you want to learn how I did this and/or see some of the results, then read on.
-
Computer Controlled RC Car (by Arthur Buliva): The goal of the project is to design and create a modification of a radio controlled toy car so that the control can be achieved through the computer's LPT parallel port.
NOTE: If you have used ParallelPort and want to be famous like the
people above, document your project, take some pictures, put it up on the web
and send me the link! I'll add your
project here.
You are visitor Number:
By Juan Gabriel Del Cid Portillo. Ported to Linux by Jonas Blank
Last revised: September 12th, 2007