{"id":14963418,"url":"https://github.com/thingssdk/rom-comm","last_synced_at":"2025-09-15T02:29:59.929Z","repository":{"id":57355630,"uuid":"70217019","full_name":"thingsSDK/rom-comm","owner":"thingsSDK","description":"ROM Communication ","archived":false,"fork":false,"pushed_at":"2016-12-24T06:58:53.000Z","size":64,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-31T04:51:34.907Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thingsSDK.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-10-07T05:05:21.000Z","updated_at":"2018-11-29T20:49:01.000Z","dependencies_parsed_at":"2022-09-26T16:31:41.985Z","dependency_job_id":null,"html_url":"https://github.com/thingsSDK/rom-comm","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thingsSDK%2From-comm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thingsSDK%2From-comm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thingsSDK%2From-comm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thingsSDK%2From-comm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thingsSDK","download_url":"https://codeload.github.com/thingsSDK/rom-comm/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238059129,"owners_count":19409601,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-09-24T13:31:28.797Z","updated_at":"2025-02-10T04:31:10.530Z","avatar_url":"https://github.com/thingsSDK.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ROM Comm\n\n[![Build Status](https://travis-ci.org/thingsSDK/rom-comm.svg?branch=master)](https://travis-ci.org/thingsSDK/rom-comm)\n[![codecov](https://codecov.io/gh/thingsSDK/rom-comm/branch/master/graph/badge.svg)](https://codecov.io/gh/thingsSDK/rom-comm)\n[![Dependency Status](https://david-dm.org/thingssdk/rom-comm.svg)](https://david-dm.org/thingssdk/rom-comm)\n[![devDependency Status](https://david-dm.org/thingssdk/rom-comm/dev-status.svg)](https://david-dm.org/thingssdk/rom-comm#info=devDependencies)\n\n\nYou love your devices, but man can they be finnicky, amirite? Like a good romantic comedy, things will eventually work out...after some\nnear disasters. You'll look for advice from your friends on how to communicate better with your thing, but sometimes that advice is\nimpossible to decipher.\n\nWe are here to attempt to keep communication with your device as light as a film starring Meg Ryan. There is comfort in how all those\nfilms are the same, right? We want communication with your devices to be just that familiar, and just the same. Who wants to learn all those\nincantations and rituals, when you've got better things to be building.\n\nthingsSDK strives to abstract away the barriers to device development. You've got things to do.\n\n## Examples\n\nHere is ROMComm to flash the Espruino runtime onto an Espressif ESP8266 over USB.\n\n```javascript\nconst portName = '/dev/cu.SLAB_USBtoUART';\nconst serialOptions = {\n    baudRate: 460800\n};\nconst device = ROMComm.serial(portName, serialOptions);\n\ndevice.open((err) =\u003e {\n    device.flash([\n      {'address': '0x0000', buffer: fs.readFileSync('examples/tmp/boot_v1.4(b1).bin')},\n      {'address': '0x1000', buffer: fs.readFileSync('examples/tmp/espruino_esp8266_user1.bin')},\n      {'address': '0x3FC000', buffer: fs.readFileSync('examples/tmp/esp_init_data_default.bin')},\n      {'address': '0x3FE000', buffer: fs.readFileSync('examples/tmp/blank.bin')}\n    ], (err) =\u003e {\n        console.log('Flashed!');\n        device.close();\n    });\n});\n```\n\nThis code and more lives in the [examples](examples) folder.\n\n## Supported manufacturers\n\n* [Espressif](http://espressif.com)\n  * ESP8266\n    * flash\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthingssdk%2From-comm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthingssdk%2From-comm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthingssdk%2From-comm/lists"}