{"id":26506646,"url":"https://github.com/ierturk/zsc31050-calib-rust","last_synced_at":"2026-05-07T00:34:42.726Z","repository":{"id":283491287,"uuid":"951944805","full_name":"ierturk/zsc31050-calib-rust","owner":"ierturk","description":"A sample project that uses slint-ui, dust_dds and third party dll c/c++ library usage on windows with rust","archived":false,"fork":false,"pushed_at":"2025-03-20T22:05:26.000Z","size":147,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-19T11:44:50.514Z","etag":null,"topics":["async","bindings","dds","dust-dds","idl","rpc","rust","serde","serde-json","slint-ui","tokio"],"latest_commit_sha":null,"homepage":"https://erturk.me/projects/zsc31050-calib-rust/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ierturk.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}},"created_at":"2025-03-20T13:42:56.000Z","updated_at":"2025-03-20T22:05:29.000Z","dependencies_parsed_at":"2025-03-21T14:51:46.938Z","dependency_job_id":null,"html_url":"https://github.com/ierturk/zsc31050-calib-rust","commit_stats":null,"previous_names":["ierturk/zsc31050-calib-rust"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ierturk/zsc31050-calib-rust","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ierturk%2Fzsc31050-calib-rust","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ierturk%2Fzsc31050-calib-rust/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ierturk%2Fzsc31050-calib-rust/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ierturk%2Fzsc31050-calib-rust/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ierturk","download_url":"https://codeload.github.com/ierturk/zsc31050-calib-rust/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ierturk%2Fzsc31050-calib-rust/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274094437,"owners_count":25221422,"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","status":"online","status_checked_at":"2025-09-07T02:00:09.463Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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"}},"keywords":["async","bindings","dds","dust-dds","idl","rpc","rust","serde","serde-json","slint-ui","tokio"],"created_at":"2025-03-20T22:56:00.950Z","updated_at":"2026-05-07T00:34:42.691Z","avatar_url":"https://github.com/ierturk.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# A sample project that uses slint-ui, dust_dds and third party dll C/C++ library usage on windows with Rust\n\n[Associated post](https://erturk.me/projects/zsc31050-calib-rust/)\n    \n![The app](docs/images/zsc31050-calib-rust.png)   \n   \nThe aim of the project is to develop a comprehensive system that runs on Windows 11 and is capable of communicating with remote systems using topics, such as in ROS2, instead of IP addresses.\n\nThere is a specific requirement for this project: we have a 32-bit legacy DLL, and our application should be 64-bit. In this case at least we need to develop two modules, one of them 32-bit and the other one is 64-bit. Consequently, we have to employ an IPC to exchange data between modules. There are lots of possibility such as gRPC but we don’t want to use IP addresses but topics. Even though it is not a best practice, this project will be a learning by doing project. Our main aim is discovering possibilities.\n\nSo let’s start!\n___\n### The Tools that Used within this Project\n- Rust Toolchain with installed i686 and x86_64 target\n- MSVC compilers\n- DLLs from Renesas\n- VS Code and Rust Analyzer plugin\n- Git for Windows\n\n___\n### Setup\n- Install Rustup\n- Install MSVC compilers by using MSVC build tools with C/C++ workload\n- the Optionally Make for Windows if you would like to build and run project by GNU Make\n- Rest of process is clone project and run with your favorite tool... cargo, make or VS Code (settins included, see .vscode folder)\n```\n### installing required rust toolchains\nPS\u003e rustup toolchain install stable-x86_64-pc-windows-msvc\nPS\u003e rustup toolchain install stable-i686-pc-windows-msvc\n```\n___\n### Running and Debugging\n- Type just following commands in your favourite terminal app\n\n```\nPS\u003e git clone https://github.com/ierturk/zsc31050-calib-rust.git\nPS\u003e cd zsc31050-calib-rust\n\n## those commands need to be run on splitted terminals\n\n## if you prefer GNU Make and you have one on Windows\nPS\u003e make run-server\nPS\u003e make run-gui\n\n## if you prefer cargo\nPS\u003e cargo build --target i686-pc-windows-msvc --no-default-features -p rbic1_dll_svc --example server\nPS\u003e cargo build --target x86_64-pc-windows-msvc -p test_gui\n```\n\nIf you prefer using VS Code to run tasks:   \nUse ctrl-shift P then Tasks: Run task and select one\n\nIf everything is fine, you will obtain results similar to those depicted in the header image.\n\n## License\n\nThis project is licensed under the BSD 3-Clause License. See the [LICENSE](./LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fierturk%2Fzsc31050-calib-rust","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fierturk%2Fzsc31050-calib-rust","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fierturk%2Fzsc31050-calib-rust/lists"}