Home / Programming / ROBOTC / Released: ROBOTC Driver Suite V1.2

Released: ROBOTC Driver Suite V1.2

A new version (1.2) of the ROBOTC driver suite awaits your download from the usual source.
Lots of internal changes in this version.  I’ve been working on removing all the work-arounds that were necessary for ROBOTC pre-2.0 when there was no unsigned byte type.  Only ROBOTC 2.00 or higher is supported by this version.  The upgrade is free, so there is no reason not to download and install this. 

A lot of work has gone into improving the documentation in the code.

Changes for this version include:

All: 

  • Changed minimal requirement from 1.46 to 2.00
  • Added more comments

All drivers:

  • set #pragma systemFile to remove warnings of unused functions
  • Use new calls in common.h that don’t require SPORT/MPORT macros

New test/samples programs:

  • HTDIR-SMUX-test1.c: Newly added for HT IR Seeker V2 through SMUX
  • HTEOPD-SMUX-test1.c: Newly added for HT EOPD through SMUX
  • HTGYRO-SMUX-test1.c: Newly added for HT Gyro through sMUX
  • HTMC-SMUX-test1.c: Newly added for HT Compass through SMUX
  • LEGOTS-SMUX-test1.c: Newly added for Lego Touch sensor through SMUX
  • LEGOTS-test1.c: Newly added for Lego Touch sensor

New drivers:

  • drivers/LEGOTS-driver.h: Newly added driver for Lego Touch sensor

drives/HTAC-driver.h:

  • Fixed massive bug in HTACreadAllAxes() in the way values are calculated

drivers/common.h:

  • added bool HTSMUXsetMode(tSensors link, byte channel, byte mode)
  • added int HTSMUXreadAnalogue(tMUXSensor muxsensor)
  • added HTSMUXSensorType HTSMUXreadSensorType(tMUXSensor muxsensor)
  • added bool HTSMUXreadPort(tMUXSensor muxsensor, tByteArray &result, int numbytes, int offset)
  • added bool HTSMUXreadPort(tMUXSensor muxsensor, tByteArray &result, int numbytes)
  • added bool HTSMUXsetMode(tMUXSensor muxsensor, byte mode)
  • added bool HTSMUXsetAnalogueActive(tMUXSensor muxsensor)
  • added bool HTSMUXsetAnalogueInactive(tMUXSensor muxsensor)
  • corrected function description for HTSMUXSensorType()
  • Removed unnecessary read from HTSMUXsendCommand()

drivers/HTCS2-driver.h  drivers/HTDIR-driver.h:

  • Removed usage of ubyteToInt();

drivers/HTIRR-driver.h:

  • Changed HTIRRreadChannel() proto to use signed bytes like function.

drivers/HTMC-driver.h:

  • Replaced hex values in calibration functions with #define’s

drivers/LEGOLS-driver.h  drivers/LEGOSND-driver.h:

  • Make use of new calls for analogue SMUX sensors in common.h

drivers/LEGOTS-driver.h:

  • Newly added driver for Lego Touch sensor

drivers/MSAC-driver.h

  • Added defines for ranges (MSAC_RANGE_2_5 … MSAC_RANGE_10)
  • Removed ubyteToInt() calls.

HTAC-SMUX-test1.c:

  • Fixed line number in display functionality

MSLL-test3.c:

  • Use clip() instead of manual clipping

The drivers’ website is here: [LINK].
The documentation can be found here: [LINK].
You can download the software from the Source Forge page here: [LINK].

About Xander

Xander Soldaat is a Software Engineer and former Infrastructure Architect. He loves building and programming robots. He recently had the opportunity to turn his robotics hobby into his profession and has started working for Robomatter, the makers of ROBOTC and Robot Virtual Words.