[Ovmsdev] Moving to a production cycle
Mark Webb-Johnson
mark at webb-johnson.net
Sat Feb 24 17:07:00 HKT 2018
Builds and compiles for me.
Happy to see this integrated to ESP IDF mainline.
Regards, Mark.
> On 24 Feb 2018, at 4:10 PM, Stephen Casner <casner at acm.org> wrote:
>
> OK, I have merged the latest commits from espressif/esp-idf/master
> into our fork openvehicles/esp-idf/master and merged the corresponding
> update to ovms_module to match the changed API for getting per-task
> heap info.
>
> This means developers need to update both ESP IDF and OVMS v3 source
> trees (borrowing the lines from Mark's message about mDNS update):
>
> cd ~/esp/esp-idf git pull
> git submodule update
>
> cd ~/ovms/vehicle/OVMS.V3
> git pull
> make
>
> (changing paths as appropriate)
>
> Also included is a fix for the "module tasks" command to show the
> stack size correctly again. That breakage was apparently caused by a
> change in the compiler behavior when espressif recently updated the
> toolchain for the esp-idf.
>
> -- Steve
>
>
> On Sat, 24 Feb 2018, Mark Webb-Johnson wrote:
>
>> Ok. Got for it.
>>
>> Regards, Mark
>>
>>> On 24 Feb 2018, at 8:40 AM, Stephen Casner <casner at acm.org> wrote:
>>>
>>> My PR for heap task tracking has now been merged into espressif/esp-idf/master.
>>> Shall I merge to openvehicles/esp-idf/master and merge the corresponding update
>>> to ovms_module?
>>>
>>> Also, I have pushed a little cleanup commit. I assume that need not be
>>> mentioned in the changes.txt file.
>>>
>>> -- Steve
>>>
>>>> On Tue, 20 Feb 2018, Stephen Casner wrote:
>>>>
>>>> I can wait on these things. Tonight my PR got the "changes approved"
>>>> checkmark.
>>>>
>>>> https://github.com/espressif/esp-idf/pull/1498#pullrequestreview-88994221
>>>>
>>>> -- Steve
>>>>
>>>> On Wed, 21 Feb 2018, Mark Webb-Johnson wrote:
>>>>
>>>>>> Would you like me to merge the code to openvehicles/esp-idf and
>>>>>> openvehicles/Open-Vehicle-Monitoring-System-3 now?
>>>>>
>>>>> I don't think we are in a hurry for this. What we have now works (since I updated our clone to latest espressif master and brought in their latest SPI RAM fixes).
>>>>>
>>>>> Can we just wait until it is accepted, and then deal with the merge then?
>>>>>
>>>>>> Also, I have not done anything to add (optional) immediate sending
>>>>>> back into Mongoose.
>>>>>
>>>>> That (mongoose) is on my list for moving to SPI RAM. That should reduce the impact of this.
>>>>>
>>>>> Not sure if we still need the immediate sending option. What do you think? If we do, it can be made to our clone of mongoose.
>>>>>
>>>>> Regards, Mark.
>>>>>
>>>>>> On 21 Feb 2018, at 10:52 AM, Stephen Casner <casner at acm.org> wrote:
>>>>>>
>>>>>> Mark,
>>>>>>
>>>>>> As I mentioned in an earlier email, the API for the function call to
>>>>>> gather per-task heap allocation information has changed as part of the
>>>>>> process of getting the feature added to the mainline. That change
>>>>>> currently sits in the "review & merge queue" which is also subject to
>>>>>> delay due to Chinese New Year.
>>>>>>
>>>>>> Would you like me to merge the code to openvehicles/esp-idf and
>>>>>> openvehicles/Open-Vehicle-Monitoring-System-3 now?
>>>>>>
>>>>>> Presuming that the code is accepted after review and merged, I'm not
>>>>>> sure what will happen when we merge that change in from the mainline
>>>>>> at a future date. Angus said he "cherry-picked this and squashed the
>>>>>> commits with a couple of minor tweaks for compilation warnings in
>>>>>> certain configurations." This the merge might not go automatically.
>>>>>>
>>>>>> Also, I have not done anything to add (optional) immediate sending
>>>>>> back into Mongoose. I have not heard of anyone hitting out-of-memory
>>>>>> crashes when using SSH with a large burst of output, which is the
>>>>>> concern that led me to make the change before when I hit the problem
>>>>>> during debugging. Maybe with SPIRAM it is not an issue. SCP is
>>>>>> already safe because it does one buffer at a time.
>>>>>>
>>>>>> -- Steve
>>>>>>
>>>>>>> On Wed, 21 Feb 2018, Mark Webb-Johnson wrote:
>>>>>>>
>>>>>>>
>>>>>>> My v3.1 test board seems stable, and we are ready for hardware production. I'm ordering the components with relatively long lead times (weeks) now, and the production order will go in as soon as China comes back from holiday (next week). First hardware batch will be available during March. I know lots of people are waiting for this, but I have to balance that against risk (should some hardware issue be found during wider real-world testing). I currently plan to order 120 modules (including 60 USA 3G modems, and 60 EU 3G modems) for the first batch. 100 will go to FastTech (for general ordering), and 20 to me (for special cases). As with OVMS v1, we'll clearly say these are early units for 'technically capable' people, and the firmware still has a way to go.
>>>>>>>
>>>>>>> On the firmware side, we need to move to a production style release cycle, and I will need to provide the first 'factory' firmware around the second week of March. Accordingly, I'm setting up some clean build environments and OTA release repositories (so I can cleanly build v3.0 and v3.1 firmware and have it available for OTA download).
>>>>>>>
>>>>>>> I have created a changes.txt log file in the root of the project. I would appreciate it if those with commit access to master could update that file when they merge/commit changes to the project. The top of the file will contain an entry for the 'next' version, so the change text just needs to be added below that. When the version is ready to go, I will update changes.txt with the date and name, commit it, tag it, and then build OTA versions for release. Please only use tags for OTA versions - or just don't tag at all for the moment and let me maintain this.
>>>>>>>
>>>>>>> The last list of things I have for this build are:
>>>>>>>
>>>>>>> OTA via HTTP. SD CARD firmware updates seems to work fine today, as does serial flashing. I've still got to make the changes to HTTP firmware updates to use mongoose and support the new ESP IDF v2.1+ firmware arrangement of putting the checksum at the end of the firmware file.
>>>>>>>
>>>>>>> We need some simple high-level configs for auto-starting things. Stuff like vehicle type, whether the v2 server should auto-run, etc. Make it simpler for people to configure, without having to use scripts. This can be mapped to v2 protocol parameters/features.
>>>>>>>
>>>>>>> SPI RAM support and stability for v3.1 hardware (as well as compatibility with v3.0 hardware).
>>>>>>>
>>>>>>> Finalise the partition sizes. I think we can squeeze a bit more (maybe 3x 5MB firmwares, plus 512KB store?).
>>>>>>>
>>>>>>> End-User Documentation.
>>>>>>>
>>>>>>> Real-world stability (in cars).
>>>>>>>
>>>>>>> My concern is to have a relatively stable firmware that is usable for technically capable end-users in their cars, but also to have a way for them to simply update the firmware to keep pace with the fast release cycle we expect (at least in the coming months).
>>>>>>>
>>>>>>> Anything I've missed?
>>>>>>>
>>>>>>> Regards, Mark.
>>>> _______________________________________________
>>>> OvmsDev mailing list
>>>> OvmsDev at lists.teslaclub.hk
>>>> http://lists.teslaclub.hk/mailman/listinfo/ovmsdev
>>>>
>>>>
>>> _______________________________________________
>>> OvmsDev mailing list
>>> OvmsDev at lists.teslaclub.hk
>>> http://lists.teslaclub.hk/mailman/listinfo/ovmsdev
>>
>> _______________________________________________
>> OvmsDev mailing list
>> OvmsDev at lists.teslaclub.hk
>> http://lists.teslaclub.hk/mailman/listinfo/ovmsdev
>>
>>
> _______________________________________________
> OvmsDev mailing list
> OvmsDev at lists.teslaclub.hk
> http://lists.teslaclub.hk/mailman/listinfo/ovmsdev
More information about the OvmsDev
mailing list