Kevin O'Connor
899b6726fa
stm32f4: Improve serial baud rate calculation
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-26 08:01:31 -04:00
Kevin O'Connor
f3d7287a28
stm32f4: Add support for external 8Mhz crystal
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-26 07:51:12 -04:00
Kevin O'Connor
1487f8a257
stm32f4: Add support for GPIO
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-25 18:13:06 -04:00
Kevin O'Connor
d501ca6b0b
stm32f4: Add initial support for STM32F446 chip
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-25 18:08:28 -04:00
Kevin O'Connor
52dd6f0b57
atsamd: Fix comment typo in serial.c
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-25 12:18:21 -04:00
Kevin O'Connor
634ec46813
initial_pins: Only build when CONFIG_HAVE_GPIO is enabled
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-24 01:09:45 -04:00
Kevin O'Connor
79bd13dba7
armcm_timer: Support micro-controllers faster than 160Mhz
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-24 01:08:18 -04:00
Kevin O'Connor
4e5ddff00b
neopixel: Update to more flexible bit-banging timing
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-23 22:00:12 -04:00
Kevin O'Connor
893acdb56b
lib: Update stm32f1 code to version 1.8.0
...
Update the stm32f1 code to the latest from ST. Merge the
lib/cmsis-stm32f1/ and lib/hal-stm32f1/ into a single lib/stm32f1/
directory. Document all the differences from the pristine upstream
code.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-21 22:40:56 -04:00
Kevin O'Connor
1a387ad509
stm32f0: Remove trailing tab from Makefile
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-21 21:49:22 -04:00
Kevin O'Connor
d5cc2a7b7b
neopixel: Improve timing of gpio bit-banging
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-17 16:36:28 -04:00
Kevin O'Connor
0af5b9ff6d
neopixel: Be sure to set the line low on a failed write
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-13 00:00:57 -04:00
Kevin O'Connor
be2d0abbab
neopixel: Optimize the update loop
...
Optimize the transmit code so it can run on some slower ARM cpus.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-12 23:39:00 -04:00
Kevin O'Connor
b7bc96c3b2
neopixel: Add initial support for "neopixel" leds
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-12 21:44:01 -04:00
Kevin O'Connor
28aa2f507a
endstop: Rename mcu end_stop commands to endstop
...
Rename the commands.
The main reason for this change is to force a micro-controller code
updated (due to important bugfix in 7fefe52d
).
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-12 08:10:53 -04:00
Kevin O'Connor
7fefe52df7
stepper: Don't update SF_LAST_DIR if SF_NEED_RESET
...
If the move is not added to the move queue, then the SF_LAST_DIR
setting must not be changed. Otherwise, it could result in an
incorrect direction being set on the stepper after a homing operation.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-12 07:54:24 -04:00
Kevin O'Connor
b77375e955
lpc176x: Reset LPC_UART0->FDR when using serial
...
The popular "LPC17xx-DFU-Bootloader" alters the LPC_UART0->FDR
register, so be sure to reset it back to its default when using serial
in Klipper.
Reported by @b-vs.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-07-10 20:00:58 -04:00
Arksine
0f1d42466b
buttons: initialize mcu buttons based on inverted state
...
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
2019-07-05 20:01:07 -04:00
Kevin O'Connor
8951dc3d51
lpc176x: Add more filtering to workaround adc hardware defect
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-06-20 08:57:24 -04:00
Kevin O'Connor
8d029ad652
lpc176x: Fix adc clock divisor
...
Commit 1096075d
changed CONFIG_CLOCK_FREQ to the actual cpu frequency,
but that commit failed to update adc.c accordingly. That made the adc
run 4 times slower. Make the corresponding change to adc.c.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-06-19 21:21:01 -04:00
Kevin O'Connor
700e35c6ac
armcm_timer: Unify udelay() implementation
...
Move the udelay() code from various arm board directories into the
src/generic/armcm_timer.c code.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-06-09 20:27:57 -04:00
Kevin O'Connor
3910a44cc9
atsam: Add support for "timer" controlled hardware pwm pins
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-06-02 10:59:33 -04:00
Kevin O'Connor
e2e4a5d4e6
atsamd: Add build support for SAMD21E15 chip
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-06-01 13:43:37 -04:00
Kevin O'Connor
9e7ef3cf89
atsamd: Reduce the compile size of the hard_pwm pin list
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-05-30 14:05:31 -04:00
Kevin O'Connor
8532e2123e
gpiocmds: Specify soft pwm duration in clock ticks
...
Improve the precision of soft pwm pulses by allowing the host to
directly specify the clock duration of the pulse. This improvement in
precision may be noticeable when controller servos (and bltouch).
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-05-26 11:09:32 -04:00
Kevin O'Connor
2469356861
stm32f1: Add support for building with a 0x7000 code offset
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-05-23 13:36:15 -04:00
Kevin O'Connor
edb679b83d
atsam: Enable pullup on i2c SDA line
...
The internal pullup helps ensure i2c errors are detected properly.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-05-23 09:32:10 -04:00
Kevin O'Connor
24b1638c25
atsam: Improve i2c timeout detection
...
Unify timeout detection in i2c_write() and i2c_read().
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-05-23 09:32:10 -04:00
Kevin O'Connor
5fe5f09244
atsam: Minor whitespace changes to i2c.c
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-05-23 09:13:55 -04:00
Kevin O'Connor
bcfd101867
spi_software: Minor simplification to spi_software_prepare()
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-05-22 11:40:30 -04:00
Kevin O'Connor
ab5238317b
avr: Simplify spi mode setting
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-05-07 23:02:20 -04:00
Matt Baker
c95705ba3a
spi_software: save mode setting in config structure.
...
Signed-off-by: Matt Baker <baker.matt.j@gmail.com>
2019-05-07 00:03:17 -04:00
Matt Baker
38f3d65ac5
lpc176x: refactor usbserial to use udelay helper.
...
Signed-off-by: Matt Baker <baker.matt.j@gmail.com>
2019-04-06 20:53:15 -04:00
Matt Baker
e83071c9fe
lpc176x: force minimum usb disconnect time
...
Fixes GitHub Issue #1499 . Resolves USB hang by forcing a minimum
USB disconnection time at boot.
Signed-off-by: Matt Baker <baker.matt.j@gmail.com>
2019-04-06 20:53:15 -04:00
Janne Grunau
aab89e7f85
linux: add support for Linux hardware PWM
...
The replicape servo pins (P9_14/P9_16) are muxed to the SOCs hardware
PWM unit driven by a 13MHz GP timer. They have to be driven by the
linux host mcu. This commits adds hardware PWM support using the linux
sysfs user space interface.
Signed-off-by: Janne Grunau <janne-3d@jannau.net>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-04-05 19:06:15 -04:00
Janne Grunau
e6c3eeafd7
pwmcmds: allow 16-bit resolution
...
Signed-off-by: Janne Grunau <janne-3d@jannau.net>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-04-05 19:02:48 -04:00
Kevin O'Connor
e6157c1600
atsamd: Minor whitespace changes to sercom.c
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-04-04 18:30:05 -04:00
Kevin O'Connor
f8bde6b1ef
linux: Convert SPI to use enumerations
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-04-04 18:29:31 -04:00
Kevin O'Connor
3e71a57f67
lpc176x: Use enumerations for buses and reserve pins
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-04-04 18:29:31 -04:00
Kevin O'Connor
bc9fd03dab
atsamd: Use enumerations for buses and reserve pins
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-04-04 18:29:31 -04:00
Kevin O'Connor
7e8ecfe177
atsam: Use enumerations for buses and reserve pins
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-04-04 18:29:31 -04:00
Kevin O'Connor
7765653d83
avr: Use enumerations for buses and reserve pins
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-04-04 18:29:31 -04:00
Kevin O'Connor
4c3d50693e
bus: Change bus parameter in config_spi/config_i2c
...
Be explicit when using an spi_bus vs i2c_bus in the parameter name.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-04-04 18:29:31 -04:00
Kevin O'Connor
2c851e1621
avr: Add enumerations for the atmega168/328 analog only pins
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-03-31 21:47:27 -04:00
smark-
eedc773d69
stm32f1: Fix ADC ( #1474 )
...
The sampling time of the ADC was too slow (239 ADC clock cycles), causing the reading of the next ADC channel to have cross talk as per issue #1261 . Sampling time updated to 41 ADC clock cycles.
Signed-off-by: Marco D'Alessio <marco@wrecklab.com>
2019-03-31 14:32:27 -04:00
Kevin O'Connor
d1eefba453
pru: The TMR_CNT is cleared by writing all ones
...
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-03-31 13:48:50 -04:00
Kevin O'Connor
72d0c770d3
pru: Avoid using a timer wake time of exactly zero
...
It appears the PRU timer will not trigger on a match of exactly zero.
If the next timer happened to be set to exactly zero, it could cause
software timers to get stuck and result in "move queue empty" errors.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-03-31 13:37:05 -04:00
Kevin O'Connor
fbbe2cf9d6
lpc176x: Explicitly disconnect USB on a bootloader request
...
It appears some host machines may not recognize that the USB device
has disconnected upon start of bootloader mode. Explicitly disable
USB and add a 5ms delay to help signal the host of the upcoming
change.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
2019-03-31 13:37:01 -04:00
Eugene Krashtan
8c7f1546ab
stm32f0: Wrong port definition for GPIOF ( #1463 )
...
Signed-off-by: Eugene Krashtan <eug.krashtan@gmail.com>
2019-03-29 09:41:05 -04:00
Eugene Krashtan
5913170b6b
stm32f0: minor i2c bugfix ( #1461 )
...
Signed-off-by: Eugene Krashtan <eug.krashtan@gmail.com>
2019-03-28 12:27:57 -04:00