chip.avr.avr109

Flash firmware onto an avr device running a bootloader that speaks the avr109 protocol

Usage no npm install needed!

<script type="module">
  import chipAvrAvr109 from 'https://cdn.skypack.dev/chip.avr.avr109';
</script>

README

chip.avr.avr109

Flash firmware onto an avr device running a bootloader that speaks the avr109 protocol.

install

npm install chip.avr.avr109

use

var avr109 = require('chip.avr.avr109');
var serialport = require('serialport');
var sp = new serialport.SerialPort('/dev/tty.usbmodemfd121');
var fs = require('fs');

sp.on('open', function() {
  fs.readFile(__dirname + '/test.hex', function(err, data) {

    avr109.init(sp, { signature: 'LUFACDC' }, function (err, flasher) {
      if (err) {
        throw err;
      }
      flasher.erase(function() {
        console.log('initialized');

        flasher.program(data.toString(), function(err) {
          if (err) throw err;
          console.log('programmed!');

          flasher.verify(function(err) {
            if (err) {
              throw err
            }
            flasher.fuseCheck(function(err) {
              if (err) throw err;
              console.log('OK!');
            });
          });
        });
      });
    });
  });
});

license

MIT