|
Serial Wombat Arduino Library
|
A class representing a PCB0031 Grip PCB. More...
#include <PCB0031_Grip.h>


Public Member Functions | |
| PCB0031_Grip () | |
| int16_t | begin (uint8_t i2cAddress, bool pin3IsVoltage=false) |
| Initialize a PCB0031_Grip pcb on a given I2C address. | |
| uint16_t | readPowerVoltage_mv () |
| Returns the voltage provided to the Servos in mV. | |
Public Member Functions inherited from SerialWombatChip | |
| void | configureDigitalPin (uint8_t pin, uint8_t highLow) |
| int16_t | initialize () |
| void | readUniqueIdentifier () |
| void | readDeviceIdentifier () |
| uint16_t | returnErrorCode (uint8_t *rx) |
| SerialWombatChip () | |
| int16_t | begin (HardwareSerial &serial, bool reset=true) |
| initialize a Serial Wombat chip to use a Serial Interface. | |
| int16_t | begin (uint8_t i2cAddress) |
| initialize a Serial Wombat chip to use the default Wire I2C Interface and specified address. | |
| int16_t | begin (TwoWire &wire, uint8_t i2cAddress, bool reset=true) |
| initialize a Serial Wombat chip to use a specified I2C Interface and address. | |
| ~SerialWombatChip () | |
| int | sendPacket (uint8_t tx[], uint8_t rx[]) |
| Send an 8 byte packet to the Serial Wombat chip and wait for 8 bytes back. | |
| int | sendPacket (uint8_t tx[]) |
| Send an 8 byte packet to the Serial Wombat chip. | |
| int | sendPacket (uint8_t tx[], uint8_t rx[], bool retryIfEchoDoesntMatch, uint8_t beginningBytesToMatch=8, uint8_t endBytesToMatch=0) |
| Send an 8 byte packet to the Serial Wombat chip and wait for 8 bytes back. | |
| int | sendPacket (uint8_t tx[], bool retryIfEchoDoesntMatch) |
| Send an 8 byte packet to the Serial Wombat chip. | |
| int | sendPacketNoResponse (uint8_t tx[]) |
| Send an 8 byte packet to the Serial Wombat chip, don't wait for a response. | |
| char * | readVersion (void) |
| Request version string (combined model and firmware) and return pointer to it. | |
| uint32_t | readVersion_uint32 (void) |
| Request version as a uint32. | |
| bool | isLatestFirmware (void) |
| uint16_t | readPublicData (uint8_t pin) |
| Read the 16 Bit public data associated with a Serial Wombat Pin Mode. | |
| uint16_t | readPublicData (SerialWombatDataSource dataSource) |
| Read the 16 Bit public data associated with a Serial Wombat Pin Mode. | |
| uint16_t | writePublicData (uint8_t pin, uint16_t value) |
| Write a 16 bit value to a Serial Wombat pin Mode. | |
| uint32_t | comparePublicDataToThreshold (uint16_t threshold=0) |
| uint16_t | readSupplyVoltage_mV (void) |
| Measure the Serial Wombat chip's Supply voltage. | |
| int16_t | readTemperature_100thsDegC (void) |
| Measure the Serial Wombat chip's internal temperature. | |
| void | hardwareReset () |
| Send a reset command to the Serial Wombat chip. | |
| void | pinMode (uint8_t pin, uint8_t mode, bool pullDown=false, bool openDrain=false) |
| Set a pin to INPUT or OUTPUT, with options for pull Ups and open Drain settings. | |
| void | digitalWrite (uint8_t pin, uint8_t val) |
| Set an output pin High or Low. | |
| int | digitalRead (uint8_t pin) |
| Reads the state of a Pin. | |
| int | analogRead (uint8_t pin) |
| Configures pin as analog input and does an immediate A/D conversion. | |
| void | analogWrite (uint8_t pin, int val) |
| Set a pin to PWM output. | |
| bool | queryVersion () |
| Send a version request to the Serial Wombat chip. | |
| uint32_t | readFramesExecuted () |
| Get the number of 1mS frames that have been executed since Serial Wombat chip reset. | |
| uint16_t | readOverflowFrames () |
| Get the number of times an overflow Frame has occured. | |
| void | jumpToBoot () |
| Jump to Bootloader and wait for a UART download of new firmware. | |
| uint8_t | readRamAddress (uint16_t address) |
| Read Address from RAM based on 16 bit address. | |
| int16_t | writeRamAddress (uint16_t address, uint8_t value) |
| Write byte to Address in RAM based on 16 bit address. | |
| uint32_t | readFlashAddress (uint32_t address) |
| Read Address from Flash based on 32 bit address. | |
| int16_t | readUserBuffer (uint16_t index, uint8_t *buffer, uint16_t count) |
| Read data from the Serial Wombat 18AB's internal RAM buffer. | |
| void | sleep () |
| Shuts down most functions of the Serial Wombat chip reducing power consumption. | |
| void | wake () |
| Called to send a dummy packet to the Serial Wombat chip to wake it from sleep and ready it for other commands. | |
| bool | isSW18 () |
| Returns true if the instance received a model number corresponding to the Serial Wombat 18 series of chips at begin. | |
| bool | isSW08 () |
| Returns true if the instance received a model number corresponding to the Serial Wombat 08 series of chips at begin. | |
| int16_t | eraseFlashPage (uint32_t address) |
| Erases a page in flash. Intended for use with the Bootloader, not by end users outside of bootloading sketch. | |
| int16_t | writeFlashRow (uint32_t address) |
| Writes a row in flash. Intended for use with the Bootloader, not by end users outside of bootloading sketc. | |
| int16_t | setThroughputPin (uint8_t pin) |
| Set a pin to be a throughput monitoring pin. | |
| int16_t | setThroughputPin (uint32_t address) |
| Set this chip Address (SW8B only) | |
| int | writeUserBuffer (uint16_t index, uint8_t *buffer, uint16_t count) |
| Write bytes to the User Memory Buffer in the Serial Wombat chip. | |
| int | writeUserBuffer (uint16_t index, char *s) |
| Write bytes to the User Memory Buffer in the Serial Wombat chip. | |
| int | writeUserBuffer (uint16_t index, const char s[]) |
| Write bytes to the User Memory Buffer in the Serial Wombat chip. | |
| int16_t | writeFrameTimerPin (uint8_t pin) |
| Set a pin to be a frame timer for system utilization (SW18AB Only) | |
| int16_t | readLastErrorCommand (uint8_t *cmd) |
| Returns the last Serial Wombat command that produced a protocol error. | |
| void | registerErrorHandler (SerialWombatErrorHandler_t handler) |
| Registers an error handler that is called by the SerialWombatChip sendPacket() command when a protocol error is returned by the Serial Wombat \handler A function pointer to a function of SerialWombatErrorHandler_t type. | |
| int16_t | echo (uint8_t data[], uint8_t count=7) |
| int16_t | echo (char *data) |
| uint32_t | readBirthday () |
| int16_t | readBrand (char *data) |
Public Attributes | |
| GripServo | gs0 |
| GripServo | gs1 |
| GripServo | gs2 |
| GripServo | gs3 |
| SerialWombatAnalogInput_18AB | powerVoltage |
| GripServo * | gsArray [4] = { &gs0,&gs1,&gs2,&gs3 } |
Public Attributes inherited from SerialWombatChip | |
| uint16_t | _supplyVoltagemV = 0 |
| uint8_t | model [4] = { 0 } |
| Contains the last model retreived by queryVersion() as a zero-terminated string. | |
| uint8_t | fwVersion [4] = { 0 } |
| Contains the last firmware Version retreived by queryVersion() as a zero-terminated string. | |
| uint8_t | uniqueIdentifier [16] |
| uint8_t | uniqueIdentifierLength = 0 |
| uint16_t | deviceIdentifier |
| uint16_t | deviceRevision |
| uint16_t | errorCount = 0 |
| Incremented every time a communication or command error is detected. | |
| bool | inBoot = false |
| Set to true if boot mode is indicated by a version query. | |
| int16_t | lastErrorCode = 0 |
| The last error code returned as part of a protocol error message expressed as a positive integer. | |
| uint32_t | sendReadyTime = 0 |
| uint8_t | address = 0 |
| The I2C address of the SerialWombatChip instance. | |
| uint8_t | communicationErrorRetries = 5 |
| How many times to retry a packet if communcation bus (such as I2C) error. | |
Additional Inherited Members | |
Static Public Member Functions inherited from SerialWombatChip | |
| static uint8_t | find (bool keepTrying=false) |
| Search the I2C Bus addresses 0x68 to 0x6F for I2C devices, and test to see if they respond to Serial Wombat version commands. Returns first address that responds properly or 0 if none found. | |
A class representing a PCB0031 Grip PCB.
The PCB0031_Grip class is a child class of SerialWombatChip. It adds additional functionality to the begin class to initialize GripServo classes associated with the 4 (or 3) servo/current sensor combinations.
In the case where the solder jumper for servo power voltage measurement is closed, 3 servo combinations are initialized, and an analog input for the voltage is initialized.
The class creates 4 GripServo s named gs0 thorugh gs3 .
A Tutorial video is also avaialble:
Definition at line 384 of file PCB0031_Grip.h.
|
inline |
Definition at line 387 of file PCB0031_Grip.h.
|
inline |
Initialize a PCB0031_Grip pcb on a given I2C address.
Wire must be initialized before calling this function
| i2cAddress | The I2C address of the PCB |
| pin3IsVoltage | Set this to true if the voltage measurement solder jumper has been soldered closed |
Definition at line 405 of file PCB0031_Grip.h.
|
inline |
Returns the voltage provided to the Servos in mV.
begin must be called with pin3VoltageEnable = true before using this method
this funciton calculates the value based on the 8200/2000 ohm voltage divider on the board
Definition at line 436 of file PCB0031_Grip.h.
| GripServo PCB0031_Grip::gs0 |
Definition at line 390 of file PCB0031_Grip.h.
| GripServo PCB0031_Grip::gs1 |
Definition at line 390 of file PCB0031_Grip.h.
| GripServo PCB0031_Grip::gs2 |
Definition at line 390 of file PCB0031_Grip.h.
| GripServo PCB0031_Grip::gs3 |
Definition at line 390 of file PCB0031_Grip.h.
Definition at line 393 of file PCB0031_Grip.h.
| SerialWombatAnalogInput_18AB PCB0031_Grip::powerVoltage |
Definition at line 391 of file PCB0031_Grip.h.