{"id":46775265,"url":"https://github.com/aws4embeddedlinux/demo-iot-automotive-cloud","last_synced_at":"2026-03-09T23:42:54.313Z","repository":{"id":213712186,"uuid":"700276847","full_name":"aws4embeddedlinux/demo-iot-automotive-cloud","owner":"aws4embeddedlinux","description":null,"archived":false,"fork":false,"pushed_at":"2026-01-22T18:46:39.000Z","size":13385,"stargazers_count":7,"open_issues_count":0,"forks_count":2,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-01-23T11:40:08.360Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit-0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aws4embeddedlinux.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-10-04T09:37:12.000Z","updated_at":"2026-01-22T18:46:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"98550a57-f2dd-4023-aef1-3b27f53aea28","html_url":"https://github.com/aws4embeddedlinux/demo-iot-automotive-cloud","commit_stats":null,"previous_names":["aws4embeddedlinux/demo-iot-automotive-cloud"],"tags_count":0,"template":false,"template_full_name":"amazon-archives/__template_MIT-0","purl":"pkg:github/aws4embeddedlinux/demo-iot-automotive-cloud","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fdemo-iot-automotive-cloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fdemo-iot-automotive-cloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fdemo-iot-automotive-cloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fdemo-iot-automotive-cloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aws4embeddedlinux","download_url":"https://codeload.github.com/aws4embeddedlinux/demo-iot-automotive-cloud/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fdemo-iot-automotive-cloud/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30316775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-09T20:05:46.299Z","status":"ssl_error","status_checked_at":"2026-03-09T19:57:04.425Z","response_time":61,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-03-09T23:42:53.708Z","updated_at":"2026-03-09T23:42:54.264Z","avatar_url":"https://github.com/aws4embeddedlinux.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## IoT Automotive Cloud Demo\n\n# Deploying the demo-iot-automotive-cloud with Rich Sensor Data Preview Feature\n\nThis README file provides a step-by-step guide for deploying the demo-iot-automotive-cloud project with the Rich Sensor Data Preview feature enabled. The guide assumes that you have basic knowledge of AWS, CDK, and Python.\n\n## Prerequisites\n- For the deployment of the Grafana stack, Docker needs to be installed and running.\n- Install venv with pip: `pip install virtualenv`\n- Ensure your AWS accounts are fully allow-listed.\n- All deployments are restricted to the regions where AWS IoT FleetWise is available.\n\n## Initial Setup\n\nFirst, install the AWS CDK globally using npm (important not do this in the python venv!):\n\n```bash\nnpm install -g aws-cdk\n```\n\nMake sure your AWS account and region are set up correctly and you have the appropriate keys exported.\n\n\n### Deploying the Yocto Image\n\nBefore deploying the main CDK app, navigate to the [demo-iot-automotive-embeddedlinux-image](https://github.com/aws4embeddedlinux/demo-iot-automotive-embeddedlinux-image) repo and follow the README instructions there for creating the Yocto image. This will generate a `yoctoSdkS3Path` which will be used in a later step. You need to look up the S3 URI manually in S3 named: \"nxpgoldboxbigapipeline-pipelineoutput***\"\n```bash\nexport YOCTO_SDK_S3_BUCKET=\u003cs3 bucket name\u003e\n\nfor example nxpgoldboxbigapipeline-demoartifactb63fbde0-bblb29a8xtuk\n```\n\n```bash\nexport YOCTO_SDK_SCRIPT_NAME=\u003cYocto sdk script name\u003e\n\nfor example: fsl-auto-glibc-x86_64-cortexa53-crypto-toolchain-38.0.sh\n```\n\n### Creating an S3 Bucket for the Build Artifacts\n\nCreate an S3 bucket for storing the aws-iot-fleetwise-edge code and `rosbag2_rich_data_demo` rich sensor data artifacts:\n\n```bash\nexport FWE_RS_BUILD_ARTIFACTS_BUCKET=fwe-rs-build-artifacts-\u003cyourId\u003e-\u003cyourRegion\u003e\naws s3api create-bucket --bucket $FWE_RS_BUILD_ARTIFACTS_BUCKET --region \u003cyourRegion\u003e --create-bucket-configuration LocationConstraint=\u003cyourRegion\u003e\n```\n\n### Downloading and Uploading Artifacts\n\nPrepare the `rosbag2_rich_data_demo.tar.bz2`.\n\n\nUpload these artifacts to the S3 bucket:\n\n```bash\naws s3 cp rosbag2_rich_data_demo.tar.bz2 s3://$FWE_RS_BUILD_ARTIFACTS_BUCKET\n```\n\nAlternatively, follow the instructions [here](https://gitlab.aws.dev/aws-iot-automotive/IoTAutobahnVehicleAgent/-/blob/mainline/docs/vision-system-data/vision-system-data-demo.md#obtain-the-fwe-code-for-vision-system-data) to get `aws-iot-fleetwise-edge` code and `rosbag2_rich_data_demo.tar.bz2`.\n\n\n### Clean Up if you previously used AWS IoT FleetWise in your AWS Account\n\nIf you previously registered your account with the FleetWise service, you need to delete the existing AWSServiceRoleForIoTFleetWise Role. Go to IAM in your account, find the Role AWSServiceRoleForIoTFleetWise and delete it. This will enable you to register for the Gamma service.\n\n### Set the FWE Config\n\nSince FWE requires specific configuration based on the region and the environment it's running, we will need to configure it by first exporting the appropriate env variables and then generating the `fwe-config.yaml`:\n\n```\nexport INTERFACE_NAME=vcan0\nexport ENDPOINT_URL=xxx-ats.iot.us-east-1.amazonaws.com\nexport THING_NAME=vCar\nexport TOPIC_PREFIX=\"\\$aws/iotfleetwise/vehicles/$THING_NAME\"\nexport CREDENTIALS_PROVIDER_ENDPOINT_URL=xxx.credentials.iot.us-east-1.amazonaws.com\nexport GG_TOKEN_EXCHANGE_ROLE_ALIAS=\u003cGGTokenExchangeRoleAlias taken from the cloudformation\u003e\n\nsed -e \"s/{INTERFACE_NAME}/$INTERFACE_NAME/g\" \\\n    -e \"s/{ENDPOINT_URL}/$ENDPOINT_URL/g\" \\\n    -e \"s/{THING_NAME}/$THING_NAME/g\" \\\n    -e \"s/{TOPIC_PREFIX}/$TOPIC_PREFIX/g\" \\\n    -e \"s/{GG_TOKEN_EXCHANGE_ROLE_ALIAS}/$GG_TOKEN_EXCHANGE_ROLE_ALIAS/g\" \\\n    -e \"s/{CREDENTIALS_PROVIDER_ENDPOINT_URL}/$CREDENTIALS_PROVIDER_ENDPOINT_URL/g\" \\\n    greengrass_components/fleetwise_edge_connector/fwe-config.yaml.template \u003e greengrass_components/fleetwise_edge_connector/fwe-config.yaml\n```\nTo obtain the credentials provider endpoint, run:\n\n```bash\naws iot describe-endpoint --endpoint-type iot:CredentialProvider\n```\n\n### Deploying the Main CDK App with Additional Context\n\nFinally, proceed to deploy the main CDK app using the following commands:\n\n```bash\ncd lib/cdk-aws-iotfleetwise\nnpm install\npython3 -m venv .venv\nsource .venv/bin/activate\npip install -r ../../requirements.txt\n\n# build the lib - needs to be done every time the lib changed!\nnpm run build\npip install dist/python/cdk-aws-iotfleetwise-0.0.0.tar.gz\ncd ../../\n\n# cdk bootstrap (needs to be done once)\ncdk bootstrap -c s3FweArtifacts=$FWE_RS_BUILD_ARTIFACTS_BUCKET -c yoctoSdkS3Path=$YOCTO_SDK_S3_BUCKET -c yoctoSdkScriptName=$YOCTO_SDK_SCRIPT_NAME\n\n# deploy API Gateway Endpoint stack\ncdk deploy VisionVisualsStack -c s3FweArtifacts=$FWE_RS_BUILD_ARTIFACTS_BUCKET -c yoctoSdkS3Path=$YOCTO_SDK_S3_BUCKET -c yoctoSdkScriptName=$YOCTO_SDK_SCRIPT_NAME\n\n# Create the Grafana Chart JSON file from the template, based on the API Gateway endpoint\n\nexport API_ENDPOINT_DOMAIN_NAME=xxx.execute-api.xxx.amazonaws.com\nsed -e \"s/{API_ENDPOINT_DOMAIN_NAME}/$API_ENDPOINT_DOMAIN_NAME/g\" \\\n    grafana_dashboards/grafana-image/provisioning/dashboards/IndividualSignalAnalysis.json.template \u003e grafana_dashboards/grafana-image/provisioning/dashboards/IndividualSignalAnalysis.json\n\n\n# Verify that a file called IndividualSignalAnalysis.json.template was created in grafana_dashboards/grafana-image/provisioning/dashboards/\n\n# deploy stack\ncdk deploy --all --require-approval never -c s3FweArtifacts=$FWE_RS_BUILD_ARTIFACTS_BUCKET -c yoctoSdkS3Path=$YOCTO_SDK_S3_BUCKET -c yoctoSdkScriptName=$YOCTO_SDK_SCRIPT_NAME\n```\n\n### Deploying the GG Components\n\nAfter successful stack deployment, the Greengrass components are built by CodePipeline. When the onboarding of the device is successful, a deployment of those components needs to be executed:\n\n```\n# Prepare the environment\nexport AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query 'Account' --output text)\nexport AWS_REGION=\u003cyour_region\u003e\nexport THING_NAME=\u003cyour_thing_name\u003e\n\nenvsubst \u003c \"./greengrass_components/deployment.json.template\" \u003e \"./greengrass_components/deployment.json\"\n\n# Make sure to match the versions of the components (1.0.0 are defaults after the initial deployment)\n\naws greengrassv2 create-deployment --cli-input-json file://greengrass_components/deployment.json --region ${AWS_REGION}\n```\n\n## Steps needed to create a new Lambda layer zip\n\nIf in need to work with a version of boto3 not yet supported by the Lambda runtime, you can use your desired boto3 SDK version with the following commands:\n\n``` bash\ncd lib/cdk-aws-iotfleetwise\nmkdir -p boto3-layer/python\npip3 install boto3 -t boto3-layer/python\ncd boto3-layer\nzip -r boto3-layer.zip .\nrm -rf boto3-layer\n```\n\n## Known issues\n- The update operation is not implemented for all Custom Resources. So you can still experience failed updates, failed delete etc.\n- This integration is still under heavy development. We will continue doing bug fixes and improvements.\n- Not possible at the moment to update the fleetwise stack, need to manually delete biga-aws-iotfleetwise stack in CloudFormation, which will fail, mark to keep resources and delete again.\n\n## Security\n\nSee [CONTRIBUTING](CONTRIBUTING.md#security-issue-notifications) for more information.\n\n## License\n\nThis library is licensed under the MIT-0 License. See the LICENSE file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws4embeddedlinux%2Fdemo-iot-automotive-cloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faws4embeddedlinux%2Fdemo-iot-automotive-cloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws4embeddedlinux%2Fdemo-iot-automotive-cloud/lists"}