diff --git a/packages/usb/get-i2c-baud-rate.js b/packages/usb/get-i2c-baud-rate.js new file mode 100755 index 00000000..6fdd106c --- /dev/null +++ b/packages/usb/get-i2c-baud-rate.js @@ -0,0 +1,16 @@ +#!/usr/bin/env node +const path = require('path'); +const uhk = require('./uhk'); +const device = uhk.getUhkDevice(); + +let programName = path.basename(process.argv[1]); + +let bps = process.argv[2]; +let buffer = new Buffer(uhk.pushUint32([uhk.usbCommands.getDeviceProperty, uhk.devicePropertyIds.i2cBaudRate])); +//console.log(buffer); +device.write(uhk.getTransferData(buffer)); +let response = device.readSync(); +//console.log(Buffer.from(response)); +let requestedBaudRate = uhk.getUint32(response, 2); +let actualBaudRate = uhk.getUint32(response, 6); +console.log(`requestedBaudRate:${requestedBaudRate} | actualBaudRate:${actualBaudRate} | I2C0_F:0b${response[1].toString(2).padStart(8, '0')}`) diff --git a/packages/usb/set-i2c-baud-rate.js b/packages/usb/set-i2c-baud-rate.js index cb44eaca..7de2746f 100755 --- a/packages/usb/set-i2c-baud-rate.js +++ b/packages/usb/set-i2c-baud-rate.js @@ -18,7 +18,7 @@ You're free to use any value in between and test the results.`); let bps = process.argv[2]; let buffer = new Buffer(uhk.pushUint32([uhk.usbCommands.setI2cBaudRate], +bps)); -console.log(buffer); +//console.log(buffer); device.write(uhk.getTransferData(buffer)); -const response = Buffer.from(device.readSync()); -console.log(response); +let response = device.readSync(); +//console.log(Buffer.from(response)); diff --git a/packages/usb/uhk.js b/packages/usb/uhk.js index 45606777..01f435ea 100644 --- a/packages/usb/uhk.js +++ b/packages/usb/uhk.js @@ -123,6 +123,7 @@ exports = module.exports = moduleExports = { protocolVersions: 1, configSizes: 2, currentKbootCommand: 3, + i2cBaudRate: 4, }, modulePropertyIds: { protocolVersions: 0,