A serial port debugger tool, with lua script.
this tool is only Chinese and English now, you can help me to translate, thanks!
Get it from Microsoft store:
Portable exe version: GitHub
Appveyor snapshot version: Appveyor Artifacts
- Basic functions of serial port debugger tools.
- The log is clear with two colors, display both HEX values and strings at same time.
- Auto save serial and lua script logs, with time stamp.
- Auto reconnect serial port after disconnected.
- Data you want to send can be processed with your own Lua scripts.
- Quick send bar on the right.
- Lua scripts can be run independently with timer and co-process task features.(Based on LUAT TASK)
- TCP, UDP, SSL test server and client. Also support IPV6.
- mqtt client test
- Encoding converter
- Garbled code fix
- monitor serial data which send or received by other software
- end with "\r\n"
return uartData.."\r\n"
- send HEX values
return uartData:fromHex()
this script can change 30313233
to 0123
.
- another script example
json = require("JSON")
t = uartData:split(",")
return json:encode({
key1 = t[1],
key2 = t[2],
key3 = t[3],
})
this script can change a,b,c
to {"key1":"a","key2":"b","key3":"c"}
.
these scripts also work with Quick send bar
you can run your own Lua script on the right, such as llcom's example:
--register serial port receiver function
uartReceive = function (data)
log.info("uartReceive",data)
sys.publish("UART",data)--publish message
end
--create a task, wait for message
sys.taskInit(function()
while true do
local _,udata = sys.waitUntil("UART")--wait for message
log.info("task waitUntil",udata)
local sendResult = apiSendUartData("ok!")--send uart data
log.info("uart send",sendResult)
end
end)
--reate a task, sleep 1000ms and loop
sys.taskInit(function()
while true do
sys.wait(1000)--wait 1000ms
log.info("task wait",os.time())
end
end)
--1000ms loop timer
sys.timerLoopStart(log.info,1000,"timer test")
you alse can use xlua
to use C# codes
request = CS.System.Net.WebRequest.Create("http://example.com")
request.ContentType = "text/html;charset=UTF-8";
request.Timeout = 5000;
request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 Vivaldi/2.2.1388.37";
response = request:GetResponse():GetResponseStream()
myStreamReader = CS.System.IO.StreamReader(response, CS.System.Text.Encoding.UTF8);
print(myStreamReader:ReadToEnd())--get body
myStreamReader:Close()
response:Close()
you can make your debug automatic
you can click here
-
bug: SerialPort The Requested Resource is in Use(.net's bug)(fixed #2f26e68)