autd3-modulation 0.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. autd3_modulation-0.0.0/Cargo.toml +102 -0
  2. autd3_modulation-0.0.0/LICENSE +21 -0
  3. autd3_modulation-0.0.0/PKG-INFO +8 -0
  4. autd3_modulation-0.0.0/THIRD-PARTY-LICENSES.md +945 -0
  5. autd3_modulation-0.0.0/bindings/python/Cargo.lock +2069 -0
  6. autd3_modulation-0.0.0/bindings/python/Cargo.toml +47 -0
  7. autd3_modulation-0.0.0/bindings/python/autd3-modulation/Cargo.toml +22 -0
  8. autd3_modulation-0.0.0/bindings/python/autd3-modulation/src/lib.rs +293 -0
  9. autd3_modulation-0.0.0/bindings/python/autd3-python-capsule/Cargo.toml +21 -0
  10. autd3_modulation-0.0.0/bindings/python/autd3-python-capsule/src/lib.rs +188 -0
  11. autd3_modulation-0.0.0/crates/autd3-rs/Cargo.toml +30 -0
  12. autd3_modulation-0.0.0/crates/autd3-rs/src/client/config.rs +49 -0
  13. autd3_modulation-0.0.0/crates/autd3-rs/src/client/mod.rs +337 -0
  14. autd3_modulation-0.0.0/crates/autd3-rs/src/client/pool.rs +111 -0
  15. autd3_modulation-0.0.0/crates/autd3-rs/src/client/response_future.rs +23 -0
  16. autd3_modulation-0.0.0/crates/autd3-rs/src/client/rt.rs +442 -0
  17. autd3_modulation-0.0.0/crates/autd3-rs/src/client/tests.rs +1175 -0
  18. autd3_modulation-0.0.0/crates/autd3-rs/src/command/mod.rs +44 -0
  19. autd3_modulation-0.0.0/crates/autd3-rs/src/command/modulation.rs +148 -0
  20. autd3_modulation-0.0.0/crates/autd3-rs/src/command/pattern.rs +77 -0
  21. autd3_modulation-0.0.0/crates/autd3-rs/src/commands.rs +12 -0
  22. autd3_modulation-0.0.0/crates/autd3-rs/src/datagram.rs +703 -0
  23. autd3_modulation-0.0.0/crates/autd3-rs/src/firmware_version.rs +14 -0
  24. autd3_modulation-0.0.0/crates/autd3-rs/src/fpga_state.rs +22 -0
  25. autd3_modulation-0.0.0/crates/autd3-rs/src/lib.rs +33 -0
  26. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/change_mod_bank.rs +83 -0
  27. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/change_pattern_bank.rs +100 -0
  28. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/clear.rs +55 -0
  29. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/config_modulation.rs +135 -0
  30. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/config_pattern.rs +252 -0
  31. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/emulate_gpio_in.rs +52 -0
  32. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/force_fan.rs +46 -0
  33. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/mod.rs +122 -0
  34. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/nop.rs +40 -0
  35. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/set_gpio_out.rs +123 -0
  36. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/set_output_mask.rs +97 -0
  37. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/set_phase_correction.rs +91 -0
  38. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/set_pulse_width_table.rs +95 -0
  39. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/set_silencer.rs +321 -0
  40. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/synchronize.rs +26 -0
  41. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/write_foci_buffer.rs +165 -0
  42. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/write_modulation_buffer.rs +164 -0
  43. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/write_pattern_buffer.rs +146 -0
  44. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/write_pattern_compressed.rs +250 -0
  45. autd3_modulation-0.0.0/crates/autd3-rs/src/operation/xor_hash.rs +110 -0
  46. autd3_modulation-0.0.0/crates/autd3-rs/src/response.rs +15 -0
  47. autd3_modulation-0.0.0/crates/autd3-rs/src/stm/config.rs +123 -0
  48. autd3_modulation-0.0.0/crates/autd3-rs/src/stm/foci.rs +298 -0
  49. autd3_modulation-0.0.0/crates/autd3-rs/src/stm/generators.rs +93 -0
  50. autd3_modulation-0.0.0/crates/autd3-rs/src/stm/mod.rs +9 -0
  51. autd3_modulation-0.0.0/crates/autd3-rs/src/stm/pattern.rs +277 -0
  52. autd3_modulation-0.0.0/crates/autd3-rs/src/tuning.rs +77 -0
  53. autd3_modulation-0.0.0/crates/autd3-rs-core/Cargo.toml +29 -0
  54. autd3_modulation-0.0.0/crates/autd3-rs-core/src/common/angle.rs +172 -0
  55. autd3_modulation-0.0.0/crates/autd3-rs-core/src/common/freq.rs +147 -0
  56. autd3_modulation-0.0.0/crates/autd3-rs-core/src/common/length.rs +150 -0
  57. autd3_modulation-0.0.0/crates/autd3-rs-core/src/common/mod.rs +25 -0
  58. autd3_modulation-0.0.0/crates/autd3-rs-core/src/common/velocity.rs +73 -0
  59. autd3_modulation-0.0.0/crates/autd3-rs-core/src/error.rs +176 -0
  60. autd3_modulation-0.0.0/crates/autd3-rs-core/src/geometry/autd3.rs +132 -0
  61. autd3_modulation-0.0.0/crates/autd3-rs-core/src/geometry/autd3_unity.rs +114 -0
  62. autd3_modulation-0.0.0/crates/autd3-rs-core/src/geometry/device.rs +94 -0
  63. autd3_modulation-0.0.0/crates/autd3-rs-core/src/geometry/mod.rs +141 -0
  64. autd3_modulation-0.0.0/crates/autd3-rs-core/src/lib.rs +28 -0
  65. autd3_modulation-0.0.0/crates/autd3-rs-core/src/link/cycle_outcome.rs +4 -0
  66. autd3_modulation-0.0.0/crates/autd3-rs-core/src/link/device_state.rs +26 -0
  67. autd3_modulation-0.0.0/crates/autd3-rs-core/src/link/interface.rs +34 -0
  68. autd3_modulation-0.0.0/crates/autd3-rs-core/src/link/into_link.rs +19 -0
  69. autd3_modulation-0.0.0/crates/autd3-rs-core/src/link/mod.rs +36 -0
  70. autd3_modulation-0.0.0/crates/autd3-rs-core/src/link/state_check.rs +30 -0
  71. autd3_modulation-0.0.0/crates/autd3-rs-core/src/link/stats.rs +44 -0
  72. autd3_modulation-0.0.0/crates/autd3-rs-core/src/link/status.rs +46 -0
  73. autd3_modulation-0.0.0/crates/autd3-rs-core/src/mirror/mod.rs +24 -0
  74. autd3_modulation-0.0.0/crates/autd3-rs-core/src/mirror/silencer.rs +232 -0
  75. autd3_modulation-0.0.0/crates/autd3-rs-core/src/mirror/transition.rs +154 -0
  76. autd3_modulation-0.0.0/crates/autd3-rs-core/src/params.rs +29 -0
  77. autd3_modulation-0.0.0/crates/autd3-rs-core/src/protocol/cmd.rs +117 -0
  78. autd3_modulation-0.0.0/crates/autd3-rs-core/src/protocol/error_detail.rs +76 -0
  79. autd3_modulation-0.0.0/crates/autd3-rs-core/src/protocol/mod.rs +20 -0
  80. autd3_modulation-0.0.0/crates/autd3-rs-core/src/protocol/rx_frame.rs +42 -0
  81. autd3_modulation-0.0.0/crates/autd3-rs-core/src/protocol/seq.rs +88 -0
  82. autd3_modulation-0.0.0/crates/autd3-rs-core/src/protocol/tx_frame.rs +76 -0
  83. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/bank.rs +21 -0
  84. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/control_point.rs +89 -0
  85. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/dc_sys_time.rs +164 -0
  86. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/emission.rs +29 -0
  87. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/focus.rs +87 -0
  88. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/gpio.rs +16 -0
  89. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/intensity.rs +128 -0
  90. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/loop_behavior.rs +43 -0
  91. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/mod.rs +27 -0
  92. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/phase.rs +168 -0
  93. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/pulse_width.rs +87 -0
  94. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/sampling_config.rs +267 -0
  95. autd3_modulation-0.0.0/crates/autd3-rs-core/src/value/transition_mode.rs +64 -0
  96. autd3_modulation-0.0.0/crates/autd3-rs-modulation/Cargo.toml +15 -0
  97. autd3_modulation-0.0.0/crates/autd3-rs-modulation/src/constant.rs +25 -0
  98. autd3_modulation-0.0.0/crates/autd3-rs-modulation/src/fourier.rs +212 -0
  99. autd3_modulation-0.0.0/crates/autd3-rs-modulation/src/lib.rs +23 -0
  100. autd3_modulation-0.0.0/crates/autd3-rs-modulation/src/radiation_pressure.rs +49 -0
  101. autd3_modulation-0.0.0/crates/autd3-rs-modulation/src/sampling.rs +25 -0
  102. autd3_modulation-0.0.0/crates/autd3-rs-modulation/src/sampling_mode.rs +121 -0
  103. autd3_modulation-0.0.0/crates/autd3-rs-modulation/src/sine.rs +153 -0
  104. autd3_modulation-0.0.0/crates/autd3-rs-modulation/src/square.rs +153 -0
  105. autd3_modulation-0.0.0/pyproject.toml +16 -0
@@ -0,0 +1,102 @@
1
+ [workspace]
2
+ resolver = "3"
3
+ members = [
4
+ "crates/autd3-rs",
5
+ "crates/autd3-rs-core",
6
+ "crates/autd3-rs-firmware-emulator",
7
+ "crates/autd3-rs-pattern",
8
+ "crates/autd3-rs-pattern-holo",
9
+ "crates/autd3-rs-link-ethercrab",
10
+ "crates/autd3-rs-link-nop",
11
+ "crates/autd3-rs-link-remote",
12
+ "crates/autd3-rs-link-soem",
13
+ "crates/autd3-rs-link-twincat",
14
+ "crates/autd3-rs-modulation",
15
+ "tools/perftest",
16
+ "tools/patternsoak",
17
+ "tools/synctune",
18
+ "tools/firmware",
19
+ "examples",
20
+ ]
21
+ exclude = [
22
+ "xtask",
23
+ "bindings/python",
24
+ "bindings/ffi",
25
+ "simulator",
26
+ "emulator",
27
+ ]
28
+
29
+ [workspace.package]
30
+ version = "0.1.0"
31
+ edition = "2024"
32
+ rust-version = "1.96"
33
+ license = "MIT"
34
+ authors = ["Shun Suzuki <suzuki@hapis.k.u-tokyo.ac.jp>"]
35
+ repository = "https://github.com/shinolab/autd3-sdk"
36
+
37
+ [workspace.dependencies]
38
+ approx = { version = "0.5.1", default-features = false, features = ["std"] }
39
+ criterion = { version = "0.5.1", default-features = false }
40
+ nalgebra = { version = "0.35.0", default-features = false, features = ["std"] }
41
+ rand = { version = "0.10.1", default-features = false, features = ["std", "thread_rng"] }
42
+ thiserror = { version = "2.0.18", default-features = false, features = ["std"] }
43
+ async-trait = { version = "0.1.89", default-features = false }
44
+ zerocopy = { version = "0.8.52", default-features = false, features = ["derive"] }
45
+ tokio = { version = "1.52.3", default-features = false, features = [
46
+ "sync",
47
+ "time",
48
+ "macros",
49
+ "rt",
50
+ ] }
51
+ ethercrab = { version = "0.7.1", default-features = false, features = ["std"] }
52
+ futures-util = { version = "0.3.32", default-features = false, features = ["alloc"] }
53
+ thread-priority = { version = "3.1.1", default-features = false }
54
+ core_affinity = { version = "0.8.3", default-features = false }
55
+ clap = { version = "4.6.1", default-features = false, features = [
56
+ "std",
57
+ "derive",
58
+ "help",
59
+ "usage",
60
+ "error-context",
61
+ ] }
62
+ humantime = { version = "2.3.0", default-features = false }
63
+ chrono = { version = "0.4.45", default-features = false, features = ["std"] }
64
+ anyhow = { version = "1.0.102", default-features = false, features = ["std"] }
65
+ serde = { version = "1.0.228", default-features = false, features = ["std", "derive"] }
66
+ serde_json = { version = "1.0.150", default-features = false, features = ["std"] }
67
+ axum = { version = "0.8.9", default-features = false, features = [
68
+ "http1",
69
+ "tokio",
70
+ "ws",
71
+ ] }
72
+ tower-http = { version = "0.7.0", default-features = false, features = ["fs"] }
73
+ tracing = { version = "0.1.44", default-features = false }
74
+ tracing-subscriber = { version = "0.3.23", default-features = false, features = [
75
+ "std",
76
+ "fmt",
77
+ "ansi",
78
+ "env-filter",
79
+ ] }
80
+
81
+ autd3-rs = { version = "0.1.0", path = "crates/autd3-rs" }
82
+ autd3-rs-core = { version = "0.1.0", path = "crates/autd3-rs-core" }
83
+ autd3-rs-firmware-emulator = { version = "0.1.0", path = "crates/autd3-rs-firmware-emulator" }
84
+ autd3-rs-pattern = { version = "0.1.0", path = "crates/autd3-rs-pattern" }
85
+ autd3-rs-pattern-holo = { version = "0.1.0", path = "crates/autd3-rs-pattern-holo" }
86
+ autd3-rs-link-ethercrab = { version = "0.1.0", path = "crates/autd3-rs-link-ethercrab" }
87
+ autd3-rs-link-nop = { version = "0.1.0", path = "crates/autd3-rs-link-nop" }
88
+ autd3-rs-link-remote = { version = "0.1.0", path = "crates/autd3-rs-link-remote" }
89
+ autd3-rs-link-soem = { version = "0.1.0", path = "crates/autd3-rs-link-soem" }
90
+ autd3-rs-link-twincat = { version = "0.1.0", path = "crates/autd3-rs-link-twincat" }
91
+ autd3-rs-modulation = { version = "0.1.0", path = "crates/autd3-rs-modulation" }
92
+
93
+ [workspace.lints.rust]
94
+ warnings = "deny"
95
+
96
+ [workspace.lints.clippy]
97
+ all = { level = "warn", priority = -1 }
98
+ pedantic = { level = "warn", priority = -1 }
99
+ module_name_repetitions = "allow"
100
+ missing_errors_doc = "allow"
101
+ missing_panics_doc = "allow"
102
+ cast_precision_loss = "allow"
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Shun Suzuki
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,8 @@
1
+ Metadata-Version: 2.4
2
+ Name: autd3-modulation
3
+ Version: 0.0.0
4
+ Requires-Dist: autd3-core
5
+ License-File: LICENSE
6
+ Summary: Python bindings for autd3-rs-modulation (sine, etc.).
7
+ License-Expression: MIT
8
+ Requires-Python: >=3.10