Search found 12 matches

by artur
Tue Feb 05, 2019 8:49 pm
Forum: MicroPython pyboard
Topic: CANbus bitrate and frame loss
Replies: 7
Views: 5330

Re: CANbus bitrate and frame loss

The fact that you only stop losing frames if you introduce a delay is confirmation that there is no buffer implemented. You are right. Handling the frame reception in a callback rather than in the main loop solves the issue. Now there is no frame loss even for 1 Mbps. def s(): global count data = [...
by artur
Fri Feb 01, 2019 12:38 pm
Forum: MicroPython pyboard
Topic: CANbus bitrate and frame loss
Replies: 7
Views: 5330

Re: CANbus bitrate and frame loss

What puzzles me however is that there is real frame loss at high baud rates (>=500 kbps) when sending non-stop. For a frame to be placed on the CAN bus, it must be acknowledged by at least one other node (that sends an active ACK bit). Obviously the CAN controller of the receiving pyboard must have ...
by artur
Thu Jan 24, 2019 10:37 pm
Forum: MicroPython pyboard
Topic: CANbus bitrate and frame loss
Replies: 7
Views: 5330

Re: CANbus bitrate and frame loss

The loss of frames is due to the receiving pyboard not able to process all frames. When adding delay between sending of frames, this improves. For example, with 200 us, the 500 kbps has no frames lost, and with 300 us also the 1 Mbps rate has no frame lost. I should also add that a connected CAN sni...
by artur
Thu Jan 24, 2019 8:34 am
Forum: MicroPython pyboard
Topic: CANbus bitrate and frame loss
Replies: 7
Views: 5330

Re: CANbus bitrate and frame loss

Here is the setup. (This setup implementes a redundant bus, but only one is used for this test, e.g. the upper one):

Image
by artur
Wed Jan 23, 2019 10:05 pm
Forum: MicroPython pyboard
Topic: CANbus bitrate and frame loss
Replies: 7
Views: 5330

CANbus bitrate and frame loss

Hi, I am having trouble with CAN frames getting lost when sending them back-to-back. The setup consists of two pyboards interconnected via CAN bus through CAN transceivers (TI SN65HVD231) For easy reproduction of this problem, copy the following code into the main.py of each board and on the REPL ru...
by artur
Thu Jul 05, 2018 7:22 pm
Forum: Newsletter archive
Topic: MicroPython Newsletter Issue 1
Replies: 29
Views: 326580

Re: MicroPython Newsletter Issue 1

Excellent News! We were just waiting for such an option: to embed a functional pyboard into other circuitry! Our plans are to use PYBD for CubeSats (i.e. Small Satellites). So eventually, Micropython will go into space! Thanks for your incredible work! Artur LibreCube Initiative https://librecube.net/
by artur
Mon Feb 27, 2017 9:40 am
Forum: MicroPython pyboard
Topic: Timer interrupt service routine memory issue
Replies: 3
Views: 3672

Re: Timer interrupt service routine memory issue

Thanks for the explanations. In your code example, I replaced the LED toggle with a print statement: def heartbeat_cb(self, tim): if self.tick <= 3: #self.led.toggle() print(tim.counter) self.tick = (self.tick + 1) % 10 This results in "Memory Error: memory allocation failed, heap is locked". So, re...
by artur
Sun Feb 26, 2017 8:12 pm
Forum: MicroPython pyboard
Topic: Timer interrupt service routine memory issue
Replies: 3
Views: 3672

Timer interrupt service routine memory issue

Hello, originally I intended to use a timer ISR to send out periodic CAN messages. The timer callback was a class method. However, this did not work, giving "heap allocation not allowed" error messages. I understand that no heap can be allocated in an ISR and that it should be as short as possible a...
by artur
Mon Dec 12, 2016 9:14 am
Forum: MicroPython pyboard
Topic: CAN Bus
Replies: 12
Views: 13412

Re: CAN Bus

yes, of course as described in the CAN bus spec: 120 Ohm. Note that there exists an improved version of the terminal resistance configuration (see ECSS-E-ST-50-15C, A.3): The use of split termination is a concept that is growing in popularity because emission reduction and filtering of common-mode n...
by artur
Sun Dec 11, 2016 9:07 pm
Forum: MicroPython pyboard
Topic: CAN Bus
Replies: 12
Views: 13412

Re: CAN Bus

I don't have schematics but I can tell you the setup. I am using Pyboard v1.1 connected to an Atmel ATA6561 CAN transceiver, which is connected to a CAN-USB debug terminal. The ATA6561 is connected to pyboard as follows: ATA - Pyboard: TXD - Y4 GND - GND VCC - 3V3 RXD - Y3 VIO - V+ STBY - GND The 1 ...