Methods - MBM1607/rn-usb-serial GitHub Wiki

startUsbService stopUsbService getDeviceList connectDevice disconnect isOpen isSupported isServiceStarted writeString writeBase64 writeHexString

Setter Methods

setReturnedDataType setDriver setInterface setAutoConnect setAutoConnectBaudRate setDataBit setStopBit setParity setFlowControl loadDefaultConnectionSetting

startUsbService

Starts the service and usb broadcast receivers

No Params

RNSerialport.startUsbService();

stopUsbService

Stops the service and usb broadcast receivers

No Params

RNSerialport.stopUsbService();

getDeviceList

Receives device list

No Param

try {
	const deviceList = await RNSerialport.getDeviceList();
	if (deviceList.length > 0) {
		console.log(deviceList);
	} else {
		console.log('Device Not Found');
	}
} catch (err) {
	Alert.alert(
		'Error from getDeviceList()',
		err.errorCode + ' ' + err.errorMessage
	);
}

connectDevice

Use to manual connection

Params:

Name TYPE REQUIRED
deviceName string yes for call
baudRate number yes for call
RNSerialport.connectDevice('deviceName', 9600);

disconnect

Closes the connection

No Params

RNSerialport.disconnect();

isOpen

Returns connection status

Params:

No param

//1st way
try {
	const isOpen = await RNSerialport.isOpen();

	if (isOpen) console.log('Is open?', 'yes');
	else console.log('Is open?', 'no');
} catch (err) {
	console.log(err);
}

//2st way
RNSerialport.isOpen()
	.then((isOpen) => {
		if (isOpen) {
			console.log('Is open?', 'yes');
		} else {
			console.log('Is oprn?', 'no');
		}
	})
	.catch((err) => {
		console.log(err);
	});

isSupported

Returns support status

Params:

Name TYPE REQUIRED
deviceName string yes for call
//1st way
try {
	const isSupported = await RNSerialport.isSupported('deviceName');

	if (isSupported) console.log('Is supported?', 'yes');
	else console.log('Is supported?', 'no');
} catch (err) {}

//2st way
RNSerialport.isSupported('deviceName')
	.then((isSupported) => {
		if (isSupported) {
			console.log('Is supported?', 'yes');
		} else {
			console.log('Is supported?', 'no');
		}
	})
	.catch((err) => {
		console.log(err);
	});

isServiceStarted

Returns service status

No param

//1st way
try {
	const isServiceStarted = await RNSerialport.isServiceStarted();

	if (isServiceStarted) console.log('Is ServiceStarted?', 'yes');
	else console.log('Is ServiceStarted?', 'no');
} catch (err) {}

//2st way
RNSerialport.isServiceStarted()
	.then((isServiceStarted) => {
		if (isServiceStarted) {
			console.log('Is service started?', 'yes');
		} else {
			console.log('Is service started?', 'no');
		}
	})
	.catch((err) => {
		console.log(err);
	});

writeString

Writes data to serial port

Name TYPE REQUIRED
data string yes for call
RNSerialport.writeString('HELLO');

writeBase64

Writes data to serial port

Name TYPE REQUIRED
data string yes for call
RNSerialport.writeBase64('SEVMTE8=');

writeHexString

Writes data to serial port

Note: Make sure the text has a valid hexadecimal number system! Otherwise this does nothing.

Name TYPE REQUIRED
data string yes for call
RNSerialport.writeHexString('0F'); // 1 byte
RNSerialport.writeHexString('FF0F'); // 2 btye
RNSerialport.writeHexString('48454C4C4F'); // 5 byte

//The following are not recommended.
RNSerialport.writeHexString('F');
RNSerialport.writeHexString('FFF');

setDriver

Changes the driver

Why it is necessary? Using createUsbSerialDevice method specifying the driver

Default: AUTO

Params:

TYPE REQUIRED
string yes for call
import { definitions } from "rn-usb-serial
RNSerialport.setDriver(definitions.DRIVER_TYPES.AUTO)

setInterface

Changes the serial interface

Default: -1

Params:

TYPE REQUIRED
number yes for call
RNSerialport.setInterface(1);

setAutoConnectBaudRate

Changes baud rate to be used on automatic connection

Used before starting the service.

Default: 9600

Params:

TYPE REQUIRED
number yes for call
RNSerialport.setAutoConnectBaudRate(115200);

setAutoConnect

Turns automatic connection on or off

Default: off

Params:

TYPE REQUIRED
boolean yes for call
RNSerialport.setAutoConnect(true);

setDataBit

Changes the data bit

Default: DATA_BITS_8

Params:

TYPE REQUIRED
number yes for call
import { definitions } from "rn-usb-serial
RNSerialport.setDataBit(definitions.DATA_BITS.DATA_BITS_8)

setStopBit

Changes the stop bit

Default: STOP_BITS_1

Params:

TYPE REQUIRED
number yes for call
import { definitions } from 'rn-usb-serial';
RNSerialport.setStopBit(definitions.STOP_BITS.STOP_BITS_1);

setParity

Changes the parity

Default: PARITY_NONE

Params:

TYPE REQUIRED
number yes for call
import { definitions } from 'rn-usb-serial';
RNSerialport.setParity(definitions.PARITIES.PARITY_NONE);

setFlowControl

Changes the flow control mode

Default: FLOW_CONTROL_OFF

Params:

TYPE REQUIRED
number yes for call
import { definitions } from 'rn-usb-serial';
RNSerialport.setFlowControl(definitions.FLOW_CONTROLS.FLOW_CONTROL_OFF);

loadDefaultConnectionSetting

Loads the default settings

Defaults: DATA_BIT: DATA_BITS_8 STOP_BIT: STOP_BITS_1 PARITY: PARITY_NONE FLOW_CONTROL: FLOW_CONTROL_OFF

No Params

RNSerialport.loadDefaultConnectionSetting();