RWTH - Mindstorms NXT Toolbox
The functions of the RWTH - Mindstorms NXT Toolbox can be categorized into a multiple layer structure. On the lowest layer Low Level and Helper Functions are available, which mostly convert parameter modes to bytes words, determined by the LEGO direct commands documentation. The second layer includes Direct NXT Commands which are mapped from the LEGO direct command documentation without any limitations and can be identified by the NXT_* prefix. Also Bluetooth packet related functions can be found in this layer. Layer 3 provides High Level Functions for controlling the NXT motors, sensors and the Bluetooth connection. These functions are basically using the Direct NXT Commands of layer 2 to make the motor and sensor controlling more convenient and easily readable for the user. The top layer provides High Level Regulation functions for precise motor regulation and various utilities.
Layer | Description | Output/Motors | Input/Sensors | General | Bluetooth / USB |
4 | High Level Regulation / Utilities | NXTMotor .ReadFromNXT .SendToNXT .Stop .WaitFor .ResetPosition NXC_MotorControl |
OptimizeToolboxPerformance GUI_WatchMotorState GUI_WatchSensor |
COM_MakeBTConfigFile | |
3 | High Level Functions | DirectMotorCommand StopMotor SwitchLamp NXC_ResetErrorCorrection |
OpenLight GetLight OpenSound GetSound OpenSwitch GetSwitch OpenUltrasonic GetUltrasonic USMakeSnapshot USGetSnapshotResults OpenAccelerator GetAccelerator OpenColor CalibrateColor GetColor OpenNXT2Color GetNXT2Color OpenCompass CalibrateCompass GetCompass OpenGyro CalibrateGyro GetGyro OpenEOPD CalibrateEOPD GetEOPD OpenInfrared GetInfrared OpenRFID GetRFID CloseSensor |
readFromIniFile MAP_GetCommModule MAP_GetInputModule MAP_GetOutputModule MAP_GetSoundModule MAP_GetUIModule MAP_SetOutputModule NXC_GetSensorMotorData |
COM_OpenNXT COM_OpenNXTEx COM_CloseNXT COM_ReadI2C |
---|---|---|---|---|---|
2 | Direct NXT Commands | NXT_SetOutputState NXT_GetOutputState NXT_ResetMotorPosition |
NXT_SetInputMode NXT_GetInputValues NXT_ResetInputScaledValue NXT_LSRead NXT_LSWrite NXT_LSGetStatus |
NXT_PlayTone NXT_PlaySoundFile NXT_StopSoundPlayback NXT_StartProgram NXT_GetCurrentProgramName NXT_StopProgram NXT_SendKeepAlive NXT_GetBatteryLevel NXT_GetFirmwareVersion NXT_SetBrickName NXT_ReadIOMap NXT_WriteIOMap NXT_MessageWrite NXT_MessageRead |
COM_CreatePacket COM_SendPacket COM_CollectPacket COM_SetDefaultNXT COM_GetDefaultNXT |
1 | Low Level Functions: Helper, Conversion and Lookup Functions |
MOTOR_A MOTOR_B MOTOR_C SetMotor (o) SetPower (o) SetAngleLimit (o) SetRampMode (o) SetTurnRatio (o) SpeedRegulation (o) SyncToMotor (o) GetMotor (o) SetMemoryCount (o) GetMemoryCount (o) byte2outputmode byte2regmode byte2runstate outputmode2byte regmode2byte runstate2byte initializeGlobalMotorStateVar (o) |
SENSOR_1 SENSOR_2 SENSOR_3 SENSOR_4 byte2sensortype byte2sensormode sensortype2byte sensormode2byte waitUntilI2CReady |
DebugMode isdebug textOut dec2wordbytes name2commandbytes commandbyte2name wordbytes2dec |
checkStatusByte createHandleStruct checkHandleStruct getLibusbErrorString getVISAErrorString getReplyLengthFromCmdByte fantom_proto libusb_proto |
legend: NXT_* = NXT Direct commands without any limitations (mapped to the LEGO direct command documentation) COM_* = Functions related to the NXT communication MAP_* = Functions related to the NXT module maps NXC_* = Functions communicating with the embedded NXC program MotorControl bold = Main funcions or main group functions italic = private functions (o) = obsolete / deprecated functions (might be removed in a future release) |