Skip to content

Commit

Permalink
Change repetition rate of the default pattern.
Browse files Browse the repository at this point in the history
  • Loading branch information
Onwrikbaar committed Sep 23, 2024
1 parent ed6ffaa commit 5db4159
Show file tree
Hide file tree
Showing 9 changed files with 1,393 additions and 26 deletions.
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ NeoDK is experimental, recreational, educational hardware and software. It comes
### Safety
NeoDK can generate potentially lethal voltages and currents on its outputs and on internal components, even when powered from a battery. The risks associated with building, testing and using this device can be reduced but not eliminated.

The NeoDK device is designed to stay well within the IEC 60601-2-10 limits. However, these limits are not necessarily maintained when the supply voltage, circuit, components or accompanying firmware are changed in any way.
The NeoDK device is designed to stay within the IEC 60601-2-10 limits once its firmware is out of beta. However, these limits are not necessarily maintained when the supply voltage, circuit, components or accompanying firmware are changed in any way.

### Audience
This project is intended for experienced electronics hobbyists and professionals, who possess a keen understanding of the risks associated with electrostimulation and high-voltage circuitry, and who desire one or more of the following:
Expand All @@ -47,3 +47,6 @@ NeoDK's electronics and firmware can do things no commercially available e-stim

### Why to start simple
"A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over with a working simple system." -- John Gall

## NeoDK in the media
Joanne's Reviews always informative and entertaining YouTube [E-stim Livestreams](https://www.youtube.com/@JoannesReviews/streams) recently featured an [item about NeoDK](https://youtu.be/giEaDksRmh0?t=1460).
1 change: 0 additions & 1 deletion firmware/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,6 @@ STM32G0xx_INC += \
$(STM32CUBE_G0)/Drivers/CMSIS/Core/Include \
$(STM32CUBE_G0)/Drivers/CMSIS/Device/ST/STM32G0xx/Include \
$(STM32CUBE_G0)/Drivers/STM32G0xx_HAL_Driver/Inc \
$(GNU_INSTALL_ROOT)/../include \
$(SEGGER) \

# Libraries common to all targets
Expand Down
15 changes: 8 additions & 7 deletions firmware/Setup.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
## Updating the firmware without using a debugging probe
1. Download and install STM's free [STM32CubeProgrammer](https://www.st.com/en/development-tools/stm32cubeprog.html) programming tool.
2. Connect NeoDK to a computer using a USB-to-3.5mm-TRS-serial cable. Suitable cables (3.3V TTL, Tip=Tx, Ring=Rx, Sleeve=GND) are readily available from various sources, like Aliexpress, for about €10 including shipping.
3. Press and hold the pushbutton on NeoDK while switching on its power (or connecting the battery). This puts NeoDK in bootloader mode. Release the button.
4. Open a terminal window and execute the following on the command line:<br/>
&nbsp;&nbsp;`cd firmware`<br/>
&nbsp;&nbsp;`STM32_Programmer_CLI -c port=/dev/tty.usbserial-0001 -w build/neodk_g071.hex -v`<br/>
(Specify the COM port that corresponds to your USB-serial cable, in place of `/dev/tty.usbserial-0001`).<br/>
2. Download [neodk_g071.hex](https://github.com/Onwrikbaar/NeoDK/tree/main/firmware/build/neodk_g071.hex).
3. Connect NeoDK to a computer using a USB-to-3.5mm-TRS-serial cable. Suitable cables (3.3V TTL, Tip=Tx, Ring=Rx, Sleeve=GND) are readily available from various sources, like Aliexpress, for about €10 including shipping.
4. Press and hold the pushbutton on NeoDK while switching on its power (or connecting the battery). This puts NeoDK in bootloader mode. Release the button.
5. Open a terminal window and execute the following on the command line:<br/>
&nbsp;&nbsp;`STM32_Programmer_CLI -c port=/dev/tty.usbserial-0001 -w neodk_g071.hex -v`<br/>
Specify the COM port that corresponds to your USB-serial cable (for instance `COM7` on Windows), in place of `/dev/tty.usbserial-0001`.<br/>
A power cycle starts the firmware; the blue LED should light up and the box is ready for use.

## Controlling NeoDK from a computer
Expand All @@ -14,7 +14,7 @@ A power cycle starts the firmware; the blue LED should light up and the box is r
3. The following commands can be typed into the command box:
- /? list the commands
- /a print the instantaneous primary current and some voltages
- /b simulate the button, to start/pause/resume the pattern
- /b simulate the pushbutton, to start/pause/resume the pattern
- /d primary voltage down by 200 mV
- /l toggle the lovely blue LED
- /u primary voltage up by 200 mV
Expand All @@ -40,6 +40,7 @@ A suitable probe is the Segger JLink or Segger JLink EDU. Other probes supportin
3. In your home directory, create a softlink named 'SEGGER_RTT' to directory 'JLink_V792k/Samples/RTT/SEGGER_RTT_V792k/RTT' of the just installed tree.

### Checking your installation
&nbsp;&nbsp;`cd NeoDK/firmware`<br/>
In this directory ('firmware'), at the command prompt type

&nbsp;&nbsp;`make`
Expand Down
Loading

0 comments on commit 5db4159

Please sign in to comment.