Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. General Discussion
  3. Concept of a flexible but simple smart network

Concept of a flexible but simple smart network

Scheduled Pinned Locked Moved General Discussion
25 Posts 6 Posters 4.3k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • axillentA Offline
    axillentA Offline
    axillent
    Mod
    wrote on last edited by axillent
    #21

    made a few steps forward

    launched ESP8266 node & bridge and STM32 bridge and TCP/IP router based on linux (orangepi)
    bellow is my working example
    list of supported platforms:

    • STM8S/IAR
    • STM32F0/Keil - draft
    • ATMEL/Atmel studio - draft
    • Arduino ESP8266
    • Arduino STM32
    • Linux/g++

    i;m working on 2 libs. first is to handle platform dependant things. second is platform independant smart devices network
    regardless platform and regardless communication hardware the framework allows to transfer messages using RX/TX notation with 16 bit global addressing.
    Addressing is organized as 4096 segments where 4094 are 15 node segments each and 2 segments are for broadcadsting

    framework allows to connect potentially absolutelly different communication hardware
    currently i'm running:

    • simple one wire (1 wire signal + 2 wire power) network
    • wifi based nodes
    • twisted pair connected ethernet devices

    bridge between different types of network is organized on TCP/IP application server running currently on linux
    etc. potentially allows to connect network segments regardless physicall location, only internet connection is required

    why i'm doing this? mostly for fan but also to implement 2 principles:

    • application layer to be independant from hardware and transport. message format is universal and is the same regardless platform and communication hardware. Addressing is also universal. Application should not take care about intermediate specific, this is handled by other components
    • avoid a central unit. each device can communicate with each device. the only central component is application server. but is is very simple, robust and reliable. failover is supported

    My example:
    0_1542366195599_swi_network_example1.png

    sense and drive

    1 Reply Last reply
    0
    • axillentA Offline
      axillentA Offline
      axillent
      Mod
      wrote on last edited by
      #22

      for esp8266 i made an universal bridge application
      it can be used for both:

      • single node, esp8266 is running a final application. on the photo above my thermostats to measure room temperature, report it and to send ON/OFF commands to heaters

      • bridge. can be used to connect other type networks wirelessly to application server. UART is used for this + json translation. currently this is implemented to connect heating controllers located on each floor

      0_1542367097091_swi.png

      main and failover servers can be configured
      also each node is configured to handle from one to a few network segments. this allows simple routing from application server back to node
      esp8266 is using ArduinoOTA and zero hardcording.
      after fresh programming esp creates AP and smartphone can be used to preconfigure a node
      any updates are keeping configuration except major updates there stored structure can be affected

      application server is also support MQTT translation
      etc. it looks like a routing between my network and MQTT server
      RX/TX adresing are mapped to MQTT topic while message is translated into JSON:
      0_1542367488414_b02f627d-a80b-4837-9c39-335bcb337667-изображение.png

      sense and drive

      1 Reply Last reply
      0
      • axillentA Offline
        axillentA Offline
        axillent
        Mod
        wrote on last edited by axillent
        #23

        also from last
        byteorder handling is build in
        library allows to choose any order
        I select bigendian because this is natural to my major MCU - STM8
        on little endian platforms (like STM32, ESP8266 and ARM64) data is automatically translated

        sense and drive

        1 Reply Last reply
        1
        • axillentA Offline
          axillentA Offline
          axillent
          Mod
          wrote on last edited by
          #24

          just published my libraries
          anyonw is welsome on review and comments https://github.com/axillent :

          • list item stavrp C++ multiplafrom suport library, platforms are at different level of support

          • list item smartletsp C++ smart devices network

          • list item swilib and integration of above two libraries with arduino framework

          sense and drive

          1 Reply Last reply
          2
          • axillentA Offline
            axillentA Offline
            axillent
            Mod
            wrote on last edited by
            #25

            Linux Router https://github.com/axillent/swi_appserver

            sense and drive

            1 Reply Last reply
            0
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            15

            Online

            11.7k

            Users

            11.2k

            Topics

            113.1k

            Posts


            Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
            • Login

            • Don't have an account? Register

            • Login or register to search.
            • First post
              Last post
            0
            • MySensors
            • OpenHardware.io
            • Categories
            • Recent
            • Tags
            • Popular