|
Markus L. Noga <markus@noga.de> wrote:
> New record at 41.13 s?
I'll have to test it out in my office, which has difficult lighting.
Errors in transmission can often break things in unexpected ways, leaving
you in states that are hard to recover from, often resulting in the
downloader aborting after giving up on retries. It is important to make
sure you recover from such states reliably.
Part of the reason I tried to stay away from a state machine is that it
breaks the generality of the rcx_comm code, which I was planning to use for
e.g. a rewrite of send.c. That code has already proved useful for talking
to the RCX when running firmware that uses the ROM packet code, e.g. when
running a debug shell around the floating point libraries.
However. You might note that rcx_recv specifies an expected length that is
currently ignored (except to prevent buffer overlow) but could possibly be
used (with a reasonable hack to deal with the ROM bug) to drive nbread to
avoid using the timeout, something like the what rcx_send uses when it
calls nbread. You'd have to make sure to flush the port after detecting an
error, just like rcx_send. This wouldn't be too difficult to add.
-Kekoa
|
|
Message has 1 Reply: | | RE: firmdl3 @ 41.13s
|
| (...) Bug, what bug? Have I missed something? My Tcl based uploader broke when Scriptics released 8.2, and now it works again. Seems I wasn't handling the rcx_recv parameter in my equivalent functions... Anyways, could you elaborate on the bug a (...) (25 years ago, 4-Oct-99, to lugnet.robotics.rcx.legos)
|
Message is in Reply To:
| | firmdl3 @ 41.13s
|
| Hi, on my machine, original firmdl3 took 45.2s to download firm0309.lgo. - I increased packet size to 240 bytes, gaining roughly 2 seconds. - Added packet size prediction and bytewise decoding with a state machine (The decoder spent 50 ms per packet (...) (25 years ago, 4-Oct-99, to lugnet.robotics.rcx.legos)
|
4 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
This Message and its Replies on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|