User Tools

Site Tools


wio:wiopico-en

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
wio:wiopico-en [2021/12/07 08:22] – [Patch] rjversluiswio:wiopico-en [2023/08/28 03:06] (current) rainerk
Line 1: Line 1:
-====== WIOpico ======+====== SIOpico ======
 [[:english|{{ :hardware.png}}]][[:english|{{ :rocrail-logo-35.png}}]] [[:english|{{ :hardware.png}}]][[:english|{{ :rocrail-logo-35.png}}]]
-  * [[:wio:overview-en|WIO Overview]] | [[:arduino:wio-setup-en|WIO Setup]] | [[:arduino:wioctrl-en|WIO Control]] | [[:arduino:amp-en|User Bitmaps]] | [[:arduino:wio-en|WIO Firmware]] | [[:arduino:wio-cam-en|WIO CAM]] | [[:arduino:wio-mobile-en|WIO Mobile]] | [[:arduino:wio-cable-en|Cable]] | [[:wio:wio-ledscript-en|LEDScript]] | [[:wio:wiopi-en|WIOpi]]+  * [[:wio:overview-en|WIO Overview]] | [[:arduino:wio-setup-en|WIO Setup]] | [[:arduino:wioctrl-en|WIO Control]] | [[:arduino:amp-en|User Bitmaps]] | [[:arduino:wio-en|WIO Firmware]] | [[:arduino:wio-mobile-en|WIO Mobile]] | [[:arduino:wio-cable-en|Cable]] | [[:wio:wio-ledscript-en|LEDScript]] | [[:wio:wiopi-en|WIOpi]]
     * [[:wio:wiopi-01-en|WIOpi-01]]     * [[:wio:wiopi-01-en|WIOpi-01]]
-    * **[[:wio:wiopico-en|WIOpico]]**+    * **[[:wio:wiopico-en|SIOpico]]**
     * [[:rocnet:headless-cam-en|Headless Raspberry Pi Setup]]     * [[:rocnet:headless-cam-en|Headless Raspberry Pi Setup]]
  \\  \\
-{{:wio:pico.jpg?0x300}}{{:wio:wiopico-01.jpg?0x300}} +|< >| 
- +|  //**S**lave **I**/**O**// 
- +{{:wio:pico.jpg?0x300}}{{:wio:siopico-pcb.jpg?0x300}}\\
-^  WIP  ^\\ +
-|  Pin assignments are due to change in case a GCA board comes available.  |+
  
  \\  \\
Line 17: Line 15:
   * 4 Servos or 32 NeoPixel   * 4 Servos or 32 NeoPixel
   * 16 I/O (100ms scan)   * 16 I/O (100ms scan)
-  * 2 four wire stepper (ULN2003) +  * 2 four wire stepper on bank1 (ULN2003)  
-  * up to Charlieplexing signals on both I/O banks+  * up to Charlieplexing signals on bank1
 The NeoPixel protocol engine needs all interrupts on the Pico. This is the reason that it is not possible to combine servos and neopixel simultaneous on the same Pico.\\ The NeoPixel protocol engine needs all interrupts on the Pico. This is the reason that it is not possible to combine servos and neopixel simultaneous on the same Pico.\\
  
Line 24: Line 22:
  
  \\  \\
-=====WIOpico Firmware=====+=====SIOpico Firmware=====
 The binary firmware can be downloaded here:\\ The binary firmware can be downloaded here:\\
-https://wiki.rocrail.net/rocrail-snapshot/WIOpico.ino.rpipico.uf2+https://wiki.rocrail.net/rocrail-snapshot/SIOpico.ino.rpipico.uf2
 ====Install==== ====Install====
-  - Keep the Pico button pressed at connecting to USB.+  - Keep the Pico button pressed at connecting to USB. (**Important:** The USB cable has to be a data cable, a charging-only cable doesn't work)
   - The Pico will behave like a removable drive.   - The Pico will behave like a removable drive.
-  - Copy the ''WIOpico.ino.rpipico.uf2'' file on this drive.+  - Copy the [[https://wiki.rocrail.net/rocrail-snapshot/SIOpico.ino.rpipico.uf2|SIOpico.ino.rpipico.uf2]] file on this drive.
   - Ready.   - Ready.
  
Line 51: Line 49:
 ^ I/O Banks ^^^^^ ^ I/O Banks ^^^^^
 | GP28 Value | Config | Bank 1 | Bank 2 | SW1 | | GP28 Value | Config | Bank 1 | Bank 2 | SW1 |
-|  < 100  | 0 | Input | Output | 1=0 2=0 3=0 4=0 | +|  < 200  | 0 | Input | Output | 1=0 2=0 3=0 4=0 | 
-|  3000...4000 | 1 | Input | Input | 1=1 2=0 3=0 4=0 | +|  4000  | 1 | Input | Input | 1=1 2=0 3=0 4=0 | 
-|  2000...3000 | 2 | Output | Output | 1=0 2=1 3=0 4=0 | +|  3000  | 2 | Output | Output | 1=0 2=1 3=0 4=0 | 
-|  1000...2000 | 3 | Output | Input | 1=0 2=0 3=1 4=0 | +|  2000  | 3 | Output | Input | 1=0 2=0 3=1 4=0 | 
-|  100...1000 | Input | Stepper | 1=0 2=0 3=0 4=1 |+|  < 1500  5 | Multiplexing | Input | 1=0 2=0 3=1 4=1 | 
 +|  < 1000  | 4 | Stepper | Input | 1=0 2=0 3=0 4=1 |
 <code> <code>
-3V3  *------*--[1k]--*--[1k]--*--[1k]--*--[1k]---* GND +3V3  *------*--[10k]--*--[10k]--*--[10k]--*--[10k]---* GND 
-            |                      |         +            |                         |         
-SW1         /                      /          +SW1         /                         /          
-            1                      4          +            1                         4          
-GP28 *------*--------*--------*--------*--[10k]--* GND+GP28 *------*---------*---------*---------*--[100k]--* GND
 </code> </code>
 The GP28 value can be checked in the [[#arduino_ide_monitor|Monitor]].\\ The GP28 value can be checked in the [[#arduino_ide_monitor|Monitor]].\\
Line 73: Line 72:
 | SDA | GP4 (pin 6) | | SDA | GP4 (pin 6) |
 | SCL | GP5 (pin 7) | | SCL | GP5 (pin 7) |
 +Max. I2C speed: 100kHz -> Default.\\
  
  \\  \\
Line 84: Line 84:
 | PWM | GP8 (pin 11) | | PWM | GP8 (pin 11) |
 | PWM | GP9 (pin 12) | | PWM | GP9 (pin 12) |
 +Via parameters in the signal and value in the object switches can be the jumping back of barriers and shape signals simulated.\\
 +The setting is made using hex values. The entry is made as a decimal number.\\
 +
 +Example:\\
 +Number = 4\\
 +Step = 1\\
 +Hex 0x14 = Dezimal 20
  
  \\  \\
Line 94: Line 101:
  \\  \\
 ^ I/O ^^ ^ I/O ^^
-| Bank 1 | GP18...GP27 and GP3: needs 10k pullup. (8 I/Os because 23/24/25 n.a.) - Adress: 1-8| +| Bank 1 | GP10...GP17: needs 10k pullup. (8 I/Os because 23/24/25 n.a.) - Adress: 1-8| 
-| Bank 2 | GP10...GP17: needs 10k pullup. (8 I/Os) - Adress:9-16|+| Bank 2 | GP18...GP27 and GP3: needs 10k pullup. (8 I/Os) - Adress:9-16|
  
  
Line 114: Line 121:
  
 //A second signal can be defined in Rocrail with address + 100 to combine it with the main signal.//\\ //A second signal can be defined in Rocrail with address + 100 to combine it with the main signal.//\\
 +
 +  * __**[[arduino:wio-en#charlieplexing_signal_support|charlieplexing_signal_support]]**__
 +
 +
 +
 ====Test Signal==== ====Test Signal====
 Diagram:\\ Diagram:\\
Line 128: Line 140:
 Type ?<enter> in the monitor to check the configuration of the Pico: Type ?<enter> in the monitor to check the configuration of the Pico:
 <code> <code>
-WIOpico (c)Rocrail Oct 20 2021 10:47:03+SIOpico (c)Rocrail Oct 20 2021 10:47:03
 I2C:126 (pixel=0 servo=20003F70 IO=FF 00 servo=00 GP28=4083 CNF=0 IO1=input IO2=output) I2C:126 (pixel=0 servo=20003F70 IO=FF 00 servo=00 GP28=4083 CNF=0 IO1=input IO2=output)
 </code> </code>
Line 137: Line 149:
  
  \\  \\
-=====WIOpico-01 PCB=====+=====SIOpico-01 PCB=====
 ====Patch==== ====Patch====
-The ADC GP28 needs a 10k pull down resistor which is not on the PCB.\\+The ADC GP28 needs a 100k pull down resistor which is not on the PCB.\\
 The easiest way is to mount the resistor directly on the Pico board on pin 34 and 38:\\ The easiest way is to mount the resistor directly on the Pico board on pin 34 and 38:\\
 {{:wio:wiopico-01-patch.jpg?400}}\\ {{:wio:wiopico-01-patch.jpg?400}}\\
 In this way the ADC is also stable if the Pico is not mounted on the PCB; The configuration remains 0 as default.\\ In this way the ADC is also stable if the Pico is not mounted on the PCB; The configuration remains 0 as default.\\
  
 +\\ 
 +=====Hardware===== 
 +|  {{ :gca:wiopic01_sch.pdf |The schematics}} 
 +|  {{ :gca:wiopico1_pcb.pdf |pcb and parts positions}} 
 +|  {{ :gca:wiopico1_parts.pdf |Bill of materials}}  |
  
  
wio/wiopico-en.1638861751.txt.gz · Last modified: 2021/12/07 08:22 by rjversluis