# Pwm for RPi GPIO

**URL:** <https://discourse.julialang.org/t/pwm-for-rpi-gpio/40568>\
**Category:** General Usage\
**Created:** [June 1, 2020, 4:58pm UTC](https://discourse.julialang.org/t/pwm-for-rpi-gpio/40568 "2020-06-01T16:58:08Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![gpapalambrou](https://avatars.discourse-cdn.com/v4/letter/g/3ec8ea/32.png) [@gpapalambrou](https://discourse.julialang.org/u/gpapalambrou)\
**Post date:** [June 1, 2020, 4:58pm UTC](https://discourse.julialang.org/t/pwm-for-rpi-gpio/40568/1 "2020-06-01T16:58:09Z")

</div>

I would appreciate some help on using PWM for RPi GPIOs.

My Julia script is as follows:

* * *

using PiGPIO

red\_pin = 17 # GPIO17 = :11

p=Pi()

PiGPIO.set\_PWM\_frequency(p, red\_pin, 50) # assume sample rate = 5 microsec.

PiGPIO.set\_PWM\_dutycycle(p, red\_pin, 128 )

PiGPIO.set\_servo\_pulsewidth(p,red\_pin,0)  
#sleep(1)  
PiGPIO.set\_servo\_pulsewidth(p,red\_pin,1000)  
#sleep(1)  
PiGPIO.set\_servo\_pulsewidth(p,red\_pin, 1500)

* * *

Script fails with output:  
ERROR: LoadError: UndefVarError: int not defined  
Stacktrace:  
[1] set\_servo\_pulsewidth(::Pi, ::Int32, ::Int32) at /home/pi/.julia/packages/PiGPIO/zdssl/src/pi.jl:674  
[2] top-level scope at none:0  
[3] include at ./boot.jl:317 [inlined]  
[4] include\_relative(::Module, ::String) at ./loading.jl:1044  
in expression starting at /home/pi/Documents/julia\_servo.jl:42

---

<div class="post-metadata">

**Author:** ![contradict](https://avatars.discourse-cdn.com/v4/letter/c/ac91a4/32.png) [@contradict](https://discourse.julialang.org/u/contradict)\
**Post date:** [June 1, 2020, 6:09pm UTC](https://discourse.julialang.org/t/pwm-for-rpi-gpio/40568/2 "2020-06-01T18:09:58Z")

</div>

I’m pretty sure that is a typo in [PiGPIO/src/pi.jl:675](https://github.com/JuliaBerry/PiGPIO.jl/blob/master/src/pi.jl#L675). That `int` should be `Int`, try changing that on your local copy and restarting Julia. If that works, it is probably worthwhile filing a bug report.

---

<div class="post-metadata">

**Author:** ![johnh](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/johnh/32/3615_2.png) [@johnh](https://discourse.julialang.org/u/johnh)\
**Post date:** [June 1, 2020, 6:27pm UTC](https://discourse.julialang.org/t/pwm-for-rpi-gpio/40568/3 "2020-06-01T18:27:09Z")

</div>

I can confirm that. Julia 1.05 on Raspberry pi  
pkg\> dev PiGPIO  
edit the pi.jl file and change int to Int  
pkg\> build PiGPIO

---

<div class="post-metadata">

**Author:** ![Ronis\_BR](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ronis_br/32/50999_2.png) [@Ronis\_BR](https://discourse.julialang.org/u/Ronis_BR)\
**Post date:** [June 1, 2020, 7:15pm UTC](https://discourse.julialang.org/t/pwm-for-rpi-gpio/40568/4 "2020-06-01T19:15:33Z")

</div>

This is an issue in PiGPIO.jl. Can you please open a bug? `int` was deprecated and after removed from Julia.

---

<div class="post-metadata">

**Author:** ![gpapalambrou](https://avatars.discourse-cdn.com/v4/letter/g/3ec8ea/32.png) [@gpapalambrou](https://discourse.julialang.org/u/gpapalambrou)\
**Post date:** [June 1, 2020, 7:29pm UTC](https://discourse.julialang.org/t/pwm-for-rpi-gpio/40568/5 "2020-06-01T19:29:04Z")

</div>

You are correct. I changed int to Int and it works correctly. Many thanks for your great support !  
Julia is great. I am switching all my codes from Py to Julia in RPi.

---

<div class="post-metadata">

**Author:** ![gpapalambrou](https://avatars.discourse-cdn.com/v4/letter/g/3ec8ea/32.png) [@gpapalambrou](https://discourse.julialang.org/u/gpapalambrou)\
**Post date:** [June 1, 2020, 7:50pm UTC](https://discourse.julialang.org/t/pwm-for-rpi-gpio/40568/6 "2020-06-01T19:50:37Z")

</div>

I uploaded a bug report at Github, issue in PiGPIO.jl. #36109.  
I thank you all for this great support.

---

<div class="post-metadata">

**Author:** ![gpapalambrou](https://avatars.discourse-cdn.com/v4/letter/g/3ec8ea/32.png) [@gpapalambrou](https://discourse.julialang.org/u/gpapalambrou)\
**Post date:** [June 1, 2020, 7:57pm UTC](https://discourse.julialang.org/t/pwm-for-rpi-gpio/40568/7 "2020-06-01T19:57:14Z")

</div>

Dear Russel,

I followed your suggestion and it worked okay ! I also uploaded a bug at Github.

With such support, Julia will thrive pretty fast. Many thanks !!

Best

George
