Downloading code using Micah's USB code - a few thoughts...
Cluso99
Posts: 18,069
Now Micah has proven that the Prop can do USB (sort of), I was thinking of some possibilities.
I am sure there are other solutions just waiting to be discovered, so to start the discussion here goes...
We mostly use an FTDI chip for the USB connection to the PC. Micah's USB code would allow us to communicate with the PC. But how could we use this to download code, as the reset is an issue. Here is a possible solution...
· The EEPROM holds USB boot code. When a reset (by Prop software or by a hardware switch, not by the serial DTR signal which really does not exist here) is executed, the EEPROM boot code is loaded. This code loads the USB driver which can now wait for the download protocol from the pc to begin downloading. In other words, the EEPROM boot code is a mix of USB serial driver and a modified version of the Prop's download protocol (it has to wait for the PC indefinately, or at least a significant time, or look for a pin used to signify a download will be required). The download will place the code into the upper 32KB of EEPROM unless we can get almost all the USB code out of hub and into cogs.
Any better ideas???
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
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
I am sure there are other solutions just waiting to be discovered, so to start the discussion here goes...
We mostly use an FTDI chip for the USB connection to the PC. Micah's USB code would allow us to communicate with the PC. But how could we use this to download code, as the reset is an issue. Here is a possible solution...
· The EEPROM holds USB boot code. When a reset (by Prop software or by a hardware switch, not by the serial DTR signal which really does not exist here) is executed, the EEPROM boot code is loaded. This code loads the USB driver which can now wait for the download protocol from the pc to begin downloading. In other words, the EEPROM boot code is a mix of USB serial driver and a modified version of the Prop's download protocol (it has to wait for the PC indefinately, or at least a significant time, or look for a pin used to signify a download will be required). The download will place the code into the upper 32KB of EEPROM unless we can get almost all the USB code out of hub and into cogs.
Any better ideas???
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
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
Comments
Are you sure you understand the difference between USB HOST and DEVICE?
The host code is very, very clever, but it relies on the host having control over the transaction timing on the USB BUS.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"I mean, if I went around sayin' I was an emperor just because some moistened bint had lobbed a scimitar at me they'd put me away!"
However, the USB implementation required here is a serial device on the prop end. This is the easier USB implementation compared to some of the other implementations.
My thoughts are that we can do a USB serial device emulation. Therefore, we only have to add some method to allow downloading of code to replace the FTDI requirement. It may not be a perfect solution, but I am sure we could make it work successfully.
Others may say the Prop is overpriced... Well, what about the FTDI chip!!!
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
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
No. He's posted a very clever host implementation.
Well, given there has been at least one running for the last 18 months or so, I can confirm that much.
An interesting assertion....
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
"I mean, if I went around sayin' I was an emperor just because some moistened bint had lobbed a scimitar at me they'd put me away!"