Parallax Serial Terminal help
I've been designing a project for a while now. This project will be a commercial product sold on ebay, so I want it to have the very best features. One feature I want, is some sort of display device, and a user input device - a keyboard. At first, I set out to design in a TV and keyboard port until I remembered about the Parallax serial terminal...
I've been using the PST for a week now, and it sure is nice being able to use my keyboard/computer screen to run interface with my project. So, I got to thinking - why not use the PST completely and do away with seperate TV and keyboard ports?
So, here's my question... Is the PST limited to basic text ONLY, or can it do anything else? Also, is there another such program that can allow you to interface with the Propeller, and allow the Propeller to save files to the computer itself instead of an SD Card? All I would need to implement this on each of my products is the FTDI chip, and a handful of other minor components? No programming of the FTDI chip or anything?
I'd like to make this simple and just have a USB port on my product so that my customers can plug the device in, and use the computer to control it via the USB port.
I've been using the PST for a week now, and it sure is nice being able to use my keyboard/computer screen to run interface with my project. So, I got to thinking - why not use the PST completely and do away with seperate TV and keyboard ports?
So, here's my question... Is the PST limited to basic text ONLY, or can it do anything else? Also, is there another such program that can allow you to interface with the Propeller, and allow the Propeller to save files to the computer itself instead of an SD Card? All I would need to implement this on each of my products is the FTDI chip, and a handful of other minor components? No programming of the FTDI chip or anything?
I'd like to make this simple and just have a USB port on my product so that my customers can plug the device in, and use the computer to control it via the USB port.
Comments
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, SixBladeProp, website (Multiple propeller pcbs)
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
Something which simulated the features of the current SD driver would be extremely cool. Folks could simply drop in the replacement object and take off. Any sharp coders want to take this one on? [noparse]:)[/noparse]
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Visit the: The Propeller Pages @ Warranty Void.
Propterminal:
http://forums.parallax.com/showthread.php?p=649540
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Visit the: The Propeller Pages @ Warranty Void.
You're on the right way, if you try PropTerminal. It has some nice features for your application:
- Beside Text, you can also draw graphic lines boxes... with serial commands.
- You can save a Text, which you have sent to the Terminal , on the PC harddisk, initated by the Spin code.
- Spin code can request PropTerminal to upload a dedicated text- or binary file.
- Spin can request the current time and date from the PC via PropTerminal.
- PropTerminal has an intergrated Loader to update the RAM or EEPROM code.
Download version 0.4 and then replace PropTerminal.exe with the version 0.47 or higher to use the file load (can be found in the thread above).
Attached are some examples to save and load a file (max. 32 kByte for save) to/from the PC harddisk.
Look also in the ZIP of version 0.3 there is an example how to load precompiled code binaries on Spin request.
Andy
Heater has written a PC_Text and PC_Keyboard to replace the Text and Keyboard objects (see the ZiCog thread for the code)
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, SixBladeProp, website (Multiple propeller pcbs)
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
I have omitted some features [noparse]:)[/noparse]
The pc_text, pc_keyboard, pc_mouse and pc_interface objects are written by me, and are part of the PropTerminal distribution.
They are mostly compatibel to the tv_text/vga_text, keyboard and mouse objects. The pc_interface is a combined driver which uses only 1 cog and provides also simple methodes for the graphic commands.
Andy
EDIT: Wow, Ariba... If this works out, you may have just consolidated a large sum of my parts and complexity. My gadget was going to have a PS/2 port, a TV out port, a power plug port, and SOMEHOW and SD Card port that the user would have to get to from the outside... If it's ok to use your program, I'll be able to consolidate EVERYTHING into a single USB port - and get the power from the USB line. This is amazing to say the least...
Post Edited (Philldapill) : 5/30/2009 5:34:07 AM GMT
Where is it?. Not in OBEX.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
JMH
I had to search the forums for a bit to find it.
Attached is a simple graphing utility I'm working on for the PropTerminal.·Each time the graph is updated, it shifts the table values, then adds in the sample. Right now, it is set up to repeat the graph by adding the first "sample" into the table of values. I'd like to work on this a little more because this EXACT thing is what I wanted in my own product.
I can't thank you enough, Andy. [noparse]:D[/noparse] [noparse]:D[/noparse] [noparse]:D[/noparse]
Post Edited (Philldapill) : 5/30/2009 6:53:10 PM GMT
A nice feature would be to be able to download a binary (i.e. resetting the prop and downloading) as I am now using homespun/bstc for compiling and this would avoid having to use PropTool. I am not asking for placing into eeprom because this does not happen often. I have to place delays so that I can switch between PropTool and Prop Terminal.
For the record, I am using heater's ZiCog and the TriBlade, neither of which are necessary. I use the SD card to store code and data. This code has a lot more uses if the ZiCog and TriBlade code were to be stripped out. PropDos/PropCmd could be put back in. Last night I built a minimal boot code for booting a binary from the SD card (untested). I need this for my standalone RamBlade and I need to know how big it has to be since it can be loaded by another propeller or micro (MC9S08xx).
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBladeProp, SixBladeProp, website (Multiple propeller pcbs)
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: Micros eg Altair, and Terminals eg VT100 (Index)
· Search the Propeller forums (via Google)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm
This is possible, and also to eeprom. Just use the 'Upload' menu item in the 'File' menu.
And as I tried to say before: You can also load the Propeller RAM with new code binaries, controlled by Spin code. You need to send an exact sequence of control bytes to PropTerminal (which includes the filename), then PropTerminal resets the Propeller and loads this new binary in the RAM (or EEPROM if the extension is .eeprom). This allows code overlays or automatic updates.
Yes, you need to edit the PropTerminal.ini file. You get this file with 'Save Settings' in the menu. Then change the 'Cols' and 'Rows' parameters. Default is 40 x 13 characters, you can set 80 x 24 characters for example and you get a bigger window when you restart PropTerminal.
This ini file lets you edit a lot of parameters, also the colors, or COM port, or you can define a *.binary file which is loaded into RAM at Startup.
If you want to pay for it, you can get a customized version of PropTerminal for your commercial product. It can have the product name in the title bar, and the 'About' and "Website' menu contents changed.
Andy
Regardless, this really is an absolutely wonderful bit of software. If you don't mind me using it in my commercial product, I'd like to use it as is for now, and once I get it up and going, then sure, a custom PropTerminal would be great!
But you can have more than 60 Characters in a line, with text functions.
I've once decided to make PropTerminal free, also for commercial products, so no problem, if you use it as is.
I see it as an ad for my website and company, so be aware that it shows a little banner on eeprom upload.
Andy
BTW, the eeprom upload is great! What I'm thinking, is getting my hardware perfected and start selling these units, but be able to easily upgrade these units when they are in the customer's hands. This is actually one of my selling points... FREE firmware and feature upgrades for the life of the device.
Thanks again, Andy!
Finally, I had the time to include the double buffering into PropTerminal. Attached is a Test version.
It uses a new HOME command to enable double buffering and copy the hided drawing buffer to screen.
This Home command has code 2 (instead of code 1 for the normal HOME command).
If you send 2 to the terminal, cursor is set to pos 0,0 and further drawing goes only to the drawing buffer.
When you will update the screen with the drawing buffer, just send code 2 again. This updates the screen and sets
the home position again.
To disable double buffering use the normal HOME with code 1.
Andy
Any idea what the heck is going on? Any reason why double buffering wouldn't work with a PIC? It's exactly the same commands, but different results...?
Post Edited (Philldapill) : 4/9/2010 3:23:13 AM GMT
Works fine for the propeller, but sporadically and sometimes not at all for the PIC...
Sorry, I cannot help with the other problem.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:
· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)·
· Prop OS: SphinxOS·, PropDos , PropCmd··· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBlade Props: www.cluso.bluemagic.biz
How is the PIC connected to the PC, and how the Propeller? (USB converter, SerialPort?)
Most Propeller serial drivers send 2 stop bits, perhaps it helps if also the PIC will do that.
In general the PropTerminal can not know, who sends the serial data, so it has no preferences for a Propeller.
(but perhaps the PIC wan't work because the program is called PROP Terminal?
Andy
Thanks, Andy. I hope someone has told you that you are a wonderful human being that makes amazing software.