[Coco] Announcing pyDriveWire v0.2

Ron ron at kdomain.org
Sun Apr 23 20:52:38 EDT 2017


Hi Michael,

Thank you so much for this!

For those of you running a newer Ubuntu based distribution (I'm using 
Linux Mint 18.1), there seems to be an issue where 'pypy' can't find 
'pip' so I'm unable to install the pyserial module. Looking online 
reveals a mess of issues regarding conflicting paths, etc..

You can use regular pip by itself (not called from within 'pypy') to 
install the 'pyserial' module but it's not found by 'pypy.'  On regular 
python can use it.

If you download the source for pyserial and use the 'pypy setup.py 
install' command, it appears to install the pyserial module in 
/usr/local/lib/pypy2.7/dist-packages/serial, however pypy is still 
unable to find pyserial.

No idea why this should be an issue.  Hoping to get this figured out.

Thanks

-Ron


On 04/22/2017 09:10 PM, Michael Furman wrote:
> pyDriveWire
> https://github.com/n6il/pyDriveWire/
> Python Implementation of DriveWire 4
>
> PyDriveWire is a nearly complete DriveWire4 Server written in Python. The goal is to eventually implement all of the features available. The server also implements additional features that are not available in DriveWire4.
>
> Features
> 	• Connections to serial ports at all supported baud rates: 38400, 57600, 115200, 230400, 460800, 921600
> 	• Listen for incoming connection on any TCP port with a default of 65504
> 	• Ability to make outgoing TCP connections for serial-net converters
> 	• Disks to be mounted can be specified on the command line
> 	• Interactive console allowing all dw commands to be run
> 	• Support for DriveWire 4 virtual ports
> 		• dw commmands over vport
> 		• AT Modem-style connections
> 		• Outbound connections with ATD/ATDT or tcp connect
> 		• Inbound vports via tcp listen/join/kill commands
>
> Notable Missing Features
> 	• Support for mounting disks via URL/URI
> 	• MIDI
> 	• Printing
> 	• OS9 /Z console windows
>
> Requirements
> 	• pypy -- For maximum performance it is recommended to run the server with pypy. pypy is a Python interpreter that does JIT compilation and results in greatly increased speed
> 	• pyserial -- Install using pip
>
> Supported Operating Systems
> 	• Any OS where you can run Python, including but not limited to:
> 	• Linux
> 	• macOS
> 	• Windows support is PRELIMINARY. Minimal testing has been done but it should work.  Please contact me off list if you wish to help beta test Windows support.
>
> Installation (Linux/macOS/UNIX)
> 	• Download Latest: https://github.com/n6il/pyDriveWire/releases
> 	• Mac: brew install pypy; pypy -m pip install pyserial
> 	• Ubuntu: apt-get install pypy; pypy -m pip install pyserial
>
> Run It
> Usage: ./pyDriveWire <port> <speed> [<file>] [...]
>
>      ./pyDriveWire /dev/tty.usbserial-FTF4ZN9S 115200 ...
>      ./pyDriveWire accept <port> ...
>      ./pyDriveWire connect <host> <port> ...
>
> Supported DW Commands
> 	• dw disk
> 		• dw disk show
> 		• dw disk insert 0 <file>
> 		• dw disk eject 0
> 		• dw disk reset 0 -- (re-open)
> 	• dw port
> 		• dw port show
> 		• dw port close <n>
> 	• dw server
> 		• dw server instance
> 		• dw server dir [<path>]
> 		• dw server list <file>
> 	• tcp commands
> 		• tcp connect <host> <port>
> 		• tcp listen <port> ... -- Remainder of options ignored
> 		• tcp join <channel>
> 		• tcp kill <channel>
> 	• AT Commands
> 		• ATD<host>:<port>
> 		• ATDT<host>:<port>
> 		• ATE
> 		• ATH
> 		• ATI
> 		• ATO
> 		• ATZ
> 	• Debugging commands
> 		• dw port debug <n> [true/false]
> 		• dw server debug [true/false]
> 		• dw server dump
> 		• dw server timeout <s>
>
>
>
>
> --
> Michael R. Furman
> Email: n6il at ocs.net
> Phone: +1 (408) 480-5865
>



More information about the Coco mailing list