| Crates.io | jsy_mk_194 |
| lib.rs | jsy_mk_194 |
| version | 2.0.0 |
| created_at | 2023-12-03 16:47:28.516399+00 |
| updated_at | 2024-12-29 17:53:04.16608+00 |
| description | Rewrite of power reader JSY-MK-194. Tested on ESP32 |
| homepage | https://github.com/emeric-martineau/jsy_mk_194 |
| repository | https://github.com/emeric-martineau/jsy_mk_194 |
| max_upload_size | |
| id | 1056998 |
| size | 1,124,251 |
JSY-MK-194 is hardware to get some informations about current, voltage, frequency of AC current.
You found this hardware easly on some chiness website.

This crate has only tested on ESP32-WROOM-32 microcontroler.
First, you need provide implementation of some trait (hardware abstract):
use jsy_mk_194::*;
struct MyUartImpl {
// Some necessary fields
}
impl Uart for MyUartImpl {
fn read(&mut self, buf: &mut [u8], _timeout: u32) -> Result<usize, error::UartError> {
// Do something
}
fn write(&mut self, bytes: &[u8]) -> Result<usize, error::UartError> {
// Do something
}
}
struct MyDelayImpl {
// Some necessary fields
}
impl DelayMs<u16> for MyDelayImpl {
fn delay_ms(&mut self, _ms: u16) {
// Do something
}
}
Then, you need call read() method:
let mut jsy_my_194 = jsy_my_194::new(my_uart_impl, my_delay_impl);
let _ = jsy_my_194.read();
print!("First channel power: {}", jsy_my_194.channel1.power());
That's all!
DON'T USE IT. IT'S MISTAKE
read_with_timeout method to allow user set his timeoutThe code is released under MIT License to allow every body to use it in all conditions. If you love open-source software and this crate, please give some money to HaikuOS or ReactOS.