Skip to content
View imrans110's full-sized avatar
🔥
Working from home
🔥
Working from home

Block or report imrans110

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
imrans110/README.md

Syed Imran Abidi

I'm a tech lead working on software for the solar and renewable energy industry. Most of my work is data-heavy web apps: dashboards, reporting automation and internal platforms, built with TypeScript, Node.js, GraphQL and React on Azure.

Lately I've also been writing Rust for the part of the stack that sits next to the hardware.

What I'm working on

rusty-sunspec-collector reads data from solar inverters, meters and batteries that speak SunSpec over Modbus. It works out which data models each device supports, decodes the values using the official SunSpec definitions, and sends them to Kafka. It runs on small x86 and ARM gateways, and keeps data in a local buffer when the network drops.

It's at version 0.5.0. So far it has only been tested against the simulator that comes with it, so if you have a SunSpec device and can try it, the device report form helps a lot, even if the answer is "it didn't work".

What I use

  • At work: TypeScript, Node.js, GraphQL, React, Next.js, Tailwind, MongoDB, SQL, Azure (Functions, Storage, Pipelines)
  • On my own projects: Rust, Modbus, Kafka, SQLite, Docker, GitHub Actions
  • Now and then: Electron for desktop apps

Contact

Pinned Loading

  1. rusty-sunspec-collector rusty-sunspec-collector Public

    Rust edge service that discovers SunSpec inverters, meters and batteries over Modbus TCP, decodes them with the official SunSpec models, and streams device-keyed Avro records to Kafka. Prebuilt x86…

    Rust 1

  2. contentful-migration-poc contentful-migration-poc Public

    A POC for contentful migration

    JavaScript 2 1

  3. code-keep code-keep Public

    The Code-Keep project is a desktop application built using Electron, React, TypeScript, and Tailwind CSS.

    TypeScript