- Added method drawOval 08/12/2018
In this project, we reimplemented most of the leJOS sensor API. However, there are some incompatibilities and changes to enhance performance and decrease the complexity of the sensor code that break previously established promises:
-
Using multiple
SensorModes in parallel doesn't work anymore. This is because for now, we have removed the kernel mode switching fromfetchSample()of sensor modes. Instead, the mode switch is performed in the associatedget*Mode()functions. This means that once you call oneget*Mode()function, you cannot useSensorModes from the other ones. This also means that once you reset theEV3GyroSensor, you have to callget*Mode()once more.In the future, if we find a way how to do this efficiently and without making it omplex, we might add support for this feature again. However, we might also keep it the way it is now, as this establishes a different promise -
fetchSampleonly fetches data, and it doesn't touch the sensor mode. -
Most of the
BaseSensorfunctions dealing with sensor modes are effectively broken now. This is caused by the previous point - sensor mode is not switched when using these functions. -
Waiting for multiple values does not work. We do not know how to wait for a new value in ev3dev. This means that IR sensor function reading multiple commands will read only one, otherwise it will throw an exception.
-
Motor synchronization is not yet implemented.