问题标签 [node-serialport]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
416 浏览

node.js - Error 'Target out of bounds' when connecting through XBee to a server with Node.js/serialport

I have an XBee module that accepts data on ttyAMA0 of a Debian server that is running Node.js with 'serialport' installed.

I keep getting an out-of-bounds error from the following code which take an XBee packet up to the length it should be. It then gets sent to another function for checksum validation. But the problem is the darn buffer.

I added the receivingPacket as part of testing, it should not be necessary. The problem seems to be the line with copy, buf[i].copy(pBuf, pos);. I don't know if I need to clear the buffer somehow.

The error is

[RangeError targetStart out of bounds]

which would be pos in my case.

0 投票
2 回答
2341 浏览

node.js - 节点串行端口未在 raspberryPI 中显示串行端口数据

我正在尝试读取从 Arduino 到 Raspberry PI 的串行端口数据,但它没有显示任何内容。我已验证数据已到达串行端口。相同的脚本在 Windows 7 中运行良好。我也尝试了两种不同的读取串行数据的方法,但它们都不起作用。我使用的 node.js 版本是 v0.9.9。

任何帮助将不胜感激。

0 投票
1 回答
1851 浏览

node.js - 使用 node-serialport 的 NodeJS 有时会变得无响应

我正在使用 NodeJS 将条形码扫描仪连接到 Web 前端。条码扫描器的串口通过 USB 转串口转换器运行到 PC (Windows7 pro x64)。我正在使用node-serialport。此设置在博物馆的安装中运行。

计算机每天都会重新启动,有时条码扫描器会整天正常工作,但大约 25% 的时间会在一天中停止工作。随着停止工作,我的意思是 NodeJS 不再中继传入的串行流。条形码扫描仪本身似乎运行良好,它仍然会发出愉快的哔哔声,重新启动后它会正常运行......直到 NodeJS 再次停止工作。

当扫描仪停止工作时,NodeJS 窗口不会显示任何错误代码,但到那时它完全没有响应。到那时,关闭 NodeJS 实例似乎是不可能的。我试过 Ctrl-C,通过任务管理器结束进程并使用 taskkill 从 CMD 窗口中杀死 NodeJS 的 PID。它们都具有零效应。使用 Taskkill 时,CMD 窗口会很高兴地说进程已被杀死,但 NodeJS 窗口不会关闭,并且仍然存在于任务管理器中。只有强制重启才能“解决”这个问题。

我觉得我没有太多的信息可以继续。我很想知道接下来要尝试什么的一些提示。

0 投票
1 回答
1228 浏览

node.js - 如何在restify中使用异步事件

我有一个简单的restify webservice,它调用一个向串口写入命令的函数

串口在事件中返回请求

将结果返回给客户的正确方法是什么?

0 投票
1 回答
4306 浏览

node.js - 使用 node-serial 读取 SerialPort

我正在尝试在 Ubuntu 中使用 Mag Stripe 阅读器读取 RS232 串行端口。我有一个 USB 工作正常(ID-Tech)。但我正试图让 Neuron 阅读器也能正常工作。我一般不熟悉串行端口通信,但是使用节点串行我编写了一个简单的应用程序,它可以等待设备:

然后从读卡器吐出输出。与 USB ID-Tech 阅读器配合使用非常好,但是当我插入串行端口设备时,我什么也得不到。我也有点不确定如何判断它正在使用哪个串行端口。有没有更好的工具来“探测” Ubuntu 中的串行端口并找出 Mag Reader 正在使用哪个串行端口?

更新

围绕它进行研究似乎使用的工具是:

我遇到的问题是设备连接到哪个端口,在 ttyS0,1,2,3 上执行上述操作无济于事,应该从设备中转储一些输出。但是我不确定这是否需要先运行:

这只是挂在光标上,我想尝试为读卡器输入键盘类型,但同样的问题只是挂起。dmesg 的输出 | grep ttyS 显示端口启用:

0 投票
3 回答
1902 浏览

javascript - Node.js 和串口;回调方法?

我正在尝试列出所有串行端口并选择以 /dev/cu.usbmodem 开头的端口名称。对于上下文;这是一个连接到 RaspberryPi 运行节点的 arduino。Raspberry Pi 习惯于每次重新启动时重命名端口。

到目前为止,我有这个:

由于 SERIALPORT_ID 变量尚未声明,这需要足够长的时间以致下一条语句失败;

什么回调或结构化技术会使第二个语句等待第一个语句在执行之前声明变量?

0 投票
2 回答
9813 浏览

node.js - node.js 串口,试图写,我就是想不通

我对 rs232 的了解几乎没有。我有一个连接到串行端口的 LED 显示屏。我正在使用 node.js v8.22 和 node-serialport v1.1.0。

LED 显示屏的用户指南要求发送 [hex80]xxxxxx[cr],其中每个“x”是单个数字 (0-9)。我也有 9600 的波特率。

我假设我可以写

但老实说,我只是不知道如何将 [hex80]xxxxxx[cr] 转换为 javascript/serialport 需求。我尝试过各种各样的事情。

sp.write([0x80,55,55,55,49,49,48,'\r']); // hex80 + 数字的所有字符代码 sp.write(128+'123456\r') // 128 是 0x80 的十进制

我有一些杂乱无章的东西要展示。完整代码如下。

非常感谢任何想法或帮助。

谢谢。

0 投票
2 回答
2389 浏览

javascript - Node.js + Node-Webkit + 基于 Node-SerialPort 的应用程序 - 这可能吗?

我是 Node.js 的新手,在我开始采用新技术并迁移基于 c# 的应用程序之前,我想确保我的想法可以使用 Node.js 以及是否被推荐。

所以请让我知道你的意见!

我的申请有以下要求:-

  1. TCP 服务器(接收来自智能手机、计算机等 TCP 客户端的数据包)
  2. 串口访问(控制硬件设备)
  3. Web 服务器设施(提供 HTML5 页面或提供 Web 服务接口)
  4. 简单的本机应用程序,例如用于配置的 GUI。
  5. 所有这些都需要很好地打包,以便最终用户轻松安装。

你可能会问我为什么要这样做?我对使用 Node.js 最感兴趣的原因在于其跨平台特性,包括能够安装在廉价的单板/嵌入式计算机上。

这是我的想法:-

Node.js - 提供 TCP 服务器、服务 HTML5 页面并提供 Web 服务接口。

Node-Webkit - 提供简单的原生应用程序配置界面。我也相信它提供了打包我的应用程序以进行简单分发的能力,但我不确定?(如果有另一种打包我的应用程序以进行简单分发的方法,我可以省略 Node-Webkit。尽管它是首选,因为即使必须找到计算机的 IP 地址才能访问 Web 浏览器界面,对于某些人来说也是棘手的我的用户。)

Node-SerialPort - 提供与硬件设备通信的能力。说明将来自三个来源之一。1) TCP 连接 2) 已启动 HTML5 网页 3) 已启动 Web 服务。

0 投票
0 回答
576 浏览

node.js - Windows 上的 USB 设备地址

我正在使用node-serialportUSB 设备,但是在 Windows 上我无法找到如何连接到特定设备。当我使用list功能时,只有一个带有 COM3 地址的项目,但它始终存在,即使没有连接其他设备。如何找出可用于建立通信的 USB 设备地址?

0 投票
2 回答
2966 浏览

linux - node.js 和 serialport 不能列出任何端口

我正在尝试使用 node.js 在 ubuntu 上打开一个串行端口。

我似乎无法打开任何端口,也无法列出任何端口。

这是我的列表代码:

我没有输出,也没有错误。它只返回零端口。我有两个操作系统识别的 com 端口:

如果我尝试显式打开一个 com 端口,我会在使用它时收到“未打开”错误。我认为这是因为节点串行端口没有“看到”我的任何 com 端口:

打开串口的代码在这里供参考:

我需要做些什么才能将 linux com 端口暴露给节点串行端口吗?