{"action":"created","issue":{"url":"https://api.github.com/repos/vidavidorra/LedCube/issues/8","labels_url":"https://api.github.com/repos/vidavidorra/LedCube/issues/8/labels{/name}","comments_url":"https://api.github.com/repos/vidavidorra/LedCube/issues/8/comments","events_url":"https://api.github.com/repos/vidavidorra/LedCube/issues/8/events","html_url":"https://github.com/vidavidorra/LedCube/issues/8","id":115371083,"number":8,"title":"Controlling a single layer","user":{"login":"vidavidorra","id":12871315,"avatar_url":"https://avatars.githubusercontent.com/u/12871315?v=3","gravatar_id":"","url":"https://api.github.com/users/vidavidorra","html_url":"https://github.com/vidavidorra","followers_url":"https://api.github.com/users/vidavidorra/followers","following_url":"https://api.github.com/users/vidavidorra/following{/other_user}","gists_url":"https://api.github.com/users/vidavidorra/gists{/gist_id}","starred_url":"https://api.github.com/users/vidavidorra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vidavidorra/subscriptions","organizations_url":"https://api.github.com/users/vidavidorra/orgs","repos_url":"https://api.github.com/users/vidavidorra/repos","events_url":"https://api.github.com/users/vidavidorra/events{/privacy}","received_events_url":"https://api.github.com/users/vidavidorra/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/vidavidorra/LedCube/labels/feature","name":"feature","color":"4e9e4e"}],"state":"open","locked":false,"assignee":{"login":"vidavidorra","id":12871315,"avatar_url":"https://avatars.githubusercontent.com/u/12871315?v=3","gravatar_id":"","url":"https://api.github.com/users/vidavidorra","html_url":"https://github.com/vidavidorra","followers_url":"https://api.github.com/users/vidavidorra/followers","following_url":"https://api.github.com/users/vidavidorra/following{/other_user}","gists_url":"https://api.github.com/users/vidavidorra/gists{/gist_id}","starred_url":"https://api.github.com/users/vidavidorra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vidavidorra/subscriptions","organizations_url":"https://api.github.com/users/vidavidorra/orgs","repos_url":"https://api.github.com/users/vidavidorra/repos","events_url":"https://api.github.com/users/vidavidorra/events{/privacy}","received_events_url":"https://api.github.com/users/vidavidorra/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/vidavidorra/LedCube/milestones/1","html_url":"https://github.com/vidavidorra/LedCube/milestones/Controlling%20single%20layer","labels_url":"https://api.github.com/repos/vidavidorra/LedCube/milestones/1/labels","id":1393879,"number":1,"title":"Controlling single layer","description":"A single layer can be controlled using the LedCube_setPixel function to put the LED data in a buffer while reading from an other buffer. This does not necessary contains bit angle modulation (BAM).","creator":{"login":"vidavidorra","id":12871315,"avatar_url":"https://avatars.githubusercontent.com/u/12871315?v=3","gravatar_id":"","url":"https://api.github.com/users/vidavidorra","html_url":"https://github.com/vidavidorra","followers_url":"https://api.github.com/users/vidavidorra/followers","following_url":"https://api.github.com/users/vidavidorra/following{/other_user}","gists_url":"https://api.github.com/users/vidavidorra/gists{/gist_id}","starred_url":"https://api.github.com/users/vidavidorra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vidavidorra/subscriptions","organizations_url":"https://api.github.com/users/vidavidorra/orgs","repos_url":"https://api.github.com/users/vidavidorra/repos","events_url":"https://api.github.com/users/vidavidorra/events{/privacy}","received_events_url":"https://api.github.com/users/vidavidorra/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":2,"state":"open","created_at":"2015-11-04T15:58:52Z","updated_at":"2015-11-14T16:28:35Z","due_on":null,"closed_at":null},"comments":3,"created_at":"2015-11-05T20:50:05Z","updated_at":"2015-11-18T18:46:35Z","closed_at":null,"body":"### Milestone when a single layer can be controlled\r\n\r\n#### Steps\r\n- [x] Write a function that uses a loop or loops to set certain 'pixels' in a layer, using the `LedCube_setPixel` function. To begin with a pattern could be *red, green, blue, red, green, blue, red, green* for row one, and so on.\r\n- [x] Test if the data is correctly set in the CubeData by printing in to a terminal and checking the pattern.\r\n- [x] Install the boot loader on the MCU and make sure the MCU is programmable using the the boot loader program and a custom linker script.\r\n- [x] Check whether the configuration bits are right because the configuration bits can only be set at the time of writing the boot loader to the MCU. This check could be performed by checking reading the bits from the registers (if possible) or by pulsing an output pin and checking the frequency on a scope.\r\n- [ ] Write a function that outputs a colour on a single led of every row one at a time in a loop with a delay.\r\n- [ ] Connect all the wires to the PanelControl PCBs and check with the previously written function whether the wires are correctly connected. And close the LedCube box.\r\n- [ ] Use the function written in step one to check if all LEDs could be written with the right colour.\r\n- [ ] Write functions to make all the LEDs of one row a certain colour and check whether this function works correctly by enabling the LEDs one after another, going from coordinate (0, 0, z) to (7, 7, z)."},"comment":{"url":"https://api.github.com/repos/vidavidorra/LedCube/issues/comments/157817624","html_url":"https://github.com/vidavidorra/LedCube/issues/8#issuecomment-157817624","issue_url":"https://api.github.com/repos/vidavidorra/LedCube/issues/8","id":157817624,"user":{"login":"vidavidorra","id":12871315,"avatar_url":"https://avatars.githubusercontent.com/u/12871315?v=3","gravatar_id":"","url":"https://api.github.com/users/vidavidorra","html_url":"https://github.com/vidavidorra","followers_url":"https://api.github.com/users/vidavidorra/followers","following_url":"https://api.github.com/users/vidavidorra/following{/other_user}","gists_url":"https://api.github.com/users/vidavidorra/gists{/gist_id}","starred_url":"https://api.github.com/users/vidavidorra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vidavidorra/subscriptions","organizations_url":"https://api.github.com/users/vidavidorra/orgs","repos_url":"https://api.github.com/users/vidavidorra/repos","events_url":"https://api.github.com/users/vidavidorra/events{/privacy}","received_events_url":"https://api.github.com/users/vidavidorra/received_events","type":"User","site_admin":false},"created_at":"2015-11-18T18:46:35Z","updated_at":"2015-11-18T18:46:35Z","body":"Now wrote a nice function to output the configuration words. This outputs the results of the words in a very user friendly way. See the following example output.\r\n\r\n```\r\n\r\n\r\nReading Flash Configuration Word 1...\r\nBinary read value:\r\n 111111110011111101111111\r\nSuccessfully verified the Flash Configuration Word 1 with address 0x00ABFE\r\n JTAGEN: JTAG Port Enable bit\r\n  [JTAGEN_OFF] JTAG port is disabled\r\n GCP: General Segment Program Memory Code Protection bit\r\n  [GCP_OFF] Code protection is disabled\r\n GWRP: General Segment Code Flash Write Protection bit\r\n  [GWRP_OFF] Writes to program memory are allowed\r\n !DEBUG: Background Debugger Enable bit\r\n  [BKBUG_OFF] Device resets into Operational mode\r\n ICS<1:0>: Emulator Pin Placement Select bits\r\n  [ICS_PGx1] Emulator EMUC1/EMUD1 pins are shared with PGC1/PGD1\r\n FWDTEN: Watchdog Timer Enable bit\r\n  [FWDTEN_OFF] Watchdog Timer is disabled\r\n WINDIS: Windowed Watchdog Timer Disable bit\r\n  [WINDIS_ON] Standard Watchdog Timer is enabled\r\n FWPSA: WDT Prescaler Ratio Select bit\r\n  [FWPSA_PR128] Prescaler ratio of 1:128\r\n WDTPS<3:0>: Watchdog Timer Postscaler Select bits\r\n  [WDTPS_PS32768] 1:32768\r\nDone Reading Flash Configuration Word 1.\r\n\r\nReading Flash Configuration Word 2...\r\nBinary read value:\r\n111111111111100101101101\r\nSuccessfully verified the Flash Configuration Word 2 with address 0x00ABFC\r\n IESO: Internal External Switchover bit\r\n  [IESO_ON] IESO mode (Two-Speed Start-up) is enabled\r\n WUTSEL<1:0>: Voltage Regulator Standby Mode Wake-up Time Select bits\r\n  [WUTSEL_LEG] Default regulator start-up time is used\r\n SOSCSEL<1:0>: Secondary Oscillator Power Mode Select bits\r\n  [SOSCSEL_SOSC] Default (High Drive Strength) mode\r\n FNOSC<2:0>: Initial Oscillator Select bits\r\n  [FNOSC_FRCPLL] Fast RC Oscillator with Postscaler and PLL module (FRCPLL)\r\n FCKSM<1:0>: Clock Switching and Fail-Safe Clock Monitor Configuration bits\r\n  [FCKSM_CSECMD] Clock switching is enabled, Fail-Safe Clock Monitor is disabled\r\n OSCIOFCN: OSCO Pin Configuration bit:\r\n  OSCIOFCN has no effect on OSCO/CLKO/RA3\r\n IOL1WAY: IOLOCK One-Way Set Enable bit\r\n  [IOL1WAY_OFF] The IOLOCK (OSCCON<6>) bit can be set and cleared as needed, provided the unlock sequence has been completed\r\n I2C1SEL: I2C1 Pin Select bit\r\n  [I2C1SEL_PRI] Use default SCL1/SDA1 pins\r\n POSCMD<1:0:> Primary Oscillator Configuration bits\r\n  [POSCMOD_XT] XT Oscillator mode is selected\r\nDone Reading Flash Configuration Word 2.\r\n\r\n\r\n```"}}