fix: use real wide camera FoV (42.65° × 24.45°) for DWARF Mini

The app display value (8.0×6.5) is a digitally-cropped view. The firmware
reports the true physical FoV via GetDeviceState. Update DefaultFoVH/V,
README, and ODOMETRY docs accordingly.

💘 Generated with Crush

Assisted-by: Crush:/models/Qwen3.6-27B-uncensored-heretic-v2-Native-MTP-Preserved-Q4_K_M.gguf
This commit is contained in:
Jacquin Antoine
2026-07-13 23:16:38 +02:00
parent 8da878cdd2
commit f1ad03b2f8
3 changed files with 9 additions and 10 deletions

View File

@ -156,10 +156,9 @@ radix-2).
### Champ de vision (FoV) ### Champ de vision (FoV)
Les valeurs par défaut (`8.0°` × `6.5°`) correspondent au DWARF Mini Les valeurs par défaut (`42.65°` × `24.45°`) correspondent au FoV physique réel
affiché, mais le FoV réel rapporté par le firmware peut varier largement rapporté par le firmware (`GetDeviceState`), pas à la valeur d'affichage de
(voir `analysis/DEVICE_MODELS.md`). **Calibrer avec un mouvement moteur l'app (8.0×6.5 qui est un crop numériquement zoomé).
connu** : slew d'un angle connu, comparer avec la mesure odometry.
```bash ```bash
# Override FoV via daemon HTTP API # Override FoV via daemon HTTP API

View File

@ -115,7 +115,7 @@ dwarfctl serve --ip 192.168.88.1 --cam wide
# With custom settings # With custom settings
dwarfctl serve --ip 192.168.88.1 --cam wide --addr 127.0.0.1:7777 \ dwarfctl serve --ip 192.168.88.1 --cam wide --addr 127.0.0.1:7777 \
--interval 5s --fov-h 8.0 --fov-v 6.5 --interval 5s --fov-h 42.65 --fov-v 24.45
``` ```
### How it works ### How it works

View File

@ -47,12 +47,12 @@ func (r Result) String() string {
// to ~0.1px; 512 improves sub-pixel resolution at ~4x the CPU cost. // to ~0.1px; 512 improves sub-pixel resolution at ~4x the CPU cost.
const DefaultSize = 256 const DefaultSize = 256
// DefaultFoVH/V are the documented DWARF Mini "wide" display FoV (degrees). // DefaultFoVH/V are the DWARF Mini wide camera physical FoV (degrees).
// NOTE: firmware-reported live FoV can differ widely (see analysis/DEVICE_MODELS.md), // Source: GetDeviceState live firmware report (42.650×24.450), not the
// so these are only a starting point — calibrate with a known motor move. // app display value (8.0×6.5 which is a digitally-zoomed view).
const ( const (
DefaultFoVH = 8.0 DefaultFoVH = 42.65
DefaultFoVV = 6.5 DefaultFoVV = 24.45
) )
// Estimate computes the rotation between two decoded images. // Estimate computes the rotation between two decoded images.