<!DOCTYPE html>
<html lang="en-us">

  <head>
  <meta charset="utf-8">
  <meta name="robots" content="all,follow">
  <meta name="googlebot" content="index,follow,snippet,archive">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  
  <title>How to get in touch with the Hono Community :: Eclipse Hono&trade;</title>
  <meta name="author" content="The Eclipse Hono Project" />
  
  
  
  
  
  <meta name="description" content="Eclipse Hono provides means for connecting millions of IoT devices using arbitrary protocols and interacting with them via uniform APIs.">

  <meta name="generator" content="Hugo 0.81.0" />

  
  <link href='//fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,500,700,800' rel='stylesheet' type='text/css'>

  
  <link rel="stylesheet" href="//use.fontawesome.com/releases/v5.11.2/css/all.css">
  <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

  
  <link href="/hono/css/animate.css" rel="stylesheet">

  
  
    <link href="/hono/css/style.hono.css" rel="stylesheet" id="theme-stylesheet">
  

  
  <link href="/hono/css/custom.css" rel="stylesheet">

  
  
    <!--[if lt IE 9]>
        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
    <![endif]-->
  

  
  <link rel="apple-touch-icon" sizes="180x180" href="/hono/favicon/apple-touch-icon.png">
  <link rel="icon" type="image/png" sizes="48x48" href="/hono/favicon/favicon-48x48.png">
  <link rel="icon" type="image/png" sizes="32x32" href="/hono/favicon/favicon-32x32.png">
  <link rel="icon" type="image/png" sizes="16x16" href="/hono/favicon/favicon-16x16.png">
  <link rel="manifest" href="/hono/favicon/site.webmanifest">
  <link rel="mask-icon" href="/hono/favicon/safari-pinned-tab.svg" color="#5bbad5">
  <link rel="shortcut icon" href="/hono/favicon/favicon.ico">
  <meta name="msapplication-TileColor" content="#da532c">
  <meta name="msapplication-config" content="/hono/favicon/browserconfig.xml">
  <meta name="theme-color" content="#ffffff">

  
  <link href="/hono/css/owl.carousel.css" rel="stylesheet">
  <link href="/hono/css/owl.theme.css" rel="stylesheet">

  
  <link rel="alternate" href="/hono/index.xml" type="application/rss+xml" title="Eclipse Hono&amp;trade;">

  
  
  
  
  
  
  
  <meta property="og:locale" content="en_us">
  <meta property="og:site_name" content="Eclipse Hono&amp;trade;">
  <meta property="og:title" content="How to get in touch with the Hono Community">
  <meta property="og:type" content="website">
  <meta property="og:url" content="https://www.eclipse.org/hono/community/get-in-touch/" />
  <meta property="og:description" content="Eclipse Hono provides means for connecting millions of IoT devices using arbitrary protocols and interacting with them via uniform APIs.">
  <meta property="og:image" content="https://www.eclipse.org/hono/img/sharing-default.png">
  <meta property="og:image:type" content="image/png">
  
  
  
    <meta property="og:image:width" content="1655">
    <meta property="og:image:height" content="827">
  
  
  
  

  
  <meta name="twitter:card" content="summary">
  <meta name="twitter:site" content="@EclipseHono">
  <meta name="twitter:title" content="How to get in touch with the Hono Community">
  
  <meta name="twitter:image" content="https://www.eclipse.org/hono/img/sharing-default.png">
  
  <meta name="twitter:description" content="Eclipse Hono provides means for connecting millions of IoT devices using arbitrary protocols and interacting with them via uniform APIs.">
  

</head>


  <body>

    <div id="all">

        <header>

          <div class="navbar-affixed-top" data-spy="affix" data-offset-top="200">

    <div class="navbar navbar-default yamm" role="navigation" id="navbar">

        <div class="container">
            <div class="navbar-header">
                <a class="navbar-brand home" href="/hono/">
                    <img src="https://www.eclipse.org/hono/img/HONO-Logo_Bild-Wort_quer-s-310x120px.svg" alt="How to get in touch with the Hono Community logo" class="logo">
                    <span class="sr-only">How to get in touch with the Hono Community - go to homepage</span>
                </a>
                <div class="navbar-buttons">
                    <button type="button" class="navbar-toggle btn-template-main" data-toggle="collapse" data-target="#navigation">
                      <span class="sr-only">Toggle Navigation</span>
                        <i class="fas fa-align-justify"></i>
                    </button>
                </div>
            </div>
            

            <div class="navbar-collapse collapse" id="navigation">
                <ul class="nav navbar-nav navbar-right">
                  
                  
                  
                  <li class="dropdown">
                    
                    <a href="/hono/getting-started/">Getting started</a>
                    
                  </li>
                  
                  
                  <li class="dropdown">
                    
                    <a href="/hono/docs/">Documentation</a>
                    
                  </li>
                  
                  
                  <li class="dropdown">
                    
                    <a href="/hono/downloads/">Download</a>
                    
                  </li>
                  
                  
                  <li class="dropdown">
                    
                    <a href="/hono/sandbox/">Sandbox</a>
                    
                  </li>
                  
                  
                  <li class="dropdown">
                    
                      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
                    <ul class="dropdown-menu">
                      
                        <li><a href="/hono/community/contributing/">Contributing</a></li>
                      
                        <li><a href="/hono/community/presentations/">Resources</a></li>
                      
                        <li><a href="/hono/community/get-in-touch/">Get in Touch</a></li>
                      
                        <li><a href="/hono/community/road-map/">Road Map</a></li>
                      
                        <li><a href="/hono/community/thankyou/">Thank you</a></li>
                      
                    </ul>
                    
                  </li>
                  
                </ul>
            </div>
            

            <div class="collapse clearfix" id="search">

                <form class="navbar-form" role="search">
                    <div class="input-group">
                        <input type="text" class="form-control" placeholder="Search">
                        <span class="input-group-btn">

                    <button type="submit" class="btn btn-template-main"><i class="fas fa-search"></i></button>

                </span>
                    </div>
                </form>

            </div>
            

        </div>
    </div>
    

</div>




        </header>

        <div id="heading-breadcrumbs">
    <div class="container">
        <div class="row">
            <div class="col-md-12">
                <h1>How to get in touch with the Hono Community</h1>
            </div>
        </div>
    </div>
</div>


        <div id="content">
            

            <div class="container">

                <div class="row">

                    <div class="col-md-12">

                        <div>
                          <p>Wanna tell us what you think about Eclipse Hono™? What we can improve? Which feature is missing? Or just discuss architectural issues?</p>
<h2 id="ask-a-question">Ask a Question</h2>
<p>We would be delighted to answer your questions regarding the usage of Hono on <a href="https://stackoverflow.com/questions/tagged/eclipse-hono">StackOverflow</a>. Make sure to add the <em>eclipse-hono</em> tag to your question so that we can easily find (and answer) it.</p>
<h2 id="report-an-issue">Report an Issue</h2>
<p>The easiest way to tell us about a problem you experience with Hono is by <a href="https://github.com/eclipse/hono/issues">opening an issue on our GitHub page</a>.</p>
<p>Please make sure to search the existing issues for similar symptoms before you open a new issue.</p>
<h2 id="chat">Chat</h2>
<p>The most direct way of interacting with the Hono developers is by means of <a href="https://gitter.im/eclipse/hono">joining our room on Gitter</a>.</p>
<p>Keep in mind, though, that our Gitter room is mainly used by committers and contributors for discussing issues related to development of new features and organizational stuff. The preferred way of posting questions regarding usage of Hono is via <a href="https://stackoverflow.com/questions/tagged/eclipse-hono">StackOverflow</a>.</p>
<h2 id="mailing-list">Mailing List</h2>
<p>An excellent way to get the latest news and announcements around Hono is to <a href="https://dev.eclipse.org/mailman/listinfo/hono-dev">join the mailing list</a>. This is the place where we announce new releases and discuss architectural issues of greater impact.</p>
<h2 id="project-call">Project Call</h2>
<p>Starting 2020-12-03, there is a bi-weekly community call at 17:00 CET. The call is open to everyone interested in the development of Hono.</p>
<p>You can join by using the following link: <a href="https://eclipse.zoom.us/j/93080939143?pwd=V3lpdkMxSTh2bXBsMEJGdmxvdDFOUT09">https://eclipse.zoom.us/j/93080939143?pwd=V3lpdkMxSTh2bXBsMEJGdmxvdDFOUT09</a></p>
<p>You can also import the calendar file <a href="../project-call.ics" title="Project Call">project-call.ics</a> which contains more information about joining by computer or telephone.</p>
                        </div>

                    </div>

                </div>
                

            </div>
            

            
        </div>
        

        <footer id="footer">
    <div class="container">

        <div class="col-md-4 col-sm-6">
            <h4>More</h4>

            <ul>
                <li><a href="https://github.com/eclipse/hono" title="View Source Code on GitHub"><i class='fab fa-github'></i> GitHub Repository</a></li>
                <li><a href="https://twitter.com/EclipseHono" title="Follow us on Twitter"><i class='fab fa-twitter'></i> Twitter</a></li>
                <li><a href="https://gitter.im/eclipse/hono" title="Chat with us on Gitter"><i class='fab fa-gitter'></i> Chat with us</a></li>
                <li><a href='/hono/community/thankyou/'>Thank you</a></li>
            </ul>

            <hr class="hidden-md hidden-lg hidden-sm">

        </div>
        

        <div class="col-md-4 col-sm-6">

            <h4>Eclipse Legal</h4>

            <ul>
                <li><a href="http://www.eclipse.org/legal/privacy.php" target="_blank">Privacy Policy</a></li>
                <li><a href="http://www.eclipse.org/legal/termsofuse.php" target="_blank">Terms of Use</a></li>
                <li><a href="http://www.eclipse.org/legal/copyright.php" target="_blank">Copyright Agent</a></li>
                <li><a href="http://www.eclipse.org/legal/" target="_blank">Legal</a></li>
                <li><a href="https://www.eclipse.org/legal/epl-2.0/" target="_blank">License</a></li>
                <li><a href="https://eclipse.org/security/" target="_blank">Report a Vulnerability</a></li>
            </ul>

            <hr class="hidden-md hidden-lg">

        </div>
        

        <div class="col-md-4 col-sm-6">

            <div class="eclipse-logos">
                <div class="pull-left">
                    <a href="https://www.eclipse.org" target="_blank">
                        <img src="https://www.eclipse.org/hono/img/eclipse_foundation_logo_wo.svg" id="logo-eclipse-foundation"/>
                    </a>
                </div>
                <div class="pull-right">
                    <a href="https://iot.eclipse.org" target="_blank">
                        <img src="https://www.eclipse.org/hono/img/iot-logo.png"/>
                    </a>
                </div>
            </div>

        </div>
        

    </div>
    
</footer>







<div id="copyright">
    <div class="container">
        <div class="col-md-12">
            
            <p class="pull-left">&copy; 2019-2021 The Eclipse Hono Project</p>
            
            <p class="pull-right">
              Template by <a href="https://bootstrapious.com/p/universal-business-e-commerce-template">Bootstrapious</a>.
              

              Ported to Hugo by <a href="https://github.com/devcows/hugo-universal-theme">DevCows</a>.
            </p>
        </div>
    </div>
</div>





    </div>
    

    
<script src="//code.jquery.com/jquery-3.1.1.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

<script src="//cdnjs.cloudflare.com/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/waypoints/4.0.1/jquery.waypoints.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/Counter-Up/1.0/jquery.counterup.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery-parallax/1.1.3/jquery-parallax.js"></script>

<script src="/hono/js/front.js"></script>


<script src="/hono/js/owl.carousel.min.js"></script>



<script>
    (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
            new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
        j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
        'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
    })(window,document,'script','dataLayer','GTM-5WLCZXC');
</script>


<script src="//www.eclipse.org/eclipse.org-common/themes/solstice/public/javascript/vendor/cookieconsent/default.min.js"></script>

<script src="//iot.eclipse.org/assets/js/eclipsefdn.adopters.js"></script>
<script>
    eclipseFdnAdopters.getList({
        project_id: "iot.hono",
        selector: ".eclipsefdn-adopters",
        logo_white: true
    });
</script>


  </body>
</html>
