This afternoon is going to be about the enclosure for the azimuth / elevation unit and maybe the power and comms lines from the battery box.
|Internals as of 16 Sept 2017. Power not connected.|
Add a 4 pin line from the logic board to the ESP8266 on the PSU board. TX <> RX's Enable (Digital 12 to CH_PD) Interrupt (GPIO2 to AVR pin 2) Add 3 pin connector from the Auto/Manual SW & LED to a pin on the MCP, with +5v & GND Add JST line from PSU to logic board; add a JST board connector to the logic board and patch it into +5v and ground busses add a +5v line from the PSU to the Motor Driver board move the keypad to a connector to the MCP23017 instead of punch terminals add a line from the SQW output to the MCP for interrupt MUXing to the AVR (pin 3) add a support standoff for the RTC (DS3231?) to the logic PCB user interface 'box' mounting and cable routing, mounting the panels and power switches sun sensor - sealing the top and mounting the base to the array. array mounting and charge cabling platform, table, and mast build, linear actuator tests, azimuth feedback testing and characterization sensor build and testing 3D printing the feedback rack and gear for elevation 3D printing the feedback gear for the XL belt azimuth table 3D printing the sub-panels for the user interface box write up the keywords.txt and example for the XEEPROM library, and test it all out organize the reg[ ] array into config and run entries. Those entries that are only used during setup() don't have to be copied in memory. I should be able to save about 32 bytes of SRAM this way. wiring for reset button wiring for keypad cut template for sample control panel mounting tabs for panel needs do-over switches mounted; wiring diag and harness done drill and mount pcb's to carrier plate
// TODO software:
- Write up something that manages the 4 byte structs for describing execution state. Library?Plain array? Library, I think. This is linked to schedule, code and the way it's loaded in memory as objects.
- copy the sun position schedule currently in a FLASH_ARRAY into some of the unused low bytes of internal EEPROM. I think it fits between the reg and MAP.
- sift thru the current spreadsheet of opcodes and stuff all the blocking calls into one group so we can flag those in the sequence generator - in case we need to run those as 'exclusive'.
- I had an idea to wrap the stock LCD library so we can include references to a string_table for option-list type fields. Currently it's all numeric. Smells like scope creep.
- revisit vmem - make it buffer-backed for 32 byte page-writes.