-
Hello world
-
APIs & Services
- Available services
- Message signaling
- CAN Bus
- Rust Binding
- CANopen
- Redpak Binding
- Modbus
- GPS
- Secure Storage
- Platform info binding
- Secure Gate Oidc
- Spawn Binding
- WiFi Binding
-
CAN Bus
Running/Testing
Testing
Make sure that your dependencies are reachable from rust scripting engine, before starting your test.
afb-binder -vvv --config=afb-samples/etc/binding-config.json
firefox localhost://1234/devtools
Debugging from vscode/codium
Rust generate standard ELF object and either gdb or lldb permit Rust source debug. Nevertheless in
order gdb/lldb to understand RUST memory structures rust-lldb/rust-gdb should be installed. When installing
with rustup rust-lldb is installed by default.
On vscode/codium install following extensions
- Rust-analyzer
- CodeLLDB
- Clangd
- Dev-Container (for containerized SDK local-builder)
Compiling/debugging from a container
check https://github.com/fulup-bzh/mkTinyRootFs
Configure binder services/options
As rust binding are 100% compatible with C/C++ ones also afb-rust does not require any new option/config.
# start binder process using a config.json file
afb-binder --config=config.json
{
// binder global options
"name": "afb-rust",
"no-ldpaths": true,
"port": 1234,
"alias": ["/devtools:/usr/share/afb-ui-devtools/binder"],
"monitoring": true,
"binding": [
// one config per C/C++/Rust binding
{
"uid": "rust-api",
"path": "./target/$HOSTNAME/debug/examples/libafb_samples.so",
"info": "RUST sample API binding (Rust)"
}
],
}