{"id":559,"date":"2026-06-18T04:17:18","date_gmt":"2026-06-18T04:17:18","guid":{"rendered":"https:\/\/www.mickeydesigns.com\/home\/?p=559"},"modified":"2026-06-18T04:30:27","modified_gmt":"2026-06-18T04:30:27","slug":"myosc-help-troubleshooting-guide","status":"publish","type":"post","link":"https:\/\/www.mickeydesigns.com\/home\/myosc-help-troubleshooting-guide\/","title":{"rendered":"myOSC Cubes\u2014 Help &amp; Troubleshooting Guide"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">myOSC Cubes \u2014 Help &amp; Troubleshooting Guide<\/h2>\n\n\n\n<!-- myOSC \u2014 Help & Troubleshooting Guide -->\n<!-- Paste this into a Custom HTML block in WordPress -->\n\n<style>\n.mosc-guide { max-width: 800px; margin: 0 auto; font-size: 16px; line-height: 1.7; color: inherit; }\n.mosc-guide h2 { font-size: 1.4em; margin: 2em 0 0.5em; padding-bottom: 0.3em; border-bottom: 1px solid #e0e0e0; }\n.mosc-guide h3 { font-size: 1.1em; margin: 1.6em 0 0.4em; }\n.mosc-guide p { margin: 0 0 1em; }\n.mosc-guide ul, .mosc-guide ol { margin: 0 0 1em 1.5em; padding: 0; }\n.mosc-guide li { margin-bottom: 0.4em; }\n.mosc-guide code { font-family: monospace; font-size: 0.9em; background: #f4f4f4; padding: 2px 5px; border-radius: 3px; }\n.mosc-guide pre { background: #f4f4f4; border-left: 3px solid #ccc; padding: 1em; overflow-x: auto; border-radius: 3px; margin: 0 0 1em; }\n.mosc-guide pre code { background: none; padding: 0; }\n.mosc-guide table { width: 100%; border-collapse: collapse; margin: 0 0 1.5em; font-size: 0.95em; }\n.mosc-guide th { background: #f4f4f4; text-align: left; padding: 8px 12px; border: 1px solid #ddd; font-weight: 600; }\n.mosc-guide td { padding: 8px 12px; border: 1px solid #ddd; vertical-align: top; }\n.mosc-guide blockquote { border-left: 3px solid #ccc; margin: 1em 0; padding: 0.6em 1.2em; background: #fafafa; color: #555; border-radius: 0 3px 3px 0; }\n.mosc-guide blockquote p:last-child { margin: 0; }\n.mosc-guide a { color: inherit; }\n.mosc-guide strong { font-weight: 600; }\n.mosc-toc { background: #fafafa; border: 0.5px solid #ddd; border-radius: 4px; padding: 1rem 1.25rem; margin: 0 0 2em; }\n.mosc-toc h3 { margin: 0 0 0.6em; }\n.mosc-toc ol { margin: 0; }\n<\/style>\n\n<div class=\"mosc-guide\">\n\n<p>Welcome to myOSC, a touch-friendly client for sending and receiving <strong>Open Sound Control (OSC)<\/strong> messages on iPhone, iPad, and Mac. This guide answers common questions and walks you through the most frequent issues users run into.<\/p>\n\n<div class=\"mosc-toc\">\n  <h3>Table of Contents<\/h3>\n  <ol>\n    <li><a href=\"#quick-start\">Quick Start<\/a><\/li>\n    <li><a href=\"#osc-objects\">Understanding OSC Objects<\/a><\/li>\n    <li><a href=\"#connection-troubleshooting\">Connection Troubleshooting<\/a><\/li>\n    <li><a href=\"#osc-addressing\">OSC Addressing Basics<\/a><\/li>\n    <li><a href=\"#working-with-shows\">Working with Shows<\/a><\/li>\n    <li><a href=\"#monitor\">The Monitor<\/a><\/li>\n    <li><a href=\"#layout\">Layout &amp; Appearance<\/a><\/li>\n    <li><a href=\"#error-messages\">Common Error Messages<\/a><\/li>\n    <li><a href=\"#resetting\">Resetting the App<\/a><\/li>\n    <li><a href=\"#faq\">Frequently Asked Questions<\/a><\/li>\n    <li><a href=\"#support\">Still Stuck?<\/a><\/li>\n  <\/ol>\n<\/div>\n\n<h2 id=\"quick-start\">Quick Start<\/h2>\n\n<ol>\n  <li>Open <strong>Settings<\/strong> (gear icon).<\/li>\n  <li>Under <strong>Destinations<\/strong>, tap <strong>Add Destination<\/strong> and enter the host (IP address or hostname) and port of the device you want to control.<\/li>\n  <li>Return to the main screen and tap <strong>+<\/strong> to add a control (slider, toggle, message, XY pad, etc.).<\/li>\n  <li>Configure the control&#8217;s OSC address (for example, <code>\/synth\/volume<\/code>) and pick its destination.<\/li>\n  <li>Tap or drag the control to start sending OSC.<\/li>\n<\/ol>\n\n<p>To receive OSC, enable the <strong>Listener<\/strong> in Settings and choose a port (default <code>9000<\/code>). Add a <strong>Monitor<\/strong> object to see incoming traffic live.<\/p>\n\n<h2 id=\"osc-objects\">Understanding OSC Objects<\/h2>\n\n<p>myOSC offers several control types:<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>Object<\/th>\n      <th>Purpose<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td><strong>Send Message<\/strong><\/td>\n      <td>A button that fires a single OSC message with your specified arguments.<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>Send Bundle<\/strong><\/td>\n      <td>Sends multiple messages atomically as one OSC bundle.<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>Float Slider<\/strong><\/td>\n      <td>Drag to send float values (0.0\u20131.0).<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>Int Slider<\/strong><\/td>\n      <td>Drag to send integer values across a configurable range.<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>Toggle<\/strong><\/td>\n      <td>Tap to send on\/off as either booleans (<code>T<\/code>\/<code>F<\/code>) or integers (<code>1<\/code>\/<code>0<\/code>).<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>XY Pad<\/strong><\/td>\n      <td>Two-axis drag surface that sends separate X and Y addresses.<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>Monitor<\/strong><\/td>\n      <td>Live log of every incoming OSC message matching an optional regex filter.<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>Query \/ Responder<\/strong><\/td>\n      <td>Sends a query and displays the response.<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<h2 id=\"connection-troubleshooting\">Connection Troubleshooting<\/h2>\n\n<h3>My OSC messages aren&#8217;t reaching the destination<\/h3>\n\n<p>Try each step in order:<\/p>\n\n<ol>\n  <li><strong>Confirm the destination IP and port.<\/strong> Open Settings \u2192 Destinations and double-check. A common mistake is using the wrong port (e.g., 8000 vs 9000).<\/li>\n  <li><strong>Verify both devices are on the same network.<\/strong> Wi-Fi guest networks, &#8220;Private Wi-Fi Address&#8221; features, and AP\/client isolation often block device-to-device traffic.<\/li>\n  <li><strong>Check that &#8220;Disable Outgoing Network&#8221; is OFF<\/strong> in Settings. This switch silently drops every outbound message \u2014 useful during rehearsal, but easy to forget.<\/li>\n  <li><strong>Look at your device&#8217;s local IP<\/strong> (shown in Settings) and confirm it is on the same subnet as the target.<\/li>\n  <li><strong>Test with a known-good receiver.<\/strong> Free tools like Protokol (Hexler) or OSC\/PILOT make it easy to confirm packets are arriving.<\/li>\n  <li><strong>Check for a red error banner<\/strong> at the top of the main screen \u2014 it surfaces the most recent send failure (e.g., &#8220;Host not found&#8221;, &#8220;No route to host&#8221;).<\/li>\n<\/ol>\n\n<h3>I can send but not receive<\/h3>\n\n<ol>\n  <li>Make sure <strong>Enable Listener<\/strong> is ON in Settings.<\/li>\n  <li>Confirm the <strong>Listen Port<\/strong> matches the port your sender is targeting.<\/li>\n  <li>On iOS, the system may prompt for <strong>Local Network Permission<\/strong> the first time. If you denied it, go to <strong>iOS Settings \u2192 myOSC \u2192 Local Network<\/strong> and turn it back on.<\/li>\n  <li>Only one app can bind to a given port at a time. If another OSC app is already listening on <code>9000<\/code>, change the port in myOSC.<\/li>\n  <li>Some routers block UDP between devices. Try moving both devices onto the same Wi-Fi access point.<\/li>\n<\/ol>\n\n<h3>&#8220;Local Network&#8221; permission prompt<\/h3>\n\n<p>iOS 14+ requires apps to request permission before they can communicate with other devices on the LAN. If you accidentally dismissed or denied this prompt, you must enable it in <strong>iOS Settings \u2192 Privacy &amp; Security \u2192 Local Network \u2192 myOSC<\/strong>. Without this, OSC simply will not work.<\/p>\n\n<h3>Messages arrive late or feel laggy<\/h3>\n\n<ul>\n  <li>Sliders and XY pads are throttled to avoid flooding the network, but you can still hit limits over weak Wi-Fi. Move closer to the router or use a wired bridge.<\/li>\n  <li>Some receivers smooth incoming values \u2014 this is not myOSC adding latency.<\/li>\n  <li>Bundles add one trip but reduce overall message count; consider grouping related controls.<\/li>\n<\/ul>\n\n<h2 id=\"osc-addressing\">OSC Addressing Basics<\/h2>\n\n<p>OSC addresses look like file paths: <code>\/synth\/osc1\/freq<\/code>. Tips:<\/p>\n\n<ul>\n  <li>Addresses must start with <code>\/<\/code>.<\/li>\n  <li>Do not include spaces. Use underscores or camelCase.<\/li>\n  <li>Many receivers are case-sensitive. <code>\/Volume<\/code> and <code>\/volume<\/code> are different addresses.<\/li>\n  <li>Type tags (<code>,if<\/code>, <code>,s<\/code>, etc.) are generated automatically from the arguments you configure \u2014 you don&#8217;t enter them by hand.<\/li>\n<\/ul>\n\n<p>If your receiver expects specific argument types (float vs int), set them carefully in the editor. A receiver listening for a float may ignore an int and vice versa.<\/p>\n\n<h2 id=\"working-with-shows\">Working with Shows<\/h2>\n\n<p>myOSC saves your configuration as an <code>.oscShow<\/code> file (JSON under the hood).<\/p>\n\n<ul>\n  <li><strong>Save \/ Export:<\/strong> Use the share button or the document menu to save a show file.<\/li>\n  <li><strong>Open:<\/strong> Tap an <code>.oscShow<\/code> (or <code>.json<\/code>) file in Files, Mail, or AirDrop to open it in myOSC.<\/li>\n  <li><strong>Share with collaborators:<\/strong> The file is plain text \u2014 safe to email, store in cloud storage, or commit to version control.<\/li>\n  <li><strong>Editing externally:<\/strong> The JSON is pretty-printed for readability, but invalid edits will fail to load. Make a backup before hand-editing.<\/li>\n<\/ul>\n\n<h3>My show file won&#8217;t open<\/h3>\n\n<ul>\n  <li>Confirm the extension is <code>.oscShow<\/code> or <code>.json<\/code>.<\/li>\n  <li>Open the file in any text editor and verify it is valid JSON.<\/li>\n  <li>If the file came from a much older version of the app, some fields may have changed names. Try recreating the affected objects.<\/li>\n<\/ul>\n\n<h2 id=\"monitor\">The Monitor<\/h2>\n\n<p>The Monitor object shows every OSC message arriving at your listener port.<\/p>\n\n<ul>\n  <li>Tap the filter field and enter a <strong>regular expression<\/strong> to limit what you see (e.g., <code>^\/synth\/<\/code> to show only synth messages).<\/li>\n  <li>The log holds up to <strong>500 messages<\/strong>; older entries roll off automatically.<\/li>\n  <li>Use the <strong>Export \/ Share<\/strong> button to send the log as plain text for debugging.<\/li>\n  <li>Each entry shows the address, type tags, arguments, sender IP\/port, and timestamp.<\/li>\n<\/ul>\n\n<h3>Monitor shows nothing<\/h3>\n\n<ul>\n  <li>Verify the listener is enabled and the port matches your sender.<\/li>\n  <li>Clear any regex filter \u2014 a typo will hide everything.<\/li>\n  <li>Confirm Local Network permission (iOS).<\/li>\n<\/ul>\n\n<h2 id=\"layout\">Layout &amp; Appearance<\/h2>\n\n<ul>\n  <li>Choose <strong>Grid<\/strong> or <strong>List<\/strong> layout in Settings.<\/li>\n  <li>Set the default <strong>Card Size<\/strong> (small, medium, large) for new objects.<\/li>\n  <li>Each object can also be resized individually from its editor.<\/li>\n  <li>The interface adapts to iPad split view and macOS window resizing.<\/li>\n<\/ul>\n\n<h2 id=\"error-messages\">Common Error Messages<\/h2>\n\n<table>\n  <thead>\n    <tr>\n      <th>Message<\/th>\n      <th>What it means<\/th>\n      <th>What to do<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td><strong>Host not found<\/strong><\/td>\n      <td>The hostname couldn&#8217;t be resolved.<\/td>\n      <td>Use an IP address, or check the spelling.<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>No route to host<\/strong><\/td>\n      <td>The target is unreachable.<\/td>\n      <td>Check both devices are on the same network.<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>Listener failed to start<\/strong><\/td>\n      <td>Port couldn&#8217;t be bound.<\/td>\n      <td>Another app may be using the port. Pick a different one.<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>Decode error \/ Invalid type tag<\/strong><\/td>\n      <td>An incoming message was malformed.<\/td>\n      <td>Usually a sender bug. Check the sender&#8217;s OSC implementation.<\/td>\n    <\/tr>\n    <tr>\n      <td><strong>No destinations configured<\/strong><\/td>\n      <td>You tried to send before adding a destination.<\/td>\n      <td>Open Settings \u2192 Destinations and add one.<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<h2 id=\"resetting\">Resetting the App<\/h2>\n\n<p>If myOSC gets into a weird state, try these in order:<\/p>\n\n<ol>\n  <li><strong>Force-quit<\/strong> the app (swipe up from the App Switcher) and relaunch.<\/li>\n  <li><strong>Toggle the Listener off and on<\/strong> in Settings.<\/li>\n  <li><strong>Delete and re-add a problem destination.<\/strong><\/li>\n  <li><strong>Restart your iOS device<\/strong> \u2014 fixes most lingering Local Network and Bonjour glitches.<\/li>\n  <li><strong>Reinstall the app.<\/strong> Your shows in iCloud Drive \/ Files will be preserved, but per-device settings (destinations, listen port, layout) will reset.<\/li>\n<\/ol>\n\n<h2 id=\"faq\">Frequently Asked Questions<\/h2>\n\n<p><strong>Does myOSC support TCP?<\/strong><br>\nNo. myOSC uses UDP, which is the standard transport for OSC and what virtually all OSC-aware apps and devices expect.<\/p>\n\n<p><strong>Can I use myOSC over the internet \/ cellular?<\/strong><br>\nIt is designed for local Wi-Fi. Sending OSC across the internet requires a VPN or port-forwarding setup \u2014 not officially supported.<\/p>\n\n<p><strong>Can I send to multiple destinations at once?<\/strong><br>\nYes \u2014 each object picks its own destination. Use a Send Bundle to fire several addresses at once to the same target.<\/p>\n\n<p><strong>Does it support OSC over Bluetooth or MIDI?<\/strong><br>\nNo. Wi-Fi\/UDP only.<\/p>\n\n<p><strong>Is there an Apple Watch version?<\/strong><br>\nNot in the current release.<\/p>\n\n<p><strong>Where are my settings stored?<\/strong><br>\nDestinations, listener config, and UI preferences are stored in the standard iOS\/macOS preferences. Show files are saved wherever you place them (Files app, iCloud Drive, etc.).<\/p>\n\n<h2 id=\"support\">Still Stuck?<\/h2>\n\n<p>If you&#8217;ve worked through this guide and OSC still isn&#8217;t behaving, please include the following when reaching out:<\/p>\n\n<ul>\n  <li>Your device model and OS version<\/li>\n  <li>myOSC version (shown in Settings)<\/li>\n  <li>The exact OSC address and argument types you&#8217;re trying to send<\/li>\n  <li>The receiving device or software, and its expected address\/port<\/li>\n  <li>Any error banner text from the top of the main screen<\/li>\n  <li>A short Monitor export (if you can receive anything at all)<\/li>\n<\/ul>\n\n<p>This information lets us diagnose the issue quickly.<\/p>\n\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>myOSC Cubes \u2014 Help &amp; Troubleshooting Guide Welcome to myOSC, a touch-friendly client for sending and receiving Open Sound Control (OSC) messages on iPhone, iPad, and Mac. This guide answers common questions and walks you through the most frequent issues users run into. Table of Contents Quick Start Understanding OSC Objects Connection Troubleshooting OSC Addressing &#8230; <a title=\"myOSC Cubes\u2014 Help &amp; Troubleshooting Guide\" class=\"read-more\" href=\"https:\/\/www.mickeydesigns.com\/home\/myosc-help-troubleshooting-guide\/\" aria-label=\"Read more about myOSC Cubes\u2014 Help &amp; Troubleshooting Guide\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":560,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"elementor_header_footer","format":"standard","meta":{"footnotes":""},"categories":[20],"tags":[],"class_list":["post-559","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-help"],"_links":{"self":[{"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/posts\/559","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/comments?post=559"}],"version-history":[{"count":3,"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/posts\/559\/revisions"}],"predecessor-version":[{"id":567,"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/posts\/559\/revisions\/567"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/media\/560"}],"wp:attachment":[{"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/media?parent=559"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/categories?post=559"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mickeydesigns.com\/home\/wp-json\/wp\/v2\/tags?post=559"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}