esp (8266/32) and 74HC595 in hardware through I2S DMA ? #829
Replies: 1 comment 5 replies
-
Hi there, On ESP32 it's possible to drive up to 4 chained 74HC595 I2S with DMA buffer (it the solution used in some of the boards like MKS-DLC32 and Tinybee). See here There are drawbacks to the whole DMA approach. One is the true realtime stuff (like some special modes), but they can be minimized or compensated in other ways. As for 74hc165 as input, the HAL is partially designed with that in mind and should be fairly trivial to add it, but it's not currently fully implemented. |
Beta Was this translation helpful? Give feedback.
-
Hi,
I was wondering if the gpio expansion on the esp boards is using I2s DMA for fast no-cpu load step generation like explained here https://github.com/lhartmann/esp8266_reprap
Marlin uses it for example, some other firmwares too. On marlin they implemented it at the HAL level so everything above looks like a normal pin. I understand the current code uses hardware SPI too but I think the DMA approach has advantages too, also it might then be possible to do input pin expansion by using a 74hc165 and I2S input.
Also I do not know if anyone is doing that but with DMA it would be possible to pre-generate steps in blocks in order to reach very high steprates even if the control loop itself runs at a much lower frequency (since the I2S DMA would pump out the pin states on its own). I imagine with that even on a low esp8266 200kHz step rate could be possible (optimistically)
I was searching through uCNC code and can not find anything but software step generation on the esp with 74'595.
Am I right to think this I2S DMA scheme is not implemented in uCNC ?
Just asking before I go on another wild goose chase...
Thanks
Beta Was this translation helpful? Give feedback.
All reactions