1"use strict";(self.webpackChunkmeshtastic=self.webpackChunkmeshtastic||[]).push([[9410],{96926:(e,r,i)=>{i.r(r),i.d(r,{assets:()=>o,contentTitle:()=>t,default:()=>l,frontMatter:()=>n,metadata:()=>d,toc:()=>c});var s=i(13274),a=i(49511);const n={id:"peripherals",title:"Raspberry Pi Pico Supported Peripherals",sidebar_label:"Peripherals",sidebar_position:1},t=void 0,d={id:"hardware/devices/raspberry-pi/peripherals",title:"Raspberry Pi Pico Supported Peripherals",description:"I2C peripherals",source:"@site/docs/hardware/devices/raspberry-pi/peripherals.mdx",sourceDirName:"hardware/devices/raspberry-pi",slug:"/hardware/devices/raspberry-pi/peripherals",permalink:"/docs/hardware/devices/raspberry-pi/peripherals",draft:!1,unlisted:!1,editUrl:"https://github.com/meshtastic/meshtastic/edit/master/docs/hardware/devices/raspberry-pi/peripherals.mdx",tags:[],version:"current",lastUpdatedBy:"rcarteraz",sidebarPosition:1,frontMatter:{id:"peripherals",title:"Raspberry Pi Pico Supported Peripherals",sidebar_label:"Peripherals",sidebar_position:1},sidebar:"Sidebar",previous:{title:"Raspberry Pi Pico",permalink:"/docs/hardware/devices/raspberry-pi/"},next:{title:"Linux Native Devices",permalink:"/docs/hardware/devices/linux-native-hardware/"}},o={},c=[{value:"I<sup>2</sup>C peripherals",id:"i2c-peripherals",level:2}
1,{value:"External device using Serial Module",id:"external-device-using-serial-module",level:2}];function p(e){const r={a:"a",code:"code",h2:"h2",p:"p",...(0,a.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)(r.h2,{id:"i2c-peripherals",children:["I",(0,s.jsx)("sup",{children:"2"}),"C peripherals"]}),"\n",(0,s.jsxs)(r.p,{children:["I",(0,s.jsx)("sup",{children:"2"}),"C peripherals like OLED Displays (e.g. SSD1306 or SH1106) and keyboards (e.g. CardKB) can be connected to GPIO pins 4 (SDA) and 5 (SCL), which will be recognized on boot. Note that for keyboard input, the ",(0,s.jsx)(r.a,{href:"/docs/configuration/module/canned-message",children:"Canned Message Module"})," has to be enabled and the ",(0,s.jsx)(r.a,{href:"/docs/configuration/module/canned-message#input-source",children:"input source"})," should be specified."]}),"\n",(0,s.jsx)(r.h2,{id:"external-device-using-serial-module",children:"External device using Serial Module"}),"\n",(0,s.jsxs)(r.p,{children:["For connecting an external device via the ",(0,s.jsx)(r.a,{href:"/docs/configuration/module/serial",children:"Serial Module"}),", it's recommended to use GPIO pins 8 (",(0,s.jsx)(r.code,{children:"serial.txd"}),") and 9 (",(0,s.jsx)(r.code,{children:"serial.rxd"}),")."]})]})}function l(e={}){const{wrapper:r}={...(0,a.R)(),...e.components};return r?(0,s.jsx)(r,{...e,children:(0,s.jsx)(p,{...e})}):p(e)}},49511:(e,r,i)=>{i.d(r,{R:()=>t,x:()=>d});var s=i(79474);const a={},n=s.createContext(a);function t(e){const r=s.useContext(n);return s.useMemo((function(){return"function"==typeof e?e(r):{...r,...e}}),[r,e])}function d(e){let r;return r=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:t(e.components),s.createElement(n.Provider,{value:r},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.