diff --git a/DOC/HTML/cif.html b/DOC/HTML/cif.html
index 6b9761f..58d6eea 100644
--- a/DOC/HTML/cif.html
+++ b/DOC/HTML/cif.html
@@ -1715,6 +1715,12 @@ The mA which may be drawn from each GPIO whilst still guaranteeing the
high and low levels.
An array of script parameters.
+
+percent On-Off-Level (OOL) buffer to consume for wave output.
+
+the percent of all DMA control blocks to consume.
+
+the percent of OOL buffer to consume for wave input (flags).
typedef struct
{
uint16_t addr; // slave address
uint16_t flags;
uint16_t len; // msg length
uint8_t *buf; // pointer to msg data
} pi_i2c_msg_t;
port: 1024-32000
The port used to bind to the pigpio socket. Defaults to 8888.
@@ -1873,7 +1879,7 @@ A 16-bit word value.
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/download.html b/DOC/HTML/download.html
index 5da5c77..84ec4da 100644
--- a/DOC/HTML/download.html
+++ b/DOC/HTML/download.html
@@ -113,7 +113,7 @@ sudo apt-get install pigpio python-pigpio python3-pigpio
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/ex_LDR.html b/DOC/HTML/ex_LDR.html
index 615d9b4..6b1cf23 100644
--- a/DOC/HTML/ex_LDR.html
+++ b/DOC/HTML/ex_LDR.html
@@ -197,7 +197,7 @@ Gnuplot readings 18-21 seconds
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/ex_ir_remote.html b/DOC/HTML/ex_ir_remote.html
index 257d613..5f548cb 100644
--- a/DOC/HTML/ex_ir_remote.html
+++ b/DOC/HTML/ex_ir_remote.html
@@ -300,7 +300,7 @@ viewed using GTKWave.
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/ex_motor_shield.html b/DOC/HTML/ex_motor_shield.html
index 8378282..e5d28f0 100644
--- a/DOC/HTML/ex_motor_shield.html
+++ b/DOC/HTML/ex_motor_shield.html
@@ -301,7 +301,7 @@ PI_OUTPUT);
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/ex_rotary_encoder.html b/DOC/HTML/ex_rotary_encoder.html
index e6df718..b15b354 100644
--- a/DOC/HTML/ex_rotary_encoder.html
+++ b/DOC/HTML/ex_rotary_encoder.html
@@ -232,7 +232,7 @@ before completing the level transition
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/ex_sonar_ranger.html b/DOC/HTML/ex_sonar_ranger.html
index 9e60c39..1db8410 100644
--- a/DOC/HTML/ex_sonar_ranger.html
+++ b/DOC/HTML/ex_sonar_ranger.html
@@ -211,7 +211,7 @@ plot 'sonar-secs.dat' title 'Sonar'
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/examples.html b/DOC/HTML/examples.html
index 59e3907..3d82fca 100644
--- a/DOC/HTML/examples.html
+++ b/DOC/HTML/examples.html
@@ -550,7 +550,7 @@ Related code.
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/faq.html b/DOC/HTML/faq.html
index 1286cbe..4d06c5e 100644
--- a/DOC/HTML/faq.html
+++ b/DOC/HTML/faq.html
@@ -508,7 +508,7 @@ should I use?
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/index.html b/DOC/HTML/index.html
index 2606ba4..fdaeaa6 100644
--- a/DOC/HTML/index.html
+++ b/DOC/HTML/index.html
@@ -708,7 +708,7 @@ Hirst's
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/misc.html b/DOC/HTML/misc.html
index a6179f4..e4db51a 100644
--- a/DOC/HTML/misc.html
+++ b/DOC/HTML/misc.html
@@ -80,7 +80,7 @@ VCD can be read by many programs, in particular
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/pdif.html b/DOC/HTML/pdif.html
index 8084e94..2256f61 100644
--- a/DOC/HTML/pdif.html
+++ b/DOC/HTML/pdif.html
@@ -1160,7 +1160,7 @@ A 16-bit word value.
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/pdif2.html b/DOC/HTML/pdif2.html
index fad8bdb..db30a8c 100644
--- a/DOC/HTML/pdif2.html
+++ b/DOC/HTML/pdif2.html
@@ -568,18 +568,16 @@ specified delay between the pulse and the next.
Returns the new waveform id if OK, otherwise PI_EMPTY_WAVEFORM,
PI_NO_WAVEFORM_ID, PI_TOO_MANY_CBS, or PI_TOO_MANY_OOL.
-This function creates a waveform like wave_create but pads the consumed
+This function creates a waveform like wave_create but pads the consumed
resources. Where percent gives the percentage of the resources to use (in terms
of the theoretical maximum, not the current amount free). This allows the reuse
-of deleted waves while a transmission is active. Upon success a wave id
-greater than or equal to 0 is returned, otherwise PI_EMPTY_WAVEFORM,
-PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
-
pi: >=0 (as returned by pigpio_start).
The data provided by the wave_add_* functions are consumed by this
+of deleted waves while a transmission is active.
+
pi: >=0 (as returned by pigpio_start).
percent: 0-100, size of waveform as percentage of maximum available.
The data provided by the wave_add_* functions are consumed by this
function.
As many waveforms may be created as there is space available. The
wave id is passed to wave_send_* to specify the waveform to transmit.
A usage would be the creation of two waves where one is filled while the other
-is beeing transmitted. Each wave is assigned 50% of the available resources.
+is being transmitted. Each wave is assigned 50% of the resources.
This buffer structure allows the transmission of infinite wave sequences.
Normal usage:
Step 1. wave_clear to clear all waveforms and added data.
@@ -1388,6 +1386,8 @@ The mA which may be drawn from each GPIO whilst still guaranteeing the
high and low levels.
An array of script parameters.
+
+The size of waveform as percentage of maximum available.
An integer defining a connected Pi. The value is returned by
pigpio_start upon success.
@@ -1515,7 +1515,7 @@ A 16-bit word value.
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/pif.html b/DOC/HTML/pif.html
index 6ed3739..1cc3c17 100644
--- a/DOC/HTML/pif.html
+++ b/DOC/HTML/pif.html
@@ -77,7 +77,7 @@ The format of the commands is identical to those used by
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/pig2vcd.html b/DOC/HTML/pig2vcd.html
index 8797c15..e64a2fb 100644
--- a/DOC/HTML/pig2vcd.html
+++ b/DOC/HTML/pig2vcd.html
@@ -75,7 +75,7 @@ The state lines contain the new state followed by the gpio identifier.
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/pigpiod.html b/DOC/HTML/pigpiod.html
index b40a71e..d522889 100644
--- a/DOC/HTML/pigpiod.html
+++ b/DOC/HTML/pigpiod.html
@@ -106,7 +106,7 @@ The USB power mode is fixed at 1.2 amps (high power).
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/pigs.html b/DOC/HTML/pigs.html
index 3aaeaf9..d4b4079 100644
--- a/DOC/HTML/pigs.html
+++ b/DOC/HTML/pigs.html
@@ -944,7 +944,7 @@ set all the fields to zero (the pulse will be ignored).
When a waveform is started each pulse is executed in order with
the specified delay between the pulse and the next.
Example
$ pigs wvas 4 9600 0 23 45 67 89 90
37
$ pigs wvcre
0
$ pigs wvcre
-69
ERROR: attempt to create an empty waveform
WVCAP
- - Create a waveform of fixed size
Similar to WVCRE, this command creates a waveform but pads the consumed
+ - Create a waveform of fixed sizeSimilar to WVCRE, this command creates a waveform but pads the consumed
resources to a fixed size, specified as a percent of total resource.
Padded waves of equal size can be re-cycled efficiently allowing newly
created waves to re-use the resources of deleted waves of the same dimension.
@@ -1260,7 +1260,7 @@ the current GPIO levels.
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/piscope.html b/DOC/HTML/piscope.html
index 643cd03..9236731 100644
--- a/DOC/HTML/piscope.html
+++ b/DOC/HTML/piscope.html
@@ -261,7 +261,7 @@ make install
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/python.html b/DOC/HTML/python.html
index 8b3b013..f6b5f22 100644
--- a/DOC/HTML/python.html
+++ b/DOC/HTML/python.html
@@ -1029,12 +1029,12 @@ resources. Where percent gives the percentage of the resources to use
This allows the reuse of deleted waves while a transmission is active.
Upon success a wave id greater than or equal to 0 is returned, otherwise
PI_EMPTY_WAVEFORM, PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
-
pi: >=0 (as returned by pigpio_start).
The data provided by the wave_add_* functions are consumed by this
+
percent: 0-100, size of waveform as percentage of maximum available.
The data provided by the wave_add_* functions are consumed by this
function.
As many waveforms may be created as there is space available. The
wave id is passed to wave_send_* to specify the waveform to transmit.
-
A usage would be the creation of two waves where one is filled while the other
-is being transmitted. Each wave is assigned 50% of the available resources.
+
A usage would be the creation of two waves where one is filled while the
+other is being transmitted. Each wave is assigned 50% of the resources.
This buffer structure allows the transmission of infinite wave sequences.
Normal usage:
Step 1. wave_clear to clear all waveforms and added data.
@@ -1044,7 +1044,7 @@ This buffer structure allows the transmission of infinite wave sequences.
Repeat steps 2-4 as needed.
Step 5. Any wave id can now be deleted and another wave of the same size
can be created in its place.
-
Example
wid = pi.wave_create(50)
+
Example
wid = pi.wave_create_and_pad(50)
This function deletes the waveform with id wave_id.
Parameters
wave_id:= >=0 (as returned by a prior call to wave_create).
Wave ids are allocated in order, 0, 1, 2, etc.
The wave is flagged for deletion. The resources used by the wave
@@ -1210,6 +1210,7 @@ being currently defined.
high and low levels.
params: 32 bit number
When scripts are started they can receive up to 10 parameters
to define their operation.
+percent: : 0-100
The size of waveform as percentage of maximum available.
port:
The port used by the pigpio daemon, defaults to 8888.
pstring:
The string to be passed to a shell script to be executed.
pud: 0-2
PUD_DOWN = 1
PUD_OFF = 0
PUD_UP = 2
pulse_len: 1-100
The length of the trigger pulse in microseconds.
@@ -1285,7 +1286,7 @@ timeout report is issued (with level TIMEOUT).
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/sif.html b/DOC/HTML/sif.html
index f689050..bbaa6e1 100644
--- a/DOC/HTML/sif.html
+++ b/DOC/HTML/sif.html
@@ -2050,7 +2050,7 @@ uint8_t data[X]
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/HTML/sitemap.html b/DOC/HTML/sitemap.html
index 18ecc75..b2706b1 100644
--- a/DOC/HTML/sitemap.html
+++ b/DOC/HTML/sitemap.html
@@ -77,7 +77,7 @@
© 2012-2020 |
e-mail: pigpio @ abyz.me.uk |
-Updated: 29/04/2020 |
+Updated: 30/04/2020 |
diff --git a/DOC/MAN/pigpio.3 b/DOC/MAN/pigpio.3
index 7fa74e3..c878cbd 100644
--- a/DOC/MAN/pigpio.3
+++ b/DOC/MAN/pigpio.3
@@ -9569,6 +9569,27 @@ An array of script parameters.
.br
+.IP "\fBpctBOOL\fP: 0-100" 0
+percent On-Off-Level (OOL) buffer to consume for wave output.
+
+.br
+
+.br
+
+.IP "\fBpctCB\fP: 0-100" 0
+the percent of all DMA control blocks to consume.
+
+.br
+
+.br
+
+.IP "\fBpctTOOL\fP: 0-100" 0
+the percent of OOL buffer to consume for wave input (flags).
+
+.br
+
+.br
+
.IP "\fBpi_i2c_msg_t\fP" 0
.EX
diff --git a/DOC/MAN/pigpiod_if2.3 b/DOC/MAN/pigpiod_if2.3
index b6924c6..f07de8d 100644
--- a/DOC/MAN/pigpiod_if2.3
+++ b/DOC/MAN/pigpiod_if2.3
@@ -2395,13 +2395,11 @@ PI_NO_WAVEFORM_ID, PI_TOO_MANY_CBS, or PI_TOO_MANY_OOL.
.IP "\fBint wave_create_and_pad(int pi, int percent)\fP"
.IP "" 4
-This function creates a waveform like wave_create but pads the consumed
+This function creates a waveform like \fBwave_create\fP but pads the consumed
resources. Where percent gives the percentage of the resources to use (in terms
of the theoretical maximum, not the current amount free). This allows the reuse
.br
-of deleted waves while a transmission is active. Upon success a wave id
-greater than or equal to 0 is returned, otherwise PI_EMPTY_WAVEFORM,
-PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
+of deleted waves while a transmission is active.
.br
@@ -2410,6 +2408,8 @@ PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
.EX
pi: >=0 (as returned by \fBpigpio_start\fP).
.br
+percent: 0-100, size of waveform as percentage of maximum available.
+.br
.EE
@@ -2429,7 +2429,7 @@ wave id is passed to \fBwave_send_*\fP to specify the waveform to transmit.
.br
A usage would be the creation of two waves where one is filled while the other
-is beeing transmitted. Each wave is assigned 50% of the available resources.
+is being transmitted. Each wave is assigned 50% of the resources.
This buffer structure allows the transmission of infinite wave sequences.
.br
@@ -7499,6 +7499,13 @@ An array of script parameters.
.br
+.IP "\fBpercent\fP: 0-100" 0
+The size of waveform as percentage of maximum available.
+
+.br
+
+.br
+
.IP "\fBpi\fP" 0
An integer defining a connected Pi. The value is returned by
\fBpigpio_start\fP upon success.
diff --git a/DOC/MAN/pigs.1 b/DOC/MAN/pigs.1
index fa99470..9b6192c 100644
--- a/DOC/MAN/pigs.1
+++ b/DOC/MAN/pigs.1
@@ -5146,7 +5146,7 @@ ERROR: attempt to create an empty waveform
.IP "" 4
.br
-Similar to WVCRE, this command creates a waveform but pads the consumed
+Similar to \fBWVCRE\fP, this command creates a waveform but pads the consumed
resources to a fixed size, specified as a percent of total resource.
Padded waves of equal size can be re-cycled efficiently allowing newly
created waves to re-use the resources of deleted waves of the same dimension.
diff --git a/DOC/dbase/pigpio.sqlite b/DOC/dbase/pigpio.sqlite
index 98a0cb1..531ccfd 100644
Binary files a/DOC/dbase/pigpio.sqlite and b/DOC/dbase/pigpio.sqlite differ
diff --git a/DOC/dbase/pigpio.sqlite.2020-04-30-08-51-48 b/DOC/dbase/pigpio.sqlite.2020-04-30-08-51-48
new file mode 100644
index 0000000..98a0cb1
Binary files /dev/null and b/DOC/dbase/pigpio.sqlite.2020-04-30-08-51-48 differ
diff --git a/DOC/dbase/pigpio.sqlite.2020-04-30-08-59-05 b/DOC/dbase/pigpio.sqlite.2020-04-30-08-59-05
new file mode 100644
index 0000000..d763ce9
Binary files /dev/null and b/DOC/dbase/pigpio.sqlite.2020-04-30-08-59-05 differ
diff --git a/DOC/dbase/pigpio.sqlite.2020-04-30-09-37-19 b/DOC/dbase/pigpio.sqlite.2020-04-30-09-37-19
new file mode 100644
index 0000000..23be3f5
Binary files /dev/null and b/DOC/dbase/pigpio.sqlite.2020-04-30-09-37-19 differ
diff --git a/DOC/dbase/pigpio.sqlite.2020-04-30-09-44-25 b/DOC/dbase/pigpio.sqlite.2020-04-30-09-44-25
new file mode 100644
index 0000000..1dc038e
Binary files /dev/null and b/DOC/dbase/pigpio.sqlite.2020-04-30-09-44-25 differ
diff --git a/DOC/dbase/pigpio.sqlite.2020-04-30-09-45-49 b/DOC/dbase/pigpio.sqlite.2020-04-30-09-45-49
new file mode 100644
index 0000000..03f11ba
Binary files /dev/null and b/DOC/dbase/pigpio.sqlite.2020-04-30-09-45-49 differ
diff --git a/DOC/dbase/pigpio.sqlite.2020-04-30-09-48-51 b/DOC/dbase/pigpio.sqlite.2020-04-30-09-48-51
new file mode 100644
index 0000000..d37369e
Binary files /dev/null and b/DOC/dbase/pigpio.sqlite.2020-04-30-09-48-51 differ
diff --git a/DOC/src/defs/pigs.def b/DOC/src/defs/pigs.def
index 82fca73..2f6d23c 100644
--- a/DOC/src/defs/pigs.def
+++ b/DOC/src/defs/pigs.def
@@ -2786,7 +2786,7 @@ ERROR: attempt to create an empty waveform
WVCAP ::
-Similar to WVCRE, this command creates a waveform but pads the consumed
+Similar to [*WVCRE*], this command creates a waveform but pads the consumed
resources to a fixed size, specified as a percent of total resource.
Padded waves of equal size can be re-cycled efficiently allowing newly
created waves to re-use the resources of deleted waves of the same dimension.
diff --git a/DOC/tmp/body/cif.body b/DOC/tmp/body/cif.body
index 28205fd..f20d1c4 100644
--- a/DOC/tmp/body/cif.body
+++ b/DOC/tmp/body/cif.body
@@ -1675,6 +1675,12 @@ The mA which may be drawn from each GPIO whilst still guaranteeing the
high and low levels.
An array of script parameters.
+
+percent On-Off-Level (OOL) buffer to consume for wave output.
+
+the percent of all DMA control blocks to consume.
+
+the percent of OOL buffer to consume for wave input (flags).
typedef struct
{
uint16_t addr; // slave address
uint16_t flags;
uint16_t len; // msg length
uint8_t *buf; // pointer to msg data
} pi_i2c_msg_t;
port: 1024-32000
The port used to bind to the pigpio socket. Defaults to 8888.
diff --git a/DOC/tmp/body/pdif2.body b/DOC/tmp/body/pdif2.body
index ecebd36..21d2b4b 100644
--- a/DOC/tmp/body/pdif2.body
+++ b/DOC/tmp/body/pdif2.body
@@ -528,18 +528,16 @@ specified delay between the pulse and the next.
Returns the new waveform id if OK, otherwise PI_EMPTY_WAVEFORM,
PI_NO_WAVEFORM_ID, PI_TOO_MANY_CBS, or PI_TOO_MANY_OOL.
-This function creates a waveform like wave_create but pads the consumed
+This function creates a waveform like wave_create but pads the consumed
resources. Where percent gives the percentage of the resources to use (in terms
of the theoretical maximum, not the current amount free). This allows the reuse
-of deleted waves while a transmission is active. Upon success a wave id
-greater than or equal to 0 is returned, otherwise PI_EMPTY_WAVEFORM,
-PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
-
pi: >=0 (as returned by pigpio_start).
The data provided by the wave_add_* functions are consumed by this
+of deleted waves while a transmission is active.
+
pi: >=0 (as returned by pigpio_start).
percent: 0-100, size of waveform as percentage of maximum available.
The data provided by the wave_add_* functions are consumed by this
function.
As many waveforms may be created as there is space available. The
wave id is passed to wave_send_* to specify the waveform to transmit.
A usage would be the creation of two waves where one is filled while the other
-is beeing transmitted. Each wave is assigned 50% of the available resources.
+is being transmitted. Each wave is assigned 50% of the resources.
This buffer structure allows the transmission of infinite wave sequences.
Normal usage:
Step 1. wave_clear to clear all waveforms and added data.
@@ -1348,6 +1346,8 @@ The mA which may be drawn from each GPIO whilst still guaranteeing the
high and low levels.
An array of script parameters.
+
+The size of waveform as percentage of maximum available.
An integer defining a connected Pi. The value is returned by
pigpio_start upon success.
diff --git a/DOC/tmp/body/pigs.body b/DOC/tmp/body/pigs.body
index f4b7a7e..4a88b42 100644
--- a/DOC/tmp/body/pigs.body
+++ b/DOC/tmp/body/pigs.body
@@ -904,7 +904,7 @@ set all the fields to zero (the pulse will be ignored).
When a waveform is started each pulse is executed in order with
the specified delay between the pulse and the next.
Example
$ pigs wvas 4 9600 0 23 45 67 89 90
37
$ pigs wvcre
0
$ pigs wvcre
-69
ERROR: attempt to create an empty waveform
WVCAP
- - Create a waveform of fixed size
Similar to WVCRE, this command creates a waveform but pads the consumed
+ - Create a waveform of fixed sizeSimilar to WVCRE, this command creates a waveform but pads the consumed
resources to a fixed size, specified as a percent of total resource.
Padded waves of equal size can be re-cycled efficiently allowing newly
created waves to re-use the resources of deleted waves of the same dimension.
diff --git a/DOC/tmp/body/python.body b/DOC/tmp/body/python.body
index f036866..4f756e4 100644
--- a/DOC/tmp/body/python.body
+++ b/DOC/tmp/body/python.body
@@ -989,12 +989,12 @@ resources. Where percent gives the percentage of the resources to use
This allows the reuse of deleted waves while a transmission is active.
Upon success a wave id greater than or equal to 0 is returned, otherwise
PI_EMPTY_WAVEFORM, PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
-
pi: >=0 (as returned by pigpio_start).
The data provided by the wave_add_* functions are consumed by this
+
percent: 0-100, size of waveform as percentage of maximum available.
The data provided by the wave_add_* functions are consumed by this
function.
As many waveforms may be created as there is space available. The
wave id is passed to wave_send_* to specify the waveform to transmit.
-
A usage would be the creation of two waves where one is filled while the other
-is being transmitted. Each wave is assigned 50% of the available resources.
+
A usage would be the creation of two waves where one is filled while the
+other is being transmitted. Each wave is assigned 50% of the resources.
This buffer structure allows the transmission of infinite wave sequences.
Normal usage:
Step 1. wave_clear to clear all waveforms and added data.
@@ -1004,7 +1004,7 @@ This buffer structure allows the transmission of infinite wave sequences.
Repeat steps 2-4 as needed.
Step 5. Any wave id can now be deleted and another wave of the same size
can be created in its place.
-
Example
wid = pi.wave_create(50)
+
Example
wid = pi.wave_create_and_pad(50)
This function deletes the waveform with id wave_id.
Parameters
wave_id:= >=0 (as returned by a prior call to wave_create).
Wave ids are allocated in order, 0, 1, 2, etc.
The wave is flagged for deletion. The resources used by the wave
@@ -1170,6 +1170,7 @@ being currently defined.
high and low levels.
params: 32 bit number
When scripts are started they can receive up to 10 parameters
to define their operation.
+percent: : 0-100
The size of waveform as percentage of maximum available.
port:
The port used by the pigpio daemon, defaults to 8888.
pstring:
The string to be passed to a shell script to be executed.
pud: 0-2
PUD_DOWN = 1
PUD_OFF = 0
PUD_UP = 2
pulse_len: 1-100
The length of the trigger pulse in microseconds.
diff --git a/DOC/tmp/pydoc/pigpio.pydoc b/DOC/tmp/pydoc/pigpio.pydoc
index 0286caf..c5dbdc2 100644
--- a/DOC/tmp/pydoc/pigpio.pydoc
+++ b/DOC/tmp/pydoc/pigpio.pydoc
@@ -3174,7 +3174,7 @@ CLASSES
| PI_EMPTY_WAVEFORM, PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
|
| . .
- | pi: >=0 (as returned by [*pigpio_start*]).
+ | percent: 0-100, size of waveform as percentage of maximum available.
| . .
|
| The data provided by the [*wave_add_**] functions are consumed by this
@@ -3183,8 +3183,8 @@ CLASSES
| As many waveforms may be created as there is space available. The
| wave id is passed to [*wave_send_**] to specify the waveform to transmit.
|
- | A usage would be the creation of two waves where one is filled while the other
- | is being transmitted. Each wave is assigned 50% of the available resources.
+ | A usage would be the creation of two waves where one is filled while the
+ | other is being transmitted. Each wave is assigned 50% of the resources.
| This buffer structure allows the transmission of infinite wave sequences.
|
| Normal usage:
@@ -3203,7 +3203,7 @@ CLASSES
| can be created in its place.
|
| ...
- | wid = pi.wave_create(50)
+ | wid = pi.wave_create_and_pad(50)
| ...
|
| wave_delete(self, wave_id)
@@ -3834,6 +3834,9 @@ FUNCTIONS
When scripts are started they can receive up to 10 parameters
to define their operation.
+ percent:: 0-100
+ The size of waveform as percentage of maximum available.
+
port:
The port used by the pigpio daemon, defaults to 8888.
diff --git a/pigpio.3 b/pigpio.3
index 7fa74e3..c878cbd 100644
--- a/pigpio.3
+++ b/pigpio.3
@@ -9569,6 +9569,27 @@ An array of script parameters.
.br
+.IP "\fBpctBOOL\fP: 0-100" 0
+percent On-Off-Level (OOL) buffer to consume for wave output.
+
+.br
+
+.br
+
+.IP "\fBpctCB\fP: 0-100" 0
+the percent of all DMA control blocks to consume.
+
+.br
+
+.br
+
+.IP "\fBpctTOOL\fP: 0-100" 0
+the percent of OOL buffer to consume for wave input (flags).
+
+.br
+
+.br
+
.IP "\fBpi_i2c_msg_t\fP" 0
.EX
diff --git a/pigpio.h b/pigpio.h
index 208c802..5794e4e 100644
--- a/pigpio.h
+++ b/pigpio.h
@@ -5804,6 +5804,15 @@ high and low levels.
*param::
An array of script parameters.
+pctBOOL:: 0-100
+percent On-Off-Level (OOL) buffer to consume for wave output.
+
+pctCB:: 0-100
+the percent of all DMA control blocks to consume.
+
+pctTOOL:: 0-100
+the percent of OOL buffer to consume for wave input (flags).
+
pi_i2c_msg_t::
. .
typedef struct
diff --git a/pigpio.py b/pigpio.py
index c913436..978aff2 100644
--- a/pigpio.py
+++ b/pigpio.py
@@ -2312,12 +2312,12 @@ class pi():
resources. Where percent gives the percentage of the resources to use
(in terms of the theoretical maximum, not the current amount free).
This allows the reuse of deleted waves while a transmission is active.
-
+
Upon success a wave id greater than or equal to 0 is returned, otherwise
PI_EMPTY_WAVEFORM, PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
. .
- pi: >=0 (as returned by [*pigpio_start*]).
+ percent: 0-100, size of waveform as percentage of maximum available.
. .
The data provided by the [*wave_add_**] functions are consumed by this
@@ -2326,10 +2326,10 @@ class pi():
As many waveforms may be created as there is space available. The
wave id is passed to [*wave_send_**] to specify the waveform to transmit.
- A usage would be the creation of two waves where one is filled while the other
- is being transmitted. Each wave is assigned 50% of the available resources.
+ A usage would be the creation of two waves where one is filled while the
+ other is being transmitted. Each wave is assigned 50% of the resources.
This buffer structure allows the transmission of infinite wave sequences.
-
+
Normal usage:
Step 1. [*wave_clear*] to clear all waveforms and added data.
@@ -2341,12 +2341,12 @@ class pi():
Step 4. [*wave_send_**] with the id of the waveform to transmit.
Repeat steps 2-4 as needed.
-
+
Step 5. Any wave id can now be deleted and another wave of the same size
can be created in its place.
-
+
...
- wid = pi.wave_create(50)
+ wid = pi.wave_create_and_pad(50)
...
"""
return _u2i(_pigpio_command(self.sl, _PI_CMD_WVCAP, percent, 0))
@@ -5629,6 +5629,9 @@ def xref():
When scripts are started they can receive up to 10 parameters
to define their operation.
+ percent:: 0-100
+ The size of waveform as percentage of maximum available.
+
port:
The port used by the pigpio daemon, defaults to 8888.
diff --git a/pigpiod_if2.3 b/pigpiod_if2.3
index b6924c6..f07de8d 100644
--- a/pigpiod_if2.3
+++ b/pigpiod_if2.3
@@ -2395,13 +2395,11 @@ PI_NO_WAVEFORM_ID, PI_TOO_MANY_CBS, or PI_TOO_MANY_OOL.
.IP "\fBint wave_create_and_pad(int pi, int percent)\fP"
.IP "" 4
-This function creates a waveform like wave_create but pads the consumed
+This function creates a waveform like \fBwave_create\fP but pads the consumed
resources. Where percent gives the percentage of the resources to use (in terms
of the theoretical maximum, not the current amount free). This allows the reuse
.br
-of deleted waves while a transmission is active. Upon success a wave id
-greater than or equal to 0 is returned, otherwise PI_EMPTY_WAVEFORM,
-PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
+of deleted waves while a transmission is active.
.br
@@ -2410,6 +2408,8 @@ PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
.EX
pi: >=0 (as returned by \fBpigpio_start\fP).
.br
+percent: 0-100, size of waveform as percentage of maximum available.
+.br
.EE
@@ -2429,7 +2429,7 @@ wave id is passed to \fBwave_send_*\fP to specify the waveform to transmit.
.br
A usage would be the creation of two waves where one is filled while the other
-is beeing transmitted. Each wave is assigned 50% of the available resources.
+is being transmitted. Each wave is assigned 50% of the resources.
This buffer structure allows the transmission of infinite wave sequences.
.br
@@ -7499,6 +7499,13 @@ An array of script parameters.
.br
+.IP "\fBpercent\fP: 0-100" 0
+The size of waveform as percentage of maximum available.
+
+.br
+
+.br
+
.IP "\fBpi\fP" 0
An integer defining a connected Pi. The value is returned by
\fBpigpio_start\fP upon success.
diff --git a/pigpiod_if2.h b/pigpiod_if2.h
index 9c55929..79d0223 100644
--- a/pigpiod_if2.h
+++ b/pigpiod_if2.h
@@ -1376,15 +1376,14 @@ D*/
/*F*/
int wave_create_and_pad(int pi, int percent);
/*D
-This function creates a waveform like wave_create but pads the consumed
+This function creates a waveform like [*wave_create*] but pads the consumed
resources. Where percent gives the percentage of the resources to use (in terms
of the theoretical maximum, not the current amount free). This allows the reuse
-of deleted waves while a transmission is active. Upon success a wave id
-greater than or equal to 0 is returned, otherwise PI_EMPTY_WAVEFORM,
-PI_TOO_MANY_CBS, PI_TOO_MANY_OOL, or PI_NO_WAVEFORM_ID.
+of deleted waves while a transmission is active.
. .
pi: >=0 (as returned by [*pigpio_start*]).
+percent: 0-100, size of waveform as percentage of maximum available.
. .
The data provided by the [*wave_add_**] functions are consumed by this
@@ -1394,7 +1393,7 @@ As many waveforms may be created as there is space available. The
wave id is passed to [*wave_send_**] to specify the waveform to transmit.
A usage would be the creation of two waves where one is filled while the other
-is beeing transmitted. Each wave is assigned 50% of the available resources.
+is being transmitted. Each wave is assigned 50% of the resources.
This buffer structure allows the transmission of infinite wave sequences.
Normal usage:
@@ -4128,6 +4127,9 @@ high and low levels.
*param::
An array of script parameters.
+percent:: 0-100
+The size of waveform as percentage of maximum available.
+
pi::
An integer defining a connected Pi. The value is returned by
[*pigpio_start*] upon success.
diff --git a/pigs.1 b/pigs.1
index fa99470..9b6192c 100644
--- a/pigs.1
+++ b/pigs.1
@@ -5146,7 +5146,7 @@ ERROR: attempt to create an empty waveform
.IP "" 4
.br
-Similar to WVCRE, this command creates a waveform but pads the consumed
+Similar to \fBWVCRE\fP, this command creates a waveform but pads the consumed
resources to a fixed size, specified as a percent of total resource.
Padded waves of equal size can be re-cycled efficiently allowing newly
created waves to re-use the resources of deleted waves of the same dimension.