HP Forums

Full Version: Mac OSX and PIL-box
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2
In this article:

PIL-box on a mac

The instructions are given to access the PIL box using "Crossover" which is a PC emulation program / layer on the Mac OSX.

Anyone know what has to be done to do this using Parallels or VMWare running WinXP or such?

What's the same and what's different?

(Would have sent a PM to Jürgen Keller but my account did not have privileges to see the member list. Go figure!)

:-)
Gene
I can't comment on Crossover but I know that the standard PILbox tools run fine on Win XP under Parallels.
Any adjustments, driver crazy fixes etc needed?

I ask because I now have a PIL box on the way. :-)
(05-13-2015 06:54 PM)Gene Wrote: [ -> ](Would have sent a PM to Jürgen Keller but my account did not have privileges to see the member list. Go figure!)

Profile of Jurgen Keller

HTH
Thomas

PS: You can use Search by Username to find posts and then follow the link to the profile.
I'm using the same FTDI drivers as for the 30b programming cable. It just works.
I don't have Parallels or VMware. However, as Marcus points out, you have to install the FTDI drivers and pray that it works. On CrossOver (based on the free Wine) this is a little more complicated as my instructions in the referenced article illustrate.

If you want to see two pictures of the PIL-Box cooperating with a Mac check out my blog article (text is unfortunately in German, but the MoHPC article contains the relevant part):
PIL-Box unter Mac OS X
(05-13-2015 06:54 PM)Gene Wrote: [ -> ]The instructions are given to access the PIL box using "Crossover" which is a PC emulation program / layer on the Mac OSX.

Years ago I used the open source Wine with the Windows tools without issue. I just tried again with zero luck. I probably just need to erase my .wine dir and start over. Other Windows apps not working well either. Unsure if it's the latest version of Wine or OS/X 10.10.4.

Quote:Anyone know what has to be done to do this using Parallels or VMWare running WinXP or such?

Again years ago this worked for me all the time. I tried both Parallels and VMWare with my known working XP image and kept getting errors opening the COM port (COM3). Other USB com programs acting flaky with other com tools.

(In both cases above I should have tried directly connecting to my Mac. I was on a hub on a hub :-)

If all you need is :DISPLAY, :HDRIVE1, and a limited function scope, then I'd use ilper-linux-1.35.2. It compiles without issue and works just fine on OS/X 10.10, however only at 9600 (very slow). I patched it today to get 115200. Large file transfer throughput is 900-1000 bytes/s. I also removed the old FTDI drivers and installed the latest--I didn't mess with any latency settings.

If your PIL-Box is on /dev/cu.usbserial-FTE03NXR, then you can use my binary. Actually you can change in ilper when running too, but I'm lazy and compiled in my device path.

I backed up and restored my 71B about 10 times today to test. No issues.

Display session and restore (larger files are faster):

Code:

>DELAY 0,0
>COPY REST3:HDRIVE1 TO REST
>RUN REST
Source->:HDRIVE1
Destination->:MAIN
COPY PILBOX:HDRIVE1 TO :MAIN
 187 BYTES/S
COPY NUM:HDRIVE1 TO :MAIN
 177 BYTES/S
COPY REST2:HDRIVE1 TO :MAIN
 465 BYTES/S
COPY FTH41RAM:HDRIVE1 TO :MAIN
 1013 BYTES/S
COPY KEYS:HDRIVE1 TO :MAIN
 353 BYTES/S
COPY BUTS2:HDRIVE1 TO :MAIN
 420 BYTES/S
COPY LINPACK:HDRIVE1 TO :MAIN
 654 BYTES/S
COPY STREAM:HDRIVE1 TO :MAIN
 612 BYTES/S
COPY EPS:HDRIVE1 TO :MAIN
 112 BYTES/S
COPY SCROLLW:HDRIVE1 TO :MAIN
 394 BYTES/S
COPY BIGFACT:HDRIVE1 TO :MAIN
 378 BYTES/S
COPY SAV41:HDRIVE1 TO :MAIN
 248 BYTES/S
COPY SAVAGE71:HDRIVE1 TO :MAIN
 173 BYTES/S
COPY SAVAGEF:HDRIVE1 TO :MAIN
 233 BYTES/S
COPY SAV41I:HDRIVE1 TO :MAIN
 352 BYTES/S
COPY F2:HDRIVE1 TO :MAIN
 220 BYTES/S
COPY F1:HDRIVE1 TO :MAIN
 218 BYTES/S
COPY F2B:HDRIVE1 TO :MAIN
 109 BYTES/S
COPY DHS:HDRIVE1 TO :MAIN
 739 BYTES/S
COPY SSMC19BF:HDRIVE1 TO :MAIN
 678 BYTES/S
COPY NQUEENS:HDRIVE1 TO :MAIN
 182 BYTES/S
COPY NQUEENSF:HDRIVE1 TO :MAIN
 481 BYTES/S
COPY NQUEENSR:HDRIVE1 TO :MAIN
 289 BYTES/S
COPY NQ41:HDRIVE1 TO :MAIN
 388 BYTES/S
COPY GPS:HDRIVE1 TO :MAIN
 447 BYTES/S
COPY DUMPREG:HDRIVE1 TO :MAIN
 170 BYTES/S
COPY SPIGOT:HDRIVE1 TO :MAIN
 363 BYTES/S
COPY PI41:HDRIVE1 TO :MAIN
 744 BYTES/S
COPY PI41C:HDRIVE1 TO :MAIN
 760 BYTES/S
COPY PIATAN:HDRIVE1 TO :MAIN
 621 BYTES/S
COPY IOB:HDRIVE1 TO :MAIN
 34 BYTES/S
COPY LOOPCAT:HDRIVE1 TO :MAIN
 91 BYTES/S
COPY BUTS:HDRIVE1 TO :MAIN
 221 BYTES/S
COPY REST3:HDRIVE1 TO :MAIN
 219 BYTES/S
COPY BUTS3:HDRIVE1 TO :MAIN
 214 BYTES/S
Restore Complete.
(07-13-2015 02:33 AM)Egan Ford Wrote: [ -> ]I backed up and restored my 71B about 10 times today to test. No issues.

Display session and restore (larger files are faster):

Egan - OT questions/comments about your backup procedure/program:

1. How are you getting the cps rates?
2. Would you be willing to share a copy of the backup program?
3. Would you be willing to share the LOOPCAT program? Sounds useful.
4. Have you tried storing most of the programs in an IRAM? Then you can restore all of them using a single ROMCOPY command to restore the entire IRAM contents at once.

It's always very interesting to me to see the way other folks do backup & restore; it reveals a lot about little things they've discovered in the OS which may not be widely known or used. Like the cps for the transfers.

Thanks for sharing.
Quote:1. How are you getting the cps rates?

Code:

DISP FLOOR(.5+FILESIZE(F$&D$)/(TIME-T));"BYTES/S"

NOTE: FILESIZE is from JPC ROM

Quote:2. Would you be willing to share a copy of the backup program?

Code:

10 ON ERROR GOTO 160
20 DESTROY ALL @ OPTION BASE 1 @ I=1
30 INPUT "Source->",":HDRIVE1";S$
40 INPUT "Destination->",":MAIN";D$
50 IF CAT$(I,S$)="" THEN 140
60 F$=CAT$(I,S$)[1,8]
70 FOR J=8 TO 1 STEP -1
80 IF F$[J,J]=" " THEN F$=F$[1,J-1] ELSE 100
90 NEXT J
100 IF F$="workfile" THEN 130
110 DISP "COPY ";F$&S$;" TO ";D$
115 T=TIME
120 COPY F$&S$ TO D$
125 DISP FLOOR(.5+FILESIZE(F$&D$)/(TIME-T));"BYTES/S"
130 I=I+1 @ GOTO 50
140 DESTROY ALL @ DISP "Restore Complete." @ END
150 END
160 ! ERROR HANDLER
170 IF ERRN=255030 THEN 200
180 DISP ERRM$
190 END
200 ! FILE EXISTS
210 DISP "PURGE ";F$&D$
220 PURGE F$&D$
230 GOTO 110

Quote:3. Would you be willing to share the LOOPCAT program? Sounds useful.

Code:

430 DISP " N AID ID$"
440 I=1
445 IF DEVAID(I)<0 AND DEVID$(I)="" THEN 470
450 DISP I;DEVAID(I);DEVID$(I)
460 I=I+1 @ GOTO 445
470 END

Quote:4. Have you tried storing most of the programs in an IRAM? Then you can restore all of them using a single ROMCOPY command to restore the entire IRAM contents at once.

I just read about ROMCOPY in the IRAM thread. I have not tested or used it.
(07-13-2015 04:11 PM)Egan Ford Wrote: [ -> ]I just read about ROMCOPY in the IRAM thread. I have not tested or used it.

IRAM thread? I couldn't find it, but there are links to the ROMCOPY documentation in the FRAM71 thread.

BTW, ROMCOPY is the easiest and fastest way to load ROM or IRAM images.

Dave
(07-13-2015 04:27 PM)Dave Frederickson Wrote: [ -> ]IRAM thread? I couldn't find it, but there are links to the ROMCOPY documentation in the FRAM71 thread.

Sorry, yes FRAM thread.
Egan - Get ROMCOPY ASAP. It is an amazingly useful and flexible tool for backups, copying IRAMs, and many other things. Originally developed by HP to assist ISV that were preparing ROM images to be burned.

You won't regret learning this!

Oh, and thanks very much for sharing the backup script. Some nice ideas in there. The cps thing is elegant; simple and useful.
I'd like to point to a pure python implmentation of the ilper software. It is on github now: https://github.com/bug400/pyilper. It was tested successfully under Linux and Windows 7. It should also run under Mac OS/X, but I don't have any real Mac Hardware to test it. If anybody is interested to give the software a try on Mac OS/X please
follow the instructions in the INSTALL file.

There is no pyiler release at the moment since I do some polishing at the moments, so pull a zip file from the github page (button "download zip").

With kind regards,
Joachim
(07-14-2015 05:58 PM)jsi Wrote: [ -> ]I'd like to point to a pure python implmentation of the ilper software. It is on github now: https://github.com/bug400/pyilper.

Very interesting, thanks for the pointer! If I'll find some time I'll give it a try. Actually, I started a similar project but never found time to complete it.
(07-14-2015 07:36 PM)Jurgen Keller Wrote: [ -> ]
(07-14-2015 05:58 PM)jsi Wrote: [ -> ]I'd like to point to a pure python implmentation of the ilper software. It is on github now: https://github.com/bug400/pyilper.

Very interesting, thanks for the pointer! If I'll find some time I'll give it a try. Actually, I started a similar project but never found time to complete it.

First step done: I installed it on Windows under Cygwin/X. Seems to work fine. Now let's move to the Mac.
(07-14-2015 05:58 PM)jsi Wrote: [ -> ]I'd like to point to a pure python implmentation of the ilper software. It is on github now: https://github.com/bug400/pyilper. It was tested successfully under Linux and Windows 7. It should also run under Mac OS/X, but I don't have any real Mac Hardware to test it. If anybody is interested to give the software a try on Mac OS/X please
follow the instructions in the INSTALL file.

There is no pyiler release at the moment since I do some polishing at the moments, so pull a zip file from the github page (button "download zip").

With kind regards,
Joachim

Thanks Joachim, I'm very happy with it on Mac OS, so far.
I'm very new to all this stuff, bought a PIL-Box last week and I’m using pyILPER under Mac OS Yosemite.
I followed the steps described in the repo:
https://github.com/bug400/pyilper/blob/m...INSTALL.md
installed Miniconda added the channel bug400 and updated all as described.
I decided not to change or add drivers (kext) to see how it work out (of the box).
Then, to configure pyILPER, as none of the serial devices entry point appeared in the drop down menu, I used the following command in the terminal:
Code:

ls /dev/ | grep tty.usbserial
which gave me (with the PIL-Box physically connected):
tty.usbserial-FT94BLL1
so, under pyILPER configuration, Serial device, I put:
/dev/tty.usbserial-FT94BLL1
and boom, “connected to PIL-Box”!
And It works very well!
Thanks a lot -to all people involved- for all that great work, I will be following to see if more features are added…
(Excuse my English from France…)
André
(04-17-2016 07:55 PM)dayd Wrote: [ -> ]Thanks a lot -to all people involved- for all that great work, I will be following to see if more features are added…
(Excuse my English from France…)
André

Welcome to the Forum, André. You'll find some recent pyILPER posts here: pyILPER Version 1.3.3 released

I think you'll find Sylvain's posts of particular interest.

Dave
The current matching expression in pyILPER to detect the serial port of the PIL-Box is "/dev/*FTD*". I don't know how MAC OS X compiles the device names of the serial FTDI serial adapters. Should I use "/dev/*serial-FT*" instead?

Regards
Joachim
(04-18-2016 04:52 PM)jsi Wrote: [ -> ]The current matching expression in pyILPER to detect the serial port of the PIL-Box is "/dev/*FTD*". I don't know how MAC OS X compiles the device names of the serial FTDI serial adapters. Should I use "/dev/*serial-FT*" instead?

Regards
Joachim

Joachim,
OSX uses the USB device internal informations to create the device name.
The benefit of this is that the device will always have the same name regardless of the USB port used.
I will post the device name pattern for FTDI later when I am back home.
Regards,
Sylvain
- Thanks Dave, I didn't saw this tread that seams interesting indeed, I will try to follow even I’m on 41CX for now.

- "/dev/*serial-FT*" would do the trick but there will be 2 choices for 1 device like in my case:
/dev/cu.usbserial-FT94BLL1
/dev/tty.usbserial-FT94BLL1
At my level I don’t see the point of having to chose (cu & tty both seem to work) so I would go with:
/dev/tty.usbserial-FT*
or
/dev/tty*-FT*

FT94BLL1 being the serial number (internal as Sylvain mentioned) of the PIL-Box

Don't know if it helps but here's a java class used to connect Arduino devices on Mac:
https://github.com/arduino/Arduino/blob/...arser.java
Pages: 1 2
Reference URL's