aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormarcusw2011-02-13 20:43:54 +0000
committermarcusw2011-02-13 20:43:54 +0000
commit8eccd57e1e3394946a211c491388ef0e8951cff2 (patch)
tree5ac6a184352273f2067375f95e06f24e9a5a8722
parente4bfbc6aab1086351a10bdd6f0e2605dce9bc76f (diff)
v2.1.0: Readme updates plus minor change to cnc.py example.
-rw-r--r--README46
-rw-r--r--examples/cnc.py6
2 files changed, 21 insertions, 31 deletions
diff --git a/README b/README
index 0a9e90d..5d9a214 100644
--- a/README
+++ b/README
@@ -27,12 +27,11 @@ Installation (if using source package):
Getting Started:
- Take a look at the examples directory (this is, unfortunately, not included
-in the windows installer packages...you will find it in a corresponding source
-package or SVN checkout). Feel free to copy that code into your scripts and
-don't be afraid to experiment! If you are having trouble with something, you may
-find the solution in the docstrings (ex. help('nxt.sensor.Ultrasonic')) or even
-in the source code (especially for digital sensors).
+ Take a look at the examples directory. Feel free to copy that code into your
+scripts and don't be afraid to experiment! If you are having trouble with
+something, you may find the solution in the docstrings (for example,
+help('nxt.sensor.Ultrasonic')) or even in the source code (especially for
+digital sensors).
Notes/FAQ:
(I have tried to put the most important stuff first, but it would be a good
@@ -48,32 +47,22 @@ googlecode. New projects should use a 2.x series release (hint: this is one!)
due to the new features and API improvements. Converting old projects is
somewhat difficult and not officially supported, though as always you're
welcome to ask for help.
- Users who are upgrading from v1.x of nxt-python may notice that there is no
-longer a nxt.server module. I removed it due to it being a prime example of
-feature creep, the code being of low quality, and the connection protocol very
-badly designed. I would recommend that anyone wanting to use a brick over a
-network connection design and write their own protocol and code to best fit
-their specific application.
-=-=-Problems and Their Solutions-=-=-
- For some reason, digital sensor operations have a tendency to throw random
-I2C communication errors. I have been unable to find the source of this problem
-(it seems to be inside the nxt firmware itself) or a good workaround. If some
-python master out there comes up with a fix, I would be very, very happy to get
-it. Thanks!
- The Synchronized Motor support has not been extensively tested for accuracy.
-It seems to mostly work well but the accuracy of the braking function and the
-closeness of the two motors to each other have not been assesed.
Support for a number of sensors has not been tested at all, due to lack of
hardware. I have started a project to test this code, but the going is slow
and I have decided to go ahead and release rather than waiting several more
months. If you have a problem with a digital sensor, see the troubleshooting
guide below and don't forget to report your trouble!
+ The Synchronized Motor support has not been extensively tested for accuracy.
+It seems to mostly work well but the accuracy of the braking function and the
+closeness of the two motors to each other have not been assesed.
NXT-Python has not been tested and may not work with custom nxt firmware
versions (if you don't know what that means, you don't need to worry about it).
However, if the firmware uses the standard USB/BT communications protocol,
everything should more or less work. NXT-Python has been tested with bricks
-using firmware version up to 1.29 and is compatible with protocol version 1.124
-(used by most if not all of the official firmwares).
+using LEGO firmware version up to 1.29 and is compatible with protocol version
+1.124 (used by most if not all of the official firmwares). It has also been
+reported working with LeJOS.
-=-=-If you co'd the SVN...-=-=-
The Arduino directory of an svn checkout (not included with release
packages) contains a digital sensor unit test system called nxtduemu. It is
@@ -93,15 +82,15 @@ Specific Stability Status:
On Windows: Stable; working last I checked.
On Mac: Reported working.
nxt.locator:
- Stable, well tested.
+ Stable, somewhat tested. One developer reported problems.
nxt.motor:
Stable except for Synchronized Motor support, which is experimental at
this stage and has not been extensively tested.
nxt.sensor:
Code not specific to a particular sensor is well tested and working
- well. About half of the sensor classes were last reported working; the
- rest have not to my knowlege been tested and were written blindly from
- the manuacturers' specifications.
+ great. More than half of the sensor classes were last reported working;
+ the rest have not to my knowlege been tested and were written blindly
+ from the manuacturers' specifications.
nxt.error:
If there's a problem with this one, I'm gonna cry.
@@ -125,7 +114,8 @@ Thanks to:
HiTechnic for providing identification information for their sensors. I note
that they have now included this information in their website. ;)
Linus Atorf, Samuel Leeman-Munk, melducky, Simon Levy, Steve Castellotti,
- Paulo Vieira, and anyone else I forgot for various fixes and additions.
+ Paulo Vieira, zonedabone, migpics, and anyone else I forgot for various
+ fixes and additions.
All our users for their interest and support!
@@ -172,7 +162,7 @@ Read the spec for the sensor to determine how the given value should be read,
then start at the sample method and read through it, checking for problems as
you go. If it seems right, go back to the I2C_ADDRESS chunk (near the top of the
class) and make sure that the correct struct format string is being used. The
-most common problem here is values that are off by plus or minus 128 or 32,768
+most common problem here is values that are off by plus or minus 128 or 32768
because of an incorrect signed/unsigned setting. This can be fixed by switching
the case (as in upper or lower) of the letter in the string. Other problems
could include the wrong size (B, H, or L) being used, or, in the two latter
diff --git a/examples/cnc.py b/examples/cnc.py
index d987799..9b5c5b1 100644
--- a/examples/cnc.py
+++ b/examples/cnc.py
@@ -23,10 +23,10 @@ def turnmotor(m, power, degrees):
#it's probably not a good idea to run simultaneous turn
#functions on a single motor, so be careful with this
instructions = (
- [0, 0, 80, 360],
+ [0, 0, 80, 180],
[0, 1, -40, 1080],
- [1, 0, -80, 360],
- [2, 0, 80, 360],
+ [1, 0, -80, 180],
+ [2, 0, 80, 180],
[3, 1, 100, 360],
[3, 0, -100, 360],
)