
Sdcdmuxemmc
hnz1102/sdcdmux-emmc
SD CARD and eMMC Device Multiplexer with Infrared Remote Controller

Logging Thermocouple Temperature and Send Data to InfluxDB system.
Temp logger is an open-source printed circuit board by hnz1102, from the hnz1102/temp-logger repository on GitHub. It is a 2-layer board of 50 × 70 mm with 52 parts on 38 nets, routed with 356 tracks and 116 vias.
It is built around the ESP32-C3-WROOM-02-N4, MAX31855KASA+T and SPX3819M5-L, with the 2N7002K, BK2125HS601-T and IRF7606TRPBF among its other parts. Its parts include 17 resistors, 11 capacitors, 5 ICs, 5 diodes and 5 switches. It belongs with the power boards and the ESP32 and RISC-V boards of this library.
Temperature Logger for K-Type Thermocouple
This board provides a logging function that gets data on temperature from a K-type thermocouple.
Microcontroller on board - No need for a PC when you are measuring a temperature.
Transfer Temperature data via WiFi - This Logger can transfer temperature data to Linux PC via WiFi network and you can see the dashboard graph in influxDB.
Battery Powered - Using LiPo battery. It can run for 48 hours.
Put on the thermocouple where you want to measure the temperature.

Push the START/STOP button, then TempLogger starts to log the temperature. And if you want to send data on temperature, push the SEND button. During the measurement, TempLogger can send the data to a PC.

A display can show you the current temperature, battery voltage, and WiFi connection status.
If WiFi could not connect to WiFi Access Point, the WiFi mark won't be shown on the display.
You can see the realtime data using Dashboard by InfluxDB.

After the measure, to stop logging, push the START/STOP button again.
To charge a battery, just connect to a USB mini-B port from the bus-powered USB port. During the charge, the CHG LED is RED ON. After the charging is full, the FUL LED is GREEN ON. And the charging will be stopped automatically. But,
DO NOT CONTINUE THE CHARGE IF THE BATTERY IS FULL FOR A LONG TIME.

There are data for 3D printer in hardware/*.stl.
Using Ubuntu 22.04.02 LTS
$ sudo apt -y install git python3 python3-pip gcc build-essential curl pkg-config libudev-dev libtinfo5 clang libclang-dev llvm-dev udev
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
select No.1
$ source "$HOME/.cargo/env"$ cargo install ldproxy
$ cargo install espup
$ rustup toolchain install nightly --component rust-src
$ rustup target add riscv32imc-unknown-none-elf
$ cargo install cargo-espflash$ sudo sh -c 'echo "SUBSYSTEMS==\"usb\", ATTRS{idVendor}==\"303a\", ATTRS{idProduct}==\"1001\", MODE=\"0666\"" > /etc/udev/rules.d/99-esp32.rules'
$ sudo udevadm control --reload-rules
$ sudo udevadm trigger$ git clone https://github.com/hnz1102/temp-logger.git
$ cd temp-logger/src/temp-loggersrc\temp-logger\cfg.toml
[templogger]
wifi_ssid = "<your-AP-ssid>" # Set your AP ssid.
wifi_psk = "<your-AP-Password>" # Set password for ssid
http_server = "<PC address>:3000" # Set IP address and port. port should be 3000.Connecting the Temp-Logger by USB to this build code PC. Then,
$ cargo espflash board-info
select /dev/ttyACM0
Chip type: esp32c3 (revision v0.4)
Crystal frequency: 40MHz
Flash size: 4MB
Features: WiFi, BLE
MAC address: xx:xx:xx:xx:xx:xx
$ rustup component add rust-src --toolchain nightly-2023-06-10-x86_64-unknown-linux-gnu$ cargo espflash flash --release --monitor
App/part. size: 950,864/3,145,728 bytes, 30.23%
[00:00:00] [========================================] 12/12 0x0
[00:00:00] [========================================] 1/1 0x8000
[00:00:11] [========================================] 535/535 0x10000 [2023-08-03T13:05:12Z INFO ] Flashing has completed!
And automaticaly boot!$ wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.7.0-amd64.deb
$ sudo dpkg -i influxdb2-2.7.0-amd64.deb
$ sudo service influxdb startConnect to the 'http://<influxDB installed PC Address>:8086'Click GET STARTED and set Username, Password, Initial Organization Name, and Initial Bucket Name
| Term | Value |
|---|---|
| Username | Set login username as influxDB administrator web console |
| Password | Set login password as influxDB administrator web console |
| Initial Organization Name | Organization Name ex. ORG |
| Initail Bucket Name | LOGGER |
After set them, click CONTINUE.
You can see the operator API token on the browser. YOU WON'T BE ABLE TO SEE IT AGAIN!
After copy the token, click CONFIGURE LATER.
Click the Dashboard icon, and select Import Dashboard from the CREATE DASHBOARD menu.
Drop the src/server/temp-logger_dashboard.json file to Drop a file here, then click IMPORT JSON AS DASHBOARD.
You can see the Temp-Logger Dashboard pannel on the Dashboards page.
Click this panel, and You can see the Temp-Logger Dashboard.
If you want to customize the dashboard design, click configure mark. You can change the graph design.
Temp-Logger can't directly send data to influxDB API since ESP32-C3 has not TLS software stack. This agent program is responsible for changing HTTP communication from Temp-Logger to HTTPS communication and passing data to the InfluxDB API. This agent is purpose only for a local network because it has no security.
Before install you have to change parameters in main.js.
src/server/main.js
const token = "<influxDB API Access Token>"
const url = 'http://<influxDB installed IP address>:8086'
let org = `<YOUR ORGANIZATION NAME: it has to be same the Initial Organization Name>`
let bucket = `LOGGER`Install the agent program.
$ cd src/server/
$ ./install.shIf it is `Active: active`` as shown below, it has started normally.
● influxdb-agent.service - InfluxDB Agent
Loaded: loaded (/lib/systemd/system/influxdb-agent.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2023-08-05 02:24:18 UTC; 15ms agoPush the START/STOP button, and push SEND button. Logging data will be sent to the influxDB. You can see the data on the dashboard.
A small modification was made to monitor the battery voltage.
I already fixed new PCB gerber data.
This source code is licensed under MIT. Other Hardware Schematic documents are licensed under CC-BY-SA V4.0.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 6 | 330 | tbctl:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R101, R102, R107, R110, R113, R114 |
| 5 | 10K | tbctl:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R103, R104, R109, R111, R118 |
| 3 | 0.1uF | Capacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C103, C106, C111 |
| 3 | 20K 1% | tbctl:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R105, R108, R117 |
| 3 | LED RED SML-E12V8WT86 | tbctl:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolder | D101, D102, D103 |
| 2 | 10uF | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C104, C107 |
| 2 | 16pF | Capacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C109, C110 |
| 2 | 1uF | Capacitor_SMD:C_0805_2012Metric | C102, C108 |
| 2 | SW_Push_LED | tbctl:LS601-CU_CAP | SW101, SW102 |
| 1 | 0.1uF | Capacitor_SMD:C_0603_1608Metric | C105 |
| 1 | 100K | tbctl:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R115 |
| 1 | 12K 1% | tbctl:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R106 |
| 1 | 2K | tbctl:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R112 |
| 1 | 2N7002K | Package_TO_SOT_SMD:SOT-23 | Q101 |
| 1 | 32.7680KHz | Crystal:Crystal_SMD_3215-2Pin_3.2x1.5mm | Y102 |
| 1 | 4.7uF | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C101 |
| 1 | BK2125HS601-T | tbctl:L_0603_1608Metric_Pad1.05x0.95mm_HandSolder | FB101 |
| 1 | BOOT TS-06104 | tbctl:TS-06104 | SW103 |
| 1 | Conn_01x02 | Connector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J102 |
| 1 | Conn_K_TERM_XH_2P | tbctl:PCC-SMP_D | J101 |
| 1 | ESP32-C3-WROOM-02-N4 | tbctl:IC18_ESP32-C3-WROOM-02-N4_EXP | U102 |
| 1 | IRF7606TRPBF | Package_SO:MSOP-8_3x3mm_P0.65mm | Q102 |
| 1 | LED GREEN SML-E12P8WT86 | tbctl:LED_0603_1608Metric_Pad1.05x0.95mm_HandSolder | D104 |
| 1 | LiPo BATTERY Socket | Connector_JST:JST_PH_B2B-PH-K_1x02_P2.00mm_Vertical | J104 |
| 1 | MAX31855KASA | Package_SO:SOIC-8_3.9x4.9mm_P1.27mm | U103 |
| 1 | MCP73831-2-OT | Package_TO_SOT_SMD:SOT-23-5 | U101 |
| 1 | NSR0340HT1G | Diode_SMD:D_SOD-323_HandSoldering | D105 |
| 1 | RESET TS-06104 | tbctl:TS-06104 | SW104 |
| 1 | SLIDE_SW IS-1245T-G | tbctl:SLIDE_SW_IS1235-G | SW105 |
| 1 | SPX3819M5-L | Package_TO_SOT_SMD:SOT-23-5 | U104 |
| 1 | SSD1306_DISPLAY | tbctl:OLED I2C DISPLAY | U105 |
| 1 | SolderJumper_2_Open | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | JP101 |
| 1 | USB_B_Mini | tbctl:usb mini B connector c2235 dim 2 | J103 |

hnz1102/sdcdmux-emmc
SD CARD and eMMC Device Multiplexer with Infrared Remote Controller


hnz1102/current-logger
This tool provides a logging function that gets data on voltage, current and power consumption. Voltage input range is from 0 to 85V, Maximum current input is 15A.

hnz1102/shared-usb-memory
USB Memory with One-touch Switching Between Two Device Connections

hnz1102/mini-current-meter
Mini Current Meter using INA228A ultra-precise digital power monitor



It measures 50 × 70 mm and has 2 copper layers, 1.6 mm thick.
52 parts, built around the ESP32-C3-WROOM-02-N4, MAX31855KASA+T, SPX3819M5-L and 2N7002K. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the hnz1102/temp-logger repository on GitHub, at the commit this page was made from: the board is hardware/templogger.kicad_pcb and its schematic hardware/mc.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask hnz1102 before reusing the design.