# Eclipse Paho MQTT C/C++ client for Embedded platforms
This repository contains the source code for the [Eclipse Paho](http://eclipse.org/paho) MQTT C/C++ client library for Embedded platorms.
It is dual licensed under the EPL and EDL (see about.html and notice.html for more details). You can choose which of these licenses you want to use the code under. The EDL allows you to embed the code into your application, and distribute your application in binary or source form without contributing any of your code, or any changes you make back to Paho. See the EDL for the exact conditions.
There are three sub-projects:
1. MQTTPacket - simple de/serialization of MQTT packets, plus helper functions
2. MQTTClient - high(er) level C++ client, plus
3. MQTTClient-C - high(er) level C client (pretty much a clone of the C++ client)
The *MQTTPacket* directory contains the lowest level C library with the smallest requirements. This supplies simple serialization
and deserialization routines. They serve as a base for the higher level libraries, but can also be used on their own
It is mainly up to you to write and read to and from the network.
The *MQTTClient* directory contains the next level C++ library. This networking code is contained in separate classes so that you can plugin the
network of your choice. Currently there are implementations for Linux, Arduino and mbed. ARM mbed was the first platform for which this was written,
where the conventional language choice is C++, which explains the language choice. I have written a starter [Porting Guide](http://modelbasedtesting.co.uk/2014/08/25/porting-a-paho-embedded-c-client/).
The *MQTTClient-C* directory contains a C equivalent of MQTTClient, for those platforms where C++ is not supported or the convention. As far
as possible it is a direct translation from *MQTTClient*.
## Build requirements / compilation
CMake builds for the various packages have been introduced, along with Travis-CI configuration for automated build & testing. The basic
method of building on Linux is:
```
mkdir build.paho
cd build.paho
cmake ..
make
```
The travis-build.sh file has the full build and test sequence for Linux.
## Usage and API
See the samples directories for examples of intended use. Doxygen config files for each package are available in the doc directory.
## Runtime tracing
The *MQTTClient* API has debug tracing for MQTT packets sent and received - turn this on by setting the MQTT_DEBUG preprocessor definition.
## Reporting bugs
This project uses GitHub Issues here: [github.com/eclipse/paho.mqtt.embedded-c/issues](https://github.com/eclipse/paho.mqtt.embedded-c/issues) to track ongoing development and issues.
## More information
Discussion of the Paho clients takes place on the [Eclipse Mattermost Paho channel](https://mattermost.eclipse.org/eclipse/channels/paho) and the [Eclipse paho-dev mailing list](https://dev.eclipse.org/mailman/listinfo/paho-dev).
General questions about the MQTT protocol are discussed in the [MQTT Google Group](https://groups.google.com/forum/?hl=en-US&fromgroups#!forum/mqtt).
More information is available via the [MQTT community](http://mqtt.org).
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
MQTT V3.1.1协议 C Server,以及客户端源码 (102个子文件)
build 807B
build 463B
build_test 293B
test1.c 32KB
MQTTClient.c 18KB
test1.c 18KB
MQTTPacket.c 10KB
MQTTFormat.c 8KB
pub0sub1_nb.c 8KB
ping_nb.c 7KB
MQTTConnectClient.c 6KB
MQTTFreeRTOS.c 6KB
transport.c 5KB
MQTTSerializePublish.c 5KB
stdoutsub.c 5KB
MQTTConnectServer.c 5KB
MQTTCC3200.c 5KB
transport.c 4KB
pub0sub1_nb.c 4KB
MQTTSubscribeClient.c 4KB
pub0sub1.c 4KB
MQTTLinux.c 4KB
ping_nb.c 4KB
MQTTDeserializePublish.c 3KB
MQTTSubscribeServer.c 3KB
MQTTUnsubscribeClient.c 3KB
ping.c 3KB
MQTTUnsubscribeServer.c 3KB
MQTTEcho.c 3KB
qos0pub.c 2KB
null.c 48B
test1.cpp 29KB
main.cpp 7KB
stdoutsub.cpp 5KB
linux.cpp 5KB
hello.cpp 3KB
.cproject 18KB
MQTTDeserializeConnect.d 136B
edl-v10 2KB
epl-v10 11KB
.gitignore 92B
MQTTClient.h 31KB
MQTTClient.h 7KB
FP.h 5KB
MQTTConnect.h 4KB
MQTTPacket.h 4KB
transport.h 3KB
StackTrace.h 3KB
MQTTLinux.h 2KB
MQTTFormat.h 2KB
MQTTFreeRTOS.h 2KB
IPStack.h 2KB
MQTTPublish.h 2KB
MQTTCC3200.h 2KB
WifiIPStack.h 2KB
MQTTLogging.h 2KB
MQTTSubscribe.h 2KB
MQTTSocket.h 2KB
MQTTUnsubscribe.h 1KB
Countdown.h 1KB
MQTTEthernet.h 1KB
transport.h 1KB
notice.html 9KB
about.html 2KB
DoxyfileMQTTClient-C.in 104KB
DoxyfileMQTTClient.in 104KB
DoxyfileMQTTPacket.in 104KB
Hello.ino 4KB
Makefile 6KB
makefile 1KB
CONTRIBUTING.md 4KB
README.md 3KB
subdir.mk 1KB
sources.mk 422B
objects.mk 231B
pahologo.png 12KB
org.eclipse.cdt.core.prefs 13KB
org.eclipse.cdt.ui.prefs 119B
.project 762B
library.properties 364B
MQTTV3112.py 30KB
mqttsas2.py 4KB
build.sh 897B
build.sh 713B
travis-install.sh 398B
travis-build.sh 234B
travis-env-vars 91B
CMakeLists.txt 2KB
CMakeLists.txt 1KB
CMakeLists.txt 1KB
CMakeLists.txt 1KB
CMakeLists.txt 1017B
CMakeLists.txt 997B
CMakeLists.txt 956B
CMakeLists.txt 778B
CMakeLists.txt 777B
CMakeLists.txt 777B
CMakeLists.txt 700B
CMakeLists.txt 700B
CMakeLists.txt 671B
共 102 条
- 1
- 2
资源评论
- weixin_431312842021-11-19没看到服务端的,只是客户端
- mansea_nee2020-10-15唉,没仔细看,是c代码,不是C#代码
- liujiqing2222222019-01-09好用吗,我还没用
- hejie12132019-04-12可以用,谢谢楼主分享。
- 球爸2018-09-29不错,可以用,很好
靓仔的烦恼
- 粉丝: 1
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功