Articles of serial port

从NodeJS控制Arduino

我试图从NodeJS控制Arduino。 我已经尝试了Duino ,我知道设备已经准备就绪,debugging器显示这些命令已经发送给Arduino,但没有任何反应。 我也尝试了Johnny-Five ,它显示设备已连接(在COM8上),但是on ready事件从未被触发。 请帮助! 谢谢..

NODE.js和Javascript; 从serialPort获得一个单一的行然后closures

我正在尝试在Raspberry PI上执行以下操作 我将Parallax RFID阅读器连接到Raspberry PI的USB插槽。 我可以连接到阅读器,并阅读经过的标签。 我使用下面的代码来读取RFID标签。 var serialport = require("serialport"); var SerialPort = serialport.SerialPort; var serialPort = new SerialPort("/dev/ttyUSB0", { baudrate: 2400, parser: serialport.parsers.readline("\n") }, false); // this is the openImmediately flag [default is true] serialPort.open(function () { console.log('open'); serialPort.on('data', function(data) { console.log('data received: ' + data); }); }); 该代码的结果是一个实时显示RFID标签内容的控制台。 但是,我希望读者只读取他得到的第一个标签,然后closures连接。 我怎样才能做到这一点? 串行端口现在保持打开状态,并不断向控制台写入数据。 —-编辑—— […]

TCP,UDP和使用单个Node.js服务器的串行通信

我们正在为需要通过串口和UDP进行通信的testing夹具开发控制器。 我的计划是使用Node.js来提供I / O通信集线器,如下图所示。 Node.js I / O集线器需要使用以下方式进行通信: UDP :每50毫秒接收两个UDP数据报,每50毫秒发送两个UDP数据报。 串行端口:将使用串行端口连接来读取和更新testing夹具的值。 TCP:一个基于Web的AngularJS用户界面,通过REST API与Node.js服务器进行通信,以便: 读取并更新通过串口和UDP数据报接收/发送的testing夹具值。 请求testing结果被保存到一个MongoDB实例。 MongoDB:为testinglogging提供持久存储。 问题 我可以使用Express并通过UDP和串口与Node.js进行通信吗? 这是通过串口,UDP和TCP进行通信的合理体系结构,尤其是考虑到每隔50毫秒发送两个UDP数据报的要求? 我接受build筑build议。

TypeError:serialport.parsers.readline不是一个函数

我试图在Raspberry Pi 3中运行这个程序。我已经在我的树莓派上安装了nodejs和ws。 然后我安装串口模块。 我试图创build这个项目: 在这里input链接描述我试图find解决scheme无处不在,但我找不到一个。 如果有人知道如何解决这个问题,请帮助我。 var webSocketUrl = "wss://api.artik.cloud/v1.1/websocket?ack=true"; var device_id = "5bb3ba9304674086bee67fa507a215cf"; //DEVICE ID var device_token = "36b278345b6d4d11abf764ae213c5c70"; //DEVICE TOKEN var WebSocket = require('ws'); var isWebSocketReady = false; var data=""; var ws = null; var serialport = require("serialport"); var SerialPort = serialport.SerialPort; var sp = new SerialPort("/dev/ttyACM0", { //for serial communication with […]

Arduino串行端口提供不良的数据?

我试图从networking(Socket.IO)从我的Arduino接收数据。 所以我会解释下面的代码。 Arduino的: int temperatureC = (voltage – 0.5) * 100; Serial.print(temperatureC – 2); Serial.print(" "); 这将伏特转换成温度。 当我打开串行显示器时,我可以看到输出结果如何。 228 28 28 28 28 29 28 但是我在Node中创build了一个SerialPort,输出结果有点奇怪。 我通过这种方式接收数据: serialPort.on("open", function () { console.log('open'); io.sockets.on('connection', function (socket) { serialPort.on('data', function(data) { console.log('data received: ' + data); socket.emit('temps', { temp: data }); }); }); }); 但是输出结果是: data received: […]

节点WebKit和SerialPort

我正在使用Node WebKit开发一个应用程序,我需要访问我的PC的串行端口(Windows 8)。 对于使用C / C ++插件安装第三方模块,我按照以下链接中的指南: https : //github.com/nwjs/nw.js/wiki/Using-Node-modules#3rd-party-modules-with-cc – 漫画 。 当我用命令“nw-gyp rebuild –target = 0.12.4”重build模块“serialport”(以前用“npm install serialport”命令安装),我得到以下错误: gyp: Undefined variable module_name in binding.gyp gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (C:\Users\LucaG.SEAV\AppData\Roaming \npm\node_modules\nw-gyp\lib\configure.js:353:16) gyp ERR! stack at ChildProcess.emit (events.js:98:17) gyp ERR! […]

如何在开发过程中模拟串口?

我正在为我的Raspberry Pi开发node.js应用程序,它从串口接收数据,但是我不直接开发应用程序,而是使用我的主计算机。 所以我有我的app.js这个代码: var serialport = require("serialport"); var SerialPort = serialport.SerialPort; var sp = new SerialPort("/dev/ttyACM0", { parser: serialport.parsers.readline("\n") }); sp.on("data", function (rawData) { … 这在Rasperry Pi上运行良好,但我希望能够在开发计算机上运行应用程序,而无需评论有关串口的每个代码块。 达到这个目标的最好方法是什么? 有没有办法模拟串口?

使用(DR)STRACE比较Windows程序的执行情况

我在这里直接提出了一个问题,关于这个问题在github上的node-serialport。 简而言之,在库的v4.x中正常工作的东西不再适用于库的v6.x。 我认为它必须与图书馆如何打开COM端口(选项或其他)有关,而且我怀疑它是否会在当前版本的库中人为地限制通过USB传输的功率。 我写了最简单的脚本,我可以重现问题(脚本张贴在问题中)使用: NodeJS和v4.x的库[作品] NodeJS和v6.x库[失败] Python和PySerial相当于[作品] 通过维护者维护者的build议,我研究并find了一个名为drstrace的实用程序,它允许我捕获执行一段时间内执行的每个脚本的日志(这些日志作为附件发布在引用问题)。 现在我被卡住了,因为我不知道如何制作drstrace日志的正面或反面,但是我确信在比较这三个文件时差异可能是明显的。 我只是不知道如何阅读drstrace日志和Windows驱动程序和系统调用突破。 我意识到在这里发表这个问题是一个绝望的行为,但我认为这是值得一试。 希望很清楚,我自己并不缺乏这方面的努力,在这一点上我只是头脑发展,并且可以帮助我们取得进一步的进展。 任何指导将不胜感激。 最令人敬畏的是那些熟悉这种诊断水平的人,看一看茶叶。 回馈给这样一个重要的开放源代码库是非常好的。 更新2017年11月10日 我接触FTDI支持问: 我在我的许多产品中使用FT231X。 我需要一些帮助,了解Windows FTDI驱动程序如何pipe理电源。 更重要的是,我希望你能帮助我理解如何让驱动程序允许USB允许的全部500mA通过Windows计算机传递到我的产品。 答复是: 只需使用我们的FT_Prog实用程序将最大VBUS电stream设置为500 mA即可: 在FT231X枚举后,这个驱动电stream变为可用。 我还没有尝试过这个build议,但我想分享给任何读这个的人。 事实上,node-serialport 6.0.4行为与node-serialport 4.0.7行为和pyserial行为都有所不同。