+ Reply to Thread
Page 1 of 4 1234 LastLast
Results 1 to 20 of 68

Thread: PropViewer - Propeller Serial Terminal Version 2.2

  1. #1

    Default PropViewer - Propeller Serial Terminal Version 2.2

    PropViewer is Serial Terminal for the Propeller Chip with a state of the art GDI+ rendered GUI.

    PropViewer has two modes of operation:

    1. PST (Parallax Serial Terminal) Emulation i.e. whenever the terminal window loses focus
    the serial port is disconnected to allow the propeller to be programmed.

    2. Remote Control mode where the PropViewer is controlled by Proploader (V1.04 and above)
    PropLoader commands the PropViewer program via a UDP connection

    2. Normal Terminal mode where PropViewer is just any regular terminal.

    Code:
    Version 2.2 Features
    
    1.  Operating modes as described above.
    2.  Propeller Loader, The RAM or EEPROM can be program within PropViewer.
    3.  Propeller Reset button.
    4.  Data display modes: Normal, Normal plus ASCII control chars and HEX.
    5.  Local Echo button echos sent data to the main terminal screen formatted as per displays modes above.
    6.  Clear Screen button. and ASCII "NULL" clear screen option.
    7.  Function Buttons allows defining 12 buttons for preset data sending.
    8.  Function buttons can be edited, saved, loaded and defined as a default set on program start.
    9.  Function Button labels can be defined.
    10. Function Buttons are on a collapsable panel to allow hiding resizing of the buttons.
    11. Function Buttons are also mapped to keyboard function keys 1 to 12.
    12. Mouse over a function button displays a "Tool Tip" with the button send data.
    13. Clicking on a saved function button file will launch PropViewer with that button file.
    14. Repeat data function, set by a time interval in the setup the last sent data can be repeatedly sent.
    15. Data Logs can be generated for all data transactions each with date/time stamped file name.
    16. Data Log files can be viewed on the main terminal window.
    17. A Raw text file can be sent to the serial port with on screen report of file name and bytes sent.
    18. Manual Text sending with either send with enter key or PST style operation.
    18. Global CR and LF appending to all sent data strings.
    20. Word wrapping for terminal screen.
    21. Received, sent and status data is displayed in different color.
    22. Control Key plus + or - changes the terminal screen font size.
    23. All settings and options are save for use in later sessions.
    24. Settings for serial communications parameters.
    25. Windows installer.




    PropLoader is a command line programmer for the Propeller Chip that can be used standalone
    or in combination with PropViewer.


    NOTES:
    For Non Windows users a Binary of PropViewer is included as a separate zip file.

    The Zip contains both programs. Both Programs require the DotNet Framework Version 2



    www.praxis.com.my

    Post Edited (Praxis) : 9/19/2008 7:26:28 PM GMT
    Attached Thumbnails Attached Thumbnails Click image for larger version

Name:	PropLoaderCli.png‎
Views:	361
Size:	8.9 KB
ID:	55737   Click image for larger version

Name:	PropViewer.png‎
Views:	357
Size:	76.2 KB
ID:	55870  
    Attached Files Attached Files
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  2. #2

    Default

    Hi David,

    Seems like if you just integrate the PropLoader function and Propellent access (to create a spin binary from a given source) into your PropTerminal, things can be greatly simplified without any security questions or special requirements. This way one can have a "solution" project that might also make a future spin debugger easier to add and control.

    The intent to allow PropLoader take temporary control of the serial-port is a good idea although it brings up some security concerns .... The windows firewall has some ability to isolate transactions to a subnet, but that is "complicated" I guess.

    I've gotten quite used to the idea of window.deactive events turning off the comm port ... having "remote program" control or an expanded IDE would of course be more convenient.

    I get the error in the box below ... I'm using Windows XP and Live OneCare if that means anything. When I first saw "remote control" I thought about the side thread discussion we had about remote machine client-server downloads ....

    Code:
    C:\Documents and Settings\Steve\My Documents\_Propeller_\praxis>caspol -machine -addfulltrust PropTerminal.exe
    
    Microsoft (R) .NET Framework CasPol 1.1.4322.573
    Copyright (C) Microsoft Corporation 1998-2002. All rights reserved.
    ERROR: Unable to load assembly
    Usage: caspol <option> <args> ...
    caspol -af
    caspol -addfulltrust <assembly_name>
        Add full trust assembly to policy level

    Thanks for allowing PropLoader to use position independent file arguments. I first tried to download a file with the ".bin" extention, but that didn't work (file not found) so I changed the extention to ".binary" and that worked fine.

    BTW: Nice looking "skin" or window dressing on your application .... Are you using C# ? Can you provide a link or pointer that describes how to do that? Thanks.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    --Steve

    Post Edited (jazzed) : 9/12/2008 3:27:18 PM GMT
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  3. #3

    Default

    Hi Steve,

    Code:
    Seems like if you just integrate the PropLoader function and Propellent access (to create a spin binary from
    a given source) into your PropTerminal, things can be greatly simplified without any security questions or special
    requirements. This way one can have a "solution" project that might also make a future spin debugger easier to add
    and control.

    I'm actually got an IDE as a work in progress that allows defining the external compiler/loader
    etc that also has the terminal built in finding the time to complete it is another matter

    Code:
    The intent to allow PropLoader take temporary control of the serial-port is a good idea although it brings up
    some security concerns .... The windows firewall has some ability to isolate transactions to a subnet, but that is
    "complicated" I guess.

    Most firewalls (XP included) and virus programs that have worm protection allow
    exceptions for programs, so instead of unblocking the port just allow exceptions for PropTerminal & PropLoader.

    Code:
    I've gotten quite used to the idea of window.deactive events turning off the comm port ... having "remote
    program" control or an expanded IDE would of course be more convenient.

    I actually found that quite annoying
    with PST so hence the motivation to write the PropTerminal.

    Code:
    I get the error in the box below ... I'm using Windows XP and Live OneCare if that means anything. When I
    first saw "remote control" I thought about the side thread discussion we had about remote machine client-server
    downloads ....

    I suggested the CasPol.exe for those users who do not run XP or Vista as a possible fix for for the
    reported problems. The error message that you got is because the CasPol.exe you executed is for the Framework
    Version v1.1.4322 not version 2 (refer included picture).

    For the client/server downloads I am writing the programs at this time and will be able to post them later for you
    to have a play.

    Code:
    Thanks for allowing PropLoader to use position independent file arguments.

    De Nada.

    Code:
    BTW: Nice looking "skin" or window dressing on your application .... Are you using C# ? Can you provide a
    link or pointer that describes how to do that? Thanks.

    Yes I am using C# but the "skin" is actually from a
    set of custom controls that I wrote some time back.

    David

    Post Edited (Praxis) : 9/12/2008 3:55:44 PM GMT
    Attached Thumbnails Attached Thumbnails Click image for larger version

Name:	FrameWork For caspol.png‎
Views:	240
Size:	47.3 KB
ID:	55741  
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  4. #4

    Default

    David,

    I've enabled port 8080 in my firewall for local network (tried both Windows Firewall and OneCare Firewall), but I get an exception running PropLoader with TERM=TRUE. I'm using the lasted .net that was installed with Visual Express 2008 applications.

    On the client/server application ... I'm no longer working in the situation I've previously described so my resources and requirements are not identical to that.

    That being said, I still have this need though since I have a messy/noisy machine in the garage that I would like attach to an old windows xp machine for this purpose. Having virtual comm-port(s) using your transport layer would be nice so I can run the control application from my office. Virtual comm-ports would allow me to have more than one machine running at a time.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    --Steve
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  5. #5
    StefanL38's Avatar
    Location
    northern part of Hessen (Germany)
    Posts
    2,136

    Default

    Hello David,

    my Kaspersky virusscanner says new Threat Type Win32

    found new Threat Type_Win32 (Modifikation) File: C:\....Propeller\PropLoaderTerminal_1.zip/PropLoader.exe//PE_Patch

    So what's wrong with your file ?
    Did somebody hide malicious code in your setupfile ?

    I will wait until Kaspersky sends me an answer

    best regards

    Stefan
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  6. #6

    Default

    Hi Steve,

    I have uploaded a new proploader that has a debug dump, just add DEBUG=TRUE to the command line line and let me know the results.

    @StefanL38: I think you are getting a false positive but check with Kaspersky anyway.
    FYI I scaned the new zip I just posted with Norton Antivirus and the results are:


    Code:
    Scan Stats:
      Scan Time: 4
      Scan Options: 
      Scan Targets: D:\Project\CUSTOMER\_Propeller\Binaries\PropLoaderTerminal_2.zip
      Counts:
       Total items scanned: 3
       - Files & Directories: 3
       - Registry Entries: 0
       - Processes & Start-up Items: 0
       - Network & Browser Items: 0
       - Other: 0
    
       Total security risks detected: 0
       Total items resolved: 0
       Total items that require attention: 0
    
    Resolved Threats:



    Cheers
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  7. #7

    Default

    Code:
    C:\Documents and Settings\Steve\My Documents\_Propeller_\praxis>PropLoader.exe commport=3 mode=ram term=true debug=true
    www.binary
    Debug Dump:
    System.Net.Sockets.SocketException: An attempt was made to access a socket in a way forbidden by its access permissions
       at System.Net.Sockets.Socket.SendTo(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, EndPoint remote
    EP)
       at System.Net.Sockets.Socket.SendTo(Byte[] buffer, Int32 size, SocketFlags socketFlags, EndPoint remoteEP)
       at PropLoad.a.a(String b, Boolean b)
    Programming..........
    Programming Error!
    
    Debug Dump:
    System.Net.Sockets.SocketException: An attempt was made to access a socket in a way forbidden by its access permissions
       at System.Net.Sockets.Socket.SendTo(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, EndPoint remote
    EP)
       at System.Net.Sockets.Socket.SendTo(Byte[] buffer, Int32 size, SocketFlags socketFlags, EndPoint remoteEP)
       at PropLoad.a.a(String b, Boolean b)
    Debug Dump:
    System.ApplicationException: Receiving Handshake Failed!
       at PropComms.b.a(String b, a b)
       at PropLoad.a.a(String[] b)

    Having trouble configuring firewall now. Time to reboot.



    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    --Steve
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  8. #8

    Default

    Hi Steve,

    looks like something is blocking the port could be firewall etc.

    In the previous version I did not have an error trap for socket errors so it would crash the program, I added the error trap so the program won't crash.

    David
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  9. #9

    Default

    Geez ... slap me. I had turned of the "ask about block or allow programs" in Live OnceCare a few days ago. Works like a charm now :)

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    --Steve
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  10. #10

    Default

    There comes a time in an engineers life when you look down and think "how the frack did that get there":)

    Glad to hear its working OK.

    Cheers

    David
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  11. #11

    Default

    I think that every time I look down and can't see my feet :)
    Wife says: "I put the plate in front of you, but I didn't force you to eat!"

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    --Steve
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  12. #12

    Default

    Praxis

    If you name it PropTerminal this will produce a lot of misconceptions in future threads.
    "My" PropTerminal is used by many Propeller users, and intergrates also a Terminal and a Loader (together with many other functions).
    You can find it here:http://forums.parallax.com/showthread.php?p=649540
    or on my website: www.insonix.ch/propeller/prop_term.html

    But certainly I don't own the TradeMark for this name, so you can name it like you want

    Andy
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  13. #13
    Cluso99's Avatar
    Location
    Sydney/Brisbane Australia or 'sailing on the high seas'
    Posts
    9,977

    Default

    @Praxis - I haven't tried your program yet, but this is good news.

    Seems like all the pieces are coming together, what with Compilers (spin, forth, c), PASM and Spin debuggers, Terminal Program and possibly an IDE the future looks very rosy indeed

    FYI so you know what features I use:I use PropTool and PST. I have no issueswith the mechanism PST uses to close the com port - in fact I like it Actually, I would like PST to have an option to automatically open the com port when it gets the focus again. It woud be nice to be more like Hyperterminal which shows the keyboard inputcharacters in situ. The other feature I would like is a capture, so that debugging output can be captured. I copy the PST window and paste to notepad. However, PST gets corrupted after a number of characters (few k I think), so this does not work for large outputs. I use PropTool's editor - so if you use the PropLoader, what/how do you edit the source?

    It would be great to integrate the debugger. Itwould be nice to read the source file (or list file generated by PropList or Homespun) to marry up the source to the debug output. I can provide much of this info if you like. I haven't decoded the bytecodes like I did with the PASM but have the info in a table which you could use bits from.

    I am now debugging my Interpreter and comparing outputs and timing. I can see where the timing is being spent and where to concentrate to speed up further. PM me if you would like an advanced copy of the working debugger with spin, including the new interpreter. (I will not be home till tomorrown night). See Spin Interpreter - Faster ?? for sample spin debug output.
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  14. #14
    StefanL38's Avatar
    Location
    northern part of Hessen (Germany)
    Posts
    2,136

    Default

    hello Cluso,

    take a look at

    http://forums.parallax.com/showthread.php?p=629665

    this is full featured terminalsoftware with

    - auto connect/disconnect

    - script language for advanced debugging on serial data transmission issues

    - traffic graph

    - macros for sending predefined strings

    - log to file function

    best regards

    Stefan
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  15. #15

    Default

    @Ariba: Hi Andy firstly let me say I did not realize you had a program with the same name and you are quite right about the possible confusion so with that in mind I have renamed it to PropViewer.

    @Cluso99: I have screen capture to clipboard but it is not fully debugged and will update the zip when it is.
    Yes tying input into the same window does have some merit, I will have a think about that.
    One Thing that is a work in progress is function keys that have predefined strings to send, this is something that the old terminal program from Win3.1 had and I used a lot.
    I use a third party IDE for code editing and PM me with the debugger details.


    Cheers
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  16. #16

    Default

    PropViewer Version 1.2 uploaded.

    Right Click in the terminal window will capture the content to the ClipBoard.
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  17. #17

    Default

    @Praxis:

    Here are some nice to have feature requests if you have any time to implement them:

    * I would be much more prone to use your solution if the propellent (or other compiler like ICC or otherwise) and loader were controlable via a "build" and "build -> load" mechanisim especially if it was tied to a tool-bar button and the tool path/executables were configurable in setup.

    * I too like the input/output in the same TextBox, but that is less important to me than having fully functional and convenient terminal features.

    * Copy/paste to and from host is very important. PST is a nice terminal emulation program, but it can't do copy/paste at all ... Jeff was having a bad day I guess :) .... Hyperterm can do copy/paste, but you have to right click blah.

    * Being able to repeat a command from a ComboBox (given a separate input as you have) is nice but not necessary to me at least. I would appreciate a "repeat last command" button more than the ComboBox though.

    * Some kind of a scripting machine would be very useful ... essentially the scriptor would send commands one line at a time and expect a prompt after each command sent. It could have definition for the prompt to expect after a command is done. Being able to run all steps, reset, stop,continue, and stepwould all be useful in a scriptor. Some #include capacity would also be helpful. This is all pretty easy to write for C# once all the menu commands and buttons are defined. I've done it before except for the #include ... snapshot of this is attached.

    * User macro definitions would be nice including the ability to assign "scriptlets" to buttons or function keys.

    * We've already discussed virtual com-ports :)

    * Having your terminal reconnect "immediately" after download is very useful.

    Much of this would require a "solution manager" for loading, saving, etc... for different working environments.



    @Andy: I like your PropTerminal idea of mapping Keyboard/Mouse/TV/VGA input/output to a PC, but not being able to resize the screen is a BIG killer to me ... that's the main reason I don't use that product. I mostly enjoyed using your PASD debugger except for lack of buttons and the always on top windows. I think what should be taken from this little rant is that "user configurability is important" :)



    @Stephan: Bray's terminal encapsulates some good ideas, but I find it too "visually complex" to use regularly. It like PropTerminal's little screen makes my eyes hurt. I don't use things that give me a headache. There are many more useful and user friendly alternatives.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    --Steve
    Attached Thumbnails Attached Thumbnails Click image for larger version

Name:	GcodeClientSnapshot.jpg‎
Views:	173
Size:	42.3 KB
ID:	55758  
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  18. #18

    Default

    @jazzed

    You can resize PropTerminal, but not with the GUI. Just write the Settings (produces 'PropTerminal.ini') and edit the Rows and Cols parameter to the value which you want. You can have many .INI files for different applications, and switch between theme with the 'Load Settings' Menu Item. So you can fast change the Window size, the COM port, the Terminal mode, the baudrate ....
    In the next version (0.5) you can also scale the Window by a factor,like 1.5, 2.0, 0.5 or whatever you want, to make the font bigger.
    The little Window of the default settings is choosen to be TV_Text compatibel (40 x 13 characters), because this was the main application of PropTerminal at the begin.

    @praxis

    Thank you for renaming your Propeller Terminal.
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  19. #19

    Default

    Version 1.4 Uploaded, See Top for files and release notes:
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

  20. #20

    Default

    Hi Praxis.

    My one proposo.
    In Butons setup maybe You have one more option to SET (F1-12) else any other KEY for rapid Commands.


    Ps. Maybe one more Meny command ( Call Loader ) to have all in one funktions.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Nothing is impossible, there are only different degrees of difficulty.
    For every stuipid question there is atleast one inteligent awnser
    If you dont ask you wont know

    Sapieha
    Last edited by ForumTools; 09-30-2010 at 08:09 PM. Reason: Forum Migration

+ Reply to Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts