{"id":19775,"name":"LibreSolar","description":"Firmware for LibreSolar BMS boards based on bq769x0 or ISL94202.","url":"https://github.com/LibreSolar/bms-firmware","last_synced_at":"2026-05-13T08:03:15.279Z","repository":{"id":47858310,"uuid":"75180061","full_name":"LibreSolar/bms-firmware","owner":"LibreSolar","description":"Firmware for LibreSolar BMS boards based on bq769x0, bq769x2 or ISL94202","archived":false,"fork":false,"pushed_at":"2026-04-09T14:55:42.000Z","size":3659,"stargazers_count":219,"open_issues_count":20,"forks_count":91,"subscribers_count":16,"default_branch":"main","last_synced_at":"2026-04-24T05:08:24.038Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://libre.solar/bms-firmware/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LibreSolar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2016-11-30T11:19:50.000Z","updated_at":"2026-04-22T02:14:39.000Z","dependencies_parsed_at":"2024-06-13T04:18:20.242Z","dependency_job_id":"966f7648-cfee-45fd-909e-2174e28b1a3e","html_url":"https://github.com/LibreSolar/bms-firmware","commit_stats":{"total_commits":369,"total_committers":8,"mean_commits":46.125,"dds":0.04878048780487809,"last_synced_commit":"8f6a9492b2740a1759a6a7b65452ecda5bd482f1"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/LibreSolar/bms-firmware","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreSolar%2Fbms-firmware","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreSolar%2Fbms-firmware/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreSolar%2Fbms-firmware/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreSolar%2Fbms-firmware/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LibreSolar","download_url":"https://codeload.github.com/LibreSolar/bms-firmware/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreSolar%2Fbms-firmware/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32243803,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-24T13:21:15.438Z","status":"ssl_error","status_checked_at":"2026-04-24T13:21:15.005Z","response_time":64,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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"}},"owner":{"login":"LibreSolar","name":"Libre Solar Project","uuid":"17674115","kind":"organization","description":"","email":null,"website":"https://libre.solar","location":"Hamburg, Germany","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/17674115?v=4","repositories_count":46,"last_synced_at":"2024-04-14T08:13:49.584Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/LibreSolar","funding_links":[],"total_stars":1105,"followers":112,"following":0,"created_at":"2022-11-06T05:38:10.395Z","updated_at":"2024-04-14T08:14:02.001Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LibreSolar","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LibreSolar/repositories"},"packages":[],"commits":{"id":1253892,"full_name":"LibreSolar/bms-firmware","default_branch":"main","total_commits":385,"total_committers":10,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":38.5,"dds":0.05714285714285716,"past_year_total_commits":9,"past_year_total_committers":2,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":4.5,"past_year_dds":0.2222222222222222,"last_synced_at":"2026-04-16T02:51:37.826Z","last_synced_commit":"1d485f056cdc76bbff1c919632a1f234280590dc","created_at":"2023-03-27T10:47:44.411Z","updated_at":"2026-04-16T02:51:24.078Z","committers":[{"name":"Martin Jäger","email":"martin@libre.solar","login":"martinjaeger","count":363},{"name":"Roman PASSLER","email":"roman.passler@e-bs.at","login":"pasrom","count":13},{"name":"xsider","email":"xsider@majox.de","login":"xsider","count":2},{"name":"Muhammad Syazwan Bin Ahmad","email":"wan@off-grid-europe.com","login":"wan-oge","count":1},{"name":"Krzysztof Nowak","email":"krzysztof9nowak@gmail.com","login":"krzysztof9nowak","count":1},{"name":"Jean Alinei","email":"jean.alinei@owntech.org","login":"jalinei","count":1},{"name":"Grzegorz Araminowicz","email":"g.araminowicz@gmail.com","login":"garaminowicz","count":1},{"name":"Case06","email":"case06@web.de","login":"case06","count":1},{"name":"Ananyaaynana","email":"ananya@urbanmorph.com","login":"Ananyaaynana","count":1},{"name":"A-Emile","email":"76005215+A-Emile","login":"A-Emile","count":1}],"past_year_committers":[{"name":"Martin Jäger","email":"martin@libre.solar","login":"martinjaeger","count":7},{"name":"Roman PASSLER","email":"roman.passler@gmail.com","login":"pasrom","count":2}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreSolar%2Fbms-firmware/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-27T00:00:06.983Z","repositories_count":6219145,"commits_count":899455028,"contributors_count":34873843,"owners_count":1145803,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"LibreSolar/bms-firmware","html_url":"https://github.com/LibreSolar/bms-firmware","last_synced_at":"2026-01-12T21:01:15.509Z","status":"active","issues_count":52,"pull_requests_count":66,"avg_time_to_close_issue":26862042.766666666,"avg_time_to_close_pull_request":421374.37704918033,"issues_closed_count":30,"pull_requests_closed_count":61,"pull_request_authors_count":11,"issue_authors_count":19,"avg_comments_per_issue":2.423076923076923,"avg_comments_per_pull_request":0.6818181818181818,"merged_pull_requests_count":59,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":2,"past_year_pull_requests_count":3,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":6188.333333333333,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":3,"past_year_pull_request_authors_count":2,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":1.5,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":3,"created_at":"2023-05-09T10:37:57.201Z","updated_at":"2026-01-12T21:01:15.510Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreSolar%2Fbms-firmware","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/LibreSolar%2Fbms-firmware/issues","issue_labels_count":{"enhancement":12,"bug":6,"question":1,"information":1},"pull_request_labels_count":{"bug":1},"issue_author_associations_count":{"NONE":30,"MEMBER":11,"CONTRIBUTOR":10,"COLLABORATOR":1},"pull_request_author_associations_count":{"MEMBER":39,"CONTRIBUTOR":12,"COLLABORATOR":10,"NONE":5},"issue_authors":{"Ananyaaynana":12,"martinjaeger":11,"xsider":4,"1278043638":4,"Vadiml1024":3,"vlebedev-ora":2,"case06":2,"kfessel":2,"ananya-wattsnext":2,"Retro-Fitt":1,"petermagdy24":1,"fl4p":1,"seandheath":1,"intrinsicaly":1,"RianWardana":1,"kidspro88":1,"aeonSolutions":1,"firepooh":1,"pasrom":1},"pull_request_authors":{"martinjaeger":39,"pasrom":12,"xsider":3,"wan-oge":2,"bjorniuppsala":2,"jalinei":2,"Ananyaaynana":2,"garaminowicz":1,"case06":1,"krzysztof9nowak":1,"A-Emile":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-02-14T00:00:08.872Z","repositories_count":13258728,"issues_count":35357768,"pull_requests_count":114880939,"authors_count":11155392,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{"CONTRIBUTOR":1,"NONE":1},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":2,"NONE":1},"past_year_issue_authors":{"Ananyaaynana":1,"fl4p":1},"past_year_pull_request_authors":{"wan-oge":2,"A-Emile":1},"maintainers":[{"login":"martinjaeger","count":50,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martinjaeger"},{"login":"pasrom","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/pasrom"}],"active_maintainers":[]},"events":{"total":{"DeleteEvent":6,"PullRequestEvent":7,"ForkEvent":16,"IssuesEvent":11,"WatchEvent":42,"IssueCommentEvent":13,"PushEvent":25,"PullRequestReviewEvent":4,"CreateEvent":5},"last_year":{"PullRequestEvent":2,"ForkEvent":10,"IssuesEvent":3,"WatchEvent":24,"IssueCommentEvent":3,"PushEvent":10,"PullRequestReviewEvent":1,"CreateEvent":2}},"keywords":[],"dependencies":[{"ecosystem":"pypi","filepath":"docs/requirements.txt","sha":null,"kind":"manifest","created_at":"2022-09-22T15:12:57.281Z","updated_at":"2022-09-22T15:12:57.281Z","repository_link":"https://github.com/LibreSolar/bms-firmware/blob/main/docs/requirements.txt","dependencies":[{"id":5878208298,"package_name":"breathe","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5878208299,"package_name":"Sphinx","ecosystem":"pypi","requirements":"\u003c4","direct":true,"kind":"runtime","optional":false},{"id":5878208300,"package_name":"sphinx-notfound-page","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5878208301,"package_name":"sphinx-rtd-theme","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":5878208302,"package_name":"sphinx-tabs","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/docs.yml","sha":null,"kind":"manifest","created_at":"2023-02-08T11:16:11.679Z","updated_at":"2023-02-08T11:16:11.679Z","repository_link":"https://github.com/LibreSolar/bms-firmware/blob/main/.github/workflows/docs.yml","dependencies":[{"id":7449710510,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7449710511,"package_name":"peaceiris/actions-gh-pages","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/zephyr.yml","sha":null,"kind":"manifest","created_at":"2023-02-08T11:16:11.695Z","updated_at":"2023-02-08T11:16:11.695Z","repository_link":"https://github.com/LibreSolar/bms-firmware/blob/main/.github/workflows/zephyr.yml","dependencies":[{"id":7449710528,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]}],"score":7.779048644925557,"created_at":"2023-09-11T14:52:07.044Z","updated_at":"2026-05-13T08:03:15.283Z","avatar_url":"https://github.com/LibreSolar.png","language":"C","category":"Renewable Energy","sub_category":"Photovoltaics and Solar Energy","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"# Libre Solar BMS Firmware\n\n![build badge](https://github.com/LibreSolar/bms-firmware/actions/workflows/zephyr.yml/badge.svg)\n\nThis repository contains the firmware for Libre Solar Battery Management Systems based on [Zephyr RTOS](https://www.zephyrproject.org/) .\n\n## Development and release model\n\nThe `main` branch is used for ongoing development of the firmware.\n\nReleases are created from `main` after significant updates have been introduced to the firmware. Each release has to pass tests with multiple boards.\n\nA release is tagged with a version number consisting of the release year and a release count for that year (starting at zero). For back-porting of bug-fixes, a branch named after the release followed by `-branch` is created, e.g. `v21.0-branch`.\n\n## Documentation\n\nThe firmware documentation including build instructions and API reference can be found under [libre.solar/bms-firmware](https://libre.solar/bms-firmware/).\n\nIn order to build the documentation locally you need to install Doxygen, Sphinx and Breathe and run `make html` in the `docs` folder.\n\n## License\n\nThis firmware is released under the [Apache-2.0 License](LICENSE).\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["bms","bq76952","open"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/19775","html_url":"https://ost.ecosyste.ms/projects/19775"}