-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
The following code only prints 1 to the console a bunch of times.
import * as rtljs from "rtljs";
import * as fs from "fs";
const DEFAULT_RATE = 3_000_000;
const DEFAULT_FREQ = 1090 * rtljs.mhz; // 1090 MHz
const ASYNC_BUF_NUMBER = 12;
const DATA_LEN = 16 * 16384; // 256k
const device = rtljs.open(0);
device.setTunerGainMode(1);
device.setTunerGain(50);
device.setAGCMode(0);
device.setCenterFreq(DEFAULT_FREQ);
device.setSampleRate(DEFAULT_RATE);
device.resetBuffer();
fs.writeFileSync("data.bin", Buffer.alloc(0));
device.readAsync((data) => {
console.log(data.length);
fs.appendFileSync("data.bin", Buffer.from(data));
}, ASYNC_BUF_NUMBER, DATA_LEN);However, the following code prints 262144 to the console a bunch of times.
import * as rtljs from "rtljs";
import * as fs from "fs";
const DEFAULT_RATE = 3_000_000;
const DEFAULT_FREQ = 1090 * rtljs.mhz; // 1090 MHz
const ASYNC_BUF_NUMBER = 12;
const DATA_LEN = 16 * 16384; // 256k
const device = rtljs.open(0);
device.setTunerGainMode(1);
device.setTunerGain(50);
device.setAGCMode(0);
device.setCenterFreq(DEFAULT_FREQ);
device.setSampleRate(DEFAULT_RATE);
device.resetBuffer();
fs.writeFileSync("data.bin", Buffer.alloc(0));
while (true) {
const data = device.readSync(DATA_LEN);
fs.appendFileSync("data.bin", Buffer.from(data));
console.log(data.length);
}Why would readSync give me the data length I want, whereas readAsync does not?
Metadata
Metadata
Assignees
Labels
No labels