# iccom-utils
**Repository Path**: QQxiaoming/iccom-utils
## Basic Information
- **Project Name**: iccom-utils
- **Description**: 本项目是用于在使用linux-symspi,linux-iccom,libiccom项目搭建spi对称全双工socket通信协议栈上编写的实用工具,包括:iccsh/iccshd、iccom_send、iccom_recv等。
- **Primary Language**: C/C++
- **License**: MPL-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2023-01-07
- **Last Updated**: 2023-03-07
## Categories & Tags
**Categories**: Uncategorized
**Tags**: Linux, utils, linux-spi, iccom, symspi
## README
[](https://github.com/QQxiaoming/iccom-utils/actions/workflows/ci.yml)
[](https://github.com/QQxiaoming/iccom-utils)
# iccom-utils
[English](./README.md) | 简体中文
## 介绍
本项目是用于在使用[linux-symspi](https://github.com/Bosch-SW/linux-symspi),[linux-iccom](https://github.com/Bosch-SW/linux-iccom),[libiccom](https://github.com/Bosch-SW/libiccom)项目搭建spi对称全双工socket通信协议栈上编写的实用工具,包括:
- iccshd/iccsh/icccp
- iccom_send
- iccom_recv
> 1.本项目仓库内driver路径下源文件是在原项目linux-symspi/linux-iccom基础上进行了一定的bugfix和优化改进,代码尊重源License,但仍可以使用原项目的版本配合iccom-util实用工具使用.
2.本项目仓库内lib路径下源文件是在原项目libiccom基础上进行了一定的bugfix和优化改进,代码尊重源License,但仍可以使用原项目的版本配合iccom-util实用工具使用.
### iccshd/iccsh/icccp
iccsh是基于iccom传输协议的终端转发工具,host主机运行iccshd,客户端主机运行iccsh即可通过基于spi的物理层进行终端操作(设计思路类似sshd/ssh模式,但目前实现的iccsh不包含加密)。icccp用于文件拷贝(设计思路类似scp)。
### iccom_send
iccom_send是一个iccom传输协议下数据发送的实用工具(设计思路类似can-utils系列),使用方式如下:
```shell
iccom_send - send iccom-frames via sockets.
Usage: iccom_send .
:
#{data}: for iccom data frames
:
2 byte hex chars
{data}:
ASCII hex-values
Examples:
iccom_send 15A1#1122334455667788
```
### iccom_recv
iccom_recv是一个iccom传输协议下数据接收的实用工具(设计思路类似can-utils系列),使用方式如下:
```shell
iccom_recv - recv iccom-frames via sockets.
Usage: iccom_recv .
:
2 byte hex chars
Examples:
iccom_recv 15A1
```
## 待办
- [ ] iccsh 支持加密
- [ ] iccshd 支持自定义端口号
- [ ] iccshd 支持多终端连接
- [x] icccp 支持递归
- [x] icccp 改进目标路径是目录的方式