The wumei-smart smart life IoT platform is a simple and easy-to-use life IoT platform. It is simple and easy to use and can be used for enterprises to build IoT platforms, and for individuals to learn and build their own smart home platforms. The project includes server, web, mobile, and device SDKs, and supports smart speakers.
The device access uses the EMQX message server, encryption and authentication; the back end uses Spring boot; the front end uses Vue; the mobile terminal uses Uniapp; the database uses Mysql, TDengine and Redis; the device side supports ESP32, ESP8266, Raspberry Pi, etc.; the system architecture diagram is as follows
Function
Permission management: user management, department management, position management, menu management, role management, dictionary and parameter management, etc. System monitoring: operation logs, login logs, system logs, online users, service monitoring, connection pool monitoring, cache monitoring and other product management : Product, product model, product classification, product firmware, device authorization code and other device management: control, grouping, timing, log, statistics, positioning, sharing, configuration, disabling, OTA upgrade, automatic registration, shadow mode, real-time monitoring, Encryption authentication and other EMQ management: Mqtt client, listener, message topic, message subscription, plug-in management, rule engine, resource hardware SDK: supports WIFI and MQTT connection, object model response, real-time monitoring, regular reporting of monitoring data, AES encryption, NTP time and other object model management: attributes (device status and monitoring data), functions (performing specific tasks), events (device actively reports to the cloud) other functions: multi-tenancy, statistics, news information, notification announcements, support TDengine time series database plan Develop and improve functions: device alarms, scene linkage, cloud-cloud connection with smart speakers, device network configuration, third-party login, SMS login, APP interface customization, video stream processing, etc.
technology stack
Server-side related technologies: Spring boot, MyBatis, Spring Security, Jwt, Mysql, Redis, TDengine, EMQX, Mqtt, etc. Development tools: IDEA Web-side related technologies: ES6, Vue, Vuex, Vue-router, Vue-cli, Axios, Element -ui and other development tools: Visual Studio Code mobile terminal (Android / Ios / WeChat applet / H5) Related technologies: uniapp, uView, uChart Development tools: HBuilder hardware terminal related technologies: ESP-IDF, Arduino, FreeRTOS and other development tools: Visual Studio Code and Arduino
Hardware access
1. Device authentication encryption authentication (recommended) simple authentication other authentication methods supported by EMQX 2. Device interaction publication model, device information, clock synchronization related Mqtt topic subscription model, device upgrade, clock synchronization related Mqtt topic project provides a sample SDK , using ESP8266 chip, developed based on Arduino. (Device burning uses a serial port module, such as Ch340, which comes with most development boards) The wiring diagram is as follows