{"id":189,"date":"2023-01-15T17:39:56","date_gmt":"2023-01-15T17:39:56","guid":{"rendered":"https:\/?p=189"},"modified":"2023-07-10T17:52:39","modified_gmt":"2023-07-10T17:52:39","slug":"pieee-488","status":"publish","type":"post","link":"https:\/\/timsretrocorner.com\/?p=189","title":{"rendered":"PIEEE-488"},"content":{"rendered":"\n<p>The PIEEE-488 is a Raspberry PI hat designed to emulate the old style dual floppy drives for the Commodore PET. At least that&#8217;s the idea. In the week off work between Christmas and New Year, I was casting around for something to make, that would ideally also make use of the Python programming language (which I&#8217;m in the process of learning for my day job). Remembering the PI-1541 kit that I built recently, I figured that something similar utilising the IEEE-488 (GPIB) bus for the PET might be fun to have a go at.<\/p>\n\n\n\n<p>I don&#8217;t anticipate finishing it in the week I have available, or even getting very far necessarily. But if I can demonstrate some data transfer between the PET and the PI by the end, that&#8217;ll be a nice goal to achieve.<\/p>\n\n\n\n<p>I should state before I go any further that I am aware that there are already GPIB hats for the Raspberry PI. Those devices generally seek to talk to an instrument on the GPIB bus, whereas mine seeks to <em>be<\/em> the instrument (well, disk drive) on the GPIB bus. Anyhow, because the interface is basically just 2 ICs sitting between the GPIB connector and the PI&#8217;s GPIO pins, our devices will necessarily be similar in the bus portions. But I have not attempted to copy or duplicate any particular hat.<\/p>\n\n\n\n<p>In software terms, there also exists open source code for the SD-2-PET style devices, written in C &#8211; <a href=\"https:\/\/github.com\/nils-eilers\/NODISKEMU\">NODISKEMU<\/a>. Although this is targeted at the ATMega, for sure it would be possible to create a fork and target this hardware. But as I said at the top, I&#8217;m learning to code in Python, and this project is as much a learning experience as anything else. It might turn out that Python is wholly unsuitable (although I suspect its problem is likely to be just that it&#8217;s &#8220;a bit slow&#8221;), in which case the fork is still an option for the future.<\/p>\n\n\n\n<p>In the same style as the Pi-1541, some extra hardware is necessary for the &#8220;floppy drive&#8221; portion of the project. The PI is driven by a micro SD card, so that can be used to store the disk images and files that the drive will use. In addition we&#8217;ll need some push button switches, LEDs and an OLED screen to form the user interface. These will be driven by the I<sup>2<\/sup>C pins of the PI&#8217;s GPIO bus (because the IEEE-488 interface uses almost all the available I\/O pins, we&#8217;ll need to add a GPIO extender IC to our BOM. This will give us an extra 16 I\/O lines). I did initially think that dual drives would require dual OLEDs &#8211; one for each drive. This adds an extra complication in that the OLED panels have an I<sup>2<\/sup>c &#8220;address&#8221; which would need to be changed on one panel. Not all panels have this ability, and those that do require intricate desoldering of a tiny surface mount resistor. Again, there are multiplexers that can be added to solve this problem in software (at a few quid extra cost). But I wonder if the second screen is really necessary? Please feel free to comment.<\/p>\n\n\n\n<p>So, if this proof of concept works, the next step will be to take it to a PCB. And of course I shall be using my sponsor for the video, <a href=\"http:\/\/www.pcbway.com\">PCBWay<\/a> to produce them. They have a 24 hour turnaround time once the Gerber files are checked, and prices start at just $5 for 10 boards, so check them out.<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"PIEEE 488 Prototype SD drive for the Commodore PET\" width=\"800\" height=\"450\" src=\"https:\/\/www.youtube.com\/embed\/g1RisoxQX9I?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>The PIEEE-488 is a Raspberry PI hat designed to emulate the old style dual floppy drives for the Commodore PET. At least that&#8217;s the idea. [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":190,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,14,8],"tags":[13,39,36],"class_list":["post-189","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-commodore","category-floppy-drives","category-pet-cbm","tag-commodore","tag-floppy-disk","tag-ieee-488"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>PIEEE-488 - Tim&#039;s Retro Corner<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/timsretrocorner.com\/?p=189\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"PIEEE-488 - Tim&#039;s Retro Corner\" \/>\n<meta property=\"og:description\" content=\"The PIEEE-488 is a Raspberry PI hat designed to emulate the old style dual floppy drives for the Commodore PET. At least that&#8217;s the idea. [...]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/timsretrocorner.com\/?p=189\" \/>\n<meta property=\"og:site_name\" content=\"Tim&#039;s Retro Corner\" \/>\n<meta property=\"article:published_time\" content=\"2023-01-15T17:39:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-07-10T17:52:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t<meta property=\"og:image:height\" content=\"1080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Tim\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tim\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/timsretrocorner.com\/?p=189#article\",\"isPartOf\":{\"@id\":\"https:\/\/timsretrocorner.com\/?p=189\"},\"author\":{\"name\":\"Tim\",\"@id\":\"https:\/\/timsretrocorner.com\/#\/schema\/person\/063de9854e18cdeb76b175fe8ed103e1\"},\"headline\":\"PIEEE-488\",\"datePublished\":\"2023-01-15T17:39:56+00:00\",\"dateModified\":\"2023-07-10T17:52:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/timsretrocorner.com\/?p=189\"},\"wordCount\":604,\"publisher\":{\"@id\":\"https:\/\/timsretrocorner.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/timsretrocorner.com\/?p=189#primaryimage\"},\"thumbnailUrl\":\"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg\",\"keywords\":[\"Commodore\",\"Floppy Disk\",\"IEEE-488\"],\"articleSection\":[\"Commodore\",\"Floppy Drives\",\"PET\/CBM\"],\"inLanguage\":\"en-GB\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/timsretrocorner.com\/?p=189\",\"url\":\"https:\/\/timsretrocorner.com\/?p=189\",\"name\":\"PIEEE-488 - Tim's Retro Corner\",\"isPartOf\":{\"@id\":\"https:\/\/timsretrocorner.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/timsretrocorner.com\/?p=189#primaryimage\"},\"image\":{\"@id\":\"https:\/\/timsretrocorner.com\/?p=189#primaryimage\"},\"thumbnailUrl\":\"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg\",\"datePublished\":\"2023-01-15T17:39:56+00:00\",\"dateModified\":\"2023-07-10T17:52:39+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/timsretrocorner.com\/?p=189#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/timsretrocorner.com\/?p=189\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/timsretrocorner.com\/?p=189#primaryimage\",\"url\":\"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg\",\"contentUrl\":\"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/timsretrocorner.com\/?p=189#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/timsretrocorner.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"PIEEE-488\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/timsretrocorner.com\/#website\",\"url\":\"https:\/\/timsretrocorner.com\/\",\"name\":\"Tim's Retro Corner\",\"description\":\"It's a corner. And it's retro. And it's Tim's...\",\"publisher\":{\"@id\":\"https:\/\/timsretrocorner.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/timsretrocorner.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/timsretrocorner.com\/#organization\",\"name\":\"Tim's Retro Corner\",\"url\":\"https:\/\/timsretrocorner.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/timsretrocorner.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2022\/02\/trc128.png\",\"contentUrl\":\"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2022\/02\/trc128.png\",\"width\":128,\"height\":128,\"caption\":\"Tim's Retro Corner\"},\"image\":{\"@id\":\"https:\/\/timsretrocorner.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/timsretrocorner.com\/#\/schema\/person\/063de9854e18cdeb76b175fe8ed103e1\",\"name\":\"Tim\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/timsretrocorner.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7bef26b490a17777d29f82b3fb5299f873424e553cbd931d31d246310823121e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7bef26b490a17777d29f82b3fb5299f873424e553cbd931d31d246310823121e?s=96&d=mm&r=g\",\"caption\":\"Tim\"},\"sameAs\":[\"https:\"],\"url\":\"https:\/\/timsretrocorner.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"PIEEE-488 - Tim's Retro Corner","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/timsretrocorner.com\/?p=189","og_locale":"en_GB","og_type":"article","og_title":"PIEEE-488 - Tim's Retro Corner","og_description":"The PIEEE-488 is a Raspberry PI hat designed to emulate the old style dual floppy drives for the Commodore PET. At least that&#8217;s the idea. [...]","og_url":"https:\/\/timsretrocorner.com\/?p=189","og_site_name":"Tim's Retro Corner","article_published_time":"2023-01-15T17:39:56+00:00","article_modified_time":"2023-07-10T17:52:39+00:00","og_image":[{"width":1920,"height":1080,"url":"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg","type":"image\/jpeg"}],"author":"Tim","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Tim","Estimated reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/timsretrocorner.com\/?p=189#article","isPartOf":{"@id":"https:\/\/timsretrocorner.com\/?p=189"},"author":{"name":"Tim","@id":"https:\/\/timsretrocorner.com\/#\/schema\/person\/063de9854e18cdeb76b175fe8ed103e1"},"headline":"PIEEE-488","datePublished":"2023-01-15T17:39:56+00:00","dateModified":"2023-07-10T17:52:39+00:00","mainEntityOfPage":{"@id":"https:\/\/timsretrocorner.com\/?p=189"},"wordCount":604,"publisher":{"@id":"https:\/\/timsretrocorner.com\/#organization"},"image":{"@id":"https:\/\/timsretrocorner.com\/?p=189#primaryimage"},"thumbnailUrl":"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg","keywords":["Commodore","Floppy Disk","IEEE-488"],"articleSection":["Commodore","Floppy Drives","PET\/CBM"],"inLanguage":"en-GB"},{"@type":"WebPage","@id":"https:\/\/timsretrocorner.com\/?p=189","url":"https:\/\/timsretrocorner.com\/?p=189","name":"PIEEE-488 - Tim's Retro Corner","isPartOf":{"@id":"https:\/\/timsretrocorner.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/timsretrocorner.com\/?p=189#primaryimage"},"image":{"@id":"https:\/\/timsretrocorner.com\/?p=189#primaryimage"},"thumbnailUrl":"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg","datePublished":"2023-01-15T17:39:56+00:00","dateModified":"2023-07-10T17:52:39+00:00","breadcrumb":{"@id":"https:\/\/timsretrocorner.com\/?p=189#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/timsretrocorner.com\/?p=189"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/timsretrocorner.com\/?p=189#primaryimage","url":"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg","contentUrl":"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/timsretrocorner.com\/?p=189#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/timsretrocorner.com\/"},{"@type":"ListItem","position":2,"name":"PIEEE-488"}]},{"@type":"WebSite","@id":"https:\/\/timsretrocorner.com\/#website","url":"https:\/\/timsretrocorner.com\/","name":"Tim's Retro Corner","description":"It's a corner. And it's retro. And it's Tim's...","publisher":{"@id":"https:\/\/timsretrocorner.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/timsretrocorner.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/timsretrocorner.com\/#organization","name":"Tim's Retro Corner","url":"https:\/\/timsretrocorner.com\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/timsretrocorner.com\/#\/schema\/logo\/image\/","url":"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2022\/02\/trc128.png","contentUrl":"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2022\/02\/trc128.png","width":128,"height":128,"caption":"Tim's Retro Corner"},"image":{"@id":"https:\/\/timsretrocorner.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/timsretrocorner.com\/#\/schema\/person\/063de9854e18cdeb76b175fe8ed103e1","name":"Tim","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/timsretrocorner.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/7bef26b490a17777d29f82b3fb5299f873424e553cbd931d31d246310823121e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7bef26b490a17777d29f82b3fb5299f873424e553cbd931d31d246310823121e?s=96&d=mm&r=g","caption":"Tim"},"sameAs":["https:"],"url":"https:\/\/timsretrocorner.com\/?author=1"}]}},"jetpack_featured_media_url":"https:\/\/timsretrocorner.com\/wp-content\/uploads\/2023\/01\/pieee-488.jpg","_links":{"self":[{"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=\/wp\/v2\/posts\/189","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=189"}],"version-history":[{"count":2,"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=\/wp\/v2\/posts\/189\/revisions"}],"predecessor-version":[{"id":192,"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=\/wp\/v2\/posts\/189\/revisions\/192"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=\/wp\/v2\/media\/190"}],"wp:attachment":[{"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=189"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=189"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/timsretrocorner.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=189"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}