Meet obniz

Javascript & IoT

obniz.js lets you use obniz and the connected parts as one object in JavaScript.

Online Editor

Just scan the QR code on obniz, and the Online Editor will appear. You can write a HTML program and run it. It is an IoT program that requires no app and just needs a few seconds to start.

Runs on browser/Node.js

obniz.js runs on both browser and Node.js. It uses Websocket API on obniz cloud. You just need one step to install it.

And also it's code is open source.

browser
<script src="https://unpkg.com/obniz/obniz.js"></script>

Node.js
npm install obniz

Connect obniz from anywhere in the world

It doesn't matter where obniz is. obniz.js and cloud will establish connection with it automatically wherever you are. You can use IO and peripherals as if they are objects with JavaScript. It is easy to integrate UI and other web services on npm.

var obniz = new Obniz("1234-5678");
obniz.onconnect = async function() {
  obniz.io7.output(false)
  obniz.io8.drive("open-drain");

  $("#on").click(function(){
    obniz.io7.output(true)
  })

  var uart = obniz.getFreeUart();
  uart.start({tx: 5, rx: 6, baud:9600}); 
  uart.onreceive = function(data, text) {
    $("#received").append(text);
  }
}

Parts Library

obniz.js has parts library.
You can use the parts by connecting them to random pins on obniz, and you don't need to read datasheets of the parts either.

var servo = obniz.wired("ServoMotor", {gnd:0, vcc:1, signal:2});
$("#slider").on('input', function() {
  servo.angle($("#slider").val())
});

var motor = obniz.wired("DCMotor",  {forward:3, back:4});
motor.power(50);
motor.forward();

Block Program

If it is your first time programming, Block Program is the best way. You choose some blocks from the list, and you can control motor, switch and display. It is easy to make some "moving things", so you learn programming while having fun!

Local Connect

obniz.js can connect to an obniz via local connection. It reduces latency dramatically if obniz is in the same network. This option is enabled by default.