Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow record/upload #15

Closed
GoogleCodeExporter opened this issue Oct 10, 2015 · 3 comments
Closed

Allow record/upload #15

GoogleCodeExporter opened this issue Oct 10, 2015 · 3 comments

Comments

@GoogleCodeExporter
Copy link

Describe the new feature more precisely.
(Not sure, if this makes sense, and how much effort it would take to implement.)

I would like to have an API like this:

    brick.startRecord(keepRunning)
    [...]
    prog = brick.stopRecord()
    brick.upload(prog, "foo")
    brick.run("foo")

`keepRunning` = False would only record all commands, but not execute them.

Why do you think it's important?
I used NXT-Python to drive a logo-'turtle'. This means mainly sending a 
sequence of forward(10) - left(90) - pendown() - ...

When controlling the robot, we need a USB cable which is uncomfortable, or 
bluetooth which is not always available (and uses batterie and is less 
accurate?)

Any ideas on how to implement it?
If a program is only a list of telegrams as they are currently generated and 
sent to the brick, then it may be possible to simply buffer them?
If not, then I guess its probably not worth the effort.
Also, this would not allow to react on sensors, but there are use cases where a 
simple play-back would be nice.

Please provide any additional information below.

Original issue reported on code.google.com by moo...@wwwendt.de on 24 Oct 2010 at 3:15

@GoogleCodeExporter
Copy link
Author

What I would do here is write a function to do a sequence of movements, or 
record the commands in your program. It would be many, many times easier than 
trying to record and resend the data going to the brick (not to mention the 
fact that motor braking is interactive).

Original comment by marcus@wanners.net on 25 Oct 2010 at 12:02

  • Changed state: WontFix

@GoogleCodeExporter
Copy link
Author

I meant that the telegram-sequence would be uploaded to the brick. Then the USB 
cable is disconnected and the user could run the program using the brick 
buttons.
(It should be brick.start_program("foo") instead of .run(), but calling this 
function would not be the main use case anyway.)

I was thinking that a program _is_ a sequence of telegrams, as they are 
currently generated. But this is obviously a misconception.

I am not insisting on this feature at all, and it is not very important for my 
fun project.
Just wanted to make sure that the idea becomes clear :-)

Original comment by moo...@wwwendt.de on 25 Oct 2010 at 10:05

@GoogleCodeExporter
Copy link
Author

Yes, compiling nxt executable files is outside the scope of this program. You 
would want to use NXC for that (though uploading and running compiled programs 
with nxt-python is certainly possible).

Original comment by marcus@wanners.net on 25 Oct 2010 at 1:50

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant