User Tools

Site Tools


oak:reference:howitworks

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
oak:reference:howitworks [2016/10/27 19:19]
pfeerick
oak:reference:howitworks [2016/10/27 19:28] (current)
pfeerick
Line 5: Line 5:
 * Oak Flash memory breakdown * Oak Flash memory breakdown
   OakBoot   OakBoot
-  ​Config +  ​Slot 0 
-  ​User Rom Slot 1 +  Slot 1 
-  ​User Rom Slot 2 +  Slot 2 
-  (Find link on forum elaborating on this further)+  (Find link on forum elaborating on this further ​- BELOW)
   ​   ​
 +----
 +
 +I want to clarify part of this: An Oak has 3 rom slots, one holds your Config rom, one holds your User rom (what you upload), the other is empty. When you upload a new User rom or a new Config rom (due to an update), it goes to the empty slot and once confirmed complete and good the pointer to that rom is changed to point to that slot.
 +https://​digistump.com/​board/​index.php/​topic,​1957.msg9142.html#​msg9142
 +
 +----
 +
 +I guess this gets a bit more complex than the 3 slots - we combine the updater and the setup roms into a single file and load them together into one of the three slots. The bootloader actually supports dividing each of the 3 into quarters, currently we only divide the system slot into halves though and user slots are left whole - probably best to dive into the bootloader code if you really want to understand it on that level as it is all abstracted away for the user experience (bootloader code: github.com/​digistump/​OakBoot)
 +https://​digistump.com/​board/​index.php/​topic,​2026.msg9152.html#​msg9152
 +
 +----
    
 * Factory fresh Oak is looking for system firmware in slot 0 - Serial uploads always go to slot 0 - no matter what is in that slot. A factory Oak boots to 0 looking for the system firmware, which is why before uploading via serial I instruct people to do a factory restore, so that the Oak is booting to 0 which is where you are putting the code. Once your done using serial uploads for testing/​debugging/​etc you'd want to restore back to factory or at least put a system image on it over serial so that it is at slot 0. * Factory fresh Oak is looking for system firmware in slot 0 - Serial uploads always go to slot 0 - no matter what is in that slot. A factory Oak boots to 0 looking for the system firmware, which is why before uploading via serial I instruct people to do a factory restore, so that the Oak is booting to 0 which is where you are putting the code. Once your done using serial uploads for testing/​debugging/​etc you'd want to restore back to factory or at least put a system image on it over serial so that it is at slot 0.
oak/reference/howitworks.txt · Last modified: 2016/10/27 19:28 by pfeerick