Code Monkey home page Code Monkey logo

trovastelle's People

Contributors

federico3 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

trovastelle's Issues

Allow user to manually commit updates.

Right now any update automatically reflects in the application. This also causes the config to get overwritten whenever the page is opened, which is less than great. Fix: add a button to upload configuration, remove autoupload.

Hardware fixes

  • Add a few millimeters to base height
  • Move holes for 9DOF a little bit
  • Make slightly more room for switch plug and for RPi wiring

Intermittent i2c error in trovastelle2

Often, trovastelle2 will give this error:

โžœ python trovastelle.py
Traceback (most recent call last):
  File "/home/pi/trovastelle/src/celestial_compass/trovastelle.py", line 438, in <module>
    asyncio.run(ts.run(),debug=_debug)
  File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "/home/pi/trovastelle/src/celestial_compass/trovastelle.py", line 399, in run
    await cc_task
  File "/home/pi/trovastelle/src/celestial_compass/compass.py", line 168, in run
    await main_task
  File "/home/pi/trovastelle/src/celestial_compass/compass.py", line 233, in _run_main
    self.display_controller.display_observable_data(
  File "/home/pi/trovastelle/src/celestial_compass/display_manager.py", line 241, in display_observable_data
    self._display_text_in_box(
  File "/home/pi/.local/lib/python3.9/site-packages/luma/core/render.py", line 43, in __exit__
    self.device.display(self.image)
  File "/home/pi/.local/lib/python3.9/site-packages/luma/oled/device/__init__.py", line 225, in display
    self.data(list(buf))
  File "/home/pi/.local/lib/python3.9/site-packages/luma/core/device.py", line 55, in data
    self._serial_interface.data(data)
  File "/home/pi/.local/lib/python3.9/site-packages/luma/core/interface/serial.py", line 125, in data
    write(list(data[i:i + block_size]))
  File "/home/pi/.local/lib/python3.9/site-packages/luma/core/interface/serial.py", line 134, in _write_large_block
    self._bus.i2c_rdwr(self._i2c_msg_write(self._addr, [self._data_mode] + data))
  File "/home/pi/.local/lib/python3.9/site-packages/smbus2/smbus2.py", line 658, in i2c_rdwr
    ioctl(self.fd, I2C_RDWR, ioctl_data)
OSError: [Errno 121] Remote I/O error

Looks like this is an i2c error. It may have to do with the clock not being properly stretched, or just some issue with how the display is wired (remember that terrible soldering job?), or just noise. When this happens, the whole application crashes and does not restart.

Revise Az tracking

Turns out laser-cut gears are super noisy and inefficient. Consider commercial alternatives.

Also consider making the position of the stepper something we can calibrate.

Options:

A thinner 8mm hub (currently sold out).

Document installation process

  • Set up machine (unattended-upgrades, etc.)
  • Pull this repo
  • requirements.txt
  • apt-get stuff
  • Set RTC time
  • Install all required data files
  • Set up service to download Celestrak files by copying fetch_celestrak_data.{timer,service} to /etc/systemd/system, then sudo systemctl daemon-reload, then sudo systemctl enable, then sudo systemctl start.
  • Set up service to autostart trovastelle.
  • Set up LED pins at startup

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.