-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbenefits.html
405 lines (329 loc) · 25 KB
/
benefits.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
<!doctype html>
<html lang="en">
<head>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-159666078-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-159666078-1');
</script>
<!-- Yandex.Metrika counter -->
<script type="text/javascript" >
(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
(window, document, "script", "https://mc.yandex.com/metrika/tag.js", "ym");
ym(59071672, "init", {
clickmap:true,
trackLinks:true,
accurateTrackBounce:true,
webvisor:true
});
</script>
<noscript><div><img src="https://mc.yandex.com/watch/59071672" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
<!-- /Yandex.Metrika counter -->
<title>RemoteMCU - Benefits</title>
<meta name="description" content="The high level benefits of using a remote contol in firmware/embedded/IoT development projects using an MCU or SoC" />
<meta name="robots" content="max-snippet:-1, max-image-preview:large, max-video-preview:-1" />
<link rel="canonical" href="benefits.html" />
<script type="application/ld+json">{"@context" : "https://schema.org","@type" : "Organization","logo": "https:\/\/remotemcu.com\/images\/logo\/logo_preview.png","name" : "RemoteMCU","url" : "https:\/\/remotemcu.com\/news","sameAs" : ["https:\/\/www.facebook.com\/remotemcu\/", "https:\/\/twitter.com\/@RemoteMcu", "https:\/\/www.youtube.com\/channel\/UCyIDHcMnHFFRS-SznKUZ9ug", "https:\/\/www.linkedin.com\/company\/remotemcu"]}</script>
<meta property="og:url" content="https://remotemcu.com/benefits" />
<meta property="og:site_name" content="RemoteMCU" />
<meta property="og:locale" content="en_US" />
<meta property="og:type" content="article" />
<meta property="article:author" content="https://www.facebook.com/remotemcu/" />
<meta property="article:publisher" content="https://www.facebook.com/remotemcu/" />
<meta property="article:section" content="Benefits" />
<meta property="article:tag" content="Benefit" />
<meta property="article:tag" content="tips" />
<meta property="article:tag" content="tricks" />
<meta property="article:tag" content="microcontroller" />
<meta property="article:tag" content="remote control" />
<meta property="article:tag" content="Peripheral expansion" />
<meta property="article:tag" content="Reuse Code" />
<meta property="article:tag" content="Interactive work" />
<meta property="article:tag" content="Hardware testing" />
<meta property="article:tag" content="Cross-platform" />
<meta property="article:tag" content="embedded computer" />
<meta property="article:tag" content="Architecture diversity" />
<meta property="article:tag" content="tips" />
<meta property="article:tag" content="tips" />
<meta property="og:title" content="Benefits | REMCU Lib" />
<meta property="og:description" content="The high level benefits of using a remote contol in firmware/embedded/IoT development projects using an MCU or SoC" />
<meta property="og:image" content="https://raw.githubusercontent.com/remculib/site/master/banner/Linux_board.png" />
<meta property="og:image:secure_url" content="https://raw.githubusercontent.com/remculib/site/master/banner/Linux_board.png" />
<meta property="fb:pages" content="100628564742383" />
<meta name="twitter:domain" content="remotemcu.com"/>
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@RemoteMcu" />
<meta name="twitter:creator" content="@RemoteMcu" />
<meta name="twitter:title" content="Benefits | REMCU Lib" />
<meta name="twitter:description" content="The high level benefits of using a remote contol in firmware/embedded/IoT development projects using an MCU or SoC" />
<meta name="twitter:image:src" content="https://raw.githubusercontent.com/remculib/site/master/banner/Linux_board.png" />
<link rel="icon" type="image/png" href="favicon.png" />
<link rel="apple-touch-icon" href="apple-touch-favicon.png"/>
<!-- Bootstrap core CSS -->
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<link href="css/style.css" rel="stylesheet">
<!-- Custom styles for this template -->
<link href="https://getbootstrap.com/docs/4.3/examples/product/product.css" rel="stylesheet">
<link href="css/carousel.css" rel="stylesheet">
<!-- Include EnlighterJS Styles -->
<link rel="stylesheet" type="text/css" href="css/EnlighterJS.min.css" />
<!-- Include MooTools Framework -->
<script type="text/javascript" src="js/MooTools.min.js"></script>
<!-- Include EnlighterJS -->
<script type="text/javascript" src="js/EnlighterJS.min.js" ></script>
<meta name="EnlighterJS" content="Advanced javascript based syntax highlighting" data-indent="4" data-selector-block="pre" data-selector-inline="code" data-language="javascript" />
<script type="text/javascript">
//fix conflict carousel and mootools
window.addEvent('domready', function(){
if (typeof jQuery != 'undefined' && typeof MooTools != 'undefined' )
{
Element.implement({
slide: function(how, mode){
return this;
}
});
}
});
</script>
<style>
/* fix conflict bootstrap dropdown item and mootools */
.nav-item {
display:block !important;
}
</style>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample08" aria-controls="navbarsExample08" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<a href="index.html" id="mobilelogo"><img src="images/logo/logo-remcu-mobile.png" srcset="images/logo/logo-remcu-mobile.png 1x, images/logo/logo-remcu-2x-mobile.png 2x" alt="REMCU lib Logo" retina_logo_url="/images/logo/logo-remcu-2x-mobile.png" class="fusion-standard-logo"></a>
<div class="collapse navbar-collapse justify-content-md-center" id="navbarsExample08">
<!-- <a href="/"><img id="logo" src="/images/logo/logo-remcu.png" srcset="/images/logo/logo-remcu.png 1x, /images/logo/logo-remcu-2x.png 2x" width="290" height="60" style="max-height: 60px; height: 55px;" alt="REMCU lib Logo" retina_logo_url="/images/logo/logo-remcu-2x.png" class="fusion-standard-logo" data-logo-height="60" data-logo-width="290"></a>
-->
<ul class="navbar-nav">
<li class="nav-item">
<a id="logoblock" href="index.html"><img src="images/logo/logo-remcu.png" srcset="images/logo/logo-remcu.png 1x, images/logo/logo-remcu-2x.png 2x" alt="REMCU lib Logo" retina_logo_url="/images/logo/logo-remcu-2x.png" class="fusion-standard-logo"></a>
</li>
<li class="nav-item">
<a class="nav-link" href="index.html">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="benefits.html">Benefits</a>
</li>
<li class="nav-item">
<a class="nav-link" href="tutorials.html">Tutorials</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://github.com/remotemcu/remcu_examples">Examples</a>
</li>
<li class="nav-item">
<a class="nav-link" href="docs.html">Docs</a>
</li>
<li class="nav-item download-button-item">
<a class="btn btn-lg btn-primary" href="https://github.com/remotemcu/">GitHub</a>
</li>
</ul>
</div>
</nav>
<nav class="displaynone navbar-fixed navbar-expand-lg navbar-dark bg-dark">
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExample08" aria-controls="navbarsExample08" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<a href="index.html" id="mobilelogo" style="float:right; margin-top: 5px;"><img id="logo" src="images/logo/logo-remcu-mobile.png" srcset="images/logo/logo-remcu-mobile.png 1x, images/logo/logo-remcu-2x-mobile.png 2x" alt="REMCU lib Logo" retina_logo_url="/images/logo/logo-remcu-2x-mobile.png" class="fusion-standard-logo"></a>
<div class="collapse navbar-collapse justify-content-md-center" id="navbarsExample08">
<ul class="navbar-nav">
<li class="nav-item">
<a id="logoblock" href="index.html"><img id="logo" src="images/logo/logo-remcu.png" srcset="images/logo/logo-remcu.png 1x, images/logo/logo-remcu-2x.png 2x" alt="REMCU lib Logo" retina_logo_url="/images/logo/logo-remcu-2x.png" class="fusion-standard-logo"></a>
</li>
<li class="nav-item">
<a class="nav-link" href="index.html">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="benefits.html">Benefits</a>
</li>
<li class="nav-item">
<a class="nav-link" href="tutorials.html">Tutorials</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://github.com/remotemcu/remcu_examples">Examples</a>
</li>
<li class="nav-item">
<a class="nav-link" href="docs.html">Docs</a>
</li>
<li class="nav-item download-button-item">
<a class="btn btn-lg btn-primary" href="https://github.com/remotemcu/">GitHub</a>
</li>
</li>
</ul>
</div>
</nav>
<!-- Carousel start -->
<!-- Carousel end -->
<!-- Main content block start -->
<section id="primary" class="content-area bg-light ">
<main id="main">
<!--
<header class="page-header">
<h1 class="page-title text-center">
Benefits
</h1>
</header>
-->
<article class="article2 pt-3 px-3 pt-md-5 px-md-5 mx-auto overflow-hidden my-3 p-3">
<header class="entry-header text-center">
<h2 class="entry-title mb-3">Benefits</h2>
</header><!-- .entry-header -->
<div class="entry-content">
<!-- wp:paragraph -->
<p><strong>Open Source</strong>One of the primary benefits of REMCU is that it is an open-source project. Being open source means that the project's source code is freely available to the public, allowing developers to access, view, modify, and contribute to the codebase. This fosters a collaborative community where developers can work together, share ideas, and contribute improvements to the project.</p>
<figure class="wp-block-image is-resized"><img src="https://upload.wikimedia.org/wikipedia/commons/thumb/e/eb/Open_Source_Initiative.svg/457px-Open_Source_Initiative.svg.png" alt="" width="200"></figure>
<p><strong>Easy to Use.</strong> You can simply add a REMCU lib to your project as an ordinary shared library. A minimum configuration is required. The REMCU lib can be easily used in conjunction with any other libraries and frameworks. You can use comfort of your favorite IDE and dont need to learn special microcontroller IDE. </p>
<!-- /wp:paragraph -->
<!-- wp:image {"width":534,"height":265} -->
<figure class="wp-block-image is-resized"><img src="https://raw.githubusercontent.com/remculib/site/master/benifits/shared_library.png" alt="" width="534" height="265"></figure>
<!-- /wp:image -->
<!-- wp:paragraph -->
<p><strong>Chip Peripheral Forwarding. </strong>The REMCU lib lets us to use all the peripherals of MCU or SOC from a PC or embedded computers. A user space application running on your computer has an access to the chip's hardware subsystem as if it belonged to your computer without the development of microcontroller firmware and device drivers.</p>
<!-- /wp:paragraph -->
<!-- wp:image {"width":895,"height":414} -->
<figure class="wp-block-image is-resized"><img src="https://raw.githubusercontent.com/remculib/site/master/benifits/expantion_pc.png" alt="" width="895" height="414"></figure>
<!-- /wp:image -->
<!-- wp:paragraph -->
<p>This way you can easily turn an MCU-based board into USB devices like a USB-I2C, USB-CAN, USB-GPIO, ADC analyzer, signal generator etc.</p>
<!-- /wp:paragraph -->
<!-- wp:image {"width":907,"height":310} -->
<figure class="wp-block-image is-resized"><img src="https://raw.githubusercontent.com/remculib/site/master/benifits/usb-like.png" alt="" width="907" height="310"></figure>
<!-- /wp:image -->
<!-- wp:paragraph -->
<p><strong>Reuse Code and Documentation. </strong>The REMCU Lib provides the same API as peripheral drivers from Software Development Kit (SDK) provided by semiconductor chip vendors or third parties for MCU firmware development. This removes the difference between interacting with peripheral modules directly from firmware code or desktop PC application.<br>You dont need to learn new tools but can use documentation of the SDK. You can launch and run the SDK examples on your computer and even, you can just get your firmware code that uses the SDK drivers and run its on your computer.</p>
<!-- /wp:paragraph -->
<!-- wp:html -->
<video muted="" playsinline="" autoplay="" style="object-fit: cover; background-size: cover; width: 100%; height: 100%; transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 400; font-size: 12px; display: block; visibility: inherit; opacity: 1;" class="" loop="" preload="auto"><source src="https://raw.githubusercontent.com/remculib/site/master/benifits/reuse.mp4" style="transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 400; font-size: 13px;"></source></video>
<!-- /wp:html -->
<!-- wp:paragraph -->
<p><strong>Interactive work. </strong>If you ever wish to conduct a quick experiment with any chip peripheral module or explore it, then REMCU is the right tool for that. It can be easily integrated in <a href="https://jupyter.org/">Jupyter Notebook</a> with a C++ interpreter. This IDE is free and it lets you run and execute C or C++ code on the go. This way you can call the functions of the driver directly and control chip in real time.<br> It saves a lot of time that is usually spent on development of experimental firmwares. And it helps to learn how to use new peripheral blocks quicker.</p>
<!-- /wp:paragraph -->
<!-- wp:html -->
<video muted="" playsinline="" autoplay="" style="object-fit: cover; background-size: cover; width: 100%; height: 100%; transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 400; font-size: 12px; display: block; visibility: inherit; opacity: 1;" class="" loop="" preload="auto"><source src="https://raw.githubusercontent.com/remculib/site/master/benifits/efm32-benefits-crop.mp4" style="transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 400; font-size: 13px;"></source></video>
<!-- /wp:html -->
<!-- wp:paragraph -->
<p>With that you can easily conduct amazing experiments in chip peripherals and MCU-based devices. </p>
<!-- /wp:paragraph -->
<!-- wp:paragraph -->
<p><strong>Backwards-portable code.</strong> The application code written in the C programming language using REMCU is backwards-portable, meaning it can be transferred from a desktop program to the MCU program and vice-versa. The code will work just as fine on a microcontroller as it works on your computer. That's why code written on desktop with REMCU can be used to develop stand-alone chip firmware</p>
<!-- /wp:paragraph -->
<!-- wp:html -->
<video muted="" playsinline="" autoplay="" style="object-fit: cover; background-size: cover; width: 100%; height: 100%; transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 1000; font-size: 12px; display: block; visibility: inherit; opacity: 1;" class="" loop="" preload="auto"><source src="https://raw.githubusercontent.com/remculib/site/master/benifits/backward-portable.mp4" type="video/mp4" style="transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 700; font-size: 13px;"></source></video>
<!-- /wp:html -->
<!-- wp:paragraph -->
<p><strong>Using with High-Level Languages.</strong> It is also possible to use the REMCU lib with high level languages like Python, Java, C-Sharp and others. To make working with them less troublesome, we provide language wrappers. With these wrappers it becomes easy to work with hardware as it is using C or C++</p>
<!-- /wp:paragraph -->
<!-- wp:image {"width":874,"height":520} -->
<figure class="wp-block-image is-resized"><img src="https://raw.githubusercontent.com/remculib/site/master/benifits/Wrappers.png" alt="" width="874" height="520"></figure>
<!-- /wp:image -->
<!-- wp:paragraph -->
<p><strong>Hardware testing by scripting. </strong>The C++ interpreter and Python enables to easily write scripts to control the MCU-based devices. This provides to avoid the development of a test chip firmware. You can just write the test scripts using <a rel="noreferrer noopener" aria-label=" (opens in a new tab)" href="https://jupyter.org/" target="_blank">Jupyter Notebook</a> IDE. The testing scripts are easier to write, to debug and to maintain than compiled programs.</p>
<!-- /wp:paragraph -->
<!-- wp:paragraph -->
<p>The test scripts are useful in checking both simple board elements and complex chips with digital interfaces. Analog and digital signal generation, capture and analysis is very easy with test scripts. Another possible use case of test scripts is to check external communication interfaces of microcontroller boards.</p>
<!-- /wp:paragraph -->
<!-- wp:html -->
<video muted="" playsinline="" autoplay="" style="object-fit: cover; background-size: cover; width: 100%; height: 100%; transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 1000; font-size: 12px; display: block; visibility: inherit; opacity: 1;" class="" loop="" preload="auto"><source src="https://raw.githubusercontent.com/remculib/site/master/benifits/testing.mp4" type="video/mp4" style="transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 700; font-size: 13px;"></source></video>
<!-- /wp:html -->
<!-- wp:paragraph -->
<p><strong>Cross-platform. </strong>The REMCU lib is a cross-platform library and works on all most common desktop operating systems (Windows, MacOS, Linux). And it can also be ported to the embedded systems.</p>
<!-- /wp:paragraph -->
<!-- wp:image -->
<figure class="wp-block-image"><img src="https://raw.githubusercontent.com/remculib/site/master/benifits/OS.png" alt=""></figure>
<!-- /wp:image -->
<!-- wp:paragraph -->
<p><strong>Peripheral expansion of embedded computer. </strong>Very often, an embedded Linux processor has a limited number of peripherals. And frequently this problem can be solved with external MCU or SOC. This approach requires a development of MCU firmware and additional software (a communication protocol, kernel drivers). But the REMCU lib provides to avoid this work and to remotely control chip's peripheral modules. The software of embedded system gets real simple and no longer requires the specific OS kernel drivers.</p>
<!-- /wp:paragraph -->
<!-- wp:image {"width":894,"height":448} -->
<figure class="wp-block-image is-resized"><img src="https://raw.githubusercontent.com/remculib/site/master/banner/Linux_board.png" alt="" width="894" height="448"></figure>
<!-- /wp:image -->
<!-- wp:paragraph -->
<p><strong>Architecture diversity.</strong> The REMCU lib supports many different types of microcontrollers, including 8-bit, 16-bit, 32-bit MCUs and even 64-bit Systems on a Chip.</p>
<!-- /wp:paragraph -->
<!-- wp:image {"width":886,"height":540} -->
<figure class="wp-block-image is-resized"><img src="https://raw.githubusercontent.com/remculib/site/master/benifits/MCUs.png" alt="" width="886" height="540"></figure>
<!-- /wp:image -->
<!-- wp:paragraph -->
<p><strong>Peripheral API diversity. </strong> The REMCU Project may have several implementations of library APIs. For example, in STM32 case, we can provide <a href="https://www.st.com/en/embedded-software/stm32-standard-peripheral-libraries.html">SPL</a>, <a href="https://www.st.com/en/embedded-software/stm32cube-mcu-mpu-packages.html">HAL</a>, <a href="https://os.mbed.com/teams/ST/">MBED</a>, <a href="https://github.com/stm32duino/Arduino_Core_STM32">Arduino </a>APIs.</p>
<!-- /wp:paragraph -->
<!-- wp:image -->
<figure class="wp-block-image"><img src="https://raw.githubusercontent.com/remculib/site/master/benifits/library.png" alt=""></figure>
<!-- /wp:image -->
<!-- wp:paragraph -->
<p><strong>Memory operations.</strong> The REMCU lib can work with non-peripherals blocks, namely, RAM, ROM, FLASH, EEPROM etc. You can execute the load and store operations on MCU memory. Usually, it is required to work with a DMA module. The DMA provides buffering of data for other peripheral modules when work with fast signals and interfaces.</p>
<!-- /wp:paragraph -->
<!-- wp:html -->
<video muted="" playsinline="" autoplay="" style="object-fit: cover; background-size: cover; width: 100%; height: 100%; transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 400; font-size: 12px; display: block; visibility: inherit; opacity: 1;" class="" loop="" preload="auto"><source src="https://raw.githubusercontent.com/remculib/site/master/benifits/DMA.mp4" type="video/mp4" style="transition: none 0s ease 0s; text-align: inherit; line-height: 0px; border-width: 0px; margin: 0px; padding: 0px; letter-spacing: 0px; font-weight: 400; font-size: 13px;"></source></video>
<!-- /wp:html -->
</div><!-- .entry-content -->
<footer class="entry-footer">
</footer><!-- .entry-footer -->
</article><!-- #post-${ID} -->
</main><!-- #main -->
</section><!-- #primary -->
<!-- Main content block end -->
<footer class="container py-5">
<div class="row">
<div class="col-12 col-md">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" class="d-block mb-2" role="img" viewBox="0 0 24 24" focusable="false"><title>Product</title><circle cx="12" cy="12" r="10"/><path d="M14.31 8l5.74 9.94M9.69 8h11.48M7.38 12l5.74-9.94M9.69 16L3.95 6.06M14.31 16H2.83m13.79-4l-5.74 9.94"/></svg>
<small class="d-block mb-3 text-muted">Copyright © 2020<br>All Rights Reserved. </small>
</div>
<div class="col-6 col-md">
<h5>RMCU lib</h5>
<ul class="list-unstyled text-small">
<li><a class="text-muted" href="benefits.html#">Benefits of library</a></li>
</ul>
</div>
<div class="col-6 col-md">
<h5>Resources</h5>
<ul class="list-unstyled text-small">
<li><a class="dropdown-item" href="https://remotemcu.com/tutorial">Tutorial</a></li>
<li><a class="dropdown-item" href="https://github.com/remotemcu/remcu_examples" target=â_blankâ >Examples</a></li>
<li><a class="dropdown-item" href="docs.html">Docs</a></li>
</ul>
</div>
<div class="col-6 col-md" style="margin-right: 20px">
<h5>General contact:</h5>
<ul class="list-unstyled text-small">
<li><a class="text-muted" href="https://ser-mk.github.io/#">ser-mk</a></li>
</ul>
</div>
<div class="col-6 col-md" style="min-width: 250px !important;">
<h5>Follow us</h5>
<a class="social_icon" target="_blank" href="https://www.linkedin.com/company/remotemcu"><img src="images/social_networks_logos/linkedin.png" alt="LinkedIn"></a>
<!--<a class="social_icon" target="_blank" href="https://www.hackster.io/remotemcu"><img src="/images/social_networks_logos/hackster.png" alt="Hackster"></a>
-->
<a class="social_icon" target="_blank" href="https://github.com/remotemcu/"><img src="images/social_networks_logos/github.png" alt="Github"></a>
<a class="social_icon" target="_blank" href="https://www.youtube.com/channel/UCyIDHcMnHFFRS-SznKUZ9ug"><img src="images/social_networks_logos/youtube.png" alt="Youtube"></a>
</div>
</div>
</footer>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="https://getbootstrap.com/docs/4.3/assets/js/vendor/jquery-slim.min.js"><\/script>')</script><script src="https://getbootstrap.com/docs/4.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-xrRywqdh3PHs8keKZN+8zzc5TX0GRTLCcmivcbNJWm2rs5C8PRhcEn3czEjhAO9o" crossorigin="anonymous"></script>
<script>
$(window).scroll(function(){
var menu = $('.navbar'),
logo = $('#logo'),
scroll = $(window).scrollTop(),
menu_fixed = $('.navbar-fixed')
;
if (scroll >= 400) {
menu_fixed.fadeIn();
}
else {
menu_fixed.fadeOut();
}
});
</script>
</body>
</html>