Quantcast
Channel: Wardy's Projects
Viewing all articles
Browse latest Browse all 70

pushprop Project Progress

$
0
0
A quick update to the pushprop application project (see the page heading at the top of this blog page for more info)...

----------------

Happy to report good progress with this project!  My current state of completion is thus (at time of writing) :


  • Supports all four main chip-programming modes (shutdown only, load RAM and run, load EEPROM and shutdown and load EEPROM and run).
  • Supports automatic checksum recalculation during the chip RAM / EEPROM download sequence.  This is required for some of the other exotic features I'm adding such as serial number embedding.
  • Supports serial number embedding.  Insert a user-specifiable 32 bit serial number into a user-specifiable long address in the EEPROM image (just before it's inserted into the Propeller).  This requires the auto-checksum feature to be enabled else it won't pass the Propeller's checksum validity test.  I've tested this by writing a short PASM program that writes the memory area back to the PC over serial, works nicely :)
It's still not stable enough for release unfortunately.  I'll have to improve the primitive user argument handling code before it goes out into the world otherwise people will complain that it's a bit fussy.

One feature that I'm eager to implement is the ability to have the Propeller chip read it's own EEPROM and send the data back to the PD over the serial link all in one command.  This will require me to embed a small Propeller program within the actual Linux program so I can send that temporarily to the Propeller's RAM and have it run from there.  That will be challenging but fun.


The code download protocol isn't difficult to understand at all, once you know that you have possession of the facts and that those facts are verifiable when tested.  That was the hard part and I think I've got there in the end.  Surprisingly, there is no official documentation for the Propeller's code download protocol!  The best I could find was a somewhat sparse and ambiguous set of rough notes from Chip Gracey (himself!) on the Parallax forums.

Also a collection of equally troublesome documents were tracked down in due course and added to the mix in order to iron out some of the confusion.  I will write up my own findings and publish what I believe to be an accurate description of the Propeller's download protocol (colloquially known as "3BP - the Three Bit Protocol").

In any case the code will be open source so it'll be there for all to see :)


Viewing all articles
Browse latest Browse all 70

Trending Articles