Skip to content

Commit 770c57a

Browse files
committed
initial commit
0 parents  commit 770c57a

File tree

96 files changed

+33475
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+33475
-0
lines changed

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
*.ipynb_checkpoints
2+
*.pyc
3+
__pycache__/
4+
.ipynb_checkpoints/
5+
.vscode

README.md

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
<img src="docs/images/wulpus_main.png" alt="WULPUS main" width="100%"/>
2+
3+
# WULPUS:
4+
## Wearable Ultra Low-Power Ultrasound
5+
6+
# Introduction
7+
8+
This repository contains the work in progress on the WULPUS ultrasound probe.
9+
10+
WULPUS is a truly wearable ultra-low-power open research ultrasound platform.
11+
12+
The probe has the following features:
13+
- **8 channels** (time-multiplexed)
14+
- **8 Msps** Analog-to-Digital converter (12 bit resolution)
15+
- **30.8 dB** Programable-Gain Amplifier + **10 dB** Operational Amplifier
16+
- **Bluetooth Low Energy** (BLE) wireless link (320 kbps throughput)
17+
- Up to **50 acquisitions per-second** (APS) (400 samples per acquisition, raw data streaming mode)
18+
- **Compactness** (46 x25 mm footprint)
19+
- **Ultra-Low Power** consumption of **22 mW** (raw data streaming mode, 50 APS)
20+
21+
# WULPUS system diagram
22+
23+
WULPUS probe comprises two printed circuit boards (PCBs):
24+
- Acquisition PCB: featuring an ultrasound MCU (MSP430FR5043) and BLE MCU (nRF52832)
25+
- High-Voltage PCB: featuring a High-voltage multiplexer (HV MUX), a transmit/receive switch, and a MOSFET driver.
26+
27+
<img src="docs/images/wulpus_system_diagram.png" alt="WULPUS System Diagram" width="100%"/>
28+
WULPUS System Diagram
29+
30+
# Structure of the repository
31+
32+
This repository has the following folders:
33+
34+
- `fw`, containing the firmware source code, namely:
35+
- source code for the nRF52832 MCU of the WULPUS probe, located at `fw/nrf52/ble_peripheral/US_probe_nRF52_firmware`
36+
- source code for the nRF52840 USB dongle, located at `fw/nrf52/peripheral/US_probe_dongle_firmware`
37+
- source code for the MSP430 ultrasound MCU (will be added in the next release under the `fw/msp430` folder)
38+
- `sw`, containing the Python code for the WULPUS Graphical User Interface
39+
40+
- `hw`, containing the Altium designer source files and pdf schematics for
41+
- WULPUS Acquisition PCB (located at `hw/wulpus_acquisition_pcb`)
42+
- WULPUS High-Voltage PCB (located at `hw/wulpus_hv_pcb`)
43+
44+
- `docs`, containing the project documentation (e.g., images of the device, user guide, ...)
45+
46+
# How to reproduce?
47+
48+
To build your own instance of WULPUS, the following steps should be completed:
49+
1. *PCBs manufacturing and assembly*<br>
50+
You can find the design files (Altium source files, schematics, bills of materials) under the `hw` folder.
51+
2. *Flashing MSP430 firmware*<br>
52+
You can find the instructions on seting-up the toolchain, compiling the firmware and flashing the MSP430 MCU in the `fw/msp430` folder.
53+
3. *Flashing nRF52 MCU and USB dongle firmware*<br>
54+
You can find the instructions on setting-up the toolchain, compiling the firmware, flashing the nRF52 MCU and USB dongle in the `fw/nrf52` folder.
55+
4. *Python dependencies installation on the host PC*<br>
56+
Follow the instructions in the `sw` folder to install the dependencies.
57+
58+
# Usage
59+
60+
- Power up the probe, either from the micro-USB connector or from the battery connector
61+
- Connect the USB dongle to the host PC
62+
- Activate the Python environent, launch the Jupyter notebook located in `sw` folder, and follow the instructions in the notebook
63+
64+
# Citation
65+
If you would like to reference the project, please cite the following paper:
66+
67+
```
68+
@inproceedings{frey2022wulpus,
69+
title={WULPUS: a Wearable Ultra Low-Power Ultrasound probe for multi-day monitoring of carotid artery and muscle activity},
70+
author={Frey, Sebastian and Vostrikov, Sergei and Benini, Luca and Cossettini, Andrea},
71+
booktitle={2022 IEEE International Ultrasonics Symposium (IUS)},
72+
pages={1--4},
73+
year={2022},
74+
organization={IEEE}
75+
}
76+
```
77+
78+
## Authors
79+
80+
The WULPUS system was developed at the [Integrated Systems Laboratory (IIS)](https://iis.ee.ethz.ch/) at ETH Zurich by:
81+
- [Sergei Vostrikov](https://scholar.google.com/citations?user=a0KNUooAAAAJ&hl=en) (Firmware, Software, Open-Sourcing)
82+
- [Sebastian Frey](https://www.linkedin.com/in/sebastian-frey-8b576b194/) (Firmware, PCB design)
83+
- [Luca Benini](https://scholar.google.com/citations?hl=en&user=8riq3sYAAAAJ) (Supervision, Conceptualization)
84+
- [Andrea Cossettini](https://scholar.google.com/citations?user=d8O91jIAAAAJ&hl=en) (Supervision, Project administration)
85+
86+
# References
87+
88+
[1] - Frey, Sebastian, Sergei Vostrikov, Luca Benini, and Andrea Cossettini. "WULPUS: a Wearable Ultra Low-Power Ultrasound probe for multi-day monitoring of carotid artery and muscle activity." In 2022 IEEE International Ultrasonics Symposium (IUS), pp. 1-4. IEEE, 2022.
89+
90+
# License
91+
The following files are released under Apache License 2.0 (`Apache-2.0`) (see `sw/LICENSE`):
92+
93+
- `sw/`
94+
95+
The following files are released under Solderpad v0.51 (`SHL-0.51`) (see `hw/LICENSE`):
96+
97+
- `hw/`
98+
99+
The following files are released under Creative Commons Attribution 4.0 International
100+
License (`CC-BY-4.0`) (see `docs/images/LICENSE`):
101+
102+
- `docs/images/`
103+
104+
The `fw/msp430/` and `fw/nrf52/` directories contain third-party sources that come with their own
105+
licenses. See the respective folders and source files for the licenses used.

docs/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Folder for the documentation
2+
User Guide will be added in the next releases

0 commit comments

Comments
 (0)